API Keys
API Keys server-to-server con scopes específicos. Bcrypt en BD, secreto sólo visible al crearlas.
Base path:
/organizations/:orgId/api-keys·4 endpoints·Source: mosend-wb-backend/src/modules/api-keys/api-keys.controller.ts/organizations/:orgId/api-keys bearer
Lista las API keys de la organización (sin el secret).
Path params
orgIdstringrequerido
Respuestas
- 200
curl -X GET 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/api-keys' \ -H 'X-Api-Key: mk_live_<prefix>.<secret>'
Response · 200
{
"data": [
{
"id": "00000000-0000-0000-0000-000000000000",
"createdAt": "2026-05-01T03:42:18.123Z"
}
],
"timestamp": "2026-05-01T03:42:18.123Z"
}/organizations/:orgId/api-keys bearer
Crear API key. Devuelve `secret` UNA sola vez.
Path params
orgIdstringrequerido
Body (JSON)
namestringrequeridoscopesstring[]phoneNumberIdsstring[]Restricción opcional a un subconjunto de phone-numbers de la org. Vacío o ausente = la key opera sobre TODOS los phone-numbers (default). Si trae UUIDs, la key SOLO puede enviar/leer de esos números.
Respuestas
- 201
curl -X POST 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/api-keys' \
-H 'X-Api-Key: mk_live_<prefix>.<secret>' \
-H 'Content-Type: application/json' \
-d '{"name": "<name>","scopes": [],"phoneNumberIds": []}'Response · 200
{
"data": {
"id": "00000000-0000-0000-0000-000000000000",
"name": "Backend producción",
"scopes": [
"messages:send",
"conversations:read"
]
},
"timestamp": "2026-05-01T03:42:18.123Z"
}/organizations/:orgId/api-keys/:id bearer
Editar API key: scopes y/o nombre. El secret NO se puede tocar — para rotar, revocar y crear otra.
Path params
orgIdstringrequeridoidstringrequerido
Body (JSON)
namestringscopesstring[]phoneNumberIdsstring[]
Respuestas
- 200
curl -X PATCH 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/api-keys/00000000-0000-0000-0000-000000000000' \
-H 'X-Api-Key: mk_live_<prefix>.<secret>' \
-H 'Content-Type: application/json' \
-d '{"name": "<name>","scopes": [],"phoneNumberIds": []}'Response · 200
{
"data": {
"id": "00000000-0000-0000-0000-000000000000",
"name": "Backend producción",
"scopes": [
"messages:send",
"conversations:read"
]
},
"timestamp": "2026-05-01T03:42:18.123Z"
}/organizations/:orgId/api-keys/:id bearer
Revoca una API key de forma permanente.
Path params
orgIdstringrequeridoidstringrequerido
Respuestas
- 204
curl -X DELETE 'https://api.mosend.dev/organizations/a1b2c3d4-1234-5678-9abc-def012345678/api-keys/00000000-0000-0000-0000-000000000000' \ -H 'X-Api-Key: mk_live_<prefix>.<secret>'
Response · 200
{
"data": {
"id": "00000000-0000-0000-0000-000000000000",
"createdAt": "2026-05-01T03:42:18.123Z"
},
"timestamp": "2026-05-01T03:42:18.123Z"
}