Complete profile setup

Final step in profile compliance workflow. Validates all prerequisites (general data, brand, campaigns), connects profile to Telnyx/WhatsApp, and sets status based on configuration. The process runs in the background and calls the provided webhook URL when finished.

            Prerequisites:
            - Profile must be completed
            - If inheritTcrBrand=false: Profile must have existing brand
            - If inheritTcrBrand=true: Parent must have existing brand
            - If TCR application: Must have at least one campaign (own or inherited)
            - If inheritTcrCampaign=false: Profile should have campaigns
            - If inheritTcrCampaign=true: Parent must have campaigns

            Status Logic:
            - If both SMS and WhatsApp channels are missing → SUBMITTED
            - If TCR application and not inheriting brand/campaigns → SUBMITTED
            - If non-TCR with destination country (IsMain=true) → SUBMITTED
            - Otherwise → COMPLETED
POST
/v3/profiles/{profileId}/complete

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

curl -X POST "https://api.sent.dm/v3/profiles/660e8400-e29b-41d4-a716-446655440000/complete" \  -H "Idempotency-Key: req_abc123_retry1" \  -H "Content-Type: application/json" \  -d '{    "webHookUrl": "https://your-app.com/webhook/profile-complete",    "sandbox": false  }'
{
  "success": true,
  "data": {
    "status": "completed",
    "message": "Profile is already completed"
  },
  "error": null,
  "meta": {
    "request_id": "req_7X9zKp2jDw",
    "timestamp": "2026-05-01T09:53:14.0312044+00:00",
    "version": "v3"
  }
}
{
  "success": true,
  "data": {
    "message": "Profile completion in progress"
  },
  "error": null,
  "meta": {
    "request_id": "req_7X9zKp2jDw",
    "timestamp": "2026-05-01T09:53:14.0312171+00:00",
    "version": "v3"
  }
}
{
  "success": true,
  "error": {
    "code": "string",
    "message": "string",
    "details": {
      "property1": [
        "string"
      ],
      "property2": [
        "string"
      ]
    },
    "doc_url": "string"
  },
  "meta": {
    "request_id": "string",
    "timestamp": "2019-08-24T14:15:22Z",
    "version": "string"
  }
}
Empty
Empty
{
  "success": true,
  "error": {
    "code": "string",
    "message": "string",
    "details": {
      "property1": [
        "string"
      ],
      "property2": [
        "string"
      ]
    },
    "doc_url": "string"
  },
  "meta": {
    "request_id": "string",
    "timestamp": "2019-08-24T14:15:22Z",
    "version": "string"
  }
}
{
  "success": true,
  "error": {
    "code": "string",
    "message": "string",
    "details": {
      "property1": [
        "string"
      ],
      "property2": [
        "string"
      ]
    },
    "doc_url": "string"
  },
  "meta": {
    "request_id": "string",
    "timestamp": "2019-08-24T14:15:22Z",
    "version": "string"
  }
}