Recursos principalesExpedientes
Recursos principales

Expedientes

CRUD para expedientes jurídicos con campos específicos del ámbito legal

curl "https://app.getplea.com/api/cases?status=open&caseType=civil&limit=10" \
  -H "Authorization: Bearer TOKEN" \
  -H "x-organization-id: ORG_ID"
[
  {
    "id": "case-uuid-1",
    "caseNumber": "2026/0042",
    "caseType": "civil",
    "status": "open",
    "description": "Reclamación de cantidad por impago de servicios profesionales",
    "clientId": "client-uuid-1",
    "clientName": "Elena Martínez Ruiz",
    "opposingParty": "Construcciones Norte S.L.",
    "judicialBody": "Juzgado de Primera Instancia",
    "judicialBodyNumber": "12",
    "judicialDistrict": "Madrid",
    "procedureType": "Juicio ordinario",
    "courtFileNumber": "0042/26",
    "assignedLawyerId": "user-uuid-1",
    "assignedLawyerName": "Ana López Fernández",
    "createdAt": "2026-01-20T10:00:00Z"
  }
]
curl https://app.getplea.com/api/cases/case-uuid-1 \
  -H "Authorization: Bearer TOKEN" \
  -H "x-organization-id: ORG_ID"
{
  "id": "case-uuid-1",
  "caseNumber": "2026/0042",
  "caseType": "civil",
  "status": "open",
  "description": "Reclamación de cantidad por impago de servicios profesionales",
  "clientId": "client-uuid-1",
  "client": {
    "id": "client-uuid-1",
    "name": "Elena Martínez Ruiz",
    "email": "elena.martinez@email.com"
  },
  "opposingParty": "Construcciones Norte S.L.",
  "judicialBody": "Juzgado de Primera Instancia",
  "judicialBodyNumber": "12",
  "judicialDistrict": "Madrid",
  "procedureType": "Juicio ordinario",
  "courtFileNumber": "0042/26",
  "assignedLawyerId": "user-uuid-1",
  "tasks": 5,
  "documents": 8,
  "invoices": 2,
  "createdAt": "2026-01-20T10:00:00Z",
  "updatedAt": "2026-03-05T14:30:00Z"
}
curl -X POST https://app.getplea.com/api/cases \
  -H "Authorization: Bearer TOKEN" \
  -H "Content-Type: application/json" \
  -H "x-organization-id: ORG_ID" \
  -d '{
    "caseNumber": "2026/0100",
    "caseType": "laboral",
    "clientId": "client-uuid-1",
    "opposingParty": "Empresa Tecnológica S.A.",
    "status": "open",
    "description": "Despido improcedente. Reclamación de indemnización.",
    "judicialBody": "Juzgado de lo Social",
    "judicialBodyNumber": "3",
    "judicialDistrict": "Madrid",
    "procedureType": "Despido",
    "assignedLawyerId": "user-uuid-1"
  }'
{
  "id": "case-uuid-new",
  "caseNumber": "2026/0100",
  "caseType": "laboral",
  "status": "open",
  "description": "Despido improcedente. Reclamación de indemnización.",
  "clientId": "client-uuid-1",
  "opposingParty": "Empresa Tecnológica S.A.",
  "judicialBody": "Juzgado de lo Social",
  "judicialBodyNumber": "3",
  "judicialDistrict": "Madrid",
  "procedureType": "Despido",
  "assignedLawyerId": "user-uuid-1",
  "createdAt": "2026-03-07T12:00:00Z"
}
curl -X PATCH https://app.getplea.com/api/cases/case-uuid-1 \
  -H "Authorization: Bearer TOKEN" \
  -H "Content-Type: application/json" \
  -H "x-organization-id: ORG_ID" \
  -d '{"status": "in_progress", "courtFileNumber": "0042/26"}'
{
  "id": "case-uuid-1",
  "caseNumber": "2026/0042",
  "status": "in_progress",
  "courtFileNumber": "0042/26",
  "updatedAt": "2026-03-07T12:30:00Z"
}
curl -X DELETE https://app.getplea.com/api/cases/case-uuid-1 \
  -H "Authorization: Bearer TOKEN" \
  -H "x-organization-id: ORG_ID"
{
  "message": "Expediente eliminado correctamente"
}
curl https://app.getplea.com/api/cases/case-uuid-1/activity \
  -H "Authorization: Bearer TOKEN" \
  -H "x-organization-id: ORG_ID"
[
  {
    "id": "activity-1",
    "type": "status_change",
    "description": "Estado cambiado de 'open' a 'in_progress'",
    "userId": "user-uuid-1",
    "userName": "Ana López",
    "createdAt": "2026-03-05T14:30:00Z"
  },
  {
    "id": "activity-2",
    "type": "document_added",
    "description": "Documento 'Demanda.pdf' añadido",
    "userId": "user-uuid-1",
    "userName": "Ana López",
    "createdAt": "2026-03-04T10:15:00Z"
  },
  {
    "id": "activity-3",
    "type": "comment",
    "description": "Vista oral programada para el 15 de abril",
    "userId": "user-uuid-2",
    "userName": "Pedro Martín",
    "createdAt": "2026-03-03T09:00:00Z"
  }
]
curl "https://app.getplea.com/api/cases/export-altas?dateFrom=2026-01-01&dateTo=2026-03-31" \
  -H "Authorization: Bearer TOKEN" \
  -H "x-organization-id: ORG_ID" \
  -o expedientes.csv
Content-Type: text/csv
Content-Disposition: attachment; filename="expedientes-altas.csv"

caseNumber,caseType,status,clientName,opposingParty,createdAt
2026/0042,civil,open,Elena Martínez,Construcciones Norte S.L.,2026-01-20
2026/0100,laboral,open,Elena Martínez,Empresa Tecnológica S.A.,2026-03-07

Endpoints para gestionar expedientes (casos legales). Incluye campos específicos como órgano judicial, número de autos, tipo de procedimiento y parte contraria.

GET /api/cases

Lista los expedientes de la organización con filtros opcionales.

query
limitnumber

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

query
offsetnumber

Desplazamiento para paginación.

query
statusstring

Filtrar por estado: open, in_progress, closed, archived.

query
caseTypestring

Filtrar por tipo: civil, penal, laboral, mercantil, administrativo, familiar.

query
clientIdstring

Filtrar por UUID del cliente.

query
assignedLawyerIdstring

Filtrar por UUID del abogado asignado.

query
dateFromstring

Fecha de inicio del rango (ISO 8601).

query
dateTostring

Fecha fin del rango (ISO 8601).


GET /api/cases/:id

Obtiene los detalles completos de un expediente.

path
idstring
Required

UUID del expediente.


POST /api/cases

Crea un nuevo expediente.

body
caseNumberstring
Required

Número de expediente (único dentro de la organización).

body
caseTypestring

Tipo de procedimiento: civil, penal, laboral, mercantil, administrativo, familiar.

body
clientIdstring

UUID del cliente asociado.

body
opposingPartystring

Nombre de la parte contraria.

body
statusstring

Estado inicial: open, in_progress. Default: open.

body
descriptionstring

Descripción del caso.

body
judicialBodystring

Nombre del órgano judicial (ej: "Juzgado de Primera Instancia").

body
judicialBodyNumberstring

Número del órgano judicial.

body
procedureTypestring

Tipo de procedimiento (ej: "Juicio ordinario", "Monitorio").

body
courtFileNumberstring

Número de autos en formato 0000/00.

body
assignedLawyerIdstring

UUID del abogado responsable.


PATCH /api/cases/:id

Actualiza un expediente existente. Solo se envían los campos que cambian.

path
idstring
Required

UUID del expediente.


DELETE /api/cases/:id

Elimina un expediente.

path
idstring
Required

UUID del expediente a eliminar.


GET /api/cases/:id/activity

Obtiene el historial de actividad de un expediente (cambios, comentarios, eventos).

path
idstring
Required

UUID del expediente.


GET /api/cases/export-altas

Exporta los expedientes en formato CSV para informes de altas.

query
dateFromstring

Fecha de inicio (ISO 8601).

query
dateTostring

Fecha fin (ISO 8601).