← Tool reference

create_transaction_document_upload

Start document upload

Start one direct-to-storage upload of a buyer document (proof of funds, pre-approval, an inspection report, a disclosure) into the active transaction. It takes PDF, Word, RTF, JPEG, PNG, Markdown, or plain text up to 20 MiB (convert a HEIC photo to JPEG; a ZIP is not accepted). Compute the file's SHA-256 and byte size first; the response is a short-lived signed POST target bound to exactly that file. Upload the bytes to that target with your own HTTP client, then call finalize_transaction_document_upload with the returned sessionId. Nothing is attached to an offer or sent anywhere by uploading. Reuse idempotencyKey only for an exact retry; it returns the same session or its finished receipt.

Effect
Draft or workspace edit
Required scopes
documents:write
Workflow stages
closing, offer, transaction
Data classes
documents, transaction
Operation cost
2 weighted units; additional domain limits may apply.
Configurations
Standard, Buyer UI v2
Muse proposal
Write. Creates or updates draft, document, or workspace data within the authorized workflow. 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.

FieldRequiredMeaning and constraints
contentTypestringYes

Allowed: "application/msword", "application/pdf", "application/rtf", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", "image/jpeg", "image/png", "text/markdown", "text/plain", "text/rtf".

filenamestringYes

Minimum characters: 1.

Maximum characters: 200.

idempotencyKeystringYes

A fresh random UUID (v4) you generate for this request. Send the same UUID only to retry the identical request; never a readable label.

Format: uuid.

Pattern validation applies; see the raw schema.

labelstringNo

Minimum characters: 1.

Maximum characters: 500.

purposestringNo

Allowed: "offer_support", "repair_evidence", "repair_seller_response".

sha256stringYes

Pattern validation applies; see the raw schema.

sizeBytesintegerYes

Maximum: 20971520.

Greater than: 0.

workspaceIdstringYes

Pattern validation applies; see the raw schema.

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.

No named fields. Must match at least one alternative.

Raw input schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "contentType": {
      "type": "string",
      "enum": [
        "application/msword",
        "application/pdf",
        "application/rtf",
        "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
        "image/jpeg",
        "image/png",
        "text/markdown",
        "text/plain",
        "text/rtf"
      ]
    },
    "filename": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "idempotencyKey": {
      "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 request. Send the same UUID only to retry the identical request; never a readable label."
    },
    "label": {
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "purpose": {
      "type": "string",
      "enum": [
        "offer_support",
        "repair_evidence",
        "repair_seller_response"
      ]
    },
    "sha256": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "sizeBytes": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 20971520
    },
    "workspaceId": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,200}$"
    }
  },
  "required": [
    "contentType",
    "filename",
    "idempotencyKey",
    "sha256",
    "sizeBytes",
    "workspaceId"
  ],
  "additionalProperties": false
}
Full output schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "expected": {
          "type": "object",
          "properties": {
            "contentType": {
              "type": "string",
              "enum": [
                "application/msword",
                "application/pdf",
                "application/rtf",
                "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
                "image/jpeg",
                "image/png",
                "text/markdown",
                "text/plain",
                "text/rtf"
              ]
            },
            "sha256": {
              "type": "string",
              "pattern": "^[a-f0-9]{64}$"
            },
            "sizeBytes": {
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 20971520
            }
          },
          "required": [
            "contentType",
            "sha256",
            "sizeBytes"
          ],
          "additionalProperties": false
        },
        "expiresAt": {
          "type": "string",
          "format": "date-time",
          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
        },
        "idempotencyKey": {
          "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)$"
        },
        "schemaVersion": {
          "type": "string",
          "const": "1"
        },
        "sessionId": {
          "type": "string",
          "pattern": "^[A-Za-z0-9_-]{1,200}$"
        },
        "status": {
          "type": "string",
          "const": "upload_ready"
        },
        "uploadTarget": {
          "type": "object",
          "properties": {
            "formFields": {
              "type": "object",
              "propertyNames": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "additionalProperties": {
                "type": "string",
                "maxLength": 16384
              }
            },
            "method": {
              "type": "string",
              "const": "POST"
            },
            "protocol": {
              "type": "string",
              "const": "gcs_signed_post"
            },
            "url": {
              "type": "string",
              "maxLength": 4096,
              "format": "uri"
            }
          },
          "required": [
            "formFields",
            "method",
            "protocol",
            "url"
          ],
          "additionalProperties": false
        },
        "workspaceId": {
          "type": "string",
          "pattern": "^[A-Za-z0-9_-]{1,200}$"
        }
      },
      "required": [
        "expected",
        "expiresAt",
        "idempotencyKey",
        "schemaVersion",
        "sessionId",
        "status",
        "uploadTarget",
        "workspaceId"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "document": {
          "type": "object",
          "properties": {
            "contentType": {
              "type": "string",
              "enum": [
                "application/msword",
                "application/pdf",
                "application/rtf",
                "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
                "image/jpeg",
                "image/png",
                "text/markdown",
                "text/plain",
                "text/rtf"
              ]
            },
            "documentId": {
              "type": "string",
              "pattern": "^[A-Za-z0-9_-]{1,200}$"
            },
            "extractionStatus": {
              "type": "string",
              "const": "queued"
            },
            "filename": {
              "type": "string",
              "minLength": 1,
              "maxLength": 200
            },
            "label": {
              "type": "string",
              "minLength": 1,
              "maxLength": 500
            },
            "purpose": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "offer_support",
                    "repair_evidence",
                    "repair_seller_response"
                  ]
                },
                {
                  "type": "null"
                }
              ]
            },
            "sizeBytes": {
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 20971520
            },
            "source": {
              "type": "string",
              "const": "buyer_upload"
            }
          },
          "required": [
            "contentType",
            "documentId",
            "extractionStatus",
            "filename",
            "label",
            "purpose",
            "sizeBytes",
            "source"
          ],
          "additionalProperties": false
        },
        "schemaVersion": {
          "type": "string",
          "const": "1"
        },
        "sessionId": {
          "type": "string",
          "pattern": "^[A-Za-z0-9_-]{1,200}$"
        },
        "status": {
          "type": "string",
          "const": "finalized"
        },
        "workspaceId": {
          "type": "string",
          "pattern": "^[A-Za-z0-9_-]{1,200}$"
        },
        "idempotencyKey": {
          "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)$"
        }
      },
      "required": [
        "document",
        "schemaVersion",
        "sessionId",
        "status",
        "workspaceId",
        "idempotencyKey"
      ],
      "additionalProperties": false
    }
  ],
  "type": "object"
}
Tool annotations
{
  "destructiveHint": false,
  "idempotentHint": true,
  "openWorldHint": false,
  "readOnlyHint": false
}

Reference 00e5441a095c7e20. Download the full catalog.