SendlySendly
API ReferenceContacts

Bulk-create contacts

POST
/api/contacts/bulk

Create up to 1000 contacts in one call. Per-row conflicts are reported as skipped.

Requires the contacts:write scope — Create, update, and delete your contacts.

Authorization

AuthorizationBearer <token>

API key authentication. Use a sk_* (FULL) or pk_* (SENDING_ONLY) key as the bearer token. Public keys (pk_*) are restricted to the email-send endpoints and the self-serve list subscribe/unsubscribe pair; every other endpoint — event tracking included — answers 403 for them. In scope terms (used by /api/v1/* operations): FULL keys hold every scope; SENDING_ONLY keys hold only emails:send.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Bulk create up to 1000 contacts.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/contacts/bulk" \  -H "Content-Type: application/json" \  -d '{    "contacts": [      {        "email": "user@example.com"      }    ]  }'
{
  "success": true,
  "data": {
    "created": 0,
    "skipped": 0,
    "errors": [
      {
        "index": 0,
        "message": "string"
      }
    ]
  }
}
{
  "success": false,
  "error": {
    "message": "string",
    "code": "string",
    "details": {
      "errors": [
        null
      ]
    }
  }
}
{
  "success": false,
  "error": {
    "message": "string",
    "code": "string",
    "details": {
      "errors": [
        null
      ]
    }
  }
}
{
  "success": false,
  "error": {
    "message": "string",
    "code": "string",
    "details": {
      "errors": [
        null
      ]
    }
  }
}
{
  "success": false,
  "error": {
    "message": "string",
    "code": "string",
    "details": {
      "errors": [
        null
      ]
    }
  }
}
{
  "success": false,
  "error": {
    "message": "string",
    "code": "string",
    "details": {
      "errors": [
        null
      ]
    }
  }
}
{
  "success": false,
  "error": {
    "message": "string",
    "code": "string",
    "details": {
      "errors": [
        null
      ]
    }
  }
}