Autenticación
Necesitará autenticar sus solicitudes para acceder a cualquiera de los puntos finales de la API de Subsidy. En esta guía, veremos cómo funciona la autenticación. Subsidy necesita dos niveles de autenticación para sus solicitudes de API: autenticación con API key para identificar a su organización y JWT para la sesión del usuario.
Autenticación de API
Para autenticar sus solicitudes de API, debe proporcionar su API key en el encabezado de autorización. Su API key se le entregará cuando se registre para tener acceso. Debe incluirse en todos los pedidos realizados.
Para pruebas se puede usar el API key f74e4d62-40ba-b404-816e-130fdc8926b8.
Ejemplo de pedido usando API key
curl https://api.subsidy.pe -H "Api-key: YOUR_API_KEY"
Iniciar sesión
Para autenticar las solicitudes de usuario, debe proporcionar un JWT en el encabezado de autorización. Para obtenerlo debe iniciar sesión con su cuenta de usuario.
Para pruebas se puede usar el usuario admin_demo@gmail.com con contraseña 123456789.
Atributos
- Name
username- Type
- string
- Description
El correo del usuario.
- Name
password- Type
- string
- Description
La contraseña del usuario.
Atributos de la respuesta
- Name
accessToken- Type
- string
- Description
JWT de la sesión del usuario.
- Name
refreshToken- Type
- string
- Description
Token para solicitar extender la sesión una vez vencida.
- Name
user._id- Type
- string
- Description
Identificador del usuario.
- Name
user.company- Type
- string
- Description
Identificador de la empresa asociada al usuario.
- Name
user.companyName- Type
- string
- Description
Nombre de la empresa asociada al usuario.
- Name
user.username- Type
- string
- Description
Correo del usuario.
- Name
user.dni- Type
- string
- Description
Documento del usuario.
- Name
user.name- Type
- string
- Description
Nombre completo del usuario.
- Name
user.position- Type
- timestamp
- Description
Rol del usuario. Puede ser
user,adminosuper_admin.
Pedido
{
"username": "ejemplo@gmail.com",
"password": "micontraseña"
}
Respuesta
{
"accessToken": "YOUR_JWT",
"refreshToken": "REFRESH_TOKEN",
"user": {
"_id": "WAz8eIbvDR60rouK",
"company": "WAz8eIbvDR60rouK",
"companyName": "Empresa del usuario",
"username": "ejemplo@gmail.com",
"dni": "12345678",
"name": "Nombre del usuario",
"position": "admin"
}
}
Uso del JWT
Una vez se tenga el JWT, este se podrá usar para las solicitudes que el usuario necesite realizar. Se debe incluir además de la API key en el encabezado de autorización.
Ejemplo de pedido usando JWT
curl https://api.subsidy.pe \
-H "api-key: YOUR_API_KEY" -H "Authorization: YOUR_JWT"
Actualizar JWT
Cuando se termine el periodo de vida del JWT, se tendrá que hacer una solicitud para obtener uno nuevo. Para esto se usará el Refresh Token que también se obtiene al iniciar sesión.
Atributos
- Name
_id- Type
- string
- Description
Identificador del usuario.
- Name
refreshToken- Type
- string
- Description
Token para solicitar extender la sesión una vez vencida.
Atributos de la respuesta
- Name
accessToken- Type
- string
- Description
Nuevo JWT de la sesión del usuario.
- Name
refreshToken- Type
- string
- Description
Token para solicitar extender la sesión una vez vencida.
Pedido
{
"_id": "WAz8eIbvDR60rouK",
"refreshToken": "REFRESH_TOKEN"
}
Respuesta
{
"accessToken": "YOUR_JWT",
"refreshToken": "REFRESH_TOKEN",
}