Mapeamento de payload e variáveis de fluxo
Shopify Flow Os campos de gatilho são strings simples. Sua carga provavelmente não é. O mapeamento é a forma como você seleciona as partes de uma solicitação recebida de que seu fluxo de trabalho necessita.
Os quatro campos
Cada webhook expõe quatro campos ao Shopify Flow: fieldOne, fieldTwo, fieldThree, fieldFour. Na seção** “Configurações avançadas”**, associe cada um deles a uma chave em sua carga útil.
Considerando este corpo da solicitação:


{
"orderId": "1001",
"customer": { "email": "someone@example.com", "name": "Alex" },
"note": "gift wrap"
}| Campo | Mapeie para | Valor que alcança o Shopify Flow |
|---|---|---|
fieldOne |
orderId |
1001 |
fieldTwo |
customer.email |
someone@example.com |
fieldThree |
customer.name |
Alex |
fieldFour |
note |
gift wrap |
Valores aninhados utilizam caminhos com ponto (customer.email). Os elementos de uma matriz utilizam um índice (items.0.sku).
No Shopify Flow, você as refere como {{fieldOne}}, {{fieldTwo}} e assim por diante.
Objetos e matrizes
Se um valor mapeado for, por sua vez, um objeto ou uma matriz, nós o convertemos automaticamente em uma string JSON, pois as variáveis do Shopify Flow não podem conter estruturas. Ao mapear fieldOne para customer, conforme o exemplo acima, obtém-se no Shopify Flow:
{"email":"someone@example.com","name":"Alex"}Analise-o em uma ação “Executar Código” do Shopify Flow quando precisar recuperar os elementos.
Quando quatro campos não são suficientes
Quatro campos nomeados abrangem a maioria das integrações. Quando isso não ocorre, o senhor dispõe de três opções de ativação, todas localizadas em “Configurações avançadas” e desativadas por padrão:
| Cenário | O que o Shopify Flow recebe | Campo em Shopify Flow |
|---|---|---|
| Permitir corpo de solicitação personalizado | Aceita qualquer tipo de corpo, sem validação rigorosa | - |
| Utilize todo o corpo | Todo o corpo da solicitação como uma string JSON | rawBody |
| Incluir cabeçalhos de solicitação | Os cabeçalhos da solicitação como uma lista de chave/valor | requestHeaders |
| Incluir parâmetros de consulta | A string de consulta da URL como uma lista de chave/valor | queryParams |
requestHeaders e queryParams são recebidos como listas - itere requestHeaders.items em uma ação “Executar Código”, em que cada entrada é { key, value }.
Mantenha o tamanho abaixo de 50 KB
Shopify Flow limita cada execução do gatilho a 50 KB. Medimos o payload exato que enviaríamos e rejeitamos qualquer coisa maior com um payload_too_large logo no início, para que você receba uma mensagem de erro clara, em vez de um fluxo de trabalho que falhe posteriormente.
Caso o sistema apresente erros, envie um corpo menor ou desative as opções “Usar corpo completo”, “Incluir cabeçalhos de solicitação” e “Incluir parâmetros de consulta” - geralmente são essas configurações que causam o problema.
Os cabeçalhos e a consulta são sempre registrados
Os botões de ativação controlam apenas o que é encaminhado para o Shopify Flow. O histórico de chamadas sempre registra os cabeçalhos e a string de consulta (com valores confidenciais ocultos), para que você possa depurar uma solicitação sem enviar tudo para o seu fluxo de trabalho.

