AI Glot websiteOpen AI Glot
API RESTRequêtes, pagination et limites

Requêtes, pagination et limites

Construisez des clients API AI Glot prévisibles en utilisant des enveloppes de réponse, des paramètres stricts, la pagination par curseur, des ID de requête.

Enveloppes JSON

Les réponses réussies pour une ressource unique utilisent :

JSON
{ "data": {}, "request_id": "req_example" }

Les listes ajoutent des champs de pagination :

JSON
{
  "data": [],
  "has_more": true,
  "next_cursor": "opaque-cursor",
  "request_id": "req_example"
}

Les propriétés de corps JSON inconnues sont rejetées avec l’erreur unknown_field. Cela permet de détecter une faute de frappe lors d’une écriture plutôt que de l’ignorer silencieusement.

Les paramètres de requête se comportent différemment : ceux qui ne sont pas reconnus sont ignorés et non rejetés. Les outils d’analyse et les proxys ajoutent couramment les leurs (utm_*, cf_*), et faire échouer une requête par ailleurs valide à cause de l’un d’eux serait contre-productif.

Valeurs par défaut

Les valeurs par défaut sont choisies pour un usage interactif sécurisé. Par exemple, l’utilisation par défaut s’étend aux 30 derniers jours et les traductions affichent par défaut les 25 enregistrements récents non archivés. Une limite de liste demandée supérieure à 100 est plafonnée à 100.

Les dates et les horodatages utilisent la norme ISO 8601. Les noms de champs JSON sont en snake_case. Les champs qui ne sont pas encore applicables sont généralement null afin que la structure des ressources reste stable tout au long du cycle de vie d’une traduction.

Pagination par curseur

Transmettez le next_cursor d’une réponse dans la requête suivante sans modification. Arrêtez-vous lorsque celui-ci est null ou que has_more est faux.

Lister toutes les traductions
let cursor;
do {
  const url = new URL('https://api.ai-glot.com/v1/batches');
  url.searchParams.set('limit', '100');
  if (cursor) url.searchParams.set('cursor', cursor);

  const page = await fetch(url, {
    headers: { Authorization: `Bearer ${process.env.AIGLOT_API_KEY}` },
  }).then(response => response.json());

  for (const translation of page.data) console.log(translation.id);
  cursor = page.next_cursor;
} while (cursor);

Ne construisez pas et ne modifiez pas les curseurs. La pagination par curseur empêche une traduction nouvellement créée de décaler les lignes entre les pages.

Limites de débit (Rate limits)

Chaque identifiant a une limite soutenue de 240 requêtes par minute et un plafond de pointe de 40 requêtes par 10 secondes. Une réponse 429 inclut l’en-tête Retry-After ; attendez la fin de ce délai avant de réessayer.

Chaque réponse comporte un en-tête RateLimit-Policy décrivant les deux fenêtres :

RateLimit-Policy
RateLimit-Policy: 240;w=60, 40;w=10

Celui-ci indique uniquement la politique. Aucun décompte des requêtes restantes n’est publié ; cadencez donc vos requêtes selon les limites documentées et considérez le code 429 accompagné du Retry-After comme le signal pour ralentir.

ID de requête et tentatives

Chaque réponse comporte un ID de requête, à la fois dans le corps (request_id) et dans l’en-tête X-Request-Id. Communiquez-le lorsque vous sollicitez le support.

Réessayez les erreurs 429, 500, 502, 503 et 504 avec un backoff exponentiel et du jitter. Ne réessayez pas les erreurs de validation, d’authentification, de permission ou les erreurs « non trouvé » sans modifier la requête.

Les barres obliques finales (trailing slashes) sont tolérées. L’API REST n’envoie intentionnellement aucune autorisation CORS pour le navigateur, car les identifiants d’espace de travail doivent résider dans un code serveur sécurisé.

Use these docs with your AI tools

An AI agent can read this documentation directly. You do not need an account or an API key. Everything here is public and read-only.

Query these docs via MCP

Recommended

Add this server to Claude, Claude Code, Cursor, Mistral, or any tool that supports MCP. Your agent can then search AI Glot Docs documentation and read it in full, instead of answering from memory.

https://ai-glot.com/docs/mcp
  • searchFind the passages that answer a question.
  • fetchRead one page in full, as Markdown.
  • list_pagesSee every page in this documentation.

Query these docs over HTTP

The same tools also work as plain web requests. Use this for scripts, or for any tool that does not support MCP. There is one endpoint per tool. Arguments go in the query string, and the answer comes back as JSON.

https://ai-glot.com/docs/api/docs/search?query=custom+domain

Read the OpenAPI description. It is built from the same definitions as the tools, so it always matches what the endpoints do.

Read these docs as Markdown

Add .md to any page URL to get its Markdown source. You can also send the headerAccept: text/markdown to the page URL itself.

To read the whole documentation in one file, open llms-full.txt. For a short index of every page, open llms.txt.