- Primeros pasos
- Sobre OData y referencias
- Tipos enumerados
- Autenticando
- Crear solicitudes de API
- Permisos por punto final
- Códigos de respuesta
- Límites de tasa y optimización del uso de grandes campos de datos
- Definición de Swagger
- API de Orchestrator
- Solicitudes de alertas
- Solicitudes de activos
- Solicitudes de calendario
- Solicitudes de entornos
- Solicitudes de carpetas
- Solicitudes de tareas genéricas
- Solicitudes de trabajos
- Solicitudes de bibliotecas
- Solicitudes de licencia
- Solicitudes de paquetes
- Solicitudes de permisos
- Solicitudes de espacios de trabajo personales
- Solicitudes de procesos
- Procesar solicitudes de política de retención de datos
- Solicitudes de elementos en cola
- Solicitudes de política de retención de cola
- Solicitudes de robots
- Solicitudes de roles
- Solicitudes de horarios
- Solicitudes de configuración
- Solicitudes de cubos de almacenamiento
- Solicitudes de tareas
- Solicitudes de catálogos de tareas
- Solicitudes de formularios de tareas
- Solicitudes de tenants
- Solicitudes de transacciones
- Solicitudes de usuario
- Solicitudes de Webhooks
Guía de la API de Orchestrator
Límites de tasa y optimización del uso de grandes campos de datos
- Garantizan un sistema predecible: conocer el límite de llamadas a la API ayuda a diseñar y mantener mejor tus aplicaciones. Proporciona un entorno predecible, que minimiza las sorpresas debidas a infracciones inesperadas de los límites.
- Mejoran el rendimiento: al controlar el tráfico en nuestros servidores, garantizamos un rendimiento óptimo y respuestas más rápidas, lo que mejora significativamente tu experiencia del producto.
- Mejoran la seguridad: los límites que se describen a continuación actúan como una capa adicional de seguridad, protegiendo tu sistema de posibles ciberamenazas.
- Garantizan un uso justo: nuestros límites de tarifas aseguran una asignación de recursos equitativa a todos los usuarios y un funcionamiento fluido incluso durante los períodos de mayor uso.
Los límites y las grandes optimizaciones de campos de datos que se describen a continuación requieren algunos ajustes por su parte, pero estamos seguros de que aportarán beneficios a largo plazo.
Estos son los límites que aplicamos:
PuntoFinal |
Limits |
Efectivo desde | Ejemplos |
---|---|---|---|
|
|
Tenants de Community, Canary y Enterprise: julio de 2024 |
|
|
|
Tenants de Community, Canary y Enterprise: julio de 2024 |
|
|
100 solicitudes de API/día/inquilino |
Tenants de Community, Canary y Enterprise: octubre de 2024 |
N/D |
| 100 solicitudes de API/día/inquilino |
Tenants de Community, Canary y Enterprise: octubre de 2024 |
N/D |
|
100 solicitudes de API/día/inquilino |
Tenants de Community, Canary y Enterprise: octubre de 2024 |
N/D |
|
100 solicitudes de API/día/inquilino |
Tenants de Community, Canary y Enterprise: octubre de 2024 |
N/D |
1 El uso no automatizado se refiere a las llamadas API que se originan en integraciones de API fuera de los procesos, como los scripts PowerShell y las herramientas de supervisión de terceros.
2 El uso de automatización se refiere a las llamadas a la API que se originan en las actividades Obtener artículos en cola, Obtener trabajos y Solicitud HTTP de Orchestrator.
GET/odata/Jobs(<job_id>)
no está limitado por tasa.
Estos límites no se aplican a la adición de artículos en cola y trabajos de procesamiento. Como tal, no hay impacto en la adición de un elemento de cola, la eliminación de una cola, la configuración de su estado o el inicio y el procesamiento de cualquier número de trabajos.
Puedes comprobar tu uso de API por mes o día en la pestaña de auditoría de la API a nivel de tenant en la ventana de Supervisión.
Encabezado |
Descripción |
Ejemplo |
---|---|---|
|
Todas las solicitudes que superen los límites mencionados reciben una respuesta HTTP 429 que incluye este encabezado. Muestra el número de segundos que debes esperar hasta que el punto final vuelva a estar disponible. |
Retry-After: 10 significa que el límite de velocidad en el punto final caduca en 10 segundos. Cualquier reintento en estos 10 segundos da como resultado una respuesta 429.
|
|
El número de llamadas restantes |
X-RateLimit-Remaining: 30 significa que te quedan 30 llamadas en el intervalo de tiempo actual
|
Si el número de solicitudes por minuto es inferior a 10, se representa como 0.
Las siguientes actividades se ven afectadas por estos límites:
- Obtener trabajo
- Obtener elementos de la cola
- Solicitud Http de Orchestrator (cuando se utiliza para llamar a los puntos finales
GET /odata/Jobs
oGET /odata/QueueItems
)
Retry-after
, lo que significa que realizan reintentos automáticos de las operaciones de Orchestrator. Asegúrese de utilizar siempre la última versión de las actividades del sistema para beneficiarse de esto.
Esto es lo que te recomendamos hacer para asegurarte de que cumples con nuestros límites y aprovecharlos al máximo:
- Revisa tus patrones de uso de API y la información que recuperas de nuestros puntos finales de tipo
GetAll
mencionados anteriormente. - Ajusta la frecuencia de llamadas a la API y los procedimientos de extracción de datos para ajustarlos con estos límites cuando sea necesario.
- Utiliza la opción de exportación de datos en tiempo real de Insights para exportaciones en tiempo real.
- Consulta las secciones Exportación de trabajos y Exportación de elementos de cola para obtener ejemplos sobre cómo recuperar trabajos y datos de elementos de cola solo para fines de reporte y archivo.
Importante:
- Estos endpoints están limitados a 100 solicitudes de API/día/tenant.
Una vez que se supere ese límite, se mostrará un error #4502, indicando que se ha alcanzado el límite diario por tenant. El límite se restablece a las 00:00 UTC.
- No utilices estos endpoints para la recuperación de datos en tiempo real.
- Estos endpoints están limitados a 100 solicitudes de API/día/tenant.
- Asegúrese de utilizar siempre la última versión de las actividades del sistema.
- Ponte en contacto con tu gestor de cuentas o con nuestro equipo de soporte si tienes alguna pregunta o necesitas más aclaraciones.
Estas alertas, disponibles en la sección Límites de tasa de API de tu configuración de alerta, te informan cuando se superan los límites y proporcionan información valiosa sobre el punto final afectado.
- La tasa de solicitudes ha superado el límite en el último día: gravedad de la advertencia:
- Se envía diariamente, en la aplicación y por correo electrónico.
- Estás suscrito a ella de forma predeterminada.
- Incluye el nombre del punto final para el que se ha superado el número de solicitudes.
- Incluye un enlace a la ventana de supervisión de auditoría de API a nivel de tenant, centrada en la vista diaria. Detalles...
- Esto requiere el permiso Auditoría: ver.
- La tasa de solicitudes ha superado el límite: gravedad del error:
- Se envía cada diez minutos, en la aplicación y por correo electrónico.
- Se te ha cancelado la suscripción de forma predeterminada.
- Incluye el nombre del punto final para el que se ha superado el número de solicitudes.
- Incluye un enlace a la ventana de supervisión de auditoría de API a nivel de tenant, centrada en la vista detallada de 10 minutos. Detalles...Nota: puede haber un retraso de 10 minutos entre el momento en que se supera el límite y el momento en que se envía la alerta.
- Esto requiere el permiso Auditoría: ver.
Escenarios de alerta
Se te alerta en los siguientes escenarios:
- Cuando superas las 100 solicitudes de API/minuto/tenant mediante uso no automatizado.
- Cuando superas las 1000 solicitudes de API/minuto/tenant mediante el uso de automatización.
Los puntos finales de la API utilizados para recuperar listas de trabajos y elementos de cola pueden resultar problemáticos cuando se utilizan para la supervisión en tiempo real y la exportación de datos. Por ejemplo:
-
Al solicitar hasta 1000 elementos, con cada elemento que asciende a hasta 1 MB de datos grandes, la respuesta a una única llamada a la API puede ser de 1 GB de tamaño. Dado que hay intermediarios que no permiten respuestas de este tamaño, las solicitudes fallan.
-
Al utilizar filtros complejos y luego paginar una cola con varios millones de elementos de cola, las solicitudes pueden comenzar a agotarse después de unas pocas docenas de páginas. Esto se debe a la cantidad de datos que deben recuperarse de la base de datos.
Jobs - GetAll
. Estos son los campos afectados:
PuntoFinal |
Campos omitidos |
Qué puedes utilizar en su lugar |
Efectivo desde |
---|---|---|---|
|
|
|
Tenants de comunidad y canarios: marzo de 2024 Tenants de Enterprise: julio de 2024 |
GET /odata/Jobs
, ya sea a través de la API o a través de las actividades Obtener trabajos, Obtener elementos de cola o Solicitud HTTP de Orchestrator, debe averiguar si utiliza alguno de los campos enumerados. Si lo haces, ten en cuenta que el contenido de estos campos se devolverá como nulo.
Te recomendamos que pruebes los procesos en tus tenants canarios para evaluar el impacto.
GET/odata/QueueItems
se optimiza aplicando estas limitaciones de tamaño a sus campos:
Campo |
Límite | Efectivo desde |
Cómo saber que se ha visto afectado |
Cómo abordar esto |
---|---|---|---|---|
Progreso |
1 048 576 caracteres |
> Tenants de comunidad y canarios: abril de 2024 > Tenants de Enterprise: mayo de 2024 |
Se devuelve un mensaje de error específico si los datos que intentas cargar superan estos límites. |
Le recomendamos que utilice depósitos de almacenamiento y/o el almacenamiento de blob de Data Service si necesita almacenar más datos. |
104 857 caracteres |
Todos los tenants: septiembre de 2024 | |||
AnalyticsData/Analytics |
5.120 caracteres |
> Tenants de comunidad y canarios: junio de 2024 > Tenants de Enterprise: septiembre de 2024 | ||
OutputData/Output |
51.200 caracteres | |||
SpecificContent/SpecificData |
256.000 caracteres | |||
ProcessingException - Reason |
102 400 caracteres | |||
ProcessingException - Details |
102 400 caracteres |
Estos límites se calculan en función del estilo de codificación UTF-16, que se utiliza principalmente por parte de SQL Server para almacenar datos.
La información se almacena en SQL Server a través de tipos de datos como NVARCHAR. En estos tipos de datos, cada carácter, incluidos los caracteres ampliamente utilizados de idiomas como el chino, el japonés y el coreano, se almacena utilizando 2 bytes. Esto puede ser engañoso al comprobar la carga útil de datos utilizando el Bloc de notas o en UTF-8, ya que estos muestran 1 byte por carácter (principalmente ASCII 0-127 abc123, etc).
Por ejemplo, si tuvieras que almacenar un carácter chino como 文 en un archivo de texto con codificación UTF-8, se almacenaría como secuencia de 3 bytes (E6 96 87), consumiendo más espacio de almacenamiento. La diferencia entre los estilos de codificación hace que el número de caracteres no sea fiable como límite.
El siguiente filtro también está limitado por motivos de rendimiento:
Filtro |
Límite |
Efectivo desde |
Cómo saber que se ha visto afectado |
Cómo abordar esto |
---|---|---|---|---|
|
> Si no utiliza el filtro
$top , recibirá 100 registros de forma predeterminada.
> Si utiliza el filtro
$top , recibirá un máximo de 100 registros. Cualquier cosa que supere 100 desencadena un mensaje de error 400 Bad Request .
|
> Tenant de comunidad y canario: junio de 2024 > Tenants de Enterprise: septiembre de 2024 |
Empresa: nuestro objetivo es enviar una notificación por correo electrónico a los administradores si detectamos el uso de este filtro en las llamadas a la API. Sin embargo, le pedimos que también vigile de cerca su final. |
Le recomendamos que modifique su proceso o la lógica de uso de API en consecuencia si espera superar este límite. |
Jobs
y QueueItems
:
- Consulta las secciones Exportar trabajos y Exportar elementos en cola para obtener ejemplos sobre cómo recuperar datos de trabajos y elementos en cola.
- Utiliza la opción Exportación de datos en tiempo real de Insights.
- Ponte en contacto con tu gestor de cuentas o nuestro equipo de soporte si los métodos anteriores no te funcionan.
Los límites de tarifa y los grandes cambios en los campos de datos no se implementarán en los entornos locales.
Si utilizas Orchestrator independiente y estás pensando en mudarte a la nube, puedes utilizar los registros de solicitudes de IIS para determinar la tasa de solicitudes para los puntos finales afectados. El análisis depende de cómo agregues los registros, para lo que puedes utilizar, por ejemplo, Microsoft Log Parser.
Para evaluar el impacto en grandes campos de datos, recomendamos probar tus procesos en los tenants canarios.