Management API
The Management API provides CRUD operations for configuring your CDP. It is protected by Cognito JWT authentication.
Base URL
Section titled “Base URL”https://your-management-api.amazonaws.comAuthentication
Section titled “Authentication”Include a Cognito JWT bearer token in the Authorization header:
curl -H "Authorization: Bearer YOUR_JWT_TOKEN" \ https://your-management-api.amazonaws.com/sourcesSources
Section titled “Sources”List sources
Section titled “List sources”GET /sourcesReturns all configured event sources with their write keys.
Create source
Section titled “Create source”POST /sources{ "name": "Production App", "description": "Main web application"}A writeKey is automatically generated using SHA-256 hashing.
Delete source
Section titled “Delete source”DELETE /sources/:idDestinations
Section titled “Destinations”List destinations
Section titled “List destinations”GET /destinationsCreate destination
Section titled “Create destination”POST /destinations{ "name": "Slack Webhook", "type": "webhook", "config": { "url": "https://hooks.slack.com/...", "secret": "webhook_secret" }}Supported types: webhook, s3-export, or any custom connector ID.
Update destination
Section titled “Update destination”PUT /destinations/:id{ "name": "Updated Name", "config": { "url": "https://new-url.com" }}Delete destination
Section titled “Delete destination”DELETE /destinations/:idSegments
Section titled “Segments”List segments
Section titled “List segments”GET /segmentsCreate segment
Section titled “Create segment”POST /segments{ "name": "Power Users", "description": "Users with more than 100 events", "rules": [ { "field": "event_count", "operator": "gt", "value": 100 } ]}Rules use a field / operator / value structure. Available operators: eq, neq, gt, gte, lt, lte, contains, not_contains.
Update segment
Section titled “Update segment”PUT /segments/:idDelete segment
Section titled “Delete segment”DELETE /segments/:idList segment members
Section titled “List segment members”GET /segments/:id/membersReturns all user IDs that belong to the segment.
Profiles
Section titled “Profiles”Get profile
Section titled “Get profile”GET /profiles/:userIdReturns the unified profile with merged traits and associated events.
{ "userId": "user_123", "traits": { "name": "Jane Doe", "email": "jane@acme.com", "plan": "pro" }, "events": [ { "type": "track", "event": "Purchase Completed", "timestamp": "2025-03-08T12:00:00.000Z", "properties": { "revenue": 99.99 } } ]}