orchestrator
2024.10
true
UiPath logo, featuring letters U and I in white

Guide de l'API Orchestrator

Automation CloudAutomation Cloud Public SectorAutomation SuiteStandalone
Dernière mise à jour 4 déc. 2024

Requêtes relatives aux Robots

Récupération des états du Robot

Remarque : Pour extraire la valeur du paramètre LicenseKey, vous devez effectuer une requête GET vers le point de terminaison /odata/Robots(Id).

En fonction de son ID

L'exemple suivant permet d'afficher le statut actuel du Robot avec l'ID 749.

Obtenir

https://{yourDomain}/odata/Sessions?$top=10&$filter=Robot/Id eq 749&$select=State

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

Codes de réponse

200 OK

Corps de la réponse

{
    "@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"
        }
    ]
}

En fonction de son nom

L'exemple suivant permet d'afficher l'état actuel du Robot avec le nom DocBot.

Obtenir

https://{yourDomain}/odata/Sessions?$top=10&$filter=Robot/Name eq 'DocBot'&$select=State

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

Codes de réponse

200 OK

Corps de la réponse

{
    "@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"
        }
    ]
}

Récupération des informations du Robot en fonction de son état : Exemple 1

L'exemple ci-dessous demande les 10 premiers Robots qui ont le statut Disponible et envoie une pulsation dans les 2 dernières minutes. Seules les informations pertinentes du robot s'affichent. Vous pouvez vérifier la pulsation en utilisant le paramètre Période de rapports et soustraire 2 minutes de l'heure actuelle. Comme vous le savez peut être, si un Robot n'a pas envoyé une pulsation dans les 2 dernières minutes, il est indiqué comme ne répondant pas.

Obtenir

https://{yourDomain}/odata/Sessions?$top=10&$filter=State eq 'Available' and ReportingTime gt 2018-03-05T03:48:04.147Z&$select=Robot&$expand=Robot

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

Codes de réponse

200 OK

Corps de la réponse

{
    "@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
            }
        }
    ]
}

Récupération des informations du Robot en fonction de son état : Exemple 2

L'exemple suivant recherche les 10 premiers Robots qui ont le statut Déconnecté et développe les informations des Robots.

Obtenir

https://{yourDomain}/odata/Sessions?$top=10&$filter=State eq 'Disconnected'&$expand=Robot

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

Codes de réponse

200 OK

Corps de la réponse

{
    "@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
            }
        }
    ]
}

Récupération des informations du Robot en fonction de son ID

L'exemple suivant récupère les détails du Robot avec l'ID 216. Notez que ce Robot utilise l'authentification par carte à puce.

Obtenir

https://{yourDomain}/odata/Robots(216)

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

Codes de réponse

200 OK

Corps de la réponse

{
    "@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
    }
}

Récupération de tous les Robots qui peuvent exécuter un processus spécifique

L'exemple suivant montre une requête effectuée à /odata/Robots/UiPath.Server.Configuration.OData.GetRobotsForProcess. Elle permet d'identifier, à la volée, les Robots qui peuvent exécuter le paquet avec l'ID input_output_arguments_example.

Obtenir

https://{yourDomain}/odata/Robots/UiPath.Server.Configuration.OData.GetRobotsForProcess(processId='input_output_arguments_example')

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

Codes de réponse

200 OK

Corps de la réponse

{
  "@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
    }
  ]
}

Récupération des journaux du robot en fonction du nom du robot

L'exemple suivant vous permet d'afficher les journaux du Robot nommé DocBot.

Obtenir

https://{yourDomain}/odata/RobotLogs?$top=100&$skip=200&$filter=RobotName eq 'DocBot'

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

Codes de réponse

200 OK

Corps de la réponse

{
    "@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
        }
  ]
}
Remarque :

Les requêtes GET pour les journaux du Robot stockés à l'aide d'Elasticsearch ne récupèrent que les 10 000 premières entrées. Cela est dû à une limitation Elasticsearch et ne se produit pas si vous utilisez SQL.

L'utilisation des paramètres $top et $skip qui vont au-delà de la limite de 10 000 renvoie le message d'erreur suivant : « La profondeur de pagination est limitée dans Elasticsearch par le paramètre d'index max_result_window. Assurez-vous que la valeur de la valeur "Ignorer + prendre" est inférieure à 10000".
Seules les combinaisons condition-verbe suivantes sont prises en charge lors du paramétrage des requêtes de journaux du Robot stockées à l'aide d'Elasticsearch : RobotName eq, JobKey eq, MachineId eq, Level ge, TimeStamp gt.

Modification des informations du Robot

L'exemple suivant modifie le type et le nom du Robot avec l'ID 749 et modifie la configuration de ses paramètres d'exécution. N'oubliez pas de mettre X-UIPATH-OrganizationUnitId dans l'en-tête de la demande, ainsi que l'ID du robot et le nom de la machine dans le corps de la demande.
Remarque :

Lorsque vous effectuez des requêtes PUT au point de terminaison des Robots, tenez compte des points suivants :

  • le nom d'utilisateur et le mot de passe du Robot ne sont pas mis à jour lorsque vous envoyez le même nom d'utilisateur et un mot de passe null ou vide.
  • Si un nouveau nom d'utilisateur est envoyé avec un mot de passe null ou vide, les identifiants du Robot sont mis à jour et le nouveau nom d'utilisateur est utilisé.

METTRE

https://{yourDomain}/odata/Robots(749)

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

X-UIPATH-OrganizationUnitId

ID du dossier du conteneur.

Par exemple : 36886.

Corps de la requête

{
  "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
    }
}

Codes de réponse

200 OK

Suppression d'un Robot

Suppression d'un Robot unique

Pour supprimer un Robot spécifique, effectuez une requête DELETE sur le point de terminaison odata/Robots({robot_id}) .

Supprimer (Delete)

https://{yourDomain}/odata/Robots(79)

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

Codes de réponse

204 Aucun contenu

Suppression de plusieurs Robots

Pour supprimer plusieurs Robots simultanément, effectuez une requête POST au point de terminaison /Robots/UiPath.Server.Configuration.OData.DeleteBulk.

Publier

https://{yourDomain}/odata/Robots/UiPath.Server.Configuration.OData.DeleteBulk

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

Corps de la requête

{
    "robotIds": [119, 120]
}{
    "robotIds": [119, 120]
}

Codes de réponse

204 Aucun contenu

Mise à jour du mot de passe de votre propre robot Unattended

L'appel du point de terminaison ci-dessous met à jour le mot de passe de votre propre robot Unattended, en saisissant votre ID d'utilisateur (par exemple, disons que votre ID d'utilisateur est 88). Cette opération ne nécessite pas d'autorisations de modification sur les utilisateurs.

Remarque : si vous souhaitez mettre à jour le mot de passe d'un robot différent, effectuez une demande PUT sur le même point de terminaison, en utilisant l'ID de l'utilisateur respectif.

CORRIGER

https://{yourDomain}/odata/Users(88)

En-têtes de requête.

Clé (Key)

Valeur (Value)

Autorisation

Porteur

Corps de la requête

{
"UnattendedRobot": 
   {
    "Password": "newUnattendedRobotP@ss"
    }
}{
"UnattendedRobot": 
   {
    "Password": "newUnattendedRobotP@ss"
    }
}

Codes de réponse

200 OK

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Uipath Logo White
Confiance et sécurité
© 2005-2024 UiPath Tous droits réservés.