Bienvenido a Xubio DAPI
Sobre nuestra API
Xubio ha desarrollado servicios web que provee a terceros una forma simple de interactuar con los datos y la funcionalidad del sistema. ¿tenes un sistema que necesita emitir comprobantes electrónicos? Entonces Xubio API es la mejor forma de obtener exactamente lo que necesitas para tu próximo proyecto. Agregá el módulo de facturación a tu sistema sin mayores esfuerzos gracias a la API de integración que expone Xubio.
Las API son valiosas, ante todo, porque permiten hacer uso de funciones ya existentes en otro software (o de la infraestructura ya existente en otras plataformas) para no estar reinventando la rueda constantemente, reutilizando así código que se sabe que está probado y que funciona correctamente.
Nuestra API es REST y utiliza autenticación OAuth2 con Client-ID y Secret-ID para la obtención de Tokens
¿Qué significa API Rest?
Rest es un estilo de arquitectura elegante y legible en donde se hace uso de los verbos HTTP para realizar las operaciones de alta (POST), baja (DELETE), modificación (PUT) y consulta (GET) de información. (Endpoints de la aplicacion).
Una de las finalidades que se persigue es la de facilitar el trabajo a los programadores que hacen uso de ella, de manera que se incremente su productividad.
¿Qué es OAuth2?
El protocolo estándar OAuth2 permite que las aplicaciones puedan acceder de manera delimitada a los datos (u operaciones) ubicados en otro servicio o aplicación (proveedor de servicio) en nombre del usuario sin tener que darle las credenciales para ello (usuario/password, etc) a esta aplicación tercera.
Este protocolo ofrece grandes posibilidades de integración entre aplicaciones, sin tener que compartir contraseñas, permitiendo además que el usuario pueda revocar privilegios a las aplicaciones cuando desee.
Anteriormente a OAuth, existian diversas soluciones propietarias para que las aplicaciones externas pudieran acceder a sus datos y/o servicios.
OAuth2 se basa en el concepto de token de accesso, de manera que hay diversas formas de conseguir el token de acceso necesario para poder utilizar los servicios sin tener en ningún momento que introducir las credenciales de acceso en la aplicación cliente que desea acceder a los datos. A este proceso de obtención del token de acceso se le conoce como baile OAuth2
Como integrar Xubio a tu sistema
1. Lo primero es dar de alta tu App Cliente
Para dar de alta tu App Cliente tenes que acceder a: API de Xubio
Al crear tu App Cliente obtendrás un client-id
y un secret-id
, mediante los cuales tendrás acceso a tu empresa a través de los recursos de la API.
2. Lo segundo es obtener un access_token válido
Para obtener un access_token válido tenés que hacer un request a: https://xubio.com/API/1.1/TokenEndpoint
Ejemplo usando curl:
curl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d 'grant_type=client_credentials' --user TU_CLIENT_ID:TU_SECRET_ID https://xubio.com/API/1.1/TokenEndpoint
El response será un JSON con el access_token:
{"scope":"","expires_in":"3600","token_type":"Bearer","access_token":"TU_ACCESS_TOKEN"}
El periódo de vida del token son 3600 segundos. En la implementación hay dos caminos: volver a pedir un token luego de expirado, para esto hay que verificar la respuesta del recurso que se intenta utilizar(por ej. factura de venta). La otra opción es antes de usar cualquier recurso, siempre solicitar un token previamente.
3. Lo tercero es usar ese access_token para acceder a algún recurso
Esto va a depender del recurso que quieras usar, pero en general tenés que pasar el access_token en el header del request de la siguiente manera:
"Authorization: Bearer TU_ACCESS_TOKEN"
Ejemplo usando curl:
curl -X GET --header "Accept: application/json" --header "Authorization: Bearer TU_ACCESS_TOKEN" "https://xubio.com/API/1.1/clienteBean"
4. Lo cuarto es contemplar que el access_token puede resultar inválido
Cuando el access_token deje de ser válido el response tendrá el siguiente error:
{"error":"invalid_token","error_description":"token died"}
En este caso deberá volver al paso dos y obtener un nuevo token.
Cómo utilizar Recursos de la API desde esta documentación
Esta documentación te permite interactuar con los recursos de nuestra API, utilizando tu client-id y tu secret-id.
IMPORTANTE: Se debe tener en cuenta que los cambios impactarán sobre la empresa del token, o sea que si eliminas un Cliente, ese cliente se eliminará realmente de la empresa.
1. Lo primero es dar de alta tu App Cliente
(si ya tenes un client-id
y un secret-id
omitir este paso)
Para dar de alta tu App Cliente tenes que acceder a: API de Xubio
Al crear tu App Cliente obtendrás un client-id
y un secret-id
, mediante los cuales tendrás acceso a tu empresa a través de los recursos de la API.
2. Lo segundo es obtener un Token
En la sección Recursos de la API tenes que hacer clic en el boton Autorizar, el cual abrirá un formulario donde deberás completar los campos CLIENT ID y SECRET ID con los datos obtenidos y hacer clic en "Autorizar", si el token fue obtenido correctamente, podrá cerrar el formulario.
3. Lo tercero es probar los recursos
Seleccioná un recurso listado en API REFERENCE y precioná "Pruébalo", completá los campos que sean requeridos y luego haz clic en "Ejecutar" para realizar la petición correspondiente al servidor. Puedes volver a ejectuar nuevamente la petición o hacer clic en "Limpiar" para realizar otra petición con nuevos campos.