API Inbox
Una API es una vía de comunicación que nos permite entablar una interacción entre los productos y servicios de una empresa y otra.
Las API se consideran como contratos, con documentación que representa un acuerdo entre las partes: si una de las partes envía una solicitud remota con cierta estructura en particular, esa misma estructura determinará cómo responderá el software de la otra parte
Las API permiten que productos y servicios se comuniquen con otros, sin necesidad de saber cómo están implementados. Esto simplifica el desarrollo de las aplicaciones y permite ahorrar tiempo y dinero. Las API le otorgan flexibilidad; simplifican el diseño, la administración y el uso de las aplicaciones; y ofrecen oportunidades de innovación, lo cual es ideal al momento de diseñar herramientas y productos nuevos (o de gestionar los actuales).
Sin duda, una función imprescindible para aportar una buena experiencia de usuario a los clientes ya que ayudan a reducir los tiempos de respuesta.
Características de las API
- Hacen más sencillo el trabajo de los desarrolladores.
- Reducen el trabajo.
- Controlan el acceso a los recursos.
- Son sencillas de utilizar.
- Se utilizan para la comunicación entre servicios.
Por otro lado, también son muy útiles cuando queremos utilizar las funciones de algún servicio con la intención de que los clientes utilicen nuestra aplicación.
¿Qué es una API Rest?
Para comprender lo que es una API Rest, será necesario definir el primer tipo de API, es decir las API SOAP.
Se trata de una especificación de protocolo que estandariza el intercambio de información. Recibe su nombre por sus siglas en inglés que significan Protocolo de Acceso a Objetos Simples (SOAP). Este tipo de API utiliza XML para el formato de sus mensajes y reciben solicitudes en HTTP o SMTP.
Con SOAP es más fácil que las aplicaciones que funcionan en entornos distintos o están escritas en diferentes lenguajes, compartan información.
Las API REST las podemos encontrar en la web y su principal diferencia es que SOAP es un protocolo mientras que REST es un estilo de arquitectura, por lo que no tiene un estándar oficial.
Una API de REST, o API de RESTful, es una interfaz de programación de aplicaciones (API o API web) que se ajusta a los límites de la arquitectura REST y permite la interacción con los servicios web de RESTful.
A lo largo de este contenido encontrará banderas nacionales que le indicarán que las funciones mostradas son exclusivas de determinado país.
Definición, beneficios y funciones de la API Rest de Gosocket
Definición
La API de Gosocket es un conjunto de funciones y procedimientos que permiten la interacción entre aplicaciones externas y los productos de Gosocket de forma segura, permite el intercambio de DTE según el Schema Local.
Esta API cuenta con varios métodos que permitirán utilizar opciones como hacer peticiones a la autoridad tributaria, agregar adjuntos a los documentos, obtener información de documentos, entre otros, de forma síncrona y asíncrona.
Este desarrollo está basado en API Rest lo que nos permite entregar un servicio online que ofrece una red de Gestión de DTE y la validación del ente tributario electrónico que corresponda.
En el proceso de comunicación, el cliente inicia una solicitud. Para ello, el servidor y el cliente web se comunican en un formato de intercambio de información que puede ser Json u otro lenguaje como XML.

Beneficios
- Acceso sencillo sin riesgos: Las API le permiten ofrecer acceso a los recursos y, al mismo tiempo, mantener la seguridad y el control de la información que se gestiona.
- Control de accesos a la información: Usted decide cómo habilita el acceso y a quiénes se lo otorga.
- Separación cliente/servidor: Al ser sistemas independientes pueden manejarse en forma de proyectos autónomos, equipos autónomos.
- Fiabilidad, escalabilidad, flexibilidad: Utilizar los componentes con Microsoft Azure, ayuda a las aplicaciones a rendir de forma óptima cuando cambia la demanda, además de la disponibilidad y seguridad garantizada por Microsoft.
- Experiencia de usuario: Un sitio web basado en API puede dar mejor desempeño que uno tradicional. Cuando se realiza una solicitud al servidor, lo que se obtiene como respuesta son datos planos que requieren tiempos de transferencia menores que si esos mismos datos se recibieran mezclados con el HTML/CSS de la presentación. Con todo este proceso podemos conseguir aplicaciones web que se asemejan más a aplicaciones de escritorio haciendo más amigable los Request y retornos.
Alcances funcionales
Según el modelo de operación, cuenta con los siguientes alcances funcionales basados en los esquemas definidos por la entidad tributaria local:
- Modelo de integración por los métodos de consumo.
- Generación y firma del XML tributario.
- Carga del certificado digital para la firma del documento tributario.
- Despachar/enviar el XML al ente tributario y obtener la aceptación o rechazo del documento por la entidad tributaria.
Autenticación en la API
La API de Gosocket está implementada con procolo HTTPS, con TLS 1.2. La autenticación es el proceso para identificar si las credenciales enviadas en la petición son válidas o no. Hay diferentes métodos de autenticación y la API de Gosocket permite los siguientes:
- Basic Auth
- oAuth 2.0
Para consumir los métodos disponibles en la API de Gosocket es necesario contar con las credenciales de acceso de acuerdo con el método de autenticación definido. La generación de estas credenciales solo la podrá realizar un usuario con perfil de administrador y dominio @gosocket.net
Estas credenciales se deben tramitar directamente con el Gerente de Proyecto y/o consultor asignado.
Basic Auth
La Autenticación Básica o Basic Auth es de los métodos de autenticación más sencillos. Consiste en enviar la petición con un ID de usuario y una contraseña.
UserName: xxxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx
Password: xxxxxxxxxxxxxx
El ID de usuario y la contraseña los genera y entrega Gosocket tanto para ambiente de pruebas como para ambiente productivo.
Solicita las credenciales de acceso de tipo Basic Auth con el Gerente de Proyecto y/o consultor asignado.
Consumo de API con Basic Auth
Para consumir la API con autenticación básica, es necesario utilizar las credenciales previamente asignadas.

https://developers-sbx.gosocket.net/api/v1/https://developers.gosocket.net/api/v1/oAuth 2.0
OAuth 2.0 es un framework de autorización basado en autenticación por token que permite acceder a la API sin revelar las credenciales de usuario gracias a que utiliza tokens de acceso. Este método se utiliza para garantizar la seguridad de la información confidencial del usuario, ya que las credenciales del usuario permanecen privadas y no se comparten con la API.
Cuando un usuario solicita acceso a una API, la API le pedirá al usuario que proporcione sus credenciales. Estas credenciales luego son autenticadas por el servidor de autenticación, que genera un token de acceso que se utiliza para acceder a la API. Este token solo es válido por un período de tiempo específico, después del cual el usuario debe volver a autenticarse para continuar usando la API.
El uso de tokens de acceso en lugar de credenciales de usuario también facilita que los usuarios administren su configuración de seguridad. Los usuarios pueden revocar el acceso a su API sin tener que cambiar su contraseña y también pueden administrar el nivel de acceso otorgado a aplicaciones de terceros. En general, OAuth 2.0 proporciona un método seguro y flexible para acceder a las API mientras protege la privacidad y seguridad del usuario.
Obtención de Token
Para obtener el token de acceso, se debe consumir el endpoint:
https://developers-sbx.gosocket.net/oauth2/tokenhttps://developers.gosocket.net/oauth2/tokenSe utiliza método POST y los siguientes parámetros:
| Parámetro | Valor |
|---|---|
| grant_type: | client\_credentials |
| client_id: | UserName de las credenciales generadas por Gosocket |
| client_secret: | Password de las credenciales generadas por Gosocket |
| scope: | all |
El token obtenido es de tipo "Bearer"
Ejemplo:

Consumo API con oAuth 2.0
Para consumir la API es necesario utilizar el token obtenido y configurar el método de autenticación Bearer Token. Se debe tener en cuenta la vigencia del token ya que, si vence, se debe generar uno nuevo.

https://developers-sbx.gosocket.net/api/v2/https://developers.gosocket.net/api/v2/Estructuras por país
A continuación, enlistamos las estructuras de Country Document ID por país:

Para facilitar sus procesos de petición, le proporcionamos las estructuras de ID fiscal por país:
