Get campaigns for a profile's brand
Retrieves all campaigns linked to the profile's brand, including use cases and sample messages. Returns inherited campaigns if inherit_tcr_campaign=true.
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/v3/profiles/770e8400-e29b-41d4-a716-446655440002/campaigns"{
"success": true,
"data": [
{
"useCases": [
{
"campaignId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"customerId": "00000000-0000-0000-0000-000000000000",
"messagingUseCaseUs": "ACCOUNT_NOTIFICATION",
"sampleMessages": [
"Hi {name}, your appointment is confirmed for {date} at {time}.",
"Your order #{order_id} has been shipped. Track at {url}"
],
"id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"createdAt": "0001-01-01T00:00:00+00:00",
"updatedAt": null
}
],
"tcrSyncError": null,
"kycSubmissionFormId": null,
"type": "App",
"customerId": "00000000-0000-0000-0000-000000000000",
"name": "Customer Notifications",
"description": "Appointment reminders and account notifications",
"submittedToTCR": false,
"submittedAt": null,
"billedDate": null,
"cost": null,
"telnyxCampaignId": null,
"tcrCampaignId": null,
"cspId": null,
"status": null,
"brandId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"resellerId": null,
"messageFlow": "User signs up on website and opts in to receive SMS notifications",
"privacyPolicyLink": null,
"termsAndConditionsLink": null,
"optinMessage": null,
"optoutMessage": null,
"helpMessage": null,
"optinKeywords": null,
"optoutKeywords": null,
"helpKeywords": null,
"upstreamCnpId": null,
"sharingStatus": null,
"dcaElectionsComplete": null,
"dcaElectionsCompletedAt": null,
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"createdAt": "2026-05-21T12:05:03.8618734+00:00",
"updatedAt": null
}
],
"error": null,
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-05-21T12:05:03.8618744+00:00",
"version": "v3"
}
}Empty
Empty
{
"success": false,
"data": null,
"error": {
"code": "RESOURCE_009",
"message": "Brand not found for this profile",
"details": null,
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-05-21T12:05:03.8618759+00:00",
"version": "v3"
}
}{
"success": false,
"data": null,
"error": {
"code": "INTERNAL_001",
"message": "Failed to retrieve campaigns. Please contact support with request ID: req_7X9zKp2jDw",
"details": null,
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-05-21T12:05:03.8618767+00:00",
"version": "v3"
}
}Complete profile setup POST
Final step in profile compliance workflow. Validates all prerequisites (general data, brand, campaigns), connects the profile to the messaging network, and triggers setup in the background. Returns 200 immediately if the profile is already completed; returns 202 and calls the provided webhook URL when background processing finishes.
Create a campaign for a profile's brand POST
Creates a new campaign scoped under the brand of the specified profile. Each campaign must include at least one use case with sample messages.