- Introdução
- Definição do Swagger
- APIs do Orchestrator
- Solicitações de alertas
- Solicitações de ativos
- Solicitações de calendários
- Solicitações de ambientes
- Solicitações de pastas
- Solicitações de Tarefas Genéricas
- Solicitações de trabalhos
- Solicitações de bibliotecas
- Solicitações de licenças
- Solicitações de pacotes
- Solicitações de permissões
- Solicitações de processos
- Solicitações de itens de fila
- Solicitações de robôs
- Solicitações de funções
- Solicitações de agendamentos
- Solicitações de configurações
- Solicitações de tarefas
- Solicitações de catálogos de tarefas
- Solicitações de formulários de tarefas
- Solicitações de tenants
- Solicitações de Transações
- Solicitações de usuários
- Solicitações de webhooks
Guia da API do Orchestrator
Solicitações de robôs
LicenseKey
, deve fazer uma solicitação GET para o terminal /odata/Robots(Id)
.
O exemplo a seguir permite visualizar o status atual do Robot com o 749 Id.
Obter
https://{yourDomain}/odata/Sessions?$top=10&$filter=Robot/Id eq 749&$select=State
Cabeçalhos de solicitação.
Chave |
Valor |
---|---|
Autorização |
O portador |
Código de resposta
200 OK
Corpo da Resposta
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Sessions(State)",
"@odata.count": 1,
"value": [
{
"State": "Available"
}
]
}
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Sessions(State)",
"@odata.count": 1,
"value": [
{
"State": "Available"
}
]
}
O seguinte exemplo permite que você veja o status atual do Robô com o nome do DocBot.
Obter
https://{yourDomain}/odata/Sessions?$top=10&$filter=Robot/Name eq 'DocBot'&$select=State
Cabeçalhos de solicitação.
Chave |
Valor |
---|---|
Autorização |
O portador |
Código de resposta
200 OK
Corpo da Resposta
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Sessions(State)",
"@odata.count": 1,
"value": [
{
"State": "Available"
}
]
}
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Sessions(State)",
"@odata.count": 1,
"value": [
{
"State": "Available"
}
]
}
O exemplo abaixo solicita os 10 primeiros robôs que possuem o status Disponível e enviaram um heartbeat nos últimos 2 minutos. Somente as informações relevantes do robô são exibidas. Você pode verificar a pulsação usando o parâmetro Reporting Time e subtrair 2 minutos do horário atual. Como você deve saber, se um robô não enviar uma pulsação nos últimos 2 minutos, ele será sinalizado como não responsivo.
Obter
https://{yourDomain}/odata/Sessions?$top=10&$filter=State eq 'Available' and ReportingTime gt 2018-03-05T03:48:04.147Z&$select=Robot&$expand=Robot
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Sessions(Robot)",
"@odata.count": 2,
"value": [
{
"Robot": {
"LicenseKey": null,
"MachineName": "MBOBOC",
"Name": "DocBot",
"Username": "UIPATH\\MADALINA.BOBOC",
"Description": null,
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "doc_env,WR_env,Group1",
"Id": 749,
"ExecutionSettings": null
}
},
{
"Robot": {
"LicenseKey": null,
"MachineName": "midragomir",
"Name": "mr-Rob",
"Username": "uipath\\mircea.dragomir",
"Description": "Alerts",
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "",
"Id": 902,
"ExecutionSettings": null
}
}
]
}
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Sessions(Robot)",
"@odata.count": 2,
"value": [
{
"Robot": {
"LicenseKey": null,
"MachineName": "MBOBOC",
"Name": "DocBot",
"Username": "UIPATH\\MADALINA.BOBOC",
"Description": null,
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "doc_env,WR_env,Group1",
"Id": 749,
"ExecutionSettings": null
}
},
{
"Robot": {
"LicenseKey": null,
"MachineName": "midragomir",
"Name": "mr-Rob",
"Username": "uipath\\mircea.dragomir",
"Description": "Alerts",
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "",
"Id": 902,
"ExecutionSettings": null
}
}
]
}
O exemplo a seguir procura os 10 principais robôs que têm o status Desconectado e expande as informações do robô.
Obter
https://{yourDomain}/odata/Sessions?$top=10&$filter=State eq 'Disconnected'&$expand=Robot
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Sessions",
"@odata.count": 2,
"value": [
{
"State": "Disconnected",
"ReportingTime": "2018-01-15T18:47:07.93Z",
"Info": null,
"IsUnresponsive": false,
"Id": 718,
"Robot": {
"LicenseKey": null,
"MachineName": "DESKTOP-PMFQGCB",
"Name": "Stan",
"Username": "Alex",
"Description": null,
"Type": "Unattended",
"Password": null,
"RobotEnvironments": "doc_env,a_invoke_env,Group1",
"Id": 759,
"ExecutionSettings": null
}
},
{
"State": "Disconnected",
"ReportingTime": "2018-01-18T18:14:14.34Z",
"Info": null,
"IsUnresponsive": false,
"Id": 730,
"Robot": {
"LicenseKey": null,
"MachineName": "DESKTOP-PMFQGCB",
"Name": "!~#$%^&*()_+=-",
"Username": "dragomirmir",
"Description": null,
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "WR_env",
"Id": 771,
"ExecutionSettings": null
}
}
]
}
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Sessions",
"@odata.count": 2,
"value": [
{
"State": "Disconnected",
"ReportingTime": "2018-01-15T18:47:07.93Z",
"Info": null,
"IsUnresponsive": false,
"Id": 718,
"Robot": {
"LicenseKey": null,
"MachineName": "DESKTOP-PMFQGCB",
"Name": "Stan",
"Username": "Alex",
"Description": null,
"Type": "Unattended",
"Password": null,
"RobotEnvironments": "doc_env,a_invoke_env,Group1",
"Id": 759,
"ExecutionSettings": null
}
},
{
"State": "Disconnected",
"ReportingTime": "2018-01-18T18:14:14.34Z",
"Info": null,
"IsUnresponsive": false,
"Id": 730,
"Robot": {
"LicenseKey": null,
"MachineName": "DESKTOP-PMFQGCB",
"Name": "!~#$%^&*()_+=-",
"Username": "dragomirmir",
"Description": null,
"Type": "NonProduction",
"Password": null,
"RobotEnvironments": "WR_env",
"Id": 771,
"ExecutionSettings": null
}
}
]
}
O exemplo a seguir recupera os detalhes do Robot com o 216 Id. Observe que este robô usa autenticação de cartão inteligente.
Obter
https://{yourDomain}/odata/Robots(216)
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Robots/$entity",
"LicenseKey": "fc157179-3724-4bb0-acd2-8261bef82d01",
"MachineName": "CAPETRINA",
"MachineId": 15,
"Name": "Gustavee",
"Username": "uipath\\john.smith",
"ExternalName": null,
"Description": null,
"Type": "Development",
"HostingType": "Standard",
"ProvisionType": "Manual",
"Password": null,
"CredentialStoreId": null,
"UserId": 45,
"Enabled": true,
"CredentialType": null,
"RobotEnvironments": "",
"IsExternalLicensed": false,
"LimitConcurrentExecution": false,
"Id": 216,
"ExecutionSettings": {
"ResolutionHeight": 0,
"ResolutionDepth": 0,
"FontSmoothing": false,
"AutoDownloadProcess": false
}
}
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Robots/$entity",
"LicenseKey": "fc157179-3724-4bb0-acd2-8261bef82d01",
"MachineName": "CAPETRINA",
"MachineId": 15,
"Name": "Gustavee",
"Username": "uipath\\john.smith",
"ExternalName": null,
"Description": null,
"Type": "Development",
"HostingType": "Standard",
"ProvisionType": "Manual",
"Password": null,
"CredentialStoreId": null,
"UserId": 45,
"Enabled": true,
"CredentialType": null,
"RobotEnvironments": "",
"IsExternalLicensed": false,
"LimitConcurrentExecution": false,
"Id": 216,
"ExecutionSettings": {
"ResolutionHeight": 0,
"ResolutionDepth": 0,
"FontSmoothing": false,
"AutoDownloadProcess": false
}
}
/odata/Robots/UiPath.Server.Configuration.OData.GetRobotsForProcess
. Ele permite que você identifique, em tempo real, quais robôs podem executar o pacote com o id input_output_arguments_example
.
Obter
https://{yourDomain}/odata/Robots/UiPath.Server.Configuration.OData.GetRobotsForProcess(processId='input_output_arguments_example')
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Robots",
"@odata.count": 2,
"value": [
{
"LicenseKey": null,
"MachineName": "DESKTOP-ASBD",
"MachineId": 129,
"Name": "Stan",
"Username": "Alex",
"Description": null,
"Version": null,
"Type": "Unattended",
"HostingType": "Standard",
"Password": null,
"RobotEnvironments": "doc_env,a_invoke_env,Group1",
"Id": 759,
"ExecutionSettings": null
},
{
"LicenseKey": null,
"MachineName": "Doc",
"MachineId": 1066,
"Name": "DocBot",
"Username": "uipath\\documentation",
"Description": null,
"Version": "18.3.0.558",
"Type": "NonProduction",
"HostingType": "Standard",
"Password": null,
"RobotEnvironments": "doc_env",
"Id": 1684,
"ExecutionSettings": null
}
]
}
{
"@odata.context": "https://{yourDomain}/odata/$metadata#Robots",
"@odata.count": 2,
"value": [
{
"LicenseKey": null,
"MachineName": "DESKTOP-ASBD",
"MachineId": 129,
"Name": "Stan",
"Username": "Alex",
"Description": null,
"Version": null,
"Type": "Unattended",
"HostingType": "Standard",
"Password": null,
"RobotEnvironments": "doc_env,a_invoke_env,Group1",
"Id": 759,
"ExecutionSettings": null
},
{
"LicenseKey": null,
"MachineName": "Doc",
"MachineId": 1066,
"Name": "DocBot",
"Username": "uipath\\documentation",
"Description": null,
"Version": "18.3.0.558",
"Type": "NonProduction",
"HostingType": "Standard",
"Password": null,
"RobotEnvironments": "doc_env",
"Id": 1684,
"ExecutionSettings": null
}
]
}
O exemplo a seguir permite visualizar os logs do robô para o robô chamado DocBot.
Obter
https://{yourDomain}/odata/RobotLogs?$top=100&$skip=200&$filter=RobotName eq 'DocBot'
{
"@odata.context": "https://{yourDomain}/odata/$metadata#RobotLogs",
"@odata.count": 202,
"value": [
{
"Level": "Info",
"WindowsIdentity": "UIPATH\\john.smith",
"ProcessName": "TestingSequence_DOC",
"TimeStamp": "2019-10-14T13:55:18.2473626Z",
"Message": "TestingSequence_DOC execution started",
"JobKey": "e49c0012-ee01-45e4-884c-0ce1f2aa6fbb",
"RawMessage": "{\r\n \"message\": \"TestingSequence_DOC execution started\",\r\n \"level\": \"Information\",\r\n \"logType\": \"Default\",\r\n \"timeStamp\": \"2019-10-14T13:55:18.2473626+00:00\",\r\n \"fingerprint\": \"972a32c3-95d9-4264-ae5d-af589bf4f0b5\",\r\n \"windowsIdentity\": \"UIPATH\\\\petrina.calota\",\r\n \"machineName\": \"LAPTOP-IN7198N3\",\r\n \"processName\": \"TestingSequence_DOC\",\r\n \"processVersion\": \"1.1.7024.37929\",\r\n \"jobId\": \"e49c0012-ee01-45e4-884c-0ce1f2aa6fbb\",\r\n \"robotName\": \"G\",\r\n \"machineId\": 229978,\r\n \"organizationUnitId\": 67543,\r\n \"fileName\": \"Main\"\r\n}",
"RobotName": "DocBot",
"MachineId": 229978,
"Id": 0
},
{
"Level": "Info",
"WindowsIdentity": "UIPATH\\john.smith",
"ProcessName": "TestingSequence_DOC",
"TimeStamp": "2019-10-14T13:57:21.4985672Z",
"Message": "TestingSequence_DOC execution ended",
"JobKey": "e49c0012-ee01-45e4-884c-0ce1f2aa6fbb",
"RawMessage": "{\r\n \"message\": \"TestingSequence_DOC execution ended\",\r\n \"level\": \"Information\",\r\n \"logType\": \"Default\",\r\n \"timeStamp\": \"2019-10-14T13:57:21.4985672+00:00\",\r\n \"fingerprint\": \"e973b4f2-deec-4290-978b-3a8af0769b35\",\r\n \"windowsIdentity\": \"UIPATH\\\\petrina.calota\",\r\n \"machineName\": \"LAPTOP-IN7198N3\",\r\n \"processName\": \"TestingSequence_DOC\",\r\n \"processVersion\": \"1.1.7024.37929\",\r\n \"jobId\": \"e49c0012-ee01-45e4-884c-0ce1f2aa6fbb\",\r\n \"robotName\": \"G\",\r\n \"machineId\": 229978,\r\n \"organizationUnitId\": 67543,\r\n \"totalExecutionTimeInSeconds\": 123,\r\n \"totalExecutionTime\": \"00:02:03\",\r\n \"fileName\": \"Main\"\r\n}",
"RobotName": "DocBot",
"MachineId": 229978,
"Id": 0
}
]
}
{
"@odata.context": "https://{yourDomain}/odata/$metadata#RobotLogs",
"@odata.count": 202,
"value": [
{
"Level": "Info",
"WindowsIdentity": "UIPATH\\john.smith",
"ProcessName": "TestingSequence_DOC",
"TimeStamp": "2019-10-14T13:55:18.2473626Z",
"Message": "TestingSequence_DOC execution started",
"JobKey": "e49c0012-ee01-45e4-884c-0ce1f2aa6fbb",
"RawMessage": "{\r\n \"message\": \"TestingSequence_DOC execution started\",\r\n \"level\": \"Information\",\r\n \"logType\": \"Default\",\r\n \"timeStamp\": \"2019-10-14T13:55:18.2473626+00:00\",\r\n \"fingerprint\": \"972a32c3-95d9-4264-ae5d-af589bf4f0b5\",\r\n \"windowsIdentity\": \"UIPATH\\\\petrina.calota\",\r\n \"machineName\": \"LAPTOP-IN7198N3\",\r\n \"processName\": \"TestingSequence_DOC\",\r\n \"processVersion\": \"1.1.7024.37929\",\r\n \"jobId\": \"e49c0012-ee01-45e4-884c-0ce1f2aa6fbb\",\r\n \"robotName\": \"G\",\r\n \"machineId\": 229978,\r\n \"organizationUnitId\": 67543,\r\n \"fileName\": \"Main\"\r\n}",
"RobotName": "DocBot",
"MachineId": 229978,
"Id": 0
},
{
"Level": "Info",
"WindowsIdentity": "UIPATH\\john.smith",
"ProcessName": "TestingSequence_DOC",
"TimeStamp": "2019-10-14T13:57:21.4985672Z",
"Message": "TestingSequence_DOC execution ended",
"JobKey": "e49c0012-ee01-45e4-884c-0ce1f2aa6fbb",
"RawMessage": "{\r\n \"message\": \"TestingSequence_DOC execution ended\",\r\n \"level\": \"Information\",\r\n \"logType\": \"Default\",\r\n \"timeStamp\": \"2019-10-14T13:57:21.4985672+00:00\",\r\n \"fingerprint\": \"e973b4f2-deec-4290-978b-3a8af0769b35\",\r\n \"windowsIdentity\": \"UIPATH\\\\petrina.calota\",\r\n \"machineName\": \"LAPTOP-IN7198N3\",\r\n \"processName\": \"TestingSequence_DOC\",\r\n \"processVersion\": \"1.1.7024.37929\",\r\n \"jobId\": \"e49c0012-ee01-45e4-884c-0ce1f2aa6fbb\",\r\n \"robotName\": \"G\",\r\n \"machineId\": 229978,\r\n \"organizationUnitId\": 67543,\r\n \"totalExecutionTimeInSeconds\": 123,\r\n \"totalExecutionTime\": \"00:02:03\",\r\n \"fileName\": \"Main\"\r\n}",
"RobotName": "DocBot",
"MachineId": 229978,
"Id": 0
}
]
}
As solicitações GET para logs do Robot armazenados usando o Elasticsearch recuperam apenas as primeiras 10.000 entradas. Isso ocorre devido a uma limitação do Elasticsearch e não ocorre se você estiver usando SQL.
$top
e $skip
que ultrapassam o limite de 10.000 retorna a seguinte mensagem de erro: "Depth of pagination is limited in Elasticsearch by the max_result_window index setting. Certifique-se de que skip + take seja inferior a 10000".
RobotName eq
, JobKey eq
, MachineId eq
, Level ge
, TimeStamp gt
.
X-UIPATH-OrganizationUnitId
no cabeçalho da solicitação e o ID do robô e o nome da máquina no corpo da solicitação.
Ao fazer solicitações PUT para o terminal Robots, leve em consideração o seguinte:
- o nome de usuário e a senha do Robot não são atualizados quando você envia o mesmo nome de usuário e uma senha nula ou vazia.
- se um novo nome de usuário for enviado com uma senha nula ou vazia, as credenciais do robô serão atualizadas e o novo nome de usuário será usado.
COLOCAR
https://{yourDomain}/odata/Robots(749)
Chave |
Valor |
---|---|
Autorização |
O portador |
X-UIPATH-OrganizationUnitId |
O ID da pasta do contêiner. Por exemplo,
36886 .
|
{
"LicenseKey": "8ec4t984-b2d7-44f2-b5be-0a64ee9a487b",
"MachineName": "MBOBOC",
"Name": "DocBot",
"Type": "Development",
"Id": 749,
"Username": "UIPATH\\JustAnotherRobot",
"ExecutionSettings":{
"TracingLevel":"Information",
"StudioNotifyServer":true,
"LoginToConsole":false,
"ResolutionWidth":0,
"ResolutionHeight":0,
"ResolutionDepth":0,
"FontSmoothing":false,
"AutoDownloadProcess":false
}
}
{
"LicenseKey": "8ec4t984-b2d7-44f2-b5be-0a64ee9a487b",
"MachineName": "MBOBOC",
"Name": "DocBot",
"Type": "Development",
"Id": 749,
"Username": "UIPATH\\JustAnotherRobot",
"ExecutionSettings":{
"TracingLevel":"Information",
"StudioNotifyServer":true,
"LoginToConsole":false,
"ResolutionWidth":0,
"ResolutionHeight":0,
"ResolutionDepth":0,
"FontSmoothing":false,
"AutoDownloadProcess":false
}
}
odata/Robots({robot_id})
.
Excluir
https://{yourDomain}/odata/Robots(79)
Cabeçalhos de solicitação.
Chave |
Valor |
---|---|
Autorização |
O portador |
Código de resposta
204 Sem conteúdo
/Robots/UiPath.Server.Configuration.OData.DeleteBulk
.
Postar
https://{yourDomain}/odata/Robots/UiPath.Server.Configuration.OData.DeleteBulk
Cabeçalhos de solicitação.
Chave |
Valor |
---|---|
Autorização |
O portador |
Corpo da Solicitação
{
"robotIds": [119, 120]
}
{
"robotIds": [119, 120]
}
Código de resposta
204 Sem conteúdo
Chamar o terminal abaixo atualiza a senha do seu próprio robô autônomo, inserindo sua ID de usuário (por exemplo, digamos que sua ID de usuário seja 88). Esta operação não requer permissões de edição em Users.
CORREÇÃO
https://{yourDomain}/odata/Users(88)
{
"UnattendedRobot":
{
"Password": "newUnattendedRobotP@ss"
}
}
{
"UnattendedRobot":
{
"Password": "newUnattendedRobotP@ss"
}
}
- Recuperando Status do Robô
- De acordo com seu ID
- De acordo com Seu Nome
- Recuperando informações do robô de acordo com seu estado: Exemplo 1
- Cabeçalhos de solicitação.
- Código de resposta
- Corpo da Resposta
- Recuperar Informações de Robô de Acordo com Seu Estado: Exemplo 2
- Cabeçalhos de solicitação.
- Código de resposta
- Corpo da Resposta
- Recuperando informações do robô de acordo com seu ID
- Cabeçalhos de solicitação.
- Código de resposta
- Corpo da Resposta
- Recuperando todos os robôs que podem executar um processo específico
- Cabeçalhos de solicitação.
- Código de resposta
- Corpo da Resposta
- Recuperando logs do robô de acordo com o nome do robô
- Cabeçalhos de solicitação.
- Código de resposta
- Corpo da Resposta
- Editando informações do robô
- Cabeçalhos de solicitação.
- Corpo da Solicitação
- Código de resposta
- Excluir Robôs
- Excluindo um único robô
- Excluindo vários robôs
- Atualizando a senha do seu próprio robô autônomo
- Cabeçalhos de solicitação.
- Corpo da Solicitação
- Código de resposta