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.
En esta página
Campos
La acción Enviar solicitud HTTP contiene los siguientes campos.
Campo | Descripción |
---|---|
Método HTTP | El método de solicitud HTTP para enviar. La acción Enviar solicitud HTTP admite los siguientes métodos:
|
URL | La URL del servidor al que se envía la solicitud HTTP. |
Encabezados | El par clave y de valor de la solicitud HTTP. Se pueden introducir varios pares clave-valor. |
cuerpo | El 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:
-
Configura e instala una aplicación personalizada que tenga el alcance
write_products
. En este ejemplo, usarás el token de acceso de la API Admin para llamarla.
Luego, sigue estos pasos en Flow:
- Elige el activador Estado de producto actualizado, que te permite probar este flujo de trabajo si cambias el estado de un producto.
- Agrega Enviar solicitud HTTP al flujo de trabajo y conéctalo al activador.
- Haz clic en el paso Enviar solicitud HTTP para abrir el panel de configuración.
- En el campo Método HTTP, introduce
POST
. - 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. - En la sección Encabezados, introduce una clave de
X-Shopify-Access-Token
y el valor deYOUR_API_SECRET_KEY
que obtuviste en el primer paso. - En la sección Encabezados, introduce un segundo encabezado con una clave de
Content-Type
y el valor deapplication/json
. - 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.
- Configura el resto del flujo de trabajo y actívalo.
- Cambia el estado de un producto de Borrador a Activo o viceversa para probarlo.
Llamar a una API externa
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ódigo de respuesta HTTP | Cómo Flow procesa el código de respuesta |
---|---|
Éxito de 2XX o 3XX | Flow marca la solicitud HTTP como exitosa y realiza acciones posteriores en el flujo de trabajo. |
Error 429 o 5XX | Flow 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 respuesta | Si 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.