Applications et intégration
Six sous-domaines, 33,1 % des points — le cœur de l’examen. C’est le domaine de ceux qui construisent vraiment avec l’API : formes des requêtes, état de la conversation, cycles de vie des modèles, protocole réseau et fichiers de configuration qui entourent un déploiement Claude.
Si vous n’étudiez qu’un domaine à fond, que ce soit celui-ci. Applications et intégration représente à lui seul un tiers de l’examen. C’est aussi le domaine auquel le cours Academy recommandé (Building with the Claude API) correspond le plus directement — vos heures d’étude et les points s’alignent ici mieux que partout ailleurs. Et c’est là que vivent les questions de scénario : face à cette exigence, quelle architecture ? Quel modèle ? Quel endpoint ?
Une carte avant de partir. L’examen nomme six sous-domaines ; cette page compte plus de six sections, et c’est voulu. Les sections 01–04 suivent une à une les quatre premiers sous-domaines. La section 05 couvre ensemble les deux sous-domaines de configuration — leur analyse détaillée vit sur la page du domaine Claude Code. La section 06 est un aparté d’intégration que l’examen affectionne. Tout ce qui suit — les tableaux de révision, les pièges, le quiz — est de l’aide à la révision, pas un nouveau programme. Et une légende pour le balisage : la prose explique, les encadrés « À retenir pour l’examen » portent les faits dont les questions sont faites, et les pièges sont les mauvaises réponses déguisées en bonnes.
Le serveur ne retient rien entre vos appels. Chaque requête transporte à nouveau toute la conversation — les tours, les images, le prompt système. Le fait le plus structurant de tout ce domaine.
Une URL que l’API expose pour un seul travail. /v1/messages crée des réponses ; /v1/messages/count_tokens compte les tokens d’entrée avant l’envoi. Des travaux différents, des endpoints différents — et des plafonds de taille différents.
Une ligne clé–valeur qui voyage au-dessus de chaque requête HTTP brute — des métadonnées, pas du corps. Les appels bruts en exigent trois : qui vous êtes, pour quelle version de l’API votre code a été construit, et le format du corps.
Le format du streaming. Le serveur garde la connexion ouverte et pousse de petits événements nommés au fil de l’eau, au lieu d’une réponse JSON complète à la fin.
Payer plus une fois pour stocker un préfixe lourd — un document de référence, par exemple — puis une fraction du prix d’entrée sur chaque requête ultérieure qui le réutilise. Durée de vie de cinq minutes par défaut ; une heure en option.
L’annonce formelle qu’un modèle est en route vers la sortie : un remplacement et une date de retrait sont nommés, les clients concernés reçoivent un e-mail, le changement est documenté.
01De l’exigence à l’architecture
Le fil conducteur du premier sous-domaine est la retenue. Il part d’une distinction que l’examen cite presque mot pour mot : une exigence métier énonce ce que l’organisation veut — répondre plus vite aux questions des clients, relire chaque pull request. Une exigence fonctionnelle énonce ce que le système doit faire pour y répondre. Convertir l’une en l’autre, c’est votre travail.
Ensuite, choisissez l’architecture la moins complexe qui satisfait l’exigence fonctionnelle : un appel de modèle, ou une chaîne fixe, ou un agent — dans cet ordre de coût croissant. Les agents échangent de la latence et de l’argent contre de la performance sur la tâche, raison pour laquelle un objectif de temps de réponse ou un plafond de dépense fait partie de l’exigence elle-même, plutôt qu’un détail boulonné après coup.
Le choix du modèle tourne sur trois questions : de quelles capacités la tâche a-t-elle réellement besoin, à quelle vitesse les réponses doivent-elles arriver, et que permet le budget entre développement et production ?
Voici la forme de question que l’examen aime. Un travail nocturne traite des millions d’enregistrements. Personne n’a besoin des résultats avant le matin, et le coût est la priorité. La réponse est l’API Message Batches — asynchrone, et à la moitié du prix des appels synchrones. Le streaming est le leurre de cette question : il améliore la latence perçue, pas le coût ni le débit.
Puis la discipline qui ferme la boucle : une exigence n’est pas terminée tant qu’elle n’a pas une évaluation testable avec un seuil de réussite. Des évals construites à partir de vos vrais prompts et de vos vraies données sont la manière de vérifier les choix de modèle autrement qu’au ressenti — un thème sur lequel cet examen revient d’un domaine à l’autre.
02Cycles de vie des modèles et versions de l’API
Chaque modèle Claude traverse quatre états. Active signifie pleinement pris en charge — la recommandation. Legacy signifie que le modèle n’est plus mis à jour — candidat à une dépréciation future. Deprecated signifie qu’un remplacement et une date de retrait ont été nommés. Retired signifie disparu ; les requêtes échouent.
Ce que les gens ratent se situe entre les deux derniers : deprecated ne veut pas dire cassé. Le modèle répond toujours, et rien dans vos appels ne change encore. Seule la date de retrait est une vraie échéance — et cette distinction est un grand classique de l’examen.
Les engagements d’Anthropic ici sont concrets : un minimum de 60 jours de préavis avant le retrait d’un modèle publiquement disponible, un e-mail aux clients concernés, la documentation de chaque dépréciation. Quand un avis arrive, la réponse recommandée est mesurée, pas dramatique. Vérifiez quelles clés appellent encore l’ancien modèle — la page Usage de la Console exporte un CSV ventilé par clé API et par modèle. Testez le remplacement bien avant l’échéance. Puis migrez délibérément : pas dans la panique le premier jour, et pas après que les erreurs ont commencé.
Deux frontières que l’examen sonde. D’abord, le calendrier de dépréciation d’Anthropic ne couvre que les plateformes opérées par Anthropic — l’API Claude et ses variantes hébergées dans le cloud. Amazon Bedrock et Google Cloud Vertex tiennent leurs propres calendriers de retrait pour les mêmes modèles ; un plan de migration peut nécessiter des dates différentes selon la plateforme.
Ensuite, la promesse de versionnage : au sein d’une même version de l’API, Anthropic ne casse pas les entrées et sorties existantes — mais peut ajouter des champs de requête optionnels, de nouvelles valeurs de sortie et de nouvelles variantes de valeurs proches d’énumérations, y compris de nouveaux types d’événements de streaming. Un client qui lève une exception sur un type d’événement qu’il ne reconnaît pas est un défaut qui attend la prochaine version. Gérez proprement les valeurs inconnues.
03L’API Messages en profondeur
Un fait sur lequel tout le reste ici repose : l’API Messages est sans état. Le serveur ne stocke rien entre les appels. Chaque requête transporte la conversation complète — chaque tour, chaque image, le prompt système — et gérer, rogner et faire persister cet historique est le travail de votre application.
L’absence d’état autorise aussi un tour de passe-passe : les tours d’assistant dans l’historique n’ont pas besoin d’être des propos que Claude a réellement tenus. Les messages d’assistant synthétiques sont parfaitement valides, et c’est ainsi que fonctionnent le prefill et le dialogue en few-shot.
Une requête a trois parties essentielles : le modèle, un plafond max_tokens, et la liste messages de tours rôle-plus-contenu. La réponse vous rend plus que du texte. Son champ content est un tableau de blocs typés — text, tool_use, thinking — et le champ stop_reason vous dit pourquoi la génération s’est arrêtée.
| Valeur | Signification | Ce que fait votre code |
|---|---|---|
| end_turn | Fin naturelle — le modèle avait fini | Lire la réponse |
| max_tokens | Le plafond a écourté la génération — ce qui peut être voulu | Continuer, relever le plafond, ou l’accepter |
| refusal | Une politique de sécurité s’est déclenchée | Le reconnaître comme un arrêt de politique, pas comme du texte en plus |
| tool_use | Le modèle a demandé des outils (le domaine des agents couvre la boucle) | Exécuter, ajouter tool_result, renvoyer |
| pause_turn | Un travail de server tool a atteint sa limite d’itérations — inachevé | Renvoyer la conversation telle quelle ; elle continue |
Les instructions persistantes vivent dans le paramètre system de premier niveau — c’est le champ role : qui Claude est en train d’être. Sur plusieurs modèles actuels, vous pouvez aussi envoyer un message de rôle system en milieu de conversation, après un tour utilisateur ; il porte la même autorité, mais il ne peut pas être le premier message.
Le prefill est l’autre geste puissant. Placez un message d’assistant en dernière position, et le modèle le traite comme le début de sa propre réponse, puis continue à partir de là. Terminez un tour par « The answer is ( » avec max_tokens réglé à 1, et vous recevrez un unique token en retour — arrêté par max_tokens, exactement comme prévu.
La vision arrive en blocs d’image à l’intérieur des tours utilisateur — JPEG, PNG, GIF et WebP. Plusieurs images par requête ne posent aucun problème, et elles sont analysées ensemble : étiquetez-les (« Image 1 », « Image 2 ») et les tours suivants pourront s’y référer par leur nom. Trois manières de transporter les octets :
| Route | Adaptée quand |
|---|---|
| Du base64 dans le corps de la requête | Des images ponctuelles — les octets partent dans la requête même |
| Une URL hébergée | L’image est accessible publiquement |
| Un file_id de la Files API | Vous enverrez la même image plusieurs fois : un seul téléversement, et l’historique ne porte qu’une référence légère au lieu de mégaoctets de base64 |
Streaming : réglez stream à true et la réponse arrive en server-sent events dans un ordre fixe — message_start, puis pour chaque bloc de contenu un start, un ou plusieurs deltas et un stop, puis message_delta et message_stop.
Deux choses peuvent encore vous surprendre en plein flux. Des événements ping peuvent apparaître n’importe où. Et des erreurs peuvent apparaître après un HTTP 200 sain — une overloaded_error, normalement un 529, peut arriver sous forme d’événement dans le flux.
Deux faits sur les deltas d’appel d’outil méritent leur propre répétition. Les deltas (input_json_delta) transportent des fragments d’une chaîne JSON, pas des objets JSON ; seule l’entrée tool_use assemblée à la fin est un objet. Et les SDK exigent le streaming pour les très grandes valeurs de max_tokens, parce que les appels HTTP simples expirent.
Un scénario de coût à connaître par cœur. Un document de référence de 40 000 tokens est consulté toutes les 20–30 minutes — plus longtemps que la durée de vie par défaut du cache. La réponse est le prompt caching avec l’option TTL d’une heure sur le point d’arrêt du cache : vous payez double pour l’écriture une fois, puis un dixième du tarif d’entrée à chaque lecture ensuite. Deux précisions en petits caractères : ajouter un second point d’arrêt n’étend pas les cinq minutes par défaut, et le caching automatique ne change pas vos options de TTL.
04La surface REST
Sous les SDK, l’API Claude est un service REST en JSON sur HTTPS, et l’examen attend que vous la connaissiez à l’état brut.
| Endpoint | Travail | Plafond |
|---|---|---|
| POST /v1/messages | L’endpoint de conversation | 32 Mo |
| POST /v1/messages/batches | Traitement massif asynchrone, à 50 % du tarif | 256 Mo |
| POST /v1/messages/count_tokens | Compter les tokens d’entrée avant l’envoi — un endpoint séparé, pas un drapeau de l’appel messages | 32 Mo |
| GET /v1/models | Lister les modèles disponibles | — |
| POST et GET /v1/files | La Files API | 500 Mo par téléversement |
Les appels bruts exigent trois en-têtes à chaque fois : un en-tête d’autorisation (Authorization: Bearer, ou l’ancien x-api-key pour les clés Console), anthropic-version qui épingle la date d’API pour laquelle votre code a été construit, et content-type: application/json.
Un quatrième — anthropic-workspace-id — n’entre en scène que lorsqu’une clé API multi-workspaces est en jeu. Les SDK officiels envoient automatiquement les trois standards ; l’en-tête workspace, c’est à vous de le passer. Et journalisez l’en-tête request-id de la réponse — c’est l’identifiant que le support demande quand quelque chose tourne mal.
Les limites de débit s’expriment, par palier d’usage, en requêtes par minute et en tokens par minute, avec un plafond de dépense mensuel par-dessus — une raison pour laquelle l’endpoint de comptage de tokens gagne sa place avant les grosses soumissions. Les endpoints de liste paginent vers l’avant avec un curseur opaque ; la pagination automatique des SDK ne va que vers l’avant.
05Portées d’instructions et conception de schémas
Un sous-domaine ici parle en réalité de surfaces de configuration : les fichiers CLAUDE.md et les fichiers de settings qui entourent Claude Code et l’Agent SDK. La version courte — l’analyse détaillée se trouve sur la page du domaine Claude Code : les instructions que vous écrivez vivent dans une hiérarchie — gérée par l’organisation, utilisateur, projet, projet-local — et la mémoire automatique est tout autre chose : les notes que Claude écrit lui-même.
Une seule règle tranche la moitié des questions de ce territoire : CLAUDE.md façonne le comportement, settings.json l’impose. Une politique qui doit tenir — commandes bloquées, sandboxing, modèles autorisés — va dans les paramètres gérés, pas dans la prose.
L’autre moitié, c’est la conception de schémas pour la sortie structurée. Le décodage contraint de l’API prend en charge un sous-ensemble de JSON Schema ; les helpers des SDK retirent donc les contraintes qu’ils ne peuvent pas imposer — minimum et maximum, limites de longueur de chaîne — les réexpriment dans les descriptions de champs, et posent additionalProperties: false partout.
Votre code valide ensuite les réponses par rapport au schéma d’origine — et c’est là que ces contraintes retirées mordent vraiment. Le pattern à retenir : chaque champ requis, additionalProperties false, les intervalles documentés dans les descriptions et vérifiés de votre côté.
06Sessions et reprise
Un fait d’intégration que l’examen aime bien. Dans l’Agent SDK, une application multi-tenant qui garde une session par conversation d’utilisateur devrait conserver chaque ID de session et le passer à resume quand cet utilisateur revient.
L’option continue attrape simplement la session la plus récente du répertoire courant — la mauvaise sémantique pour du multi-tenant. Et le forking sert à dériver une session en alternatives, pas à retrouver son chemin.
07Une page pour réviser
Six sous-domaines de prose se trouvent au-dessus de cette ligne. Voici le même domaine en deux tableaux et une liste de contrôle — le cycle de vie que l’examen teste au mot près, et l’outil que chaque scénario coût-et-latence réclame. Si vous ne relisez qu’une chose la veille, relisez ceci.
| État | Ce que cela signifie | Vos appels changent-ils ? |
|---|---|---|
| Active | Pleinement pris en charge — la recommandation | — |
| Legacy | N’est plus mis à jour ; candidat à une dépréciation future | Non |
| Deprecated | Un remplacement et une date de retrait ont été nommés | Non — le modèle répond normalement jusqu’à la date |
| Retired | Disparu | Oui — les requêtes échouent |
| Exigence | Le bon outil | La réponse piège |
|---|---|---|
| Les réponses doivent paraître rapides à un utilisateur qui attend | Le streaming — server-sent events | Batches : moins cher, mais des heures en retard |
| Des millions d’enregistrements chaque nuit ; le coût est la priorité | L’API Message Batches — asynchrone, 50 % du tarif synchrone | Le streaming : améliore la latence perçue, pas le coût |
| Un document lourd consulté toutes les 20–30 minutes | Le prompt caching avec le TTL d’une heure | Renvoyer les octets à chaque requête : plein tarif à chaque fois |
| Connaître le compte de tokens avant une grosse soumission | L’endpoint count_tokens | Deviner à partir du nombre de caractères |
La liste de contrôle de la veille. Vous devriez pouvoir énoncer chacune de ces lignes sans regarder :
- —Les quatre états du cycle de vie dans l’ordre, et lequel est la seule vraie échéance.
- —L’engagement de préavis : 60 jours minimum — et 30, 90 et 180 sont les leurres.
- —L’absence d’état en une phrase — et ce qu’elle vous oblige à renvoyer, à chaque requête.
- —Les trois routes pour les octets d’image, et quand chacune gagne.
- —Les cinq valeurs de stop_reason, et celle qui veut dire « inachevé — renvoyer tel quel ».
- —Les trois en-têtes de chaque appel brut, et le quatrième que les SDK n’enverront pas pour vous.
- —La règle unique : CLAUDE.md façonne le comportement, settings.json l’impose.
Une ligne à tracer à travers tout cela : les idées sont stables, les chiffres ne le sont pas. L’absence d’état, la discipline du cycle de vie, l’échelle de l’architecture la moins complexe, la règle du façonne-impose — tout cela survivra à n’importe quel changement de produit. Les faits datés — les plafonds de taille, la liste des endpoints, les modèles qui acceptent un message system en milieu de conversation — ont été vérifiés auprès de la documentation officielle en septembre 2026, et ils sont du genre de détail qui peut changer entre deux éditions de l’examen. Revérifiez-les auprès de la documentation vivante la semaine où vous passez l’examen.
08Les pièges de ce domaine
- —« Déprécié veut dire cassé » — non. Les modèles dépréciés répondent normalement jusqu’à la date de retrait.
- —« La date de retrait d’Anthropic s’applique sur Bedrock » — les plateformes partenaires tiennent leurs propres calendriers.
- —« L’API se souvient de notre conversation » — sans état. Renvoyez tout, à chaque requête.
- —« Un 200 veut dire que le flux a réussi » — des erreurs peuvent arriver sous forme d’événements dans le flux.
- —« Chaque delta d’appel d’outil est du JSON analysable » — ce sont des fragments de chaîne ; assemblez d’abord.
- —« Les SDK envoient chaque en-tête pour moi » — les trois standards, oui ; l’en-tête workspace, non.
- —« count_tokens est un drapeau de l’appel messages » — c’est un endpoint séparé, avec son propre plafond.
- —« continue trouvera la session du bon utilisateur » — il prend la session la plus récente du répertoire. Conservez l’ID ; reprenez avec lui.
09Vérifiez vos acquis
Six questions — une par sous-domaine, dans l’ordre où la page les a traités. Chacune se déplie pour révéler la réponse et, plus utile encore, la raison pour laquelle les mauvaises options sont mauvaises.
Une équipe juridique veut chaque nouveau contrat résumé dans les quatre heures suivant son arrivée, au coût d’API le plus bas possible. Les volumes sont importants et prévisibles. Que recommandez-vous ?
- AL’API Messages avec le streaming activé
- BL’endpoint count_tokens d’abord, puis le streaming
- CLe prompt caching avec le TTL d’une heure
- DL’API Message Batches
→Vérifier votre réponse
Quatre heures, c’est le territoire de l’asynchrone, et le coût est la priorité — donc l’API Batches, à la moitié du tarif synchrone. Le streaming est le piège tendu : il améliore la latence perçue, pas le coût. Le prompt caching aide quand un préfixe lourd est consulté de façon répétée, ce qui n’est pas la forme du besoin ici.
Un avis de dépréciation nomme une date de retrait à 75 jours. Qu’est-ce qui change aujourd’hui pour vos appels de production ?
- ARien — le modèle répond normalement jusqu’à la date de retrait
- BLes requêtes commencent à échouer dès que l’avis est émis
- CVous avez 60 jours pour migrer avant que la clé API soit révoquée
- DLe modèle continue de répondre mais bascule en qualité legacy
→Vérifier votre réponse
Deprecated fonctionne toujours : un remplacement et une date de retrait ont été nommés, mais rien dans vos appels ne change encore. Seule la date de retrait est une vraie échéance — et 75 jours respectent le préavis minimum de 60 jours. La réponse mesurée : vérifiez dans le CSV de la page Usage les clés qui appellent encore le modèle, testez le remplacement, migrez délibérément.
Dans une conversation en deux requêtes, l’utilisateur pose une question de suivi sur la capture d’écran envoyée lors de la première requête. Claude n’a aucune idée de ce dont il parle. Pourquoi ?
- AUn bug — la mémoire des images devrait persister entre les requêtes par défaut
- BL’API est sans état : la première image doit figurer dans l’historique que vous renvoyez
- CL’image a expiré sur la Files API dès que la requête s’est terminée
- DLes tours de suivi exigent que l’image soit renvoyée en base64 plutôt qu’en file_id
→Vérifier votre réponse
Le serveur ne stocke rien entre les appels. Chaque requête transporte la conversation complète, images comprises — renvoyez ce tour. La route file_id existe précisément pour rendre les répétitions abordables. L’option D est le piège tendu : un file_id est une manière de première classe de transporter une image — pas de seconde classe.
Quel en-tête les SDK officiels n’envoient-ils pas en votre nom ?
- Acontent-type: application/json
- Banthropic-version
- CAuthorization
- Danthropic-workspace-id
→Vérifier votre réponse
Les SDK envoient automatiquement les trois standards. L’en-tête workspace n’entre en jeu que quand une clé multi-workspaces est utilisée — et c’est à vous de le passer. Pendant qu’on y est : journalisez le request-id de la réponse ; c’est ce que le support demande quand quelque chose tourne mal.
La sécurité demande une garantie à l’échelle de l’organisation : certaines commandes shell ne doivent jamais s’exécuter, quoi que dise un prompt. Où cette politique doit-elle vivre ?
- ALe CLAUDE.md géré, à son chemin système
- BLe CLAUDE.md du projet, versionné dans le dépôt
- CLes paramètres gérés — permissions.deny
- DLe prompt système de chaque agent
→Vérifier votre réponse
CLAUDE.md façonne le comportement ; settings.json l’impose. La prose — même gérée — est un guide, pas un contrôle. Une politique qui doit tenir va dans les paramètres gérés, en permissions.deny pour les commandes bloquées. La même règle répond à chaque question « doit tenir » de ce groupe.
Votre application multi-tenant donne à chaque utilisateur une longue session Agent SDK. Un utilisateur qui revient doit retomber dans sa propre conversation. Quel mécanisme ?
- Acontinue — il reprend la session la plus récente
- Bresume avec l’ID de session que vous avez conservé pour cet utilisateur
- Cfork depuis le premier tour de la session
- DDes messages d’assistant synthétiques rejouant l’historique
→Vérifier votre réponse
Conservez chaque ID de session par conversation d’utilisateur et reprenez avec lui. continue attrape la session la plus récente du répertoire courant — la mauvaise sémantique dès qu’un second tenant existe. fork dérive une session en alternatives ; ce n’est pas un chemin de retour.
Repères de révision
- Référence de l’API Messages ↗
- Dépréciations des modèles — le tableau du cycle de vie et l’engagement des 60 jours ↗
- Versionnage de l’API — ce qui peut changer au sein d’une version ↗
- Building with the Claude API — le cours Academy gratuit aligné sur ce domaine ↗
- Domaine suivant : Claude Code — petit mais dense en détails