Source: https://ailoot.ai/docs/fr-ca/api/messages/
Canonical: https://ailoot.ai/docs/fr-ca/api/messages/
Language: fr-ca

[API](https://ailoot.ai/docs/fr-ca/) 

# Messages

[Markdown](https://ailoot.ai/docs/fr-ca/api/messages/index.md)

Format Anthropic Messages, utilisé par Claude Code, Anthropic SDK et de nombreux agents.

POST`https://api.ailoot.ai/v1/messages`

Messages

```bash
curl https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5-5",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Bonjour ! Que sais-tu faire ?"}]
  }' 
```

```python
import anthropic
import os

client = anthropic.Anthropic(max_retries=0, 
    base_url="https://api.ailoot.ai",   # sans /v1 : le SDK ajoutera lui-même /v1/messages
    api_key=os.environ["AILOOT_API_KEY"],
)

msg = client.messages.create(
    model="claude-sonnet-5-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Explique en deux phrases ce qu’est une API."}],
)
print(msg.content[0].text)
```

```js
import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({ maxRetries: 0,
  baseURL: "https://api.ailoot.ai", // sans /v1
  apiKey: process.env.AILOOT_API_KEY,
});

const msg = await client.messages.create({
  model: "claude-sonnet-5-5",
  max_tokens: 1024,
  messages: [{ role: "user", content: "Explique en deux phrases ce qu’est une API." }],
});
console.log(msg.content[0].type === "text" ? msg.content[0].text : msg.content);
```

200 OK

```json
{
  "id": "msg_01H…",
  "type": "message",
  "role": "assistant",
  "model": "claude-sonnet-5-5",
  "content": [
    { "type": "text", "text": "Bonjour ! Je sais écrire et expliquer du code, répondre à des questions…" }
  ],
  "stop_reason": "end_turn",
  "usage": { "input_tokens": 14, "output_tokens": 52 }
}
```

## Autorisation

| Paramètre | Type | Obligatoire | Description |
| --- | --- | --- | --- |
| `x-api-key` | header | obligatoire | Clé `sk-…`. Vous pouvez aussi utiliser `Authorization: Bearer sk-…` — c’est ce que fait Claude Code avec `ANTHROPIC_AUTH_TOKEN`. |
| `anthropic-version` | header | facultatif | Version de l’API, par exemple `2023-06-01`. Les SDK l’envoient automatiquement. |

## Corps de la requête

| Paramètre | Type | Obligatoire | Description |
| --- | --- | --- | --- |
| `model` | string | obligatoire | ID de modèle au format Messages, soit 776 identifiants : Claude, ainsi que GPT, Gemini, DeepSeek, Qwen et d’autres. |
| `messages` | array | obligatoire | Messages `user` et `assistant`; `content` — chaîne ou blocs (`text`, `image`, `tool_use`, `tool_result`). |
| `max_tokens` | integer | obligatoire | Nombre maximal de jetons de réponse. Il est pris en compte dans la réserve; si le solde ne couvre pas toute la limite, Ailoot la réduit, sans descendre sous 256 (1025 avec le raisonnement activé), et indique la nouvelle limite dans l’en-tête `X-Ailoot-Max-Tokens-Capped`. |
| `system` | string \| array | facultatif | Instruction système. |
| `stream` | boolean | facultatif | Flux d’événements SSE (`message_start`, `content_block_delta`, …, `message_stop`). Le texte facturé arrive en un seul bloc après le calcul du coût. |
| `temperature` | number | facultatif | Caractère aléatoire de la réponse, de 0 à 1. |
| `tools` | array | facultatif | Outils : `name`, `description`, `input_schema`. |
| `tool_choice` | object | facultatif | `auto`, `any`, `tool` ou `none`. |
| `thinking` | object | facultatif | `{"type": "enabled", "budget_tokens": N}` — raisonnement pour les modèles qui le prennent en charge. |
| `stop_sequences` | array | facultatif | Chaînes qui interrompent la génération. |

## Réponse

| Paramètre | Type | Obligatoire | Description |
| --- | --- | --- | --- |
| `content` | array |  | Blocs de réponse : `text`, `thinking`, `tool_use`. |
| `stop_reason` | string |  | `end_turn`, `max_tokens`, `stop_sequence` ou `tool_use`. |
| `usage` | object |  | `input_tokens`, `output_tokens`, pour le cache : `cache_read_input_tokens` et `cache_creation_input_tokens`. |

Le comptage des jetons (`POST /v1/messages/count_tokens`) n’est actuellement pas disponible pour les modèles du catalogue.

Vous avez d’autres questions? Envoyez le Request ID et une description : nous vous aiderons à comprendre.[Contacter le soutien](mailto:support@ailoot.ai)

## Ailoot · L’entreprise et son portefeuille de projets





Ailoot s’appuie sur une expérience opérationnelle éprouvée, une large clientèle, un service stable et un suivi continu des KPI.





L’entreprise et son portefeuille de projets : des millions de clients ; des ventes qui se chiffrent en milliards chaque mois.





Ailoot met cette expérience opérationnelle au service de l’accès API aux fonctions d’IA dans les produits des clients, leurs agents, applications et automatisations.
