Save a message draft

Saves or updates the draft reply on a thread for the current user to review and send from the inbox. Local only; nothing is delivered. subject, cc, and bcc apply to email threads. An explicit recipients array overrides To; use [] for Cc-only or Bcc-only email. Omit recipients to retain the thread-derived primary recipients. There is one draft per thread; saving again replaces it. While that draft is being sent, saving answers 409 with customCode draftSendInProgress and changes nothing.

POST
/v1/messaging/threads/{id}/drafts

Authorization

apiKeyAuth
x-api-key<token>

API key authentication. Create an API key in your user profile and include it in the x-api-key header.

In: header

Path Parameters

id*string

The thread id the draft belongs to

Match^([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)$
Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://customermates.com/api/v1/messaging/threads/497f6eca-6276-4993-bfeb-53cbbbba6f08/drafts" \  -H "Content-Type: application/json" \  -d '{    "body": "string"  }'
{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "messagingThreadId": "ea642f89-7688-4a10-9525-46b6c79cc287",
  "connectedAccountId": "ac03972a-5ca5-43c5-b96f-c519ac843b7a",
  "providerMessageId": "string",
  "provider": "google",
  "direction": "inbound",
  "sender": {
    "attendeeId": "string",
    "displayName": "string",
    "identifier": "string",
    "pictureUrl": "string",
    "profileUrl": "string",
    "headline": "string",
    "occupation": "string",
    "isSelf": true,
    "records": []
  },
  "recipients": {
    "to": [],
    "cc": [],
    "bcc": []
  },
  "subject": "string",
  "bodyText": "string",
  "bodyHtml": "string",
  "attachmentsMeta": [
    {
      "id": "string",
      "name": "string",
      "fileName": "string",
      "type": "string",
      "mime": "string",
      "size": 9007199254740991,
      "sticker": true,
      "voiceNote": true,
      "gif": true,
      "durationSeconds": 0,
      "unavailable": true,
      "linkUrl": "string"
    }
  ],
  "isEvent": false,
  "isDeleted": false,
  "isHidden": false,
  "isDraft": false,
  "sentAt": "string",
  "editedAt": "string",
  "reactions": [],
  "folderIds": [],
  "draftRevision": "2019-08-24T14:15:22Z"
}
{
  "error": {
    "kind": "validation",
    "issues": [
      {
        "code": "string",
        "path": [
          "string"
        ],
        "message": "string",
        "customCode": "recordNotFound",
        "entitlement": "string"
      }
    ],
    "retryable": true
  }
}
{
  "error": {
    "kind": "validation",
    "issues": [
      {
        "code": "string",
        "path": [
          "string"
        ],
        "message": "string",
        "customCode": "recordNotFound",
        "entitlement": "string"
      }
    ],
    "retryable": true
  }
}
{
  "error": {
    "kind": "validation",
    "issues": [
      {
        "code": "string",
        "path": [
          "string"
        ],
        "message": "string",
        "customCode": "recordNotFound",
        "entitlement": "string"
      }
    ],
    "retryable": true
  }
}
{
  "error": {
    "kind": "validation",
    "issues": [
      {
        "code": "string",
        "path": [
          "string"
        ],
        "message": "string",
        "customCode": "recordNotFound",
        "entitlement": "string"
      }
    ],
    "retryable": true
  }
}
{
  "error": {
    "kind": "validation",
    "issues": [
      {
        "code": "string",
        "path": [
          "string"
        ],
        "message": "string",
        "customCode": "recordNotFound",
        "entitlement": "string"
      }
    ],
    "retryable": true
  }
}
Empty