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
Path Parameters
Profile ID from route
uuidHeader Parameters
Unique key to ensure idempotent request processing. Must be 1-255 alphanumeric characters, hyphens, or underscores. Responses are cached for 24 hours per key per customer.
^[a-zA-Z0-9_-]+$length <= 255Profile UUID to scope the request to a child profile. Only organization API keys can use this header. The profile must belong to the calling organization.
uuidRequest 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 }'null{
"success": true,
"data": {
"message": "Profile completion in progress"
}
}nullnullnullDelete a profile DELETE
Soft deletes a sender profile. The profile will be marked as deleted but data is retained. Requires admin role in the organization.
Get campaigns for a profile's brand GET
Retrieves all campaigns linked to the profile's brand, including use cases and sample messages. Returns inherited campaigns if inherit_tcr_campaign=true.