Ir al contenido

Idempotencia y límites

Esta página indica cómo reintentar una escritura sin aplicarla dos veces, y cuántas solicitudes acepta la API pública.

Para poder reintentar una escritura sin riesgo, envía un encabezado Idempotency-Key de 1 a 255 caracteres en cualquier solicitud POST, PUT, PATCH o DELETE. La clave es opcional y se conserva 24 horas.

Envías la misma claveObtienes
Con la misma solicitud, una vez completada la primeraLa primera respuesta de nuevo, con el encabezado Idempotent-Replayed: true
Con una solicitud distintaIDEMPOTENCY_KEY_REUSED, estado 422
Mientras la primera solicitud sigue en cursoIDEMPOTENCY_IN_PROGRESS, estado 409; pasados 60 segundos, un reintento se ejecuta desde cero

Una respuesta con estado 401, 403 o 429, un error del servidor y un fallo de validación no se guardan, así que la clave queda libre para tu reintento.

Ocho operaciones de redacción de AIP mantienen en su lugar su propia idempotencia de trabajos: crear una fuente de audio, crear un borrador, reproducir, modificar una política de intención, redactar una corrección, aplicarla, preparar y editar una política. Una solicitud que iniciaría un trabajo ya en curso responde JOB_ALREADY_EXISTS, estado 409, con el identificador del trabajo en curso en sus detalles, así que consulta ese trabajo en lugar de iniciar otro.

Cada clave de API consume dos presupuestos por minuto, y la organización un tercero.

CuboCuentaPresupuesto
read, por claveLas solicitudes GET300 por minuto
write, por claveLas solicitudes POST, PUT, PATCH y DELETE60 por minuto
org, por organizaciónCada llamada pública, de cualquier clave o agente1200 por minuto

Cada respuesta lleva dos encabezados. RateLimit-Policy indica los tres presupuestos, y RateLimit nombra el cubo más ajustado, con las solicitudes restantes y los segundos hasta que se reinicia.

Por encima de un presupuesto, la API responde TOO_MANY_REQUESTS, estado 429, con un encabezado Retry-After: espera ese número de segundos antes de reintentar.