Rest Api

Rest Api Action icon

Maneja de manera sincrónica las llamadas de la API RESTful. Esta acción permite que el sistema maneje cargas mayores. Devuelve tanto el cuerpo como los encabezados de la llamada a la API. Esto facilita la prueba y depuración de scripts.

Puede probar un script que contenga una acción REST API y ver la información de respuesta. Para hacerlo, ejecute el script usando la opción iniciar con rastreo.

También puede hacer llamadas síncronas de la API RESTful utilizando la () función GetRestProxy en una acción SNIPPET. Esta opción no maneja grandes cargas al igual que la acción REST API y no es el método preferido.

Esta acción es uno de los métodos soportados de conectarse a los servicios web en un script Studio.

Dependencias

Existen límites de uso de esta acción que se imponen al nivel de la unidad de negocioCerrado Agrupación organizativa de alto nivel utilizado para administrar el soporte técnico, facturación y configuración global para su CXone entorno. Esto se hace de manera que una no debiera impactar a la otra. Las limitaciones dentro del Plataforma son:

  • Formato de respuesta: Solo se admite el formato de respuesta JSON.
  • Reintentos en caso de falla: El gestionador de acciones intentará automáticamente dos veces si se recibe una falla antes de regresar la respuesta.
  • Tiempo en espera: Usted especifica el valor de tiempo de espera en la solicitud. El valor no puede ser superior a 90 segundos.
  • Tamaño máximo de respuesta: El tamaño máximo de respuesta es de 32 KB. Esto está en consonancia con la funcionalidad Snippet existente. Si está por alcanzar este límite, debe reducir el tamaño de los datos devueltos.
  • Límite de aceleración: El límite de aceleración está definido por 2 parámetros:
    • Solicitudes simultáneas máximas:°De forma predeterminada, se permiten hasta 100 solicitudes simultáneas. Este límite es el mismo para todos los clientes CXone. Esto significa que las 100 solicitudes simultáneas generan una salida mucho mayor que hacer llamadas API desde una acción Snippet. Si necesita más de 100 solicitudes simultáneas, hable con su Representante de cuenta CXone acerca de aumentar el límite para su unidad de negocio. Se requieren aprobaciones especiales.
    • Conteo en cola: Cuando las solicitudes exceden el límite, las solicitudes adicionales ingresan a una cola de procesamiento. Una vez que las solicitudes caen por debajo del límite, se procesan las solicitudes en cola.
  • Cortacircuitos: Si su URL especificada está inactiva o no se puede ingresar a ella, puede obtener varias fallas en su solicitud. Cuando sucede esto, CXone reducirá la ejecución de solicitudes de TODAS las URL desde la acción REST API durante un tiempo. Esto permite que su URL especificada se recupere del error. Los límites se identifican a continuación:
    • Tiempo de Retroceso o Duración de la Pausa: Si se alcanza la tasa de fallas, no se ejecutarán las solicitudes de la acción REST API durante 30 segundos.
    • Rendimiento mínimo: 100 solicitudes por segundo. Si su unidad de negocio no está ejecutando la cantidad mínima de solicitudes, continuará ejecutando sus solicitudes aunque las solicitudes estén fallando.
    • Tasa de fallas: Si fallaron el 50% de las solicitudes durante 30 segundos, no se ejecutarán sus solicitudes durante los siguientes 30 segundos. 30 segundos es una ventana rodante.

Otras dependencias de esta acción son:

  • JSON es el único formato de respuesta soportado. La acción demanda que todos los JSON estén en una sola fila. Al trabajar con JSON en esta acción, puede:

    • Haga una sustitución de variables a partir de una cadena de caracteres que contenga JSON.
    • Convertir un objeto de datos dinámicos a JSON que es soportado al usar la función asjson(). Considere que asjson() trata todo como una cadena de caracteres, lo que significa que se requiere cierta manipulación al trabajar con valores booleanos o numéricos.
    • También puede pasar la variable de salida resultSet(out) de una acción previa REST API a esta propiedad.
  • Las repuestas se devuelven como objetos jtoken. Puede trabajar con ellos tal como lo haría con objetos de datos dinámicos en su script.
  • Las respuestas contienen encabezados y el cuerpo de la respuesta. También pueden contener códigos de estatus HTTP. No todas las respuestas incluirán códigos de estatus. De no haber error, si la acción REST API no genera una respuesta válida, o si no se puede analizar el error devuelto como respuesta válida, no se incluye un estatus.
  • Puede usar más de una acción REST API en un script, pero ambas no pueden hacer referencia a los mismos objetos.

Propiedades de entrada

Estas propiedades definen los datos que utiliza la acción al ejecutarse.

Las propiedad

Descripción

Leyenda

Ingrese una frase corta que identifique de forma única esta acción en el script. La leyenda aparece en el lienzo del script debajo del ícono de acción. The default is the action name.

Verb

Admite acciones de REST básicas como GET, PUT, POST, DELETE y PATCH.

Parameters

Le permite especificar los parámetros de consulta o publicar cualquier dato. Se pueden aceptar muchos tipos de JSON, como Jobject , Jarray o Jtoken.

Headers

Le permite agregar encabezados personalizados para permitir la autenticación del cliente, como tokens de portador. Puede utilizar JSON en este campo.

Importante Si su punto final de URL personalizado requiere encabezados diferentes, debe especificarse en esta propiedad. Para mantener la paridad de características con la acción Snippet existente, CXone agrega los siguientes encabezados:

{"Accept":"application/json", "Content-Type" :"application/x-www-form-urlencoded"}

Command

Actualmente la única opción es MakeRestRequest. Esto funciona igual que la MakeRestRequest()función que se utiliza al hacer una llamada REST API en una acción Snippet.

TimeOutInMilliSeconds

Permite especificar y respetar un tiempo de espera de la llamada REST. Debe ser menos de 90 segundos (90000 milisegundos). Si no se especifica ningún tiempo límite, el valor predeterminado es de 10 segundos (10000 milisegundos).

Service Address

El URL de la API REST que desee que llame la acción. Puede utilizar la sustitución de variables con esta propiedad.

Propiedades de salida

Estas propiedades contienen variables que incluyen datos que se evuelven al ejecutar la acción. Están disponibles como referencia y para usarse cuando se completa la acción.

Las propiedad

Descripción

resultSet(out)

Una variable que mantiene información devuelta por la API especificada en la Dirección del Servicio. De ser necesario, usted puede transferir el contenido de esta variable tal cual es al encabezado y los parámetros. La respuesta se devuelve como un objeto Jtoken, pero puede declararlo como un objeto dinámico y trabajar con él como lo haría con otros objetos dinámicos en su script.

errorArgList(out)

Un objeto de datos dinámico que almacena información sobre cualquier error que se presente. Cuando se presenta un error, el objeto almacena el código de estatus, la descripción del estatus y el mensaje del HTTP. Cuando no hay error, el objeto está vacío.

Los códigos de estatus y las descripciones de HTTP se devuelven únicamente en el error y se pueden analizar adecuadamente como respuesta válida. Esto significa que no todos los errores incluirán un código de respuesta HTTP.

Condiciones de la rama de resultados

Las condiciones de las ramas de resultados le permiten crear ramas en su script para manejar diferentes resultados cuando se ejecute una acción.

Condición

Descripción

Throttle

Ruta tomada cuando se ejecutan demasiadas solicitudes en un período corto de tiempo. Consulte las limitaciones a continuación para obtener más detalles.

InvalidInput

Ruta tomada si se encuentra una entrada no válida o se produce un error de tiempo de espera. Cada parámetro se valida cuando se guarda el script.

Failure

Camino tomado cuando ocurre algún error o excepción dentro del NICE CXoneAplicaciónejecutando la solicitud.

Error

Ruta tomada cuando el punto final del cliente remoto devuelve un código de error http.

Default

Camino tomado cuando la respuesta no se recibe dentro de los 90 segundos.

Success

Ruta que se toma si la acción finaliza sin errores y cualquier llamada API o devolución de datos se realiza correctamente (códigos de respuesta 2xx).