Ir al contenido

Clients (Clientes)

GET /v1/clients

Retorna una lista paginada de clientes. Soporta el sistema de filtrado, incluyendo filtros por campos personalizados.

Respuesta exitosa: 200 OK

{
"total": 150,
"items": [
{
"id": "660e8400-e29b-41d4-a716-446655440001",
"firstname": "Juan",
"lastname": "Pérez",
"email": "juan@example.com",
"phone": "+593991234568",
"doc_type": "cedula",
"doc_number": "1234567890",
"birthdate": "1990-05-15",
"address": "Av. Principal 123",
"city": "Quito",
"state": "Pichincha",
"country": "Ecuador",
"business_account_id": "aa0e8400-e29b-41d4-a716-446655440005",
"custom_fields": [
{ "id": "dd0e8400-e29b-41d4-a716-446655440009", "value": "premium" },
{ "id": "ee0e8400-e29b-41d4-a716-446655440010", "value": "referido" }
]
}
]
}
GET /v1/clients/{id}
ParámetroTipoDescripción
idstring (UUID)ID del cliente

Respuesta exitosa: 200 OK — Un único objeto Client.

Respuesta error: 404 Not Found{ "message": "Client not found." }

POST /v1/clients
CampoTipoRequeridoDescripción
firstnamestringSiNombre (máx. 255)
lastnamestringSiApellido (máx. 255)
emailstringSiEmail válido (máx. 255)
phonestringSiTeléfono internacional (máx. 50)
docTypestringNoTipo de documento (máx. 50)
docNumberstringNoNúmero de documento (máx. 100)
birthdatestringNoFecha de nacimiento (YYYY-MM-DD)
addressstringNoDirección (máx. 500)
citystringNoCiudad (máx. 255)
statestringNoEstado/Provincia (máx. 255)
countrystringNoPaís (máx. 255)
customFieldsarrayNoValores de campos personalizados
customFields[].fieldIdstring (UUID)Si*UUID del campo personalizado
customFields[].valuestringSi*Valor del campo

*Requerido cuando se envía customFields.

Ejemplo:

{
"firstname": "Juan",
"lastname": "Pérez",
"email": "juan@example.com",
"phone": "+593991234568",
"docType": "cedula",
"docNumber": "1234567890",
"birthdate": "1990-05-15",
"address": "Av. Principal 123",
"city": "Quito",
"state": "Pichincha",
"country": "Ecuador",
"customFields": [{ "fieldId": "dd0e8400-e29b-41d4-a716-446655440009", "value": "premium" }]
}

Respuesta exitosa: 201 Created{ "id": "ff0e8400-e29b-41d4-a716-446655440011" }

PUT /v1/clients/{id}

Body: mismo schema que la creación. Todos los campos requeridos deben enviarse.

Respuesta exitosa: 204 No Content

DELETE /v1/clients/{id}

Realiza un soft-delete del cliente.

Respuesta exitosa: 204 No Content