Autorización

Implementamos el estándar OAuth 2.0 para que puedas comunicarte con nuestras APIs con un único token del tipo Bearer.

Utilización del token

Una vez que recibas el token de acceso deberás incluirlo como un header de autorización cada vez que te comuniques con nuestras APIs.

Ejemplo en curl:

curl https://api.pomelo.la -H 'Authorization: Bearer eyJhbGciOiJSUzI1Ni'

Cada API validará el token de acceso y verificará que el scope coincida con los permisos requeridos.

Para que los request sean válidos, deberás comunicarte con nuestras APIs únicamente por HTTPS e incluir el header de autorización indicando que es del tipo Bearer.

Solicitar Token

El endpoint /oauth/token se usa para obtener un token de acceso. Al realizar una autenticación exitosa, guárdalo ya que lo necesitarás para comunicarte con nuestras APIs.

Cada token es un JWT que contiene un tiempo de expiración. Cada vez que solicites uno, te devolveremos el mismo token hasta que expire. Cuando expire, te devolveremos uno nuevo.

Parámetros disponibles
Header Parameters
content-typestringrequired
Enum: application/json
Body Parameters
client_idstringrequired
client_secretstringrequired
audiencestringrequired
Audiencia de API
grant_typestringrequired
Enum: client_credentials
Detalle de respuestas
access_tokenstring
Ejemplo: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IloyTmZOUTQwWVVrNXh0WnNRRDlHYSJ9.eyJodHRwczovL3BvbWVsby5sYS9jbGllbnRfaWQiOiIyZmYxMjM0MTY3MzRmMjI5MmUxMTE0ODdiZWRlZmMxZTI1NDkxY2E4YzI1ZTEyMjAzM2E5MGE3NjM2ZDllNDI0IiwiaXNzIjoiaHR0cHM6Ly9wb21lbG8tZGV2ZWxvcC51cy5hdXRoMC5jb20vIiwic3ViIjoiMWNxdXBVM0U0bFpIY2U2ZFdVbHpuU29nZU1rR3ozelFAY2xpZW50cyIsImF1ZCI6Imh0dHBzOi8vYXV0aC1kZXYucG9tZWxvLmxhIiwiaWF0IjoxNjMxMDM1MDQzLCJleHAiOjE2MzExMjE0NDMsImF6cCI6IjFjcXVwVTNFNGxaSGNlNmRXVWx6blNvZ2VNa0d6M3pRIiwic2NvcGUiOiJhcmc6Y2FyZHM6Z2V0LWNhcmQgYXJnOmNhcmRzOmdldC11c2VyLWNhcmQgYXJnOmNhcmRzOmNyZWF0ZS1iYXRjaCBhcmc6Y2FyZHM6YWN0aXZhdGUtY2FyZCBhcmc6Y2FyZHM6Y3JlYXRlLWNhcmQgYXJnOmNhcmRzOmNyZWF0ZS1jYXJkIGFyZzpjYXJkczp1cGRhdGUtYnVsay1jYXJkcyBhcmc6Y2FyZHM6c2VhcmNoLWNhcmQgYXJnOnVzZXJzOmdldC11c2VyIGFyZzp1c2VyczpjcmVhdGUtdXNlciBhcmc6dXNlcnM6c2VhcmNoLXVzZXIgYXJnOnVzZXJzOnVwZGF0ZS11c2VyIiwiZ3R5IjoiY2xpZW50LWNyZWRlbnRpYWxzIn0.DkNi4BtLVdq1YMN5UFrtqvm2p-3DExt1X90janSfRWLbZHo2dtPtXkGfRF9kpdD3ZDA98euB68pt5nxZAGThaqm5g59pKkRz0nFzsDGUCH-Mfd6vYKGksO-dlyTeOwHyF189zYSvOMHcdaEOY2QybCWheOQnUgpFB7WaIPk6M8ZWI9SHSPtUjt6ePY7jsvDmVTtpXQM3ttB-0OarKN0qPi-A7WeD13Q7FuZHgQBxMipMlxeOfsz-RDOMwX7zTBhVNFp-Eu1Jtx1vFHVhDbG7tDW5N2np7kZvYXS5-wSP-fZMc57I1NmXrjbCACMWFhsnqTuHRJiHn3l-kG6nb7_EIw
scopestring
Ejemplo: arg:cards:get-card arg:cards:get-user-card
expires_ininteger
Ejemplo: 86400
token_typestring
Ejemplo: Bearer

¿Te resultó útil esta sección?

POST/oauth/token
{
"client_id":
"3LBFuOiEHrl4BailkRlsnIMmSctMLb7A"
"client_secret":
"s5u3oYK0-A9CV6TkszPQThUa_qxMfr2yyd3-eJwQ ..."
"audience":
"https://auth-dev.pomelo.la"
"grant_type":
"client_credentials"
}
Ejemplo de respuestas
{
"access_token":
"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtp ..."
"scope":
"arg:cards:get-card arg:cards:get-user-ca ..."
"expires_in":
86400
"token_type":
"Bearer"
}

Revocar token

El endpoint /oauth/token/revoke se usa para revocar un token de acceso de nuestra caché. Al revocar el token podrás solicitar uno nuevo con el endpoint /oauth/token

Parámetros disponibles
Header Parameters
content-typestringrequired
Enum: application/json
Body Parameters
client_idstringrequired
client_secretstringrequired
audiencestringrequired
Audiencia de API
grant_typestringrequired
Enum: client_credentials
Detalle de respuestas
statusstring
Enum: SuccessError

¿Te resultó útil esta sección?

POST/oauth/token/revoke
{
"client_id":
"3LBFuOiEHrl4BailkRlsnIMmSctMLb7A"
"client_secret":
"s5u3oYK0-A9CV6TkszPQThUa_qxMfr2yyd3-eJwQ ..."
"audience":
"https://auth-dev.pomelo.la"
"grant_type":
"client_credentials"
}
Ejemplo de respuestas
{
"status":
"Success"
}