El servicio está basado en una arquitectura REST (en inglés representational state transfer) por lo que puede ser consumido por casi cualquier lenguaje de programación. Asimismo para la transferencia de información se utiliza la estructura de datos JSON (JavaScript Object Notation) debido a que es un formato ligero de intercambio de datos.
Los parámetros de los métodos varian según la solicitud realizada, puede ser un simple valor concatenado en la URI hasta un objeto complejo contenido en el cuerpo de la solicitud. A continuación se presentan algunos ejemplos de parámetros del servicio de cuentas:
/Api/User/Logged?userKey=im6OowaxELOuzVjoZQx8Ry%2bT%2b31JFBwbJyggh5CoQARhhfhWm8Gixesb10ih58hk%2fXLkgg%3d%3d&companyId=7814d5a0-122e-4538-a54c-a95a00e51609
Ejemplo de parametro concatenado en la URI de la solicitud
{
"AccountId": "string",
"CompanyId": "string",
"Name": "string"
}
Ejemplo de parametro con un objeto complejo contenido en el cuerpo de la solictud.
En la documentación de los métodos del servicio, se presentará los tipos de parametros recibidos para cada solicitud.
Las respuestas a las solicitudes de los servicios están definidas por un modelo genérico con la siguiente estructura.
{
"Object": {...},
"Message": {
"Application": "string",
"ErrorMessage": "string",
"Status": "Ok",
"Type": "string"
},
"PartialView": "string"
}
En la propiedad Object del modelo genérico, como se habia mensionado, se encuentra la respuesta a la solicitud del servicio. Para obtener el resultado de la solicitud es necesario validar que Message.Status tenga el valor de Ok, en caso contrario, el valor de Object vendrá con valor nulo.
A continuación, se especificará el significado de cada valor de Message.Status:
Ok: La solicitud realizada ha sido satisfactorio y por consiguiente en la propiedad Object vendrá el resultado obtenido de la solicitud y Message.ErrorMessage vendrá vacio.
Warning: La solicitud ha marcado una advertencia por validaciones controladas, la propiedad Object será nulo y Message.ErrorMessage contendrá información correspondiente a la validación realizada.
Danger: La solicitud ha marcado un error no controlado, la propiedad Object será nulo y Message.ErrorMessage contendrá información correspondiente al error no controlado.
En la documentación de cada servicio, se presentará un ejemplo de la respuesta de la solicitud que devolverá la propiedad Object del modelo genérico.