OAuth (Mosend como proveedor)

Referencia de 3 endpoints generados desde mosend-wb-backend/src/modules/oauth-provider/oauth-consent.controller.ts.

Base path: /oauth·3 endpoints·Source: mosend-wb-backend/src/modules/oauth-provider/oauth-consent.controller.ts
GET/oauth/requests/:id
bearer

Detalle de una solicitud de autorización pendiente: aplicación, alcances y organizaciones elegibles.

Path params

  • idstringrequerido

Respuestas

  • 200
curl -X GET 'https://api.mosend.dev/oauth/requests/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"
}
POST/oauth/requests/:id/decision
bearer

Permitir o rechazar la solicitud. Devuelve la URI a la que volver (con code o error).

Path params

  • idstringrequerido

Body (JSON)

  • approvebooleanrequerido

    `true` permite; `false` devuelve `access_denied` a la aplicación.

  • organizationIdstring · uuid

    Organización sobre la que se concede el acceso (obligatoria al aprobar).

Respuestas

  • 201
curl -X POST 'https://api.mosend.dev/oauth/requests/00000000-0000-0000-0000-000000000000/decision' \
  -H 'X-Api-Key: mk_live_<prefix>.<secret>' \
  -H 'Content-Type: application/json' \
  -d '{"approve": true,"organizationId": "00000000-0000-0000-0000-000000000000"}'
Response · 200
{
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "name": "string",
    "description": "string"
  },
  "timestamp": "2026-05-01T03:42:18.123Z"
}
GET/oauth/userinfo
bearer

Identidad mínima del usuario y la organización de la concesión (solo con token OAuth, alcance organizations:read).

Respuestas

  • 200
curl -X GET 'https://api.mosend.dev/oauth/userinfo' \
  -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"
}