UiPath Documentation
activities
latest
false
Atividades do desenvolvedor
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

HTTP Request

Atividade HTTP Request para fazer solicitações HTTP para APIs da Web.

UiPath.Web.Activities.Http.NetHttpClient

Importante:

Essa atividade está disponível nas versões do pacote da WebAPI a partir da 2.3.0. Para a experiência legada, use a atividade HTTP Request (legacy) anterior incluída nas versões do WebAPI anteriores à 2.3.0.

Dica:

A partir do WebAPI 2.5.1, O diagnóstico assistido por IA ajuda você a criar e solucionar problemas de chamadas de Solicitação HTTP. A orientação integra-se ao UiPath Autopilot e ao UiPath CLI com agentes de codificação.

Description​

Use a atividade HTTP Request no WebAPI 2.3.0 e posterior para automatizar e simplificar as solicitações para servidores web ou APIs. A atividade HTTP Request ajuda você a:

  • Envie e receba dados com segurança entre sistemas.
  • Carregar arquivos e dados usando formulários.
  • Lide com os erros de forma graciosa ao repetir as solicitações se algo der errado.
  • Conecte-se com segurança usando SSL para proteger seus dados.
  • Gerenciar cookies e proxies automaticamente para lidar com sessões e restrições de rede.

Compatibilidade do projeto​

Janelas | Plataforma cruzada

Windows, configuração multiplataforma​

Propriedades do corpo da atividade
Método de Solicitação * Selecione como sua solicitação HTTP deve interagir com o servidor:
  • GET - Recupera dados sem modificá-los.
  • POST - Envia dados para o servidor, geralmente para criar ou atualizar um recurso.
  • PUT - atualiza um recurso existente.
  • EXCLUIR - Remove um recurso especificado do servidor.
  • HEAD - Semelhante a GET , mas recupera apenas cabeçalhos sem o conteúdo do corpo.
  • OPÇÕES - Fornece informações sobre as opções de comunicação disponíveis no servidor.
  • PATCH - Atualiza parcialmente um recurso existente.
  • Trace - Usado para fins de diagnóstico, retornando a solicitação recebida para o cliente.
URL da Solicitação * Forneça o endereço da Web do servidor para onde você deseja enviar sua solicitação. Por exemplo, https://store.example.com/search .
Parâmetros Adicione detalhes específicos do servidor à sua solicitação como pares de chave-valor. Por exemplo, query: "laptop" , sortBy: "price" .
Cabeçalhos Adicione instruções específicas do servidor ou detalhes de autenticação como pares de chave-valor. Por exemplo, Authorization: "Bearer <your_access_token>" , Accept: "application/json" .
Tipo de corpo da solicitação *

Selecione o tipo de conteúdo que você deseja enviar para o servidor:

  • Nenhum - Não envia dados, geralmente para métodos de recuperação.
  • Texto - Envia dados em texto simples, geralmente para métodos POST e PUT. Após a seleção, os seguintes campos são exibidos:
    • Tipo de conteúdo de texto — selecione o formato do texto que você deseja enviar em sua solicitação HTTP, para que o servidor saiba como interpreta-lo:
      • text/ Clear - Texto simples regular.
      • text/html - Texto em formato HTML.
      • text/css - Texto em formato CSS.
      • text/csv - Dados estruturados formatados como CSV.
      • text/xml - Texto formatado em XML, destinado a ser lido por humanos.
      • application/xml - Texto formatado em XML, destinado a aplicativos a serem processados.
      • application/json - Texto formatado em JSON.
    • Texto — escreva o texto ou os dados reais que você deseja enviar em sua solicitação.
    • Codificação de texto – Selecione o formato de codificação para a carga de texto, como Unicode, ASCII ou ISO. Isso garante que o servidor de recebimento leia com precisão sua carga de texto.
  • URL do formulário codificado — envia dados formatados como pares simples de chave-valor. Após a seleção, o seguinte campo é exibido:
    • Dados do formulário codificado com URL - Forneça os pares de chave-valor. Por exemplo, searchQuery: "Smartphone" , brand: "XYZ" , inStock: "true" .
  • Dados de formulário multipart - Envia arquivos ou dados complexos. Use-o quando precisar combinar diferentes tipos de dados em sua solicitação. Após a seleção, os seguintes campos são exibidos:
    • Arquivos de recurso - Forneça o nome dos arquivos que são armazenados dentro do seu projeto como objetos IResource.
    • Arquivos locais - Forneça o caminho para um arquivo localizado em seu dispositivo. Por exemplo, "C:/Images/product-photo.jpg" .
    • Partes de dados do formulário - Forneça uma coleção de objetos FormDataPart :

      • TextFormDataPart - Para cargas de trabalho de string, como JSON ou texto simples.
      • BinárioFormDataPart - Para matrizes de bytes brutos.
      • ParteDeDadosDoFormulárioDeArquivo — para fluxos de arquivos com base em um determinado caminho.
      Por exemplo, uma coleção FormDataPart usando o Editor de Expressão:
      #VB
      New List(Of FormDataPart) From {
          New TextFormDataPart("{""jsonKey"":""jsonValue""}", "textPart", Encoding.UTF8, "application/json"),
          New BinaryFormDataPart(Encoding.UTF8.GetBytes("binaryContent"), "binaryPart", "application/octet-stream"),
          New FileFormDataPart("C:/Work/testfile.txt", "filePart", "text/plain")
      }
      #VB
      New List(Of FormDataPart) From {
          New TextFormDataPart("{""jsonKey"":""jsonValue""}", "textPart", Encoding.UTF8, "application/json"),
          New BinaryFormDataPart(Encoding.UTF8.GetBytes("binaryContent"), "binaryPart", "application/octet-stream"),
          New FileFormDataPart("C:/Work/testfile.txt", "filePart", "text/plain")
      }
      

      Cada tipo FormDataPart vem com vários construtores, permitindo que você se beneficie de padrões comumente usados.

      A atividade atribui automaticamente o cabeçalho Content-Type correto para cada FileFormDataPart . Você pode substituir esse cabeçalho manualmente. Para listas de arquivos, você não pode substituir o cabeçalho atribuído automaticamente. Para listas de arquivos de recurso, a atividade usa o tipo MIME disponível.

    • Dados do formulário codificado com URL - Forneça pares simples de chave-valor.
  • Binário — envia dados brutos. Após a seleção, o seguinte campo é exibido:
    • Carga binária — forneça a carga de dados brutos, como imagens, vídeos, arquivos grandes ou dados de streaming. Por exemplo: File.ReadAllBytes("C:/Images/product-image.jpg")
  • Stream - Envia dados contínuos, como carregar um arquivo grande (áudio ou vídeo), quando os dados não podem ser carregados totalmente na memória de uma vez. Após a seleção, o seguinte campo é exibido:
    • Arquivo local - Forneça o caminho do arquivo grande. A atividade atribui automaticamente o cabeçalho Content-Type correto para o arquivo carregado. Você pode substituir esse cabeçalho manualmente. Por exemplo: File.OpenRead("C:/Videos/large-video.mp4")
Painel de Propriedades

Importação cURL e testes de tempo de design

Esta seção ajuda você a configurar a atividade por meio dos fragmentos de código cURL e realizar testes de tempo de design da solicitação.

  • Texto do comando cURL - Campo de texto de tempo de design multilinha onde um comando cURL completo pode ser colado. Compatível com estilos `cmd e bash.
  • Botão de importação cURL - Botão de ação que dispara imediatamente a análise/importação do Texto de comando do cURL atual para a atividade (método, URL, cabeçalhos, corpo, autenticação, arquivos).
  • Botão de solicitação de teste - Botão de ação que executa a solicitação configurada no período de design. Ao executar, ele alterna para Cancelar. Na conclusão ou cancelamento, ele é revertido para Teste e atualiza o campo Relatório com resposta ou erro formatado.
  • Relatório — área de texto com várias linhas usada para exibir o resultado da última importação do cURL ou execução de teste em tempo de design (resumo do sucesso, detalhes do mapeamento, avisos ou erros).

Opções do cliente

Esta seção ajuda você a definir as configurações relacionadas à conexão.

  • Desabilitar verificação SSL - Ignora as verificações de segurança SSL. Útil para testes ( True ). Não recomendado para produção ( False, padrão).
  • Protocolo TLS - Seleciona o protocolo TLS para conexões seguras. As opções disponíveis são Automático (padrão), TLS 1.2 e TLS 1.3 .
  • Habilitar cookies - Por padrão, habilita o processamento automático de cookies ( True ). Definir como False para desabilitar o processamento automático de cookies.
  • Certificado do cliente - Indica o caminho para o certificado do cliente para autenticação com APIs seguras. Por exemplo, "C:/certificates/client-cert.pfx" .
  • Senha segura do certificado do cliente - Armazena a senha segura para o certificado do cliente fornecido. Por "certPassword" ,.

    Alterne entre senhas simples e seguras selecionando o ícone de mais e escolhendo a opção desejada: Usar string simples e Usar string segura .

  • Configuração de proxy – Configura proxies personalizados, incluindo suporte para autenticação e listas de ignoráveis. Por exemplo, "http://proxy.example.com:8080" .

Autenticação

Esta seção ajuda a definir como a atividade se autentica no servidor.

Autenticação – Selecione o método de autenticação. As opções disponíveis são:
  • Sem autenticação - O servidor não requer validação do usuário para aceitar sua solicitação.
  • Autenticação básica - Fornece a validação do usuário para o servidor de recebimento por meio do Nome de usuário e Senha segura .

    Alterne entre senhas simples e seguras selecionando o ícone de mais e escolhendo a opção desejada: Usar string simples e Usar string segura .

  • Token de portador — fornece validação do usuário para o servidor de recebimento por meio de um token de portador exclusivo gerado após o login.
  • Autenticação negociada — use o esquema de Negociação HTTP para o runtime para selecionar Kerberos ou NTLM (e opcionalmente Digest) com base nos desafios do servidor. Quando a Autenticação estiver definida como Autenticação negociada e Usar credenciais do sistema operacional = True , o contexto atual do usuário do sistema operacional será usado (token de logon do Windows; no Linux/macOS, um tíquete do Kerberos existente, por exemplo, do kinit). Defina Usar credenciais do sistema operacional = False para habilitar o campo Credenciais personalizadas; forneça uma CredentialDeRede (domínio/nome de usuário/senha ou senha segura).

Opções de solicitação

Esta seção ajuda a definir o comportamento da solicitação.

  • Cookies adicionais — especifique manualmente cookies extras como pares de chave-valor.
  • Tempo limite da solicitação - Especifique o tempo máximo de espera, em milissegundos, antes que a solicitação seja anulada. O valor padrão é 10.000 milissegundos (10 segundos).
  • Continuar com erro — Decida se a automação deve continuar mesmo quando a atividade gera um erro ( Verdadeiro , opção padrão). Para interromper a automação quando um erro ocorrer, use False .
  • Seguir redirecionamentos - Decida se sua solicitação deve seguir automaticamente redirecionamentos de URL fornecidos pelo servidor ( Verdadeiro , opção padrão). Para ignorar redirecionamentos e usar a resposta inicial, use False .
  • Redirecionamentos máximos — especifique quantos redirecionamentos automáticos sua solicitação deve seguir antes de parar. O valor padrão é 3.

Política de nova tentativa

Esta seção ajuda você a definir o mecanismo de nova tentativa em caso de falha da solicitação.

Tipo de política de nova tentativa - Especifique o método para tentar novamente solicitações. As opções disponíveis são:
  • Sem nova tentativa - Sua solicitação chama o servidor apenas uma vez. Se ela falhar, não ocorrerá nenhuma outra tentativa.
  • Nova tentativa básica – Repete a solicitação após falhas usando um atraso fixo.
    • Número de novas tentativas – Especifique o número de vezes a tentar novamente. O valor padrão é 3.
    • Atraso - Especifique o tempo fixo entre as tentativas em milissegundos. O valor padrão é 500 milissegundos (0,5 segundos).
    • Usar cabeçalho Retry-After - Decida se a solicitação deve usar o cabeçalho Retry-After recomendado pelo servidor ( True , opção padrão). Para ignorar o valor do cabeçalho Retry-After , use False .
    • Limite de atraso - Especifique o atraso máximo permitido entre novas tentativas - Após novas tentativas, em milissegundos. O valor padrão é 30.000 milissegundos (30 segundos).
    • Códigos de status de nova tentativa – Especifique os códigos de status que devem disparar novas tentativas.
  • Retirada exponencial - Tentativas com atrasos crescentes entre cada tentativa.
    • Número de novas tentativas – Especifique o número de vezes a tentar novamente. O valor padrão é 3.
    • Atraso inicial - Especifique o período de atraso antes da primeira nova tentativa, em milissegundos. O valor padrão é 500 milissegundos (0,5 segundos).
    • Multiplicador - Especifique o número usado para aumentar o atraso após cada solicitação com falha. O valor padrão é 2, o que duplica o atraso a cada vez.
    • Usar instabilidade - Para atrasos, decida se você deseja adicionar um deslocamento aleatório entre 0 e 100 milissegundos para evitar novas tentativas sincronizadas ( True , padrão).
    • Usar cabeçalho Retry-After - Decida se a solicitação deve usar o cabeçalho Retry-After recomendado pelo servidor ( True , opção padrão). Para ignorar o valor do cabeçalho Retry-After , use False .
    • Limite de atraso - Especifique o atraso máximo permitido entre novas tentativas - Após novas tentativas, em milissegundos. O valor padrão é 30.000 milissegundos (30 segundos).
    • Códigos de status de nova tentativa – Especifique os códigos de status que devem disparar novas tentativas.

Opções de resposta

Esta seção ajuda você a personalizar como a resposta será retornada pelo servidor.

  • Sempre salvar resposta como arquivo - Força a gravação do corpo da resposta no disco mesmo quando um nome de arquivo de anexo não é inferido.
  • Habilitar informações de depuração – Habilitar a captura de depuração estendida (metadados brutos de solicitação/resposta, instantâneo de cabeçalhos, tempo, detalhes de nova tentativa) e saída para o objeto de resposta ou durante o teste de tempo de design.
  • Nome do arquivo de saída - Substitua o nome do arquivo fornecido pelo servidor (por exemplo, de Content-Disposition). Este campo aceita apenas um nome de arquivo; qualquer parte de pasta de um caminho é ignorada. Especifique a pasta na Pasta de destino do arquivo de saída.
  • Pasta de destino do arquivo de saída - A pasta na qual o arquivo de resposta é salvo. Se deixado vazio ou se a pasta não existir, o arquivo será salvo no diretório de trabalho do robô, que muitas vezes não é gravável em produção. Forneça um caminho de pasta existente.
  • Se o arquivo já existir - Defina a estratégia de colisões quando um arquivo com o nome resolvido já existir na pasta de destino. Opções:
    • Renomeação automática — acrescente um sufixo incremental (_1, _2, …) para produzir um nome de arquivo exclusivo.
    • Substituir — sobrescrever arquivo existente.
    • Parar e descartar -
    • Anula a operação de salvamento (e fluxo de trabalho se a exceção não for tratada) deixando o arquivo existente intacto.
Observação:

A atividade é compatível com apenas um modo de saída de cada vez: salvando a resposta como um arquivo ou retornando os dados da resposta como texto. A configuração de ambas as saídas simultaneamente não é compatível.

Saída

Esta seção ajuda a capturar e armazenar a resposta retornada pelo servidor.

Conteúdo da resposta - Captura a resposta do servidor e a armazena em uma variável, para processamento futuro. Isso inclui:
  • CódigoDoStatus — código de status de resposta HTTP.
  • TextContent - Resposta como texto simples (se disponível).
  • BinaryContent - Dados de resposta brutos para conteúdo que não seja de texto.
  • Arquivo - Resposta salva como um arquivo ( ILocalResource ) em sua pasta Downloads. O nome do arquivo é de cabeçalhos de resposta ou gerado automaticamente para evitar substituir arquivos.
  • Cabeçalhos - Todos os cabeçalhos de resposta HTTP.
  • CabeçalhosDeConteúdo - Cabeçalhos especificamente relacionados ao conteúdo de resposta. Por exemplo, Content-Type e Content-Length .
  • RawRequestDebuggingInfo — string opcional contendo detalhes de solicitação/resposta de baixo nível capturados (por exemplo linha de solicitação construída, cabeçalhos, novas tentativas, tempo) preenchida apenas quando a depuração estiver habilitada; Caso contrário, string vazia.
  • Description​
  • Compatibilidade do projeto​
  • Windows, configuração multiplataforma​

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte(opens in new window)

Quer aprender? Academia UiPath(opens in new window)

Tem perguntas? Fórum do UiPath(opens in new window)

Fique por dentro das novidades