http.request
Chamar API (HTTP)
Chama uma API por HTTP — guarda a resposta, opcionalmente vira dados do fluxo ou espera por callback.
- Kind:
step - Key:
http.request - Categoria:
action - Envelope: mapa (um objeto JSON em
config)
Campos
| Chave | Tipo | Obrigatório | Omissão | Descrição | Referência |
|---|---|---|---|---|---|
url | string | não | "" | O alvo do pedido (ou o caminho, com uma ligação). Aceita tokens {{vars.x}}/{{record.y}} e a {{callbackUrl}}. | expressões {{record.coluna}} |
method | string | não | "GET" | Verbo HTTP. Qualquer token válido serve (verbos próprios incluídos); só a ausência total cai em GET. | - |
headers | map | não | {} | Cabeçalhos do pedido, nome → valor. | - |
invalidHeaders | string | não | "" | O texto cru dos cabeçalhos quando não é um JSON de objeto. Presente = a config está inválida e o passo falha antes do pedido. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui. | - |
body | string | não | - | Corpo a enviar, com tokens. Ausente = sem corpo (um corpo vazio com recordsAsBody envia os registos do fluxo). | expressões {{record.coluna}} |
recordsAsBody | boolean | não | true | Corpo vazio envia os registos do fluxo como JSON array. Ligado por omissão. | - |
responseVar | string | não | "http" | Nome da variável onde a resposta ({status, ok, body}) fica sempre disponível a jusante. | - |
continueOnError | boolean | não | false | Um status fora de 2xx deixa de falhar o passo: a resposta entra com ok: false e o fluxo segue. | - |
useResponseAsRecords | boolean | não | false | A resposta SUBSTITUI os registos do fluxo. Desligado = o fluxo segue com os registos que já tinha. | - |
recordsPath | string | não | "" | Caminho pontuado dentro da resposta até à lista a usar como registos (ex.: data.items). Vazio = a raiz. | - |
inferredColumns | list de string | não | [] | As colunas que o botão "Testar & inferir" detetou na resposta: metadados de autoria, publicados quando a resposta vira registos. | - |
awaitAck | boolean | não | false | Modo callback: faz o pedido, embebe a {{callbackUrl}} e suspende até o serviço chamar de volta. | - |
callbackVar | string | não | "callback" | Nome da variável onde o corpo do callback aterra ao retomar. Só sai no JSON em modo callback. | - |
timeoutMinutes | integer | não | - | Prazo máximo de espera do callback, em minutos. Ausente = espera indefinida. | - |
connectionName | string | não | - | Nome da ligação http a usar (baseUrl, cabeçalhos e autenticação do cofre). Vazio = pedido cru. | ligação (nome) |
endpointRef | string | não | "" | Nome de um endpoint da ligação, que governa verbo, caminho, cabeçalhos e corpo. Vazio = sem endpoint nomeado. | - |
connectionVariables | json | não | {} | Valores por-step para as variáveis declaradas na ligação. Podem transportar segredos: nem o varredor lhes toca. Segredo. O exportador substitui este valor por vazio e nomeia o caminho em redacted[]: nunca sai num pacote de template. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui. | - |
shaping | map | não | - | Resumir na fonte: filtra, agrupa e agrega a resposta ANTES de ela virar registos. Ausente = sem resumo. | - |
shaping
| Chave | Tipo | Obrigatório | Omissão | Descrição | Referência |
|---|---|---|---|---|---|
filter | map | não | - | Filtro prévio, aplicado às linhas da resposta antes de agrupar. | - |
groupBy | list de string | não | [] | Campos por que se agrupa. Vazio = um único grupo global (o total). | - |
metrics | list de map | não | [] | O que calcular por grupo. Sem métricas não há resumo. | - |
shaping.filter
| Chave | Tipo | Obrigatório | Omissão | Descrição | Referência |
|---|---|---|---|---|---|
combinator | enumeration | não | "and" | Como se combinam as regras do grupo: and exige todas, or basta uma. | - |
rules | list de map | não | - | As regras do grupo. | - |
groups | list de map | não | - | Subgrupos aninhados, com a mesma forma. | - |
shaping.filter.rules[]
Cada elemento de shaping.filter.rules é um objeto:
| Chave | Tipo | Obrigatório | Omissão | Descrição | Referência |
|---|---|---|---|---|---|
id | string | não | - | Identificador da regra, gerado pela app. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui. | - |
columnName | string | não | - | Campo da resposta, POR NOME: o passo não nomeia feature nenhuma, logo não é referência a coluna de tabela. | - |
operator | string | não | - | Operador da comparação. | - |
value | string | não | - | Valor da comparação: dado de utilizador. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui. | - |
secondValue | string | não | - | Segundo valor, usado pelos operadores de intervalo. Só aparece no JSON quando não é nulo. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui. | - |
shaping.filter.groups[]
Cada elemento de shaping.filter.groups é um objeto:
| Chave | Tipo | Obrigatório | Omissão | Descrição | Referência |
|---|---|---|---|---|---|
combinator | enumeration | não | "and" | Como se combinam as regras do subgrupo. | - |
rules | list de map | não | - | As regras do grupo. | - |
groups | list | não | - | Subgrupos de terceiro nível: varrem-se às cegas (uma FieldDecl const não se pode referir a si própria). | - |
shaping.filter.groups[].rules[]
Cada elemento de shaping.filter.groups[].rules é um objeto:
| Chave | Tipo | Obrigatório | Omissão | Descrição | Referência |
|---|---|---|---|---|---|
id | string | não | - | Identificador da regra, gerado pela app. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui. | - |
columnName | string | não | - | Campo da resposta, POR NOME: o passo não nomeia feature nenhuma, logo não é referência a coluna de tabela. | - |
operator | string | não | - | Operador da comparação. | - |
value | string | não | - | Valor da comparação: dado de utilizador. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui. | - |
secondValue | string | não | - | Segundo valor, usado pelos operadores de intervalo. Só aparece no JSON quando não é nulo. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui. | - |
shaping.metrics[]
Cada elemento de shaping.metrics é um objeto:
| Chave | Tipo | Obrigatório | Omissão | Descrição | Referência |
|---|---|---|---|---|---|
op | enumeration | não | - | A operação a aplicar. Só a contagem dispensa o campo. | - |
field | string | não | "" | Campo de origem, pelo nome que tem no envelope da resposta. Vazio só é válido na contagem. | - |
as | string | não | "" | Nome da coluna de saída. Vazio = derivado do campo (ou da operação, na contagem). | - |
Exemplo JSON
{
"url": "",
"method": "GET",
"headers": {},
"invalidHeaders": "",
"recordsAsBody": true,
"responseVar": "http",
"continueOnError": false,
"useResponseAsRecords": false,
"recordsPath": "",
"inferredColumns": [],
"awaitAck": false,
"callbackVar": "callback",
"endpointRef": "",
"connectionVariables": {}
}
Gerado de definitions.json versão 17f3e0bc59d9. Esta página nasce no build: não se edita à mão.