Endpoint de Tarefa de API sob demanda

Invocar Tarefas de API instantaneamente com um endpoint. Inicia e executa dinamicamente Tarefas de API sob demanda usando a API de implantação em conjunto com a solicitação sob demanda. Essa abordagem simplifica os fluxos de trabalho e melhora a eficiência dos recursos em comparação com implantações estáticas tradicionais.

Principais benefícios

  • Implantação programática: Implante uma Tarefa de API de qualquer lugar, sob demanda, usando a API cliente de sua preferência.
  • Processamento:
    • As automações são ativadas somente quando necessário, o que garante a utilização ideal dos recursos. Isso significa que elas não são constantemente implantadas na nuvem, o que causa a reserva de recursos. Em vez disso, elas são carregadas e executadas a cada solicitação.
    • Em períodos de alto volume, as automações são colocadas em fila e executadas assim que os dispositivos ficam disponíveis, garantindo operações tranquilas mesmo sob carga pesada. É possível visualizar o progresso das automações na página Atividade.
    • A licença Premium ajuda a dimensionar as automações, além de fornece acesso a um conjunto maior de recursos de nuvem capazes de executar várias instâncias da Tarefa de API, o que não só aumenta a simultaneidade mas também permite que você processe mais Tarefa de API solicitações de maneira concomitante.
  • Casos de uso ideais:
    • Trabalhos de processamento em lote (como análise de dados de vendas, geração de relatórios)
    • Tarefas agendadas
    • Situações onde a resposta imediata não é crucial

Autenticação

Adquira as credenciais de autenticação necessárias para interagir com a API de implantação. Isso geralmente envolve tokens de acesso ou chaves de API. No exemplo a seguir, uma Tarefa de API sob demanda é implantada para um dispositivo em nuvem. Você também pode passar variáveis para bots quando eles forem implantados.

POST https://{{ControlRoomURL}}/v4/automations/deploy

Header: X-Authorization: <<authentication token>> or Authorization: Bearer <<b
earer token>>

Todas as chamadas API devem conter um token de API de autenticação (gera um token da Web JSON) ou um token portador dos serviços OAuth. Não é possível utilizar os dois juntos em uma API.

Criar a solicitação sob demanda

Solicitação:
{
  "botId": 121,
  "automationName": "SAMPLE_APITASK",
  "description": "My first API Task deploy using api",
  "botLabel": "string",
  "executionType": "RUN_NOW",
  "automationPriority": "PRIORITY_MEDIUM",
  "headlessRequest": {
    "numberOfExecutions": 1,
    "queueOnSlotsExhaustion": false,
    "sharedRunAsUserId": 12
  },
  "botInput": {
    "inputVar": {
      "type": "STRING",
      "string": "PassingString"
    }
  }
}
Nota:

As solicitações de implantação de automação podem ser feitas sem campos de entrada. Se você especificar entradas, certifique-se de que para a Tarefa de API receber esses valores mapeados com sucesso, a variável para essa automação precisará ser marcada como entrada. Além disso, o nome da variável na Tarefa de API precisa corresponder ao valor que está sendo mapeado no corpo da solicitação.

Parâmetros da solicitação
Parâmetro Tipo Obrigatório Descrição
botId Inteiro Sim

O ID da automação a ser implantada.

automationName String Não O nome da automação a ser implantada. Você pode inserir um nome que identifique sua automação com facilidade. Como SAMPLE_APITASK, FIRST_API_TASK, apitask-on-demand.
descrição String Não A descrição da automação sendo implantada. Por exemplo: My first API Task deploy using api
botLabel String Não O rótulo para a automação sendo implantada.
executionType String Não Tipo de execução associada ao bot.
automationPriority String Não A prioridade da automação. Por padrão, ela vem definida como PRIORITY_MEDIUM. Os valores possíveis para automationPriority incluem: PRIORITY_MEDIUM, PRIORITY_HIGH, e PRIORITY_LOW.
Objeto headlessRequest.
numberOfExecutions Inteiro Não Número de execuções para uma determinada solicitação sob demanda (headless).
queueOnSlotsExhaustion boolean Não Especifica se a implantação precisa ser colocada na fila.
sharedRunAsUserId Inteiro Não O apitaskrunner para estabelecer o contexto RunAsUser para Tarefas de API. Para mais informações sobre o apitaskrunner, consulte Usuário executar como para tarefa de API (apitaskrunner).
Nota: Este RunAsUser não requer uma licença do Bot Runner.
Objeto botInput
tipo Qualquer um Não Por padrão, o valor é STRING. Os valores possíveis para o tipo incluem: STRING, NUMBER, BOOLEAN, FILE, ITERATOR, LIST, DICTIONARY, TABLE, VARIABLE, CONDITIONAL, WINDOW, TASKBOT, DATETIME, UIOBJECT, RECORD, EXCEPTION, CREDENTIAL, COORDINATE, IMAGE, REGION, PROPERTIES, TRIGGER, CONDITIONALGROUP, FORM, FORMELEMENT, HOTKEY, and WORKITEM.
Resposta
{
  "deploymentId": "320a2149-aa44-41ab-af9b-f9343ae2581b",
  "automationName": "SAMPLE_APITASK"
}
Parâmetros de resposta
Parâmetro Tipo Descrição
deploymentId String A ID da implantação criada.
automationName String O nome da automação implementada. Se este nome não for fornecido no pedido, é atribuído um nome aleatório à automação implantada.
Você pode testar esse endpoint na interface do Swagger, que está incluída em todas as suas instâncias da Control Room.
Dica: Acesse o Swagger navegando até a instância da Control Room e adicionando /swagger/ no final do URL.
https://{{ControlRoomURL}}/swagger/

Exiba a página de atividades na Control Room para rastrear o progresso da execução sob demanda (headless) em Na fila >> Em progresso >> Concluída.

Página de atividade de tarefa de API

Para obter mais detalhes sobre a API de implantação, consulte API de implantação de bot (V4).