Orchestrator
Plus récente (Latest)
False
Image de fond de la bannière
Guide de l'API Orchestrator
Dernière mise à jour 24 avr. 2024

Rate limits and large data fields usage optimization

Rate limits and optimizations around large data fields are industry best practices for maintaining optimal performance levels, highly secure usage, and constant service availability. This is how they benefit you:
  • Elles garantissent la prévisibilité du système : connaître la limite d'appels API permet de mieux concevoir et de mieux gérer vos applications. Cela assure un environnement prédictible, ce qui réduit les éventuelles surprises dues à des dépassements de limite inattendus.
  • Elles améliorent les performances : en contrôlant le trafic sur nos serveurs, nous assurons des performances optimales et des réponses plus rapides, ce qui améliore considérablement votre expérience produit.
  • Elles renforcent la sécurité : les limites détaillées ci-dessous agissent comme un niveau de sécurité supplémentaire, protégeant votre système face à d'éventuelles cybermenaces.
  • Elles garantissent une utilisation adéquate : nos limites de débit garantissent une attribution équitable des ressources à tous les utilisateurs, ainsi qu'un fonctionnement fluide, même au cours des périodes d'utilisation maximale.

The limits and large data fields optimizations outlined below require some adjustments on your end, but we are confident that they will bring long-term benefits.

Limites de débit

Voici les limites que nous appliquons :

Endpoint

Exemples

Limits

Date d’entrée en vigueur

GET/odata/Jobs/?<filters>

  • GET/odata/Jobs

  • GET/odata/Jobs?$top=100

  • GET/odata/Jobs?$top=20&$filter=Robot/Id eq 123L

  • GET/odata/Jobs?$filter=((CreationTime ge 2024-04-04T12:00:47.264Z) and (ProcessType eq 'Process'))&$expand=Robot,Machine,Release&$orderby=CreationTime desc

100 requêtes API/minute/locataire

Juillet 2024

GET/odata/QueueItems/?<filters>

  • GET/odata/QueueItems

  • GET/odata/QueueItems/?$top=20

  • GET/odata/QueueItems?$filter=((Status eq '0'))

  • GET/odata/QueueItems?$filter=((QueueDefinitionId eq 102135))&$expand=Robot,ReviewerUser&$orderby=Id desc

100 requêtes API/minute/locataireJuillet 2024
Important :
GET/odata/Jobs(<job_id>) is not rate limited.

Il est important de noter que ces limites ne s’appliquent pas à l’ajout d’éléments de file d’attente ni au traitement des tâches. Ainsi, il n’y a aucun impact sur l’ajout d’un élément de file d’attente, sa suppression, la configuration de son état, ou encore le démarrage et le traitement d’un certain nombre de tâches.

Vous pouvez suivre votre utilisation d’API par mois ou par jour en vous rendant sur l’onglet Audit d’API de la fenêtre Surveillance, au niveau du locataire.

En-têtes exposés

En-tête

Description

Exemple

Retry-After

Toutes les demandes au-delà des limites susmentionnées reçoivent une réponse HTTP 429 comportant cet en-tête.

Elle affiche le nombre de secondes que vous devez attendre avant que le point de terminaison ne soit à nouveau disponible.

Retry-After: 10 signifie que la limite de débit sur le point de terminaison expire dans 10 secondes. Toutes les nouvelles tentatives dans ces 10 secondes entraînent une réponse 429.

X-RateLimit-Remaining

Nombre d’appels restants

X-RateLimit-Remaining: 30 signifie qu’il vous reste 30 appels dans la plage horaire actuelle
Remarque :

Si le nombre de requêtes par minute est inférieur à 10, il sera renvoyé comme 0.

Impact sur les activités

Les activités suivantes sont affectées par ces limites :

  • Get Job
  • Obtenir les éléments de file d'attente (Get Queue Items)
  • Requête HTTP d’Orchestrator (Orchestrator HTTP Request), lorsque celle-ci est utilisée pour appeler les points de terminaison GET /odata/Jobs ou GET /odata/QueueItems
System activities version 2024.3 or newer apply the Retry-after response header, meaning that they perform automatic retries of Orchestrator operations. Please make sure to always use the latest version of System activities to benefit from this.

S’adapter aux modifications

Voici ce que nous vous recommandons de faire pour veiller à ce que vous ne dépassiez pas nos limites et que vous en tiriez pleinement parti :

  • Analysez votre utilisation des API et les informations que vous récupérez à partir de nos points de terminaison de type GetAll, mentionnés plus haut.
  • Ajustez la fréquence des appels de votre API ainsi que les procédures d’extraction de données pour vous aligner sur ces seuils, le cas échéant.
  • Consultez les sections les sections Exportation des tâches et Exportation des éléments de la file d’attente pour obtenir des exemples de récupération des données des tâches et des éléments de la file d’attente.
  • Utilisez l’option d’exportation de données en temps réel d’Insights.
  • Make sure you always use the latest version of System activities.
  • Contactez votre gestionnaire de compte ou notre équipe d’assistance si vous avez des questions ou désirez avoir plus de précisions.

Large data fields

Les points de terminaison d’API utilisés pour récupérer des listes de tâches et d’éléments de file d’attente peuvent s’avérer problématiques lorsqu’ils sont utilisés à des fins de surveillance en temps réel et d’exportation de données. Par exemple :

  • Si la requête concerne 1000 éléments et que chaque élément représente 1 Mo de données volumineuses, la réponse à un seul appel d’API peut atteindre une taille de 1 Go. Dans la mesure où certains intermédiaires n’autorisent pas les réponses d’une taille aussi importante, cela conduit à un échec des requêtes.

  • Lorsque des filtres complexes sont utilisés et que la pagination d’une file d’attente contient plusieurs millions d’éléments de file d’attente, les requêtes peuvent conduire une expiration du délai de traitement après quelques dizaines de pages. Cela est lié à la quantité de données devant être extraites de la base de données.

Jobs fields

To improve system efficiency and safeguard data privacy, specific data is omitted from the Jobs - GetAll endpoint responses. These are the impacted fields:

Endpoint

Champs omis

Ce que vous pouvez utiliser à la place

Date d’entrée en vigueur

GET/odata/Jobs

  • InputArguments

  • OutputArguments

GET/odata/Jobs({key})

Pour les exportations, utilisez le point de terminaison dédié : GET/odata/Jobs/UiPath.Server.Configuration.Data.Export

Pour plus de détails, consultez la section Exportation des tâches.

Locataires Communauté (Community) et Contrôle de validité (Canary) : mars 2024

Locataires Enterprise : juillet 2024

If you are using the GET /odata/Jobs endpoint, either via API or via the Get Jobs, Get Queue Items, or Orchestrator HTTP Request activities, you need to find out whether you use any of the listed fields. If you do, please be aware that the content of these fields will be returned as null.

Nous vous recommandons de tester les processus dans vos locataires Canary afin d’en évaluer l’impact.

Queue items large data fields

The performance of the GET/odata/QueueItems endpoint is optimized by applying these size limitations to its fields:

Champ

Limite

Date d’entrée en vigueur

How to tell that you are impacted

How to address this

Progress

1,048,576 characters

> Community and Canary tenants: April 2024

> Enterprise tenants: May 2024

A specific error message is returned.

We recommend that you use storage buckets and/or Data Service blob storage if you need to store more data.

104,857 characters

All tenants: September 2024

AnalyticsData

10 KB

> Community and Canary tenants: June 2024

> Enterprise tenants: September 2024

Enterprise: If your current data load exceeds these limits, we will send monthly reports to administrators.

Output

100 KB

SpecificData

500 KB

ProcessingException - Reason

102,400 characters

ProcessingException - Details

102,400 characters

The following filter is also limited for performance purposes:

Filtrer (Filter)

Limite

Date d’entrée en vigueur

How to tell that you are impacted

How to address this

$top

> If you do not use the $top filter, you receive 100 records by default.
> If you use the $top filter, you receive a maximum of 100 records. Anything exceeding 100 triggers a 400 Bad Request error message.

> Community and Canary tenant: June 2024

> Enterprise tenants: September 2024

Enterprise: We aim to send an email notification to administrators if we detect the usage of this filter in API calls. However, we ask that you keep a close eye on your end as well.

We recommend that you modify your process or API usage logic accordingly if you expect to exceed this limit.

Alternatives

You can use the following alternatives to retrieve Jobs and QueueItems fields:

Migrer de l’environnement local vers le cloud

Important :

Les limites de débit et les modifications des champs de données volumineux ne seront pas implémentées dans les environnements locaux.

Si vous utilisez une version autonome d’Orchestrator et que vous envisagez de passer au cloud, vous pouvez utiliser les journaux des requêtes IIS afin de déterminer le volume des requêtes pour les points de terminaison impactés. L’analyse dépendra de votre méthode d’agrégation des journaux, pour laquelle vous pouvez par exemple utiliser l’analyseur de journaux Microsoft.

Pour évaluer l’impact sur les champs de données volumineux, nous vous recommandons de tester vos processus dans les locataires Canary.

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
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.