CallEndpoint

La acción CallEndpoint llama a un endpoint HTTP.

La tabla siguiente muestra los parámetros de la acción CallEndpoint .

Tabla 1. Parámetros de la acción CallEndpoint
Nombre Tipo de datos Relación Obligatorio Notas
método Enumeración Atributo Valores posibles:
  • GET
  • POST
  • PUT
  • SUPRIMIR
  • PATCH
url Serie Atributo La URL base del endpoint (excluyendo los parámetros de consulta).
savePath Serie Atributo Nee La respuesta se almacena como un objeto JSON con el formato siguiente:
/response
{
status_code: 200,
status_message: "OK",
headers: {
"Date": "Tue, 16 Jun 2020 17:31:29 GMT",
"Content-Type": "application/json",
},
body: ...
}

Si no proporciona un valor savePath , la respuesta de punto final no se guarda en una ubicación predeterminada. Se debe proporcionar un valor savePath si desea almacenar la respuesta.

sslConfiguration Configuración SLS Subelemento Nee Para obtener más información, consulte SSLConfiguration.
autenticación Autenticación Subelemento Nee Un objeto de autenticación debe ser uno de los tipos siguientes:
queryParameters QueryParameter Subelemento Nee Puede tener más de un parámetro de consulta. Para obtener más información, consulte QueryParameter.
requestHeaders RequestHeaders Subelemento Nee Puede tener más de una cabecera de solicitud. Para obtener más información, consulte RequestHeader.
requestCookie RequestCookie Subelemento Nee Novedad en V2_1 Puedes tener más de una cookie de petición. Para más información, véase RequestCookie
cuerpo

RequestBody

UrlEncodedFormRequestBody

XmlRequestBody

Subelemento Nee El cuerpo debe ser uno de los tipos siguientes:

La tabla siguiente muestra los parámetros para SSLConfiguration.

Tabla 2. Estructura SSLConfiguration
Nombre Tipo de datos Obligatorio Notas
protocolo Serie Nee El protocolo SSL a utilizar. El valor predeterminado es TLSv1.2.
allowUntrustedServerCertificate Booleano Nee Indica si se permiten certificados de servidor que no son de confianza. El valor predeterminado es False.

Ejemplo de XML:

Este ejemplo permite un certificado de servidor que no es de confianza.

<SSLConfiguration allowUntrustedServerCertificate="true" />

La tabla siguiente muestra los parámetros para BasicAuthentication.

Tabla 3. BasicAuthentication
Nombre Tipo de datos Obligatorio
nombre de usuario Serie
contraseña Serie Nee

Ejemplo de XML:

Este ejemplo establece un nombre de usuario y una contraseña de autenticación.

<BasicAuthentication username="${/username}" password="${/password}" />

La tabla siguiente muestra los parámetros para BearerAuthentication.

Tabla 4. BearerAuthentication
Nombre Tipo de datos Obligatorio Notas
señal Serie La señal de acceso.

Ejemplo de XML:

Este ejemplo establece una señal de acceso para la autenticación.

<BearerAuthentication token="${/access_token}" />

La tabla siguiente muestra los parámetros para DigestAuthentication.

Tabla 5. DigestAuthentication
Nombre Tipo de datos Obligatorio
nombre de usuario Serie
contraseña Serie
dominio Serie Nee
nonce Serie Nee
algorithm Serie Nee
qop Serie Nee
cnonce Serie Nee
nonceCount Serie Nee

Ejemplo de XML:

Este ejemplo establece un nombre de usuario y una contraseña para la autenticación.

<DigestAuthentication username="${/public_key}" password="${/private_key}" />

Novedad en la versión 2

La tabla siguiente muestra los parámetros para la autenticación de Akamai EdgeGrid .

Tabla 6. Estructura de autenticación de Akamai EdgeGrid
Nombre Tipo de datos Obligatorio
accessToken Serie
clientToken Serie
clientSecret Serie

Novedad en la versión 2

La tabla siguiente muestra los parámetros para la autenticación Hawk.

Tabla 7. Estructura de autenticación Hawk
Nombre Tipo de datos Obligatorio
keyID Serie
clave Serie
algorithm Serie
hash Serie Nee
ext Serie Nee
aplicación Serie Nee
dlg Serie Nee

La tabla siguiente muestra los parámetros para QueryParameter.

Tabla 8. QueryParameter
Nombre Tipo de datos Obligatorio Notas
nombre Serie
valor Serie  
omitIfEmpty Booleano Nee Omite el parámetro si el valor está vacío.

Ejemplo de XML:

Este ejemplo establece un nombre y un valor para una consulta y omite el parámetro si el valor está vacío.

<QueryParameter name="stream_position" value="${/bookmark}" omitIfEmpty="true" />

La tabla siguiente muestra los parámetros para RequestHeader.

Tabla 9. RequestHeader
Nombre Tipo de datos Obligatorio Notas
nombre Serie
valor Serie Nee  
omitIfEmpty Booleano Nee Omite la cabecera si el valor está vacío.

Ejemplo de XML:

Este ejemplo establece un nombre y un valor para una cabecera de solicitud.

<RequestHeader name="authorization" value="client_id:${/client_id}, client_secret:${/client_secret}" />

Novedad en V2_1

La siguiente tabla muestra los parámetros para Request Cookie.

Tabla 10. RequestCookie estructura
Nombre Tipo de datos Obligatorio Notas
nombre Serie
valor Serie  
Dominio Serie Nee Establece el dominio para la cookie. El valor por defecto del dominio será el nombre de host capturado delcallendpoint url. El valor por defecto es el dominio delurl. Si el dominio devuelto por la cookie no es el mismo que el dominio de la URL, debe especificar el dominio.
vía de acceso Serie Nee Establece la ruta para la cookie. El valor por defecto es la ruta del archivourl. Si la ruta devuelta por la cookie no coincide con la ruta de la URL, debe especificar la ruta.
secreto Booleano Nee Cifra el campo de valor. El valor por defecto es falso.

Ejemplo de XML:

Este ejemplo establece el campo requerido (nombre y valor) para una cookie de petición.
<RequestCookie name=” ${/<savePath>/cookies/<cookie_name>/name}” value=”${/< savePath>/cookies/ <cookie_name> /value}”>
Este ejemplo establece todos los campos obligatorios y opcionales de la cookie.
<RequestCookie name=” ${/<savePath>/cookies/<cookie_name>/name}” value=”${/< savePath>/cookies/ <cookie_name> /value}” domain=”${/<savePath>/cookies/<cookie_name>/domain}”> path = ”  ${/<savePath>/cookies/<cookie_name>/path}” secret = “true”>

La tabla siguiente muestra los parámetros de RequestBody.

Tabla 11. Estructura RequestBody
Nombre Tipo de datos Obligatorio Notas
Tipo Serie Debe ser un tipo de contenido de solicitud HTTP válido. Por ejemplo, application/json.
codificación Serie Debe ser un tipo de codificación de cuerpo HTTP válido. Por ejemplo, UTF-8.
contenido Serie Incluya el contenido del cuerpo entre las etiquetas de apertura y cierre del elemento <RequestBody>.

Ejemplo de XML:

Este ejemplo establece un tipo de contenido, codificación de cuerpo y contenido para un cuerpo de solicitud.

<RequestBody type="application/json" encoding="UTF-8">{ "grant_type": "client_credentials" }</RequestBody>

La siguiente tabla muestra los parámetros para UrlEncodedFormRequestBody.

Tabla 12. UrlEncodedFormRequestBody estructura
Nombre Tipo de datos Obligatorio Notas
parámetros Map < Serie, Serie > Colección de pares de nombre/valor.

Ejemplo de XML:

Este ejemplo establece los pares nombre/valor para un cuerpo de solicitud de formulario codificado con URL.

<UrlEncodedFormRequestBody>
                <Parameter name="grant_type" value="urn:ietf:params:oauth:grant-type:jwt-bearer" />
                <Parameter name="client_id" value="${/client_id}" />
                <Parameter name="client_secret" value="${/client_secret}" />
                <Parameter name="assertion" value="${/jwt_assertion}" />
            </UrlEncodedFormRequestBody>

La siguiente tabla muestra los parámetros para XmlRequestBody.

Tabla 13. XmlRequestBody estructura
Nombre Tipo de datos Obligatorio Notas
Tipo Serie Nee Debe ser un tipo de contenido de solicitud HTTP válido. Por ejemplo, application/json.
codificación Serie Nee Debe ser un tipo de codificación de cuerpo HTTP válido. Por ejemplo, UTF-8.
contenido XML El contenido XML real del cuerpo debe anidarse dentro del elemento <XmlRequestBody> como subelementos.

Ejemplo de XML:

Este ejemplo establece el contenido para un cuerpo de solicitud XML.

<XmlRequestBody>
                <authRequest>
                    <maaS360AdminAuth>
                        <billingID>${/billing_id}</billingID>
                        <platformID>${/platform_id}</platformID>
                        <appID>${/app_id}</appID>
                        <appVersion>${/app_version}</appVersion>
                        <appAccessKey>${/app_access_key}</appAccessKey>
                        <userName>${/username}</userName>
                        <password>${/password}</password>
                    </maaS360AdminAuth>
                </authRequest>
            </XmlRequestBody>

Ejemplo de XML:

Esta acción realiza una solicitud POST a https://${/host}/auth/oauth2/token con una cabecera de solicitud y un cuerpo de solicitud, y guarda la respuesta en el estado en /get_access_token.

<CallEndpoint url="https://${/host}/auth/oauth2/token" method="POST" savePath="/get_access_token">
    <RequestHeader name="authorization" value="client_id:${/client_id}, client_secret:${/client_secret}" />
    <RequestBody type="application/json" encoding="UTF-8">{ "grant_type": "client_credentials" }</RequestBody>
</CallEndpoint>