Saltar al contenido principal

Crear nueva clave API

POST 

/apikeys

Propósito

Genera una nueva clave API y la asocia a la empresa del usuario autenticado (empresa o transportista).

Objetivo

Permitir que las empresas creen credenciales de acceso programático a la API de ECMR, con diferentes niveles de permisos según el rol asignado.

Casos de uso

  • Generar una clave API para integrar un sistema ERP con la API de ECMR.
  • Crear una clave con rol dev para entornos de prueba.
  • Emitir una clave admin para herramientas internas de gestión.

Flujo de generación

flowchart TD
A[Recibir POST /apikeys] --> B{¿Usuario autenticado?}
B -->|No| C[401 Unauthorized]
B -->|Sí| D{¿Tipo de cuenta válido?}
D -->|No| E[404 NOT_FOUND]
D -->|Sí| F[Generar apikey con prefijo T/C + 9 chars]
F --> G[Generar temp_code de 15 chars]
G --> H[Crear documento Apikey con role]
H --> I[Añadir referencia al array apikeys de la empresa]
I --> J[200 OK - Devolver apikey completa]

Detalles técnicos

  • La clave generada tiene formato: prefijo (T para trucker, C para company) + 9 caracteres alfanuméricos aleatorios = 10 caracteres.
  • Se genera un temp_code de 15 caracteres alfanuméricos que se usa como identificador seguro para la eliminación posterior.
  • El campo type del body determina el role de la clave.
  • La clave completa solo se devuelve en esta respuesta. En listados posteriores (GET /apikeys) se devuelve enmascarada.

Roles válidos: dev, gestor, admin (default: admin).

Autenticación

Requiere JWT Bearer token (isLoged middleware). También acepta API Key.

Request

Responses

Clave API creada exitosamente. La clave completa se devuelve solo en esta respuesta; en listados posteriores aparecerá enmascarada.

Response Headers