Enviar solicitud HTTP

La acción Enviar solicitud HTTP conecta tu flujo de trabajo a un servidor web o URL y envía solicitudes HTTP.

Después de que Flow envíe tu solicitud HTTP, espera un máximo de 30 segundos para obtener un código de respuesta HTTP. Si Flow no recibió una respuesta después de este plazo, cerrará la conexión con la aplicación. Después, vuelve a intentar enviar la solicitud.

Campos

La acción Enviar solicitud HTTP contiene los siguientes campos.

Campos utilizados en la acción Enviar solicitud HTTP.
CampoDescripción
Método HTTPEl método de solicitud HTTP para enviar. La acción Enviar solicitud HTTP admite los siguientes métodos:

  • Get (Obtener): Envía una solicitud de información desde el servidor.
  • Delete (Eliminar): Elimina un recurso desde el servidor.
  • Head (Encabezado): Recupera los encabezados de respuesta HTTP del servidor.
  • Options (Opciones): Recupera las opciones y funciones compatibles con el servidor.
  • Patch (Parche): Actualiza parcialmente un recurso en el servidor.
  • Put (Poner): Actualiza un recurso en el servidor.
  • Post: Crea o reemplaza un recurso en el servidor.
URLLa URL del servidor al que se envía la solicitud HTTP.
EncabezadosEl par clave y de valor de la solicitud HTTP. Se pueden introducir varios pares clave-valor.
cuerpoEl contenido que se enviará al servidor.

Activadores

La acción Enviar solicitud HTTP se puede usar en cualquier flujo de trabajo.

Ejemplos

Llamar a la Shopify Admin API de GraphQL

En este ejemplo, usarás Flow para editar el nombre del producto mediante una llamada a la API productUpdate.

Antes de comenzar, haz lo siguiente:

Luego, sigue estos pasos en Flow:

  1. Elige el activador Estado de producto actualizado, que te permite probar este flujo de trabajo si cambias el estado de un producto.
  2. Agrega Enviar solicitud HTTP al flujo de trabajo y conéctalo al activador.
  3. Haz clic en el paso Enviar solicitud HTTP para abrir el panel de configuración.
  4. En el campo Método HTTP, introduce POST.
  5. En el campo URL, introduce https://admin.shopify.com/store/shopname/api/2023-01/graphql.json, que sustituye el dominio de la tienda y la versión de la API que desees.
  6. En la sección Encabezados, introduce una clave de X-Shopify-Access-Token y el valor de YOUR_API_SECRET_KEY que obtuviste en el primer paso.
  7. En la sección Encabezados, introduce un segundo encabezado con una clave de Content-Type y el valor de application/json.
  8. En la sección Cuerpo, introduce lo siguiente:

json {"query": "mutation { productUpdate(input: {id: \"{{ product.id }}\", title: \"{{product.title}}-edited\"}) { product { id } } }"}

  • Este código agrega -edited al final del nombre.
  • Los espacios y las líneas nuevas son significativos para el editor de Liquid, así que evita agregar o eliminar espacios. Además, excepto la generación de Liquid, evita contraer corchetes, como {{ y }}, porque están reservados para las variables de Liquid.
  1. Configura el resto del flujo de trabajo y actívalo.
  2. Cambia el estado de un producto de Borrador a Activo o viceversa para probarlo.

Llamar a una API externa

Ejemplo de un flujo de trabajo que envía una solicitud POST HTTP cuando se paga un pedido

En este flujo de trabajo de ejemplo, se envía una solicitud POST HTTP a un servidor cuando se paga un pedido.

Códigos de respuesta

La siguiente tabla describe cómo Flow procesa el código de respuesta HTTP tras recibir una respuesta.

Cómo Flow procesa los códigos de respuesta HTTP.
Código de respuesta HTTPCómo Flow procesa el código de respuesta
Éxito de 2XX o 3XXFlow marca la solicitud HTTP como exitosa y realiza acciones posteriores en el flujo de trabajo.
Error 429 o 5XXFlow vuelve a intentar automáticamente la acción durante un máximo de 24 horas hasta que recibe un código de respuesta diferente o se agota el tiempo.
Otro código de respuestaSi tu aplicación devuelve un código que no se describe en esta tabla o si se agota el tiempo de las acciones, Flow marca la solicitud HTTP como fallida. No se realizarán acciones posteriores del flujo de trabajo.

Limitaciones

La acción Enviar solicitud HTTP posee las siguientes limitaciones:

  • No devuelve datos al entorno de Flow como resultado de la mutación.
¿No encuentras las respuestas que estás buscando? Estamos aquí para ayudarte.