OAuth
Gestión del flujo OAuth PKCE para conectar cuentas de MercadoPago.
Flujo completo
sequenceDiagram
participant Admin
participant API as Integration API
participant DB as D1
participant MP as MercadoPago
Admin->>API: GET /oauth/login?client=mi-cliente
API->>DB: Verificar API key activa del cliente
API->>DB: Verificar no tenga token activo
API->>DB: Guardar state + code_verifier
API-->>Admin: 302 Redirect → auth.mercadopago.com
Note over Admin,MP: El usuario autoriza en MercadoPago
MP->>API: GET /oauth/callback?code=XXX&state=YYY
API->>DB: Buscar state, obtener code_verifier
API->>MP: POST /oauth/token (code + code_verifier)
MP-->>API: access_token, refresh_token
API->>DB: Upsert token
API-->>MP: 200 OK
Endpoints
GET /oauth/login
Inicia el flujo OAuth. Redirige al usuario a MercadoPago.
Query parameters:
| Param | Tipo | Requerido | Descripción |
|---|---|---|---|
client |
string | ✅ | Nombre del cliente |
target_url |
string | ❌ | URL para redirect post-OAuth |
Validaciones:
- El cliente debe tener API key activa
- El cliente no debe tener un token OAuth vigente (409 si ya está autenticado)
GET /oauth/callback
Callback que MercadoPago llama después de la autorización.
No llamar manualmente
Este endpoint es llamado por MercadoPago automáticamente.
GET /oauth/validate
Valida si una API key o admin token es válida.
GET /oauth/status
Estado de autenticación del cliente.
POST /oauth/refresh
Renueva el access_token usando el refresh_token.
POST /oauth/logout
Elimina el token OAuth del cliente.