- Introdução
- Introdução
- Modelagem de processos com o BPMN
- Noções Básicas sobre Modelagem de Processos
- Abertura da tela de modelagem
- Modelagem de seu processo
- Alinhamento e conexão de elementos BPMN
- Autopilot para Maestro (visualização)
- Repositório de processos
- Modelagem de processos com o Case Management
- Projeto de um esquema de entidades de casos persistente
- Definição de chaves de caso (sistema versus externo)
- Estabelecimento de contratos de E/S e de write-back
- Regras de saída e término do estágio inicial
- Modelagem de estágios primário e secundário
- Disparo de um caso a partir do Data Fabric
- Implementação de personas e permissões no nível de estágio
- Configuração de SLAs e regras de escalonamento automatizadas
- Configuração de um loop de retrabalho (reentrada)
- Gerenciamento de instâncias de casos ativas: pausar, migrar e tentar novamente
- Dicionário de componentes de gerenciamento de casos do Maestro
- Modelagem de processos com o Flow
- Implementação de processos
- Depuração
- Simulação
- Publicação e atualização de processos agênticos
- Cenários de implementação comuns
- Extração e validação de documentos
- Operações do processo
- Monitoramento de processo
- Otimização de processos
- Informações de referência
Configuração do nó de solicitação HTTP, autenticação e padrões de ramificação de resposta.
O que faz
Envia uma solicitação HTTP para um URL e disponibiliza a resposta para nós subsequentes.
Dois nós HTTP
O fluxo oferece dois nós HTTP. Escolha com base em como você quer lidar com a autenticação:
- Solicitação HTTP (
core.action.http) - Configure o método, URL, cabeçalhos, corpo e autenticação em linha. Use-a para qualquer ponto de extremidade REST externo onde você gerencia as credenciais, por exemplo, um cabeçalho de chave de API ou um token de portador. Este é o nó documentado nesta página. - Solicitação HTTP gerenciada (
core.action.http.v2) - faz a solicitação por meio de uma conexão gerenciada do Integration Service, para que a autenticação seja tratada por essa conexão em vez de configurada em linha. Use-o quando quiser o gerenciamento de credenciais centralizado em um serviço que você conectou por meio do Integration Service.
Referência da configuração
| Campo | Required | Padrão | Description |
|---|---|---|---|
| Mode | Sim | Manual | Como a solicitação é configurada. Selecione Manual para definir a solicitação você mesmo ou Definição de API para importar a configuração de uma especificação do OpenAPI ou Swagger. |
| Importar do cURL | Não | Nenhum | Analisa um comando cURL e preenche o método, o URL, os cabeçalhos e o corpo automaticamente. Selecione o botão cURL na barra de ferramentas acima dos campos de configuração. |
| Método HTTP | Sim | GET | Método HTTP para a solicitação. Os valores aceitos são GET, POST, PUT, PATCH, e DELETE. |
| URL | Sim | Nenhum | URL completo para o qual enviar a solicitação, incluindo o esquema https:// . Suporta expressões de variáveis, por exemplo, https://api.example.com/users/$vars.userId. |
| Cabeçalhos | Não | Nenhum | Pares de chave-valor enviados como cabeçalhos de solicitação HTTP. Os nomes e valores de cabeçalho suportam expressões de variáveis. |
| Parâmetros de Consulta | Não | Nenhum | Pares de chave-valor anexados ao URL como uma string de consulta. Nomes e valores suportam expressões de variáveis. |
| Tipo de Conteúdo | Não | application/json | Tipo de Internet Mail Extensions de propósito múltiplo (MIME) do corpo da solicitação. Os valores aceitos são application/json, application/xml, text/plain e application/x-www-form-urlencoded. |
| Corpo | Não | Vazio | Corpo de solicitação para solicitações POST, PUT e PATCH . Insira o valor diretamente no editor de código ou use expressões de variáveis. |
| Galhos | Não | Somente saída padrão | Ramificações de resposta que roteiam o processo com base em propriedades de resposta. Cada ramificação tem um nome e uma expressão de condição. |
| Tempo limite | Não | PT15M | Tempo máximo para esperar por uma resposta, no formato de duração 8601 da Organization for Standardization (ISO). |
| Número de novas tentativas | Não | 0 | Número de vezes para tentar novamente a solicitação se ela falhar. As novas tentativas usam o valor do tempo limite como o intervalo de espera. |
O editor sugere nomes de cabeçalho comuns, como Authorization, Content-Type, Accept, X-Api-Key, e outros. Para parâmetros de consulta, a adição de um parâmetro com nome page e valor 2 envia a solicitação para https://api.example.com/items?page=2.
O nó avalia as condições da ramificação em ordem e segue a primeira correspondência. Se nenhuma ramificação corresponder, o processo segue a saída Padrão .
As expressões de condição de ramificação usam a mesma sintaxe JavaScript que os nós Decision e Switch:
$vars.httpRequest1.output.statusCode === 200
$vars.httpRequest1.output.statusCode === 200
$vars.httpRequest1.output.statusCode >= 400
$vars.httpRequest1.output.statusCode >= 400
Cada ramificação aparece como um identificador de saída separado no lado direito do nó na tela, ao lado do identificador padrão .
Valores comuns de tempo limite:
PT30S- 30 segundosPT5M- 5 minutosPT15M- 15 minutosPT1H- 1 hora
Credenciais
Você pode autenticar solicitações de duas maneiras.
Autenticação manual
Passe as credenciais diretamente nos cabeçalhos de solicitação. Para autenticação de chave de API, adicione um cabeçalho com o nome X-Api-Key e o valor definidos para a sua chave. Para autenticação de token de portador, adicione um cabeçalho Authorization com um valor como Bearer <your-token>.
Armazene valores confidenciais, como tokens e chaves de API em variáveis secretas, em vez de codificá-las.
Conector do Integration Service
Selecione uma conexão do Integration Service pré-configurada no painel de propriedades. A conexão injeta credenciais na solicitação automaticamente, para que você não precise gerenciar cabeçalhos por conta própria.
Use um conector do Integration Service quando quiser gerenciamento de credenciais centralizado, atualização automática de tokens ou quando vários processos compartilham as mesmas credenciais de API.
Os conectores do Integration Service são configurados no portal do UiPath Automation Cloud. Consulte a documentação do Integration Service para obter instruções de configuração.
Exemplos
Exemplo 1 — Solicitação GET básica
Busca um único recurso de uma API pública.
O nó é configurado com o Método HTTP definido como GET e o URL definido como https://jsonplaceholder.typicode.com/posts/1. Todos os outros campos permanecem em seus padrões.
A resposta está disponível em um nó de Script downstream:
const body = $vars.httpRequest1.output.body;
const status = $vars.httpRequest1.output.statusCode;
return {
title: body.title,
userId: body.userId,
status: status
};
const body = $vars.httpRequest1.output.body;
const status = $vars.httpRequest1.output.statusCode;
return {
title: body.title,
userId: body.userId,
status: status
};
O objeto de resposta está disponível em $vars.httpRequest1.output e contém três campos:
$vars.httpRequest1.output.bodyo corpo da resposta analisada- - o código de status HTTP, por exemplo
200$vars.httpRequest1.output.statusCode $vars.httpRequest1.output.headersum objeto contendo os cabeçalhos de resposta
Exemplo 2 — solicitação POST com um corpo JSON
Crie um novo recurso enviando uma carga do JSON.
O nó é configurado com o Método HTTP definido como POST, URL definida como https://api.example.com/orders, um cabeçalho Authorization com o valor Bearer $vars.apiToken e o Tipo de Conteúdo deixado como application/json. O corpo:
{
"product": "Widget",
"quantity": 5,
"customer_id": "cust_12345"
}
{
"product": "Widget",
"quantity": 5,
"customer_id": "cust_12345"
}
O ID do recurso criado está disponível em um nó subsequente:
const orderId = $vars.httpRequest1.output.body.id;
return { orderId: orderId };
const orderId = $vars.httpRequest1.output.body.id;
return { orderId: orderId };
Se a solicitação falhar e você tiver conectado um identificador de erro, os detalhes do erro estarão disponíveis em $vars.httpRequest1.error
// In a Script node connected to the error handle
const errorMessage = $vars.httpRequest1.error.message;
const errorStatus = $vars.httpRequest1.error.status;
return {
failed: true,
reason: errorMessage,
httpStatus: errorStatus
};
// In a Script node connected to the error handle
const errorMessage = $vars.httpRequest1.error.message;
const errorStatus = $vars.httpRequest1.error.status;
return {
failed: true,
reason: errorMessage,
httpStatus: errorStatus
};
O objeto de erro contém:
codemessagedetailcategorystatus
Exemplo 3 -- Encaminhar respostas com ramificações
As ramificações de resposta permitem que o processo siga caminhos diferentes com base na resposta da API sem um nó de decisão separado.
O nó é configurado com o Método HTTP definido como GET, o URL definido como https://api.example.com/users/$vars.userId e duas ramificações na seção Ramificações : Success com condição $vars.httpRequest1.output.statusCode === 200 e Not Found com condição $vars.httpRequest1.output.statusCode === 404.
O nó agora tem três identificadores de saída na tela:
- Sucesso - conecta-se a nós que processam os dados do usuário
- Não encontrado - conecta-se aos nós que lidam com o caso de usuário ausente
- Padrão : conecta-se a um caminho de fallback para qualquer outro código de status
Cada caminho downstream recebe a resposta completa. Por exemplo, na ramificação Sucesso:
const user = $vars.httpRequest1.output.body;
return { name: user.name, email: user.email };
const user = $vars.httpRequest1.output.body;
return { name: user.name, email: user.email };
Quando usar isso versus um nó de integração
Use o nó HTTP Request como uma ferramenta de uso geral para chamar qualquer API. Use um nó de integração dedicado quando existir um para o serviço que você está chamando.
| Use a Solicitação HTTP quando... | Use um nó de integração quando... |
|---|---|
| A API não tem um conector dedicado na paleta de nós | Existe um conector para o serviço, como Slack, Salesforce ou HubSpot |
| Você precisa de controle total sobre cabeçalhos, parâmetros de consulta e formato do corpo | Você quer entradas e saídas digitadas pré-construídas sem configuração manual |
| Você está criando um protótipo de uma nova API ou serviço interno | Você deseja autenticação automática e atualização de token por meio do Integration Service |
| A API usa um esquema de autenticação não padrão | Você quer um processo de fácil manutenção que não será interrompido se a API alterar seu contrato |
Regra geral: pesquise primeiro um conector na paleta de nós. Faça fallback para a solicitação HTTP apenas se não existir nada para seu serviço de destino.
Páginas relacionadas
- Nó de script - transformar e processar dados de resposta HTTP
- Nó de decisão - ramificação em condições, como uma alternativa às ramificações de resposta
- Variáveis e fluxo de dados -
$vars, sintaxe de expressão e escopo de variáveis
- O que faz
- Dois nós HTTP
- Referência da configuração
- Credenciais
- Autenticação manual
- Conector do Integration Service
- Exemplos
- Exemplo 1 — Solicitação GET básica
- Exemplo 2 — solicitação POST com um corpo JSON
- Exemplo 3 -- Encaminhar respostas com ramificações
- Quando usar isso versus um nó de integração
- Páginas relacionadas