API

Con la API proporcionada por Modela podemos realizar las siguientes acciones:

  • Obtener la información necesaria para rellenar una solicitud. Existen una serie de métodos en la API que nos permiten obtener toda la información para generar una nueva solicitud.
  • Obtener el estado actual de una solicitud.
  • Crear una nueva solicitud o actualizar una existente.
    • Existen las siguientes limitaciones a la hora de crear una solicitud desde la API
      • Modela no nos proporciona un servicio para obtener los usuarios de Azure, por lo que para informar campos del tipo “Lista de usuarios”, a los que debemos enviar el “object id” del usuario en Azure, debemos conocer de antemano dicho valor.
  • Ejecutar una acción sobre una solicitud.
  • Obtener toda la información de una solicitud.
  • Actualizar datos de tablas paremétricas.

Como usar

Para que podamos realizar las llamadas a la API, tenemos que tener configurado un token del tipo correspondiente a la acción que vamos a ejecutar.

El token configurado debemos enviarlo en la cabecera de las peticiones con el nombre “token”.

Además debemos enviar una cabecera con nombre “Company-Id” y valor el ID de la sociedad sobre la que vamos a realizar la acción, este ID debe solicitarse a Midway.

Ejemplo de una llamada, donde {REPLACE_INSTANCE_GENERATED_TOKEN} debe ser el valor del token:

curl --location 'https://demo.getmodela.com/public/external/company' \
--header 'token: {REPLACE_INSTANCE_GENERATED_TOKEN}' 
--header 'Company-Id: {REPLACE_COMPANY_ID}'

Posibles errores de uso

En caso de error al enviar el Token (no se envía, no es valido, está caducado, no es de la sociedad correspondiente a la solicitud), Modela nos devolverá el error 401 (Unauthorized)

Si el error es al procesar la petición realizada a la API, Modela devolverá el error 400 (Bad Request) junto con una mensaje indicando el código de error. En el apartado de cada método podemos ver que posibles errores nos devolverá.

Respuesta

Todos los servicios de la API devuelven la misma estructura en el mensaje de respuesta.

Ejemplo de mensaje de respuesta:

{
    "success" = false,
    "errorCode" = "NOT_FOUND",
    "errorMessage" = "Proceso no encontrado",
    "result" = null
}

En este mensaje existen las siguiente propiedades:

  • Success: es un valor “Verdadero” o “Falso” que indica si la petición se ha ejecutado correctamente.
  • ErrorCode: En caso de error (Success = false), devuelve el código del error. Si ha sido correcto (Sucess = true) la propiedad estará vacía.
  • ErrorMessage: En caso de error (Success = false), devuelve el texto del error. Si ha sido correcto (Sucess = true) la propiedad estará vacía
  • Result: Resultado de la ejecución. Contendrá un objeto del tipo que se ha solicitado. Sólo está informado si la ejecución ha sido correcta (Success = true)

Paginación

Para los métodos que devuelven un listado, los resultados estarán paginados. En estos casos, en la propiedad “Result” de la respuesta, vendrá la información de la página actual y un link para obtener la siguiente página si existe.

En estos casos, se pueden enviar los parámetros (en la URL):

  • pagesize: indica el tamaño de cada página, con un tope de 50. Si la propiedad no se envía, es menor a 0 o mayor a 50 devolverá 10 registros
  • page: indica la página solicitada (la primera página es la 0). Si no se envía devuelve la primera página

Ejemplo de petición con paginación:

curl --location 'https://demo.getmodela.com/public/external/company?page=0&pagesize=20' \
--header 'token: {REPLACE_INSTANCE_GENERATED_TOKEN}' 

Métodos

Los métodos que tiene la API nos servirán para:

Was this article helpful?

Related Articles