List all clients
List your clients with cursor-based pagination. Supports filtering by `is_active`, `created_at[gte|lte]`, and `name[in]`.
In: header
Query Parameters
Number of objects to return. Integer between 1 and 100. Defaults to 25.
251 <= value <= 100Cursor for forward pagination. Use the uuid of the last object on the previous page.
uuidCursor for backward pagination. Use the uuid of the first object on the current page.
uuidFiscal tax number (NIF/CIF/NIE) of the client. Exact match on tax_id.
Fiscal tax number (NIF/CIF/NIE) of the client. Comma-separated list. Any of the values matches.
Client email. Exact match on email.
emailTrade name of the client. Exact match on name.
Filter by active / inactive clients. Exact match on is_active.
Creation date (ISO 8601). Greater than or equal to the given value.
date-timeCreation date (ISO 8601). Less than or equal to the given value.
date-timeCreation date (ISO 8601). Strictly greater than the given value.
date-timeCreation date (ISO 8601). Strictly less than the given value.
date-timeResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
import { Factuarea } from "@factuarea/sdk";const factuarea = new Factuarea({ apiKey: process.env.FACTUAREA_API_KEY! });// List endpoints return an async-iterable Page (cursors handled for you).for await (const item of await factuarea.clients.list({ limit: 25 })) { console.log(item.id);}{
"data": [
{
"id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a01",
"object": "client",
"name": "Acme Corporation",
"commercial_name": "Acme SL",
"tax_id": "B12345678",
"vat_id": "ESB12345678",
"email": "billing@acme.com",
"phone": "+34 600 123 456",
"fax": "+34 91 123 45 68",
"mobile": "+34 600 000 000",
"website": "https://acme.com",
"contact_person": "Juan García",
"billing_emails": [
"facturacion@acme.com",
"contabilidad@acme.com"
],
"address": {
"line1": "Calle Mayor 1",
"line2": "Edificio Central",
"number": "42",
"floor": "3",
"door": "B",
"staircase": "A",
"postal_code": "28001",
"city": "Madrid",
"province": "Madrid",
"country": "ES"
},
"coordinates": {
"latitude": 39.4699,
"longitude": -0.3763
},
"default_discount": 5,
"default_vat_rate": 21,
"default_retention_rate": 15,
"is_surcharge_subject": false,
"preferred_operation_regime": "general",
"accumulate_347": true,
"dir3_accounting_office": "L01280796",
"dir3_managing_body": "L01280796",
"dir3_processing_unit": "L01280796",
"external_id": "CRM-99",
"notes": "Pago al contado.",
"metadata": {
"erp_code": "IVA-GEN",
"ledger_account": "477000"
},
"is_active": true,
"created_at": "2026-01-15T10:30:00Z",
"updated_at": "2026-01-15T10:30:00Z"
}
],
"has_more": true,
"next_cursor": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a0c"
}{
"error": {
"type": "invalid_request_error",
"code": "parameter_unknown",
"message": "El parámetro 'per_page' no está reconocido por este endpoint.",
"param": "per_page",
"doc_url": "https://docs.factuarea.com/guides/errors#parameter_unknown",
"request_id": "req_01HKQS5N7UR6PWJ8K2T5BWPMZ9"
}
}{
"error": {
"type": "authentication_error",
"code": "missing_api_key",
"message": "No se ha proporcionado una API key válida en el header Authorization.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#missing_api_key",
"request_id": "req_01HKQS5N8VR7QXJ9K3T6BWPMZA"
}
}{
"error": {
"type": "authorization_error",
"code": "insufficient_scope",
"message": "Esta API key no tiene el scope requerido para esta operación.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#insufficient_scope",
"request_id": "req_01HKQS5NBC3P8M1KX4V7SLNHQD"
}
}{
"error": {
"type": "rate_limit_error",
"code": "rate_limit_exceeded",
"message": "Has excedido el rate limit de 60 peticiones por minuto. Reintenta tras 30 segundos.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#rate_limit_exceeded",
"request_id": "req_01HKQS5NKW1C6W9T4G5H0JBZVL"
}
}{
"error": {
"type": "api_error",
"code": "internal_error",
"message": "Ha ocurrido un error inesperado. Si persiste, contacta con soporte adjuntando el request_id.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#internal_error",
"request_id": "req_01HKQS5NLX2D7X0U5H6J1KCAWM"
}
}Find a client by tax ID
Look up a client by their Spanish tax identifier (NIF/CIF/NIE). Returns the matching client or 404 if no client uses that tax_id within your company.
Search clients
Search clients by free-text query against `name`, `tax_id`, `vat_id`, `email`, and `phone`. Returns a flat array (no pagination) capped at 50 results.