create_transaction_contact
Create transaction contact
Add one buyer-managed transaction contact to the owned active workspace. An offer holds at most 20 contacts, and names and roles are plain text (no links or markup). An email you save is unverified, so mail from it is not a known contact, until prepare_contact_verification and confirm_contact_verification (or the buyer's own edit on Ohvii). Reuse mutationId only for an exact retry. This changes the buyer's private contact list and never sends a message, invites a participant, or contacts the person.
- Effect
- Consequential change
- Required scopes
workspace:write- Workflow stages
- closing, offer, transaction
- Data classes
- contacts, transaction
- Operation cost
- 3 weighted units; additional domain limits may apply.
- Configurations
- Standard, Buyer UI v2
- Muse proposal
- Sensitive write. Changes or removes a record, recipient, or permission the buyer relies on. Meta makes the final classification during review.
Buyer approval and signing controls apply in addition to the scopes above. Read error and retry guidance before implementing recovery.
Input and output contracts
Returns structured content and a JSON text content block. Live discovery may compact a large output schema; execution validates the full contract below.
Input fields
Required applies within the containing object. Optional fields can be omitted; null is accepted only where listed. Field descriptions and constraints come from the source schema. The raw schema remains the complete contract.
| Field | Required | Meaning and constraints |
|---|---|---|
expectedContactsRevisionstring | No | Pattern validation applies; see the raw schema. |
mutationIdstring | Yes | A fresh random UUID (v4) you generate for this mutation. Send the same UUID only to retry the identical mutation; never a readable label. Format: uuid. Pattern validation applies; see the raw schema. |
workspaceIdstring | Yes | Pattern validation applies; see the raw schema. |
emailstring | null | No | Must match at least one alternative. |
email: nested contractAlternative 1: stringMinimum characters: 3. Maximum characters: 254. Alternative 2: null | ||
namestring | Yes | Minimum characters: 1. Maximum characters: 120. |
phonestring | null | No | Must match at least one alternative. |
phone: nested contractAlternative 1: stringMinimum characters: 3. Maximum characters: 40. Alternative 2: null | ||
rolestring | Yes | Minimum characters: 1. Maximum characters: 80. |
Output fields
Required applies within the containing object. Optional fields can be omitted; null is accepted only where listed. Field descriptions and constraints come from the source schema. The raw schema remains the complete contract.
| Field | Required | Meaning and constraints | |||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
actionstring | Yes | Allowed: "created", "updated", "deleted". | |||||||||||||||||||||||||||
contactobject | Yes | Extra fields are not allowed. | |||||||||||||||||||||||||||
contact: nested contract
| |||||||||||||||||||||||||||||
contactsarray<object> | Yes | Maximum items: 100. | |||||||||||||||||||||||||||
contacts: nested contractArray item contractExtra fields are not allowed.
| |||||||||||||||||||||||||||||
contactsRevisionstring | Yes | Pattern validation applies; see the raw schema. | |||||||||||||||||||||||||||
mutationIdstring | Yes | A fresh random UUID (v4) you generate for this mutation. Send the same UUID only to retry the identical mutation; never a readable label. Format: uuid. Pattern validation applies; see the raw schema. | |||||||||||||||||||||||||||
schemaVersionstring | Yes | Must be "1". | |||||||||||||||||||||||||||
workspaceIdstring | Yes | Pattern validation applies; see the raw schema. | |||||||||||||||||||||||||||
Raw input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"expectedContactsRevision": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
},
"mutationId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "A fresh random UUID (v4) you generate for this mutation. Send the same UUID only to retry the identical mutation; never a readable label."
},
"workspaceId": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,200}$"
},
"email": {
"anyOf": [
{
"type": "string",
"minLength": 3,
"maxLength": 254
},
{
"type": "null"
}
]
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"phone": {
"anyOf": [
{
"type": "string",
"minLength": 3,
"maxLength": 40
},
{
"type": "null"
}
]
},
"role": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
},
"required": [
"mutationId",
"workspaceId",
"name",
"role"
],
"additionalProperties": false
}Full output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"created",
"updated",
"deleted"
]
},
"contact": {
"type": "object",
"properties": {
"email": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,200}$"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"phone": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"role": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"source": {
"type": "string",
"const": "buyer"
}
},
"required": [
"email",
"id",
"name",
"phone",
"role",
"source"
],
"additionalProperties": false
},
"contacts": {
"maxItems": 100,
"type": "array",
"items": {
"type": "object",
"properties": {
"email": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,200}$"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"phone": {
"anyOf": [
{
"type": "string",
"maxLength": 2000
},
{
"type": "null"
}
]
},
"role": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"source": {
"type": "string",
"const": "buyer"
}
},
"required": [
"email",
"id",
"name",
"phone",
"role",
"source"
],
"additionalProperties": false
}
},
"contactsRevision": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
},
"mutationId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "A fresh random UUID (v4) you generate for this mutation. Send the same UUID only to retry the identical mutation; never a readable label."
},
"schemaVersion": {
"type": "string",
"const": "1"
},
"workspaceId": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,200}$"
}
},
"required": [
"action",
"contact",
"contacts",
"contactsRevision",
"mutationId",
"schemaVersion",
"workspaceId"
],
"additionalProperties": false
}Tool annotations
{
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": false,
"readOnlyHint": false
}Reference 00e5441a095c7e20. Download the full catalog.