Enviar solicitação HTTP
A açãoEnviar solicitação HTTPconecta o fluxo de trabalho a um servidor web ou URL e envia solicitações HTTP.
Depois de enviar uma solicitação HTTP, o Flow espera no máximo 30 segundos por umcódigo de resposta HTTP. Caso não receba uma resposta após esse período, ele fecha a conexão com o app e envia a solicitação novamente.
Nesta página
Campos
A açãoSend HTTP request("Enviar solicitação HTTP") apresenta os campos a seguir.
Campo | Descrição |
---|---|
Método HTTP | O método de solicitação HTTP para enviar. Lembre-se de que a açãoSend HTTP request(“Enviar solicitacao HTTP”)e compativel com os seguintes métodos:
|
URL | O URL do servidor para o qual a solicitação HTTP é enviada. |
Cabeçalhos | O par de chave-valor da solicitação HTTP. É possível inserir vários deles. |
Corpo | O conteúdo a ser enviado para o servidor. |
Acionadores
É possível usar a açãoSend HTTP request("Enviar solicitação HTTP") nos fluxos de trabalho.
Exemplos
Chamar a API Admin GraphQL da Shopify
Neste exemplo, você chamará a APIproductUpdatepara usar o Flow na edição de um título de produto.
Antes de começar, faça o seguinte:
- Configure e instale um app personalizadoque tenha o escopo
write_products
. Você usará achave secreta da APIpara chamar a API neste exemplo.
Em seguida, siga estas etapas no Flow:
- Escolha o acionadorProduct status updated("Status do produto atualizado"), que permite alterar o status de um item para testar o fluxo de trabalho.
- AdicioneSend HTTP Request("Enviar solicitação HTTP") ao fluxo de trabalho e conecte-a ao acionador.
- Clique na etapaSend HTTP Request("Enviar solicitação HTTP") para abrir o painel de configuração.
- No campoHTTP Method("Método HTTP"), insira
POST
. - No campoURL, insira
https://YOUR-SHOP-DOMAIN.myshopify.com/admin/api/2023-01/graphql.json
para substituir o domínio da loja e a versão da API desejada. - Na seçãoHeaders("Cabeçalhos"), insira
X-Shopify-Access-Token
comoKey("Chave") eYOUR_API_SECRET_KEY
comoValue("Valor"), que foram obtidos na primeira etapa. - Na seçãoHeaders("Cabeçalhos"), insira um segundo cabeçalho header
Content-Type
comoKey("Chave") eapplication/json
comoValue("Valor"). - Na seçãoBody("Corpo"), insira:
json {"query": "mutation { productUpdate(input: {id: \"{{ product.id }}\", title: \"{{product.title}}-edited\"}) { product { id } } }"}
- Esse código adiciona
-edited
ao final do título. - Espaços e linhas novas são significativos para o editor do Liquid, portanto evite adicionar ou remover espaços. Além disso, exceto para a saída do Liquid, evite colchetes recolhidos, como
{{
e}}
, pois são reservados para variáveis do Liquid.
- Configure o restante do fluxo de trabalho e ative-o.
- Para testá-lo, altere o status de um produto deRascunhoparaAtivoou vice-versa.
Chamar uma API externa
No fluxo de trabalho acima, uma solicitação HTTP POST é enviada a um servidor quando um pedido é pago.
Códigos de resposta
Veja na tabela a seguir uma descrição de como o Flow processa ocódigo de resposta HTTPdepois que recebe uma resposta.
Código de resposta HTTP | Como o Flow processa o código de resposta |
---|---|
Sucesso 2XX ou 3XX | O Flow marca a solicitação HTTP como bem-sucedida e realiza as próximas ações do fluxo de trabalho. |
Erro 429 ou 5XX | O Flow repete a ação automaticamente por no máximo 24 horas até receber um código de resposta diferente ou atingir o tempo-limite. |
Outro código de resposta | Se o app retorna um código não descrito nesta tabela ou atinge o tempo-limite enquanto repete as ações, o Flow marca a solicitação HTTP como malsucedida. Além disso, as próximas ações do fluxo de trabalho não são realizadas. |