curl --request GET \
--url https://app.loops.so/api/v1/campaigns/{campaignId} \
--header 'Authorization: Bearer <token>'{
"success": true,
"campaignId": "cmp_01hxyz",
"name": "Spring announcement",
"status": "Draft",
"createdAt": "2026-03-28T15:00:00.000Z",
"updatedAt": "2026-03-28T15:10:00.000Z",
"emailMessageId": "em_01hxyz"
}
Retrieve a single campaign by ID.
curl --request GET \
--url https://app.loops.so/api/v1/campaigns/{campaignId} \
--header 'Authorization: Bearer <token>'{
"success": true,
"campaignId": "cmp_01hxyz",
"name": "Spring announcement",
"status": "Draft",
"createdAt": "2026-03-28T15:00:00.000Z",
"updatedAt": "2026-03-28T15:10:00.000Z",
"emailMessageId": "em_01hxyz"
}
Documentation Index
Fetch the complete documentation index at: https://loops.so/docs/llms.txt
Use this file to discover all available pages before exploring further.
400 Bad Request is returned if campaignId is invalid.
A 404 Not Found is returned if the campaign does not exist.
If the API key is invalid (or content API is not enabled for your team), a
401 Unauthorized is returned.
{
"success": true,
"campaignId": "cmp_01hxyz",
"name": "Spring announcement",
"status": "Draft",
"createdAt": "2026-03-28T15:00:00.000Z",
"updatedAt": "2026-03-28T15:10:00.000Z",
"emailMessageId": "em_01hxyz"
}
Was this page helpful?