Customers


The /data/customers endpoint provides full CRUD operations for raw customer records. This endpoint focuses on the raw fields of customers (name, email, country, currency, status, trial and paid dates) and is intended for import/export and bulk operations, not derived metrics like MRR or subscription status.


GET: list customers

Retrieve all customer records for the authenticated account.

Request


GET /data/customers

Query parameters

ParameterTypeRequiredDescription
limitnumberNoMaximum number of records to return.

Response

Status: 200 OK

{
"result": {
"count": 2,
"list": [
{
"id": "cus_123",
"name": "Acme Corp",
"email": "[email protected]",
"created_date": "2025-10-01T12:00:00.000Z",
"country": "US",
"trial_started": "2025-09-01T12:00:00.000Z",
"paid_started": "2025-09-15T12:00:00.000Z",
"cancel_date": null,
"status": "active",
"currency": "USD"
}
]
}
}

Create customer + bulk insert

Create one or multiple customer records. To bulk insert, provide an array of customer objects in the request body.

Request

POST /data/customers
Content-Type: application/json

Body (single)

{
"id": "cus_456",
"name": "Beta LLC",
"email": "[email protected]",
"country": "US",
"currency": "USD",
"status": "active",
"trial_started": "2025-10-01T00:00:00Z",
"paid_started": "2025-10-15T00:00:00Z",
"cancel_date": null
}

Body (bulk)

[
{
"id": "cus_456",
"name": "Beta LLC",
"email": "[email protected]",
"country": "US",
"currency": "USD",
"status": "active"
},
{
"id": "cus_789",
"name": "Gamma Inc",
"email": "[email protected]",
"country": "GB",
"currency": "GBP",
"status": "trial"
}
]

Response

Status: 201 Created

{
"result": {
"count": 2,
"list": [
{ "id": "cus_456" },
{ "id": "cus_789" }
]
}
}

Retrieve single customer

GET /data/customers/{id}

Response

{
"id": "cus_456",
"name": "Beta LLC",
"email": "[email protected]",
"country": "US",
"currency": "USD",
"status": "active",
"trial_started": "2025-10-01T00:00:00Z",
"paid_started": "2025-10-15T00:00:00Z",
"cancel_date": null,
"created_date": "2025-10-01T12:00:00.000Z"
}

Update customer

Update an existing customer by ID. Provide the full customer object; only the fields present in the request will be updated.

PUT /data/customers/{id}
Content-Type: application/json

Body

{
"name": "Beta LLC Updated",
"status": "active",
"cancel_date": "2025-11-01T00:00:00Z"
}

Response

Status: 200 OK

{
"result": {
"id": "cus_456",
"updated_fields": ["name", "status", "cancel_date"]
}
}

Delete customer

Delete a customer by ID.

DELETE /data/customers/{id}

Response

Status: 200 OK

{
"result": {
"id": "cus_456",
"deleted": true
}
}