Endpoint de Tarefa de API sob demanda
- Última atualização2024/10/31
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
{
"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"
}
}
}
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â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 Executar como usuário para a 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.
|
{
"deploymentId": "320a2149-aa44-41ab-af9b-f9343ae2581b",
"automationName": "SAMPLE_APITASK"
}
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. |
/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.
Para obter mais detalhes sobre a API de implantação, consulte API de implantação de bot (V4).