publ betaReference (MCP guide)
Open publ console

seller_contact_apply — Save the seller operator contact form

[Migration map](../reference/tool-name-migration.md).

# seller_contact_apply — Save the seller operator contact form

Submit the full operator contact form in one call. The bridge PATCHes only changed operator fields and reads the same self account back to verify all contact values.

Requires an OWNER account connection. A channel manager connection cannot authorize this account screen. The source-defined hosted account resource admits this tool; a selected-channel resource does not. These are source scope rules, not deployed authorization or isolation evidence.

## Inputs

| Field | Required here | Contract |
| --- | --- | --- |
| `contact` | Yes | object; Complete seller contact form. Preserve the current values for fields that should not change; only changed fields are sent to publ. Empty-field clearing is unsupported. |
| `contact.name` | Yes | string; min length 1; max length 30; pattern `^[가-힣A-Za-z\s]+$`; Operator contact name from the seller contact form, trimmed, 1–30 Korean syllables, Latin letters, or whitespace. |
| `contact.phone` | Yes | object |
| `contact.phone.countryCode` | Yes | string; Copy the publ country option value from contactCountries, for example 746 for South Korea. Do not send a calling prefix such as +82. |
| `contact.phone.number` | Yes | string; pattern `^\d{6,12}$`; National contact number containing 6–12 digits; no separators or calling prefix. Leading zeroes are preserved. |
| `confirmToken` | No | string; pattern `^ct[a-f\d]{32}$`; The confirmToken from this tool's preview result. Omit it to preview; repeat the same input with it to execute. |

Preserve current values for unchanged fields. Required fields cannot be cleared. Unknown fields, business registration data, account IDs, channel selectors, and payment fields are rejected.

```json
{
  "requestId": "docs-seller-contact-001",
  "expectedRevision": "0000000000000000000000000000000000000000000000000000000000000000",
  "contact": {
    "name": "Site Owner",
    "phone": {
      "countryCode": "746",
      "number": "01012345678"
    }
  },
  "dryRun": true
}
```

The revision is scoped to this account screen; profile and contact revisions are not interchangeable. Reusing requestId with changed business input returns TASK_INPUT_CHANGED. A dry run on an existing matching task returns its historical plan and taskPhase, with planIsHistorical:true; it does not rebase the saved plan onto current values.

## Results

Replace the illustrative zero revision with the matching get response. SELLER_CONTACT_APPLIED with verification.confirmed:true means all requested contact values and the same account identity were observed. Phone-only changes preserve the name. Contact saves do not refresh credentials. A no-op completes without writes.

## Next steps and limits

Use taskType seller-contact with `task_status` and `task_resume` described in the [agent guide](../agent-guide.md). An unknown PATCH is observed without another send; a definite rejection can retry only when the original state still matches. ACCOUNT_DETAILS_CONFLICT requires a fresh read and review of the concurrent change. ACCOUNT_IDENTITY_CHANGED blocks continuation. Completed replays are historical, not fresh verification. Stored values do not prove legal identity or settlement eligibility.

[Account guide](../guides/account.md) · [Implementation contract](../core/account-details.md) · [Runtime tool index](../runtime.md)

## Saved record identity

Existing apply/dry-run calls and task status/resume require both the saved task ID
and saved input requestId to match the requested ID. A mismatching or malformed
saved identity returns `TASK_STATE_UNVERIFIED` before workflow context or business
reads. Preserve the original record for inspection; do not rename/edit it, try
its embedded ID or create a replacement request to bypass the error. No record
is repaired or resent. Matching records retain their existing recovery and
freshness checks; this rule does not convert them into universally read-only calls.