OAuth
En esta guía te vamos a explicar los pasos que debes seguir para poder integrar el protocolo OAuth en tu plataforma para ofrecer a tus usuarios vincular su cuenta de autosign en tu plataforma
Glosario
Client Application ID
: Identificador único de tu plataforma/aplicación dentro de autosign.Scopes
: Los recursos del usuario a los cuales quieres tener acceso.Authorization Code
: El código generado luego de que el usuario haya dado el consentimiento de querer conectarse con tu plataforma.
Scopes
Los scopes que puedes utilizar en tu integración son:
transaction:read
: Otorgar acceso para poder ver las transacciones según tu alcancetransaction:create
: Otorgar acceso para poder crear transacciones a tu nombretransaction:update
: Otorgar acceso para actualiza transacciones creadaswebhook:read
: Otorgar acceso para poder leer los webhooks creados en tu empresawebhook:create
: Otorgar acceso para poder crear webhookswebhook:remove
: Otorgar acceso para poder eliminar los webhooks de tu empresafile:create
: Otorgar acceso para poder subir archivos (documentos, pdf, etc)template:read
: Otorgar acceso para poder ver las plantillas según tu alcance
Al momento de incluir multiples scopes en el link de autorización, deben estar separados con un espacio
Authorization Code Flow
Un usuario de autosign se conecta a tu plataforma pasando por los siguientes pasos:
- Desde una página en tu plataforma, el usuario hace click en un link que lo redirecciona a Autosign Dashboard. Dicho link tiene que tener en sus parámetros el
Client Application ID
y losScopes
a los que tu plataforma desea acceder. - En Autosign Dashboard, el usuario dará el consentimiento necesario para conectarse con tu plataforma.
- El usuario es redireccionado a tu plataforma con un
Authorization Code
en los parámetros de la URL. - Tu plataforma realiza el intercambio del Authorization Code por un
Access Token
válido.
1. Crear una aplicación OAuth
Para empezar con tu integración, dirígete al panel OAuth en configuraciones OAuth 2.0
1. En la sección de OAuth Aplicaciones haz click sobre el botón: Crear aplicacion
2. Rellena el formulario con la información necesaria y envía el formulario
3. Haz click sobre ver credenciales en la aplicacion recientemente creada
4. Obtendrás el Client Application ID y el Client Secret. Tenlo a mano para poder construir el Authorization Link.
Authorization Link
Con los dos pasos realizados anteriormente, ya te encuentras listo para crear el Authorization Link.
https://dashboard.autosign.io/oauth/authorize?client_id=clsqvh10i0001tyzkifq3s7xc&scopes=webhook:create%20transaction:create
Este endpoint debe recibir dos parámetros:
- Tu
client_id
generado al crear la OAuth application. - Los
scopes
a los cuales deseas acceder.
2. Un usuario conecta su cuenta
Luego de que el cliente hace click al Authorization Link, será redireccionado a la página de autosign en donde se le preguntará si quiere conectar con tu plataforma.
El proceso de crear una cuenta en autosign o ingresar en la plataforma es responsabilidad nuestra, no debes preocuparte por eso. Todo viene incluído dentro del Authorization Code Flow.

3. El usuario es redirigido a tu plataforma
Luego de que el cliente haya otorgado los permisos para conectar su cuenta en tu plataforma, será redirigido a la página de tu aplicación que corresponda al link de Callback URL
configurado al crear la OAuth Application.
Para culminar con éxito la conexión, nosotros te pasamos en el Callback URL:
- El
Authorization Code
(code en los parámetros) para intercambiar por un Access Token. Tiene una expiración de 10 minutos y es de único uso.
https://your-callback-url/auth?code=7ba2af4264226f464f9a199861e49dbd
4. La plataforma completa el flujo
Intercambia el código recibido por un Access Token.
curl -X POST 'https://api.autosign.io/v1/oauth/exchange/code' \
-H 'Content-Type: application/json' \
-d '{
"code": "93ea05f364cb4bf0781e3f1864d7190880ccaeea51181c98fefab3a5c0981919",
"client_secret": "5fc468a5e3dcea7ac731e5786c67e85ce27697c5d7a800f76fd6c839ce19998c",
"client_id": "clsqvh10i0001tyzkifq3s7xc",
}'
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"expires_in": 4324324
}
Listo! El usuario ya se encuentra conectado a tu plataforma. Guarda en tu base de datos el access_token
. Este token te servirá para autenticarte en las request que realices a autosign API. Para poder hacerlo, sólo debes pasar en el header de la request:Authorization: Bearer $access_token
El refresh_token
puede usarse para generar nuevos access_token cuando el actual haya expirado. Te recomendamos que también guardes este tipo de token ya que sólo se generará una única vez cuando realices el exchange del código por el access_token.
Refrescar un Access Token
Si necesitas refrescar un access_token porque el que tienes expiró, puedes hacerlo pasando a autosign API el refresh_token generado anteriormente:
curl -X POST 'https://api.autosign.io/v1/oauth/refresh/token' \
-H 'Content-Type: application/json' \
-d '{
"refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
"client_secret": "5fc468a5e3dcea7ac731e5786c67e85ce27697c5d7a800f76fd6c839ce19998c",
"client_id": "clsqvh10i0001tyzkifq3s7xc",
}'