List Customers
GET/api/magento2/integration-instances/:magento2IntegrationInstance/customers
Paginated list of Magento 2 customers scoped to one integration instance.
Path params:
magento2IntegrationInstance(required, integer) — Magento 2 IntegrationInstance ID.
Query params — all optional. Sorts: id, magento_entity_id, email, firstname, lastname, group_id, website_id, magento_created_at, magento_updated_at, created_at, updated_at. Advanced filters (Spatie AdvancedFilterBuilder) are also available for email, firstname, lastname, telephone, and the datetime columns.
Notes:
filter[integration_instance_ids]is accepted as a no-op so the channel layout's URL param doesn't 400.- Eager-loads the integration instance + addresses + a withCount('orders') so the resource can emit
orders_countand a derived primary-address city / region / country without N+1. - Fields the schema doesn't yet carry (
group_name,website_name,total_spent, etc.) are returned asnull; Phase 2D's sync work will populate them.
Request
Responses
- 200
- 401
- 403
- 404
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.