Saltar al contenido

Actividad HTTP v2 PATCH

Introducción

Una actividad HTTP v2 PATCH, utilizando su conexión HTTP v2, aplica modificaciones parciales a un recurso existente en un servicio accesible a través del protocolo HTTP o HTTPS, y puede ser utilizada tanto como fuente (para proporcionar datos en una operación) como destino (para consumir datos en una operación).

Crear una actividad HTTP v2 PATCH

Una instancia de una actividad HTTP v2 PATCH se crea a partir de una conexión HTTP v2 utilizando su tipo de actividad PATCH.

Para crear una instancia de una actividad, arrastre el tipo de actividad al lienzo de diseño o copie el tipo de actividad y péguelo en el lienzo de diseño. Para más detalles, consulte Crear una instancia de actividad o herramienta en Reutilización de componentes.

Una actividad HTTP v2 PATCH existente se puede editar desde estas ubicaciones:

Configurar una actividad HTTP v2 PATCH

Siga estos pasos para configurar una actividad HTTP v2 PATCH:

Paso 1: Ingrese un nombre y especifique configuraciones

En este paso, proporcione un nombre para la actividad y especifique la URL, los parámetros de solicitud, los encabezados de solicitud y configuraciones adicionales. Cada elemento de la interfaz de usuario de este paso se describe a continuación.

Configuración de la actividad HTTP v2 PATCH paso 1

Consejo

Los campos con un ícono de variable admiten el uso de variables globales, variables de proyecto y variables de Jitterbit. Comience escribiendo un corchete cuadrado abierto [ en el campo o haciendo clic en el ícono de variable para mostrar una lista de las variables existentes de las que elegir.

Importante

Los campos en las tablas muestran el ícono de variable solo en modo de edición. Para que los valores de las variables de estos campos se completen en tiempo de ejecución, la versión del agente debe ser al menos 10.75 / 11.13.

  • Nombre: Ingrese un nombre para identificar la actividad. El nombre debe ser único para cada actividad HTTP v2 PATCH y no debe contener barras diagonales / ni dos puntos :.

  • Ruta: Ingrese una URL para usar en la actividad:

    • Si se deja en blanco, se utilizará la URL base configurada en la conexión HTTP v2 en tiempo de ejecución.
    • Si se especifica una ruta parcial, se agregará a la URL base configurada en la conexión HTTP v2.
    • Si se especifica una URL completa, anulará la URL base configurada en la conexión HTTP v2.

    Los parámetros de solicitud se pueden incluir encerrándolos entre llaves { }. También se pueden utilizar parámetros de consulta (como /queryrecord?id=10).

    • URL: Muestra la URL completa que se utilizará en tiempo de ejecución.
  • Parámetros de Solicitud: Haz clic en el ícono de agregar para añadir una fila a la tabla de abajo e ingresa un Nombre y un Valor para cada parámetro de solicitud. Los parámetros de solicitud proporcionados se codificarán automáticamente en URL.

    Alternativamente, los parámetros de solicitud se pueden proporcionar en la transformación de solicitud. Los parámetros de solicitud que no comparten una clave se envían de manera acumulativa, independientemente de dónde se especifiquen. Si la misma clave de parámetro se especifica tanto en este campo como en la transformación de solicitud, la especificada en la transformación tiene prioridad.

    Para guardar la fila, haz clic en el ícono de enviar en la columna más a la derecha.

    Para editar o eliminar una sola fila, pasa el cursor sobre la columna más a la derecha y utiliza el ícono de editar o el ícono de eliminar .

    Para eliminar todas las filas, haz clic en Limpiar Todo.

    Importante

    Los campos en la tabla de Parámetros de Solicitud muestran el ícono de variable solo en modo de edición. Para que los valores de variable de estos campos se completen en tiempo de ejecución, la versión del agente debe ser al menos 10.75 / 11.13.

    Los campos en la tabla de Parámetros de Solicitud no admiten el uso de variables para pasar JSON sin procesar. Si tu caso de uso no admite definir JSON sin procesar en los campos directamente, escapa el contenido JSON antes de pasarlo con una variable. Por ejemplo, escapar {"success": "true"}; se convierte en {\"success\": \"true\"};.

  • Encabezados de Solicitud: Haz clic en el ícono de agregar para añadir una fila a la tabla de abajo e ingresa un Nombre y un Valor para cada encabezado de solicitud.

    Alternativamente, los encabezados se pueden definir en otros campos de configuración de la interfaz de usuario o proporcionarse en la transformación de solicitud. Los encabezados que no comparten una clave se envían de manera acumulativa, independientemente de dónde se especifiquen.

    Si la misma clave de encabezado se especifica en múltiples lugares, se sigue este orden de precedencia:

    1. Un encabezado proporcionado en la transformación de la solicitud anula todos los campos a continuación.
    2. Un encabezado proporcionado en el campo Request Headers de una actividad PATCH de HTTP v2 (este campo) anula el resto de los campos a continuación.
    3. Un encabezado proporcionado en el campo Request Headers de una conexión HTTP v2, si Send Request Headers in Activity Execution está habilitado, tiene la menor precedencia.

    Nota

    Si un encabezado se define en múltiples ubicaciones, cada instancia del encabezado se agregará a la solicitud de una actividad siguiendo el orden de precedencia anterior. Este orden se basa en cómo los servicios manejan típicamente los encabezados duplicados en una solicitud.

    Advertencia

    No defina manualmente los encabezados de solicitud Authorization en actividades de HTTP v2 si la conexión HTTP v2 está configurada para enviar sus propios encabezados de solicitud Authorization dependiendo del tipo de autenticación seleccionado. Hacerlo resulta en la terminación de la operación y falla antes de alcanzar el punto final objetivo y se registra como un error 400 Bad Request.

    Si se requiere autenticación dinámica a nivel de actividad, establezca el tipo de autenticación de la conexión en No Auth y configure los encabezados de solicitud Authorization de la actividad según sea necesario.

    Para guardar la fila, haga clic en el ícono de enviar en la columna más a la derecha.

    Para editar o eliminar una sola fila, pase el cursor sobre la columna más a la derecha y use el ícono de editar o el ícono de eliminar .

    Para eliminar todas las filas, haga clic en Clear All.

    Importante

    Los campos en la tabla Request Headers muestran el ícono de variable solo en modo de edición. Para que los valores de variable de estos campos se completen en tiempo de ejecución, la versión del agente debe ser al menos 10.75 / 11.13.

    Los campos en la tabla Request Headers no admiten el uso de variables para pasar JSON sin procesar. Si su caso de uso no admite definir JSON sin procesar en los campos directamente, escape el contenido JSON antes de pasarlo con una variable. Por ejemplo, escapar {"success": "true"}; se convierte en {\"success\": \"true\"};.

  • Configuraciones Adicionales: Haz clic en el ícono de agregar para añadir una fila a la tabla de abajo e ingresar un Nombre y un Valor para cada configuración adicional.

    Estas configuraciones adicionales son compatibles:

    Clave
    Valor Predeterminado Tipo de Dato Descripción
    connection-timeout 30000 Entero El tiempo de espera de transferencia en milisegundos. Si esta configuración no se especifica, el tiempo de espera de transferencia predeterminado es de 30000 milisegundos (30 segundos). Establecer en 0 para un tiempo de espera ilimitado.
    content-type Cadena El tipo de contenido de la estructura de solicitud que se espera por la API particular. Por ejemplo, text/plain, application/json, application/x-www-form-urlencoded, etc. Si esta configuración no se especifica, no hay valor predeterminado.
    max-redirect 50 Entero El número máximo de redireccionamientos a seguir. Si esta configuración no se especifica, el valor predeterminado es seguir 50 redireccionamientos. Establecer en 0 o un número negativo para evitar seguir cualquier redireccionamiento.
    trailing-linebreaks false Cadena Elimina los espacios en blanco y los saltos de línea al principio y al final cuando se establece en true. Si esta configuración no se especifica o se establece en false, los datos permanecen sin cambios.

    Alternativamente, se pueden proporcionar configuraciones adicionales en la transformación de la solicitud. Las configuraciones adicionales que no comparten una clave se envían de manera acumulativa, independientemente de dónde se especifiquen. Para todas las configuraciones excepto para el tipo de contenido, si la misma clave de configuración se especifica tanto en este campo como en la transformación de la solicitud, la especificada en la transformación tiene prioridad.

    Para content-type, un valor especificado aquí tiene prioridad sobre todos los demás lugares en la interfaz de usuario donde se puede especificar el content-type. Si el content-type se especifica en múltiples lugares, se sigue este orden de precedencia:

    1. Un encabezado Content-Type proporcionado en la tabla de Configuraciones Adicionales de una actividad HTTP v2 PATCH (esta tabla) anula todos los campos a continuación.
    2. El campo bodyContentType especificado en una transformación de solicitud anula los campos restantes a continuación.
    3. Un encabezado Content-Type proporcionado en el nodo headers de la transformación de solicitud anula los campos restantes a continuación.
    4. Un encabezado Content-Type proporcionado en el campo Encabezados de Solicitud de una actividad HTTP v2 PATCH anula el campo restante a continuación.
    5. Un encabezado Content-Type proporcionado en el campo Encabezados de Solicitud de una conexión HTTP v2, si Enviar Encabezados de Solicitud en la Ejecución de Actividad está habilitado, tiene la menor prioridad.

    Nota

    Si un encabezado se define en múltiples ubicaciones, cada instancia del encabezado se agregará a la solicitud de una actividad siguiendo el orden de precedencia anterior. Este orden se basa en cómo los servicios manejan típicamente encabezados duplicados en una solicitud.

    Para guardar la fila, haga clic en el ícono de enviar en la columna más a la derecha.

    Para editar o eliminar una sola fila, pase el cursor sobre la columna más a la derecha y use el ícono de editar o el ícono de eliminar .

    Para eliminar todas las filas, haga clic en Limpiar Todo.

    Importante

    Los campos en la tabla de Configuraciones Adicionales muestran el ícono de variable solo en modo de edición. Para que los valores de variable de estos campos se completen en tiempo de ejecución, la versión del agente debe ser al menos 10.75 / 11.13.

    Los campos en la tabla de Configuraciones Adicionales no admiten el uso de variables para pasar JSON sin procesar. Si su caso de uso no admite definir JSON sin procesar en los campos directamente, escape el contenido JSON antes de pasarlo con una variable. Por ejemplo, escapar {"success": "true"}; se convierte en {\"success\": \"true\"};.

  • Multipart: Seleccione para admitir solicitudes de multipart/form-data al usar esquemas predeterminados. Esto es necesario para solicitudes que incluyen cargas de formularios RFC 1867.

    Nota

    Al usar esquemas personalizados, multipart/form-data no es compatible.

  • Configuraciones opcionales: Haga clic para expandir configuraciones opcionales adicionales:

    • Ignorar error de operación en caso de código de estado no exitoso: Seleccione para que las operaciones informen un estado exitoso incluso si se devuelve un código de estado no exitoso de la API que está llamando el conector. El valor predeterminado no está seleccionado.

    • Seleccionar código de estado HTTP que se considerará exitoso en tiempo de ejecución de la operación: Seleccione ya sea Agrupado por Clase o Granular (Entrada Manual) para considerar los códigos de estado especificados como exitosos en registros de operaciones.

      • Agrupado por Clase: Cuando se selecciona, se muestra un menú desplegable con clases de códigos de estado no exitosos que se tratarán como exitosos. Las opciones del menú desplegable incluyen Redirección 3xx, Error del Cliente 4xx y Error del Servidor 5xx. El valor predeterminado del menú desplegable no está seleccionado.

      • Granular (Entrada Manual): Cuando se selecciona, se muestra un campo para ingresar manualmente una lista delimitada por comas de códigos de estado no exitosos que se tratarán como exitosos. Esta lista puede incluir diferentes clases de códigos de estado al mismo tiempo. El valor predeterminado del campo está en blanco.

        HTTP v2 granular status

  • Guardar y Salir: Si está habilitado, haga clic para guardar la configuración de este paso y cerrar la configuración de la actividad.

  • Siguiente: Haga clic para almacenar temporalmente la configuración de este paso y continuar al siguiente paso. La configuración no se guardará hasta que haga clic en el botón Finalizado en el último paso.

  • Descartar Cambios: Después de realizar cambios, haga clic para cerrar la configuración sin guardar los cambios realizados en ningún paso. Un mensaje le pide que confirme que desea descartar los cambios.

Paso 2: Proporcionar el esquema de solicitud

En este paso, se puede proporcionar un esquema de solicitud personalizado. Si no se proporciona un esquema de solicitud personalizado, se utilizará el esquema de solicitud predeterminado del conector.

Configuración de actividad HTTP v2 PATCH paso 2

  • Proporcionar Esquema de Solicitud: El esquema de solicitud define la estructura de los datos de solicitud que se utilizan en la actividad HTTP v2 PATCH. Para obtener instrucciones sobre cómo completar esta sección de la configuración de la actividad, consulte Esquemas definidos en una actividad.

  • Atrás: Haga clic para almacenar temporalmente la configuración de este paso y regresar al paso anterior.

  • Siguiente: Haga clic para almacenar temporalmente la configuración de este paso y continuar al siguiente paso. La configuración no se guardará hasta que haga clic en el botón Finalizado en el último paso.

  • Descartar Cambios: Después de realizar cambios, haga clic para cerrar la configuración sin guardar los cambios realizados en ningún paso. Aparecerá un mensaje que le pedirá que confirme que desea descartar los cambios.

Paso 3: Proporcionar el esquema de respuesta

En este paso, se puede proporcionar un esquema de respuesta personalizado. Si no se proporciona un esquema de respuesta personalizado, se utilizará el esquema de respuesta predeterminado del conector.

Configuración de actividad HTTP v2 PATCH paso 3

  • Proporcionar Esquema de Respuesta: El esquema de respuesta define la estructura de los datos de respuesta que se utilizan en la actividad HTTP v2 PATCH. Para obtener instrucciones sobre cómo completar esta sección de la configuración de la actividad, consulte Esquemas definidos en una actividad.

  • Incluir Propiedades Adicionales de la Respuesta HTTP en el Esquema: Cuando se selecciona Sí, Usar Esquema Guardado o Sí, Proporcionar Nuevo Esquema y el esquema utilizado tiene un tipo de archivo XML o JSON, se muestra la casilla de verificación Incluir Propiedades Adicionales de la Respuesta HTTP en el Esquema. Cuando se selecciona, el esquema se envuelve dentro de una estructura definida por Jitterbit, lo que permite que parámetros adicionales sean accesibles en el esquema:

    Propiedades adicionales de HTTP v2 en el esquema de respuesta

    {
      "__jitterbit_aditional_properties__": {
        "__jitterbit_api_headers__": [
          {
            "key": "",
            "value": ""
          },
          {
            "key": "",
            "value": ""
          }
        ],
        "__jitterbit_api_statuscode__": 200,
        "__jitterbit_api_errorbody__": ""
      },
      "root": {
        // Original JSON
      }
    }
    
    <__jitterbitResponse__>
        <__jitterbit_aditional_properties__>
            <__jitterbit_api_headers__>
                <key>headerKey1</key>
                <value>headerValue1</value>
            </__jitterbit_api_headers__>
            <__jitterbit_api_headers__>
                <key>headerKey2</key>
                <value>headerValue2</value>
            </__jitterbit_api_headers__>
            <__jitterbit_api_statuscode__>200</__jitterbit_api_statuscode__>
            <__jitterbit_api_errorbody__>
            </__jitterbit_api_errorbody__>
        </__jitterbit_aditional_properties__>
        <root>
            <!-- Original XML -->
        </root>
    </__jitterbitResponse__>
    
    • __jitterbit_api_headers__: Devuelve los encabezados proporcionados por la llamada de solicitud.

    • __jitterbit_api_statuscode__: Devuelve el código de estado de la llamada de solicitud.

    • __jitterbit_api_errorbody__: Devuelve el cuerpo de respuesta de la llamada de solicitud en formato de cadena si la llamada de solicitud devuelve un código de estado no exitoso.

    • root: Alberga la estructura original del esquema de respuesta.

    Nota

    Al seleccionarse, se genera un nuevo esquema con el envoltorio. La estructura del esquema original se preserva dentro de root. Debido a que se genera un nuevo esquema para este propósito, el original sin el envoltorio puede usarse más tarde si es necesario.

  • Atrás: Haz clic para almacenar temporalmente la configuración de este paso y regresar al paso anterior.

  • Siguiente: Haz clic para almacenar temporalmente la configuración de este paso y continuar al siguiente paso. La configuración no se guardará hasta que hagas clic en el botón Finalizado en el último paso.

  • Descartar Cambios: Después de realizar cambios, haz clic para cerrar la configuración sin guardar los cambios realizados en ningún paso. Un mensaje te pedirá que confirmes que deseas descartar los cambios.

Paso 4: Revisar los esquemas de datos

Los esquemas de solicitud y respuesta configurados se muestran.

Configuración de actividad PATCH de HTTP v2 paso 4

  • Esquemas de Datos: Estos esquemas de datos son heredados por transformaciones adyacentes y se muestran nuevamente durante mapeo de transformaciones.

    Si se proporcionaron esquemas personalizados en los pasos anteriores, se mostrarán. Si no se proporcionaron esquemas personalizados, se mostrarán los esquemas predeterminados incluidos con el conector.

    Para las actividades de HTTP v2, los esquemas de datos se regeneran automáticamente en función de las actualizaciones realizadas a los esquemas definidos en pasos anteriores.

    Precaución

    Las actividades de HTTP v2 creadas antes del lanzamiento de Harmony 10.85 / 11.23 pueden tener un botón de Actualizar manual presente debido a los metadatos del proyecto definidos anteriormente. Si está presente, no interactúe con este botón. Cree una nueva instancia de una actividad afectada para eliminarlo.

    Los esquemas de solicitud y respuesta predeterminados constan de estos nodos y campos:

    • Solicitud:

      Nodo/Campo del Esquema de Solicitud Notas
      json Formato del esquema de solicitud
      request Nodo de solicitud
      root Nodo raíz
      headers Nodo de encabezados
      item Nodo de un encabezado específico
      key Clave del encabezado
      value Valor del encabezado
      requestParameters Nodo de parámetros de solicitud
      item Nodo de un parámetro de solicitud específico
      key Clave del parámetro de solicitud
      value Valor del parámetro de solicitud
      multipart Nodo de un multipart (incluido solo cuando se selecciona Multipart en la interfaz de configuración de la actividad y se utilizan esquemas predeterminados)
      plainText Nodo de las partes de texto plano de un multipart
      item Nodo de una parte de texto plano específica en el multipart
      key Clave de la parte de texto plano que se mapea a su atributo name en la carga útil de la solicitud
      value Valor de la parte de texto plano que se mapea a su contenido en la carga útil de la solicitud
      contentType Content-Type de la parte de texto plano

      Nota

      Este campo tiene prioridad sobre un encabezado Content-Type proporcionado en el nodo headers.

      fileData Nodo de las partes de datos de archivo de un multipart
      item Nodo de una parte de datos de archivo específica en el multipart
      key Clave de la parte de datos de archivo que se mapea a sus atributos name y filename en la carga útil de la solicitud. Debe incluir la extensión del archivo si se conoce

      Nota

      Si se proporciona una ruta para esta clave y el campo fileName se deja vacío, el atributo filename contendrá solo el nombre y la extensión del archivo.

      value Valor de la parte de datos de archivo que se mapea a su contenido en la carga útil de la solicitud

      Importante

      La cadena proporcionada para este valor representa el archivo en sí y debe estar codificada en formato Base64. Consulte Base64encodefile en Funciones criptográficas para saber cómo codificar un archivo utilizando un script.

      fileName Cadena que representa el nombre del archivo de la parte de datos de archivo que se mapea a su atributo filename en la carga útil de la solicitud. Debe incluir la extensión del archivo si se conoce. Este campo tiene prioridad sobre lo que se define en el campo key para el atributo filename
      mimeType Cadena que representa el tipo MIME (media) de la parte de datos de archivo, independiente de las extensiones de archivo proporcionadas en los campos key o fileName
      additionalSettings Nodo de configuraciones adicionales
      item Nodo de una configuración adicional específica
      key Clave de la configuración adicional
      value Valor de la configuración adicional
      body Cuerpo de la solicitud
      bodyContentType Content-Type del cuerpo de la solicitud

      Nota

      Este campo tiene prioridad sobre un encabezado Content-Type proporcionado en el nodo headers.

    • Respuesta:

      Nodo/Campo del Esquema de Respuesta Notas
      json Formato del esquema de respuesta
      response Nodo de respuesta
      responseItem Nodo del ítem de respuesta
      status Un booleano que indica si se devolvió una respuesta
      properties Propiedades de la respuesta
      headers Nodo de encabezados
      item Nodo de un encabezado específico
      key Clave del encabezado
      value Valor del encabezado
      responseContent Contenido de la respuesta
      error Nodo de error
      statusCode Código de estado HTTP de la respuesta
      statusMessage Mensaje de estado de la respuesta
      details Detalles de la respuesta
  • Regresar: Haga clic para almacenar temporalmente la configuración de este paso y volver al paso anterior.

  • Terminado: Haga clic para guardar la configuración de todos los pasos y cerrar la configuración de la actividad.

  • Descartar Cambios: Después de realizar cambios, haga clic para cerrar la configuración sin guardar los cambios realizados en ningún paso. Un mensaje le pide que confirme que desea descartar los cambios.

Próximos pasos

Después de configurar una actividad HTTP v2 PATCH, complete la configuración de la operación agregando y configurando otras actividades o herramientas como pasos de la operación. También puede configurar los ajustes de la operación, que incluyen la capacidad de encadenar operaciones que están en los mismos o diferentes flujos de trabajo.

Las acciones del menú para una actividad son accesibles desde el panel del proyecto y el lienzo de diseño. Para más detalles, consulte el menú de acciones de actividad en Conceptos básicos de conectores.

Las actividades HTTP v2 PATCH que se utilizan como fuente pueden usarse con estos patrones de operación:

Las actividades HTTP v2 PATCH que se utilizan como objetivo pueden usarse con estos patrones de operación:

Para utilizar la actividad con funciones de scripting, escribe los datos en una ubicación temporal y luego usa esa ubicación temporal en la función de scripting.

Cuando estés listo, despliega y ejecuta la operación y valida el comportamiento revisando los registros de la operación.