- Introdução
- Definição do Swagger
- APIs do Orchestrator
- 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 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
/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": "/odata/$metadata#Sessions(State)",
"@odata.count": 1,
"value": [
{
"State": "Available"
}
]
}
{
"@odata.context": "/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
/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": "/odata/$metadata#Sessions(State)",
"@odata.count": 1,
"value": [
{
"State": "Available"
}
]
}
{
"@odata.context": "/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
/odata/Sessions?$top=10&$filter=State eq 'Available' and ReportingTime gt 2018-03-05T03:48:04.147Z&$select=Robot&$expand=Robot
{
"@odata.context": "/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": "/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
/odata/Sessions?$top=10&$filter=State eq 'Disconnected'&$expand=Robot
{
"@odata.context": "/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": "/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
/odata/Robots(216)
{
"@odata.context": "/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": "/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
/odata/Robots/UiPath.Server.Configuration.OData.GetRobotsForProcess(processId='input_output_arguments_example')
{
"@odata.context": "/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": "/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
/odata/RobotLogs?$top=100&$skip=200&$filter=RobotName eq 'DocBot'
{
"@odata.context": "/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": "/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
/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
/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
/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
/odata/Robots
. Observe que esse Ponto de extremidade retorna null para o parâmetro ExecutionSettings
. Use o Ponto de extremidade /odata/Robots(Id)
como uma alternativa para recuperar as configurações de execução para um robô específico.
Obter
{OrchestratorURL}/odata/RobotLogs?$top=100&$skip=200&$filter=RobotName eq 'DocBot'
{
"@odata.context": "{OrchestratorURL}/odata/$metadata#Robots",
"@odata.count": 1,
"value": [
{
"LicenseKey": null,
"MachineName": "CAPETRINA",
"MachineId": 15,
"Name": "Gustave",
"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": 8,
"ExecutionSettings": null
}
]
}
{
"@odata.context": "{OrchestratorURL}/odata/$metadata#Robots",
"@odata.count": 1,
"value": [
{
"LicenseKey": null,
"MachineName": "CAPETRINA",
"MachineId": 15,
"Name": "Gustave",
"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": 8,
"ExecutionSettings": null
}
]
}
- 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
- Recuperando informações do robô
- Cabeçalhos de solicitação.
- Código de resposta
- Corpo da Resposta