Recursos principalesClientes
Recursos principales

Clientes

CRUD completo para la gestión de clientes del despacho

curl https://app.getplea.com/api/clients?limit=20&search=martinez \
  -H "Authorization: Bearer TOKEN" \
  -H "x-organization-id: ORG_ID"
[
  {
    "id": "client-uuid-1",
    "name": "Elena Martínez Ruiz",
    "email": "elena.martinez@email.com",
    "phone": "+34 612 345 678",
    "isCompany": false,
    "taxId": "12345678A",
    "address": "Calle Mayor 15, 28001 Madrid",
    "createdAt": "2026-01-15T09:00:00Z"
  },
  {
    "id": "client-uuid-2",
    "name": "Martínez Construcciones S.L.",
    "email": "admin@martinez-sl.com",
    "phone": "+34 915 111 222",
    "isCompany": true,
    "taxId": "B11223344",
    "address": "Polígono Industrial Sur 23, Getafe",
    "createdAt": "2026-02-20T14:30:00Z"
  }
]
curl https://app.getplea.com/api/clients/client-uuid-1 \
  -H "Authorization: Bearer TOKEN" \
  -H "x-organization-id: ORG_ID"
{
  "id": "client-uuid-1",
  "name": "Elena Martínez Ruiz",
  "email": "elena.martinez@email.com",
  "phone": "+34 612 345 678",
  "isCompany": false,
  "taxId": "12345678A",
  "address": "Calle Mayor 15, 28001 Madrid",
  "notes": "Clienta habitual desde 2024",
  "cases": [
    {
      "id": "case-uuid-1",
      "caseNumber": "2026/0042",
      "status": "open"
    }
  ],
  "createdAt": "2026-01-15T09:00:00Z",
  "updatedAt": "2026-03-01T11:20:00Z"
}
curl -X POST https://app.getplea.com/api/clients \
  -H "Authorization: Bearer TOKEN" \
  -H "Content-Type: application/json" \
  -H "x-organization-id: ORG_ID" \
  -d '{
    "name": "Roberto García Díaz",
    "email": "roberto.garcia@email.com",
    "phone": "+34 655 432 100",
    "isCompany": false,
    "taxId": "87654321B",
    "address": "Av. de la Constitución 8, Sevilla"
  }'
{
  "id": "client-uuid-new",
  "name": "Roberto García Díaz",
  "email": "roberto.garcia@email.com",
  "phone": "+34 655 432 100",
  "isCompany": false,
  "taxId": "87654321B",
  "address": "Av. de la Constitución 8, Sevilla",
  "createdAt": "2026-03-07T12:00:00Z"
}
curl -X PATCH https://app.getplea.com/api/clients/client-uuid-1 \
  -H "Authorization: Bearer TOKEN" \
  -H "Content-Type: application/json" \
  -H "x-organization-id: ORG_ID" \
  -d '{"phone": "+34 612 999 888", "address": "Nueva dirección 10, Madrid"}'
{
  "id": "client-uuid-1",
  "name": "Elena Martínez Ruiz",
  "email": "elena.martinez@email.com",
  "phone": "+34 612 999 888",
  "address": "Nueva dirección 10, Madrid",
  "updatedAt": "2026-03-07T12:30:00Z"
}
curl -X DELETE https://app.getplea.com/api/clients/client-uuid-1 \
  -H "Authorization: Bearer TOKEN" \
  -H "x-organization-id: ORG_ID"
{
  "message": "Cliente eliminado correctamente"
}
curl https://app.getplea.com/api/clients/client-uuid-1/dependencies \
  -H "Authorization: Bearer TOKEN" \
  -H "x-organization-id: ORG_ID"
{
  "cases": 3,
  "invoices": 7,
  "documents": 12,
  "tasks": 5,
  "canDelete": false
}
curl https://app.getplea.com/api/client-overview/client-uuid-1 \
  -H "Authorization: Bearer TOKEN" \
  -H "x-organization-id: ORG_ID"
{
  "client": {
    "id": "client-uuid-1",
    "name": "Elena Martínez Ruiz"
  },
  "activeCases": 2,
  "totalInvoiced": 15750.00,
  "pendingPayments": 3200.00,
  "lastActivity": "2026-03-06T16:45:00Z",
  "recentCases": [
    {
      "id": "case-uuid-1",
      "caseNumber": "2026/0042",
      "status": "open",
      "caseType": "civil"
    }
  ]
}

Endpoints para crear, consultar, actualizar y eliminar clientes. Un cliente puede ser una persona física o una empresa.

GET /api/clients

Lista todos los clientes de la organización.

query
limitnumber

Número máximo de resultados. Default: 50.

query
offsetnumber

Desplazamiento para paginación. Default: 0.


GET /api/clients/:id

Obtiene los detalles completos de un cliente.

path
idstring
Required

UUID del cliente.


POST /api/clients

Crea un nuevo cliente.

body
namestring
Required

Nombre del cliente o razón social.

body
emailstring

Email de contacto.

body
phonestring

Teléfono de contacto.

body
isCompanyboolean

true si es persona jurídica (empresa). Default: false.

body
taxIdstring

NIF (persona física) o CIF (empresa).

body
addressstring

Dirección postal completa.


PATCH /api/clients/:id

Actualiza los datos de un cliente existente.

path
idstring
Required

UUID del cliente.

body
namestring

Nuevo nombre.

body
emailstring

Nuevo email.

body
phonestring

Nuevo teléfono.

body
addressstring

Nueva dirección.


DELETE /api/clients/:id

Elimina un cliente. Solo es posible si no tiene expedientes activos.

path
idstring
Required

UUID del cliente a eliminar.


GET /api/clients/:id/dependencies

Consulta las dependencias de un cliente antes de eliminarlo (expedientes, facturas, documentos vinculados).

path
idstring
Required

UUID del cliente.


GET /api/client-overview/:id

Obtiene un resumen general del cliente: expedientes, facturas pendientes, última actividad.

path
idstring
Required

UUID del cliente.