External API endpoint for organisations to upload customer profiles.
Accepts JSON payload with a type discriminator ("individual" or "business"),
an optional on_conflict strategy (defaults to "update" for idempotent sync),
and a records array.
Authentication: X-API-Key header (live or sandbox key). Rate limit: 10 requests/minute per organisation.
Payload: { "type": "individual", "on_conflict": "update", "records": [ {"first_name": "John", "last_name": "Doe", "customer_reference": "CUS-001", ...}, ... ] }
Authorization
ApiKeyAuth In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Validates the external API profile upload payload.
Payload: { "type": "individual" or "business", "on_conflict": "update" (default) | "skip" | "error", "records": [{...}, ...] }
Response Body
application/json
curl -X POST "https://example.com/api/v1/customer-360/external/profiles/" \ -H "Content-Type: application/json" \ -d '{ "type": "individual", "records": [ { "property1": null, "property2": null } ] }'{ "data": {}, "status": true, "message": "Request successful.", "errors": {}, "meta": { "timestamp": "2019-08-24T14:15:22Z", "version": "v1", "request_id": "string" }, "pagination": { "page": 0, "page_size": 0, "total_pages": 0, "total_items": 0 }}response_code values (e.g., 00 Success, 01 Not Found, 02 Unavailable).Join our developer Slack channel for real-time integration support, engineering updates, and direct Q&A with the Prembly team.
Join Slack Channel