Service Callout

Al igual que con el interceptor Internal API Call, Service Callout permite invocar una llamada con base en configuraciones predefinidas. La diferencia es que, mientras que Internal API Call redirige a API que están en la Plataforma Sensedia, Service Callout permite invocar una llamada externa.

Configuración del interceptor

Las imágenes y texto a continuación presentan las informaciones necesarias para configurar el interceptor.

service callout screen
service callout body
service callout header
  • Variable name: define el nombre del Service Callout, siendo único por flujo. Es a través de esta nomenclatura que el interceptor es recuperado dentro del mapa $call.contextVariables; siendo necesario el interceptor Service Mashup para capturar la respuesta del servicio.

  • URL: define la URL de la petición externa

  • Method: define el método HTTP que se utilizará en la petición externa;

  • Expected status: define el status code esperado;

  • Preserve query string: si es marcado, la cadena de consulta presente en la petición será transmitida para la llamada externa.

  • Preserve body: si es marcado, el cuerpo contenido en la petición será transmitido para la llamada externa. El campo es habilitado cuando el método es diferente de GET.

  • Body: permite la inserción de un cuerpo. El campo es habilitado cuando el method es diferente de GET y el campo Preserve body es desmarcado.

  • Preserve headers: si es marcado, los headers presentes en la petición serán transmitidas para la llamada externa.

  • Headers: permite la inserción de headers.

service callout asynchronous

Service Callout puede realizar llamadas síncronas o asíncronas En el segundo caso, una llamada síncrona será enviada para la nueva URL y el interceptor quedará aguardando el resultado de esta llamada para continuar la ejecución del flujo. Para llamadas asíncronas, seleccionar el campo Asynchronous.

Para capturar la respuesta de llamadas asíncronas, es necesario utilizar el interceptor Service Mashup en el flujo.

Las llamadas asíncronas pueden ser del tipo Fire and Forget o no, basta el usuario seleccionar el campo del mismo nombre o dejarlo en blanco. Si se selecciona el campo, el interceptor enviará la llamada y la olvidará. En este caso, no habrá ningún retorno de la nueva llamada.

Cuando no sea marcada la opción Fire and Forget, podrá ser configurado un tiempo de espera (Timeout) para la llamada a ser realizada. Esta llamada será realizada de forma paralela y será cerrada en el caso que el timeout alcance su límite o ella retorne un resultado.

service callout abort
  • Abort request if fail: aborta el proceso en el caso que la petición falle. Se caracteriza una falla cuando el status code de la petición es diferente del esperado. El campo es habilitado cuando la petición sea síncrona.

Funcionamiento

Para recuperar el resultado de la ejecución del Service Callout, es necesario tener un interceptor Service Mashup añadido al flujo.

Se debe usar el mapa $call.contextVariables, y se devolverá un objeto RestResponse.

Thanks for your feedback!
EDIT

Share your suggestions with us!
Click here and then [+ Submit idea]