Skip to Content

Agents

Les endpoints d’Agent gèrent les agents d’AI que votre organisation exécute. Vous pouvez créer, lister, récupérer, mettre à jour, archiver (soft-delete) et restaurer des agents, et lire ou mettre à jour la configuration de génération d’un agent. Pour réellement exécuter un agent, consultez Requête d’Agent.

Les lectures nécessitent agents:read ; les écritures nécessitent agents:write. Archiver et restaurer nécessitent en outre la permission de suppression d’agent sur le rôle qui a généré la key.

La forme de l’agent

La plupart des endpoints renvoient un objet agent avec cette forme en refus par défaut :

{ "id": "agt_7c1d8e", "name": "Support Bot", "description": "Answers product questions.", "status": "active", "language": "en", "type": "custom", "configuration": { "temperature": 0.7, "max_tokens": 1500, "system_prompt": "You are a helpful support agent.", "response_format": "conversational", "top_p": 1.0, "frequency_penalty": 0.0, "presence_penalty": 0.0, "streaming_enabled": true, "max_retrieved_chunks": 10, "show_citations": false }, "knowledge_access": { "folder_ids": ["fold_abc123"], "tag_ids": [], "document_ids": [], "access_mode": "inclusive", "document_count_cache": 12 }, "handoff_config": { "enabled": false }, "current_month_usage": { "queries": 134, "tokens_used": 41200, "last_reset_date": "2026-06-01T00:00:00Z" }, "created_at": "2026-05-20T11:00:00Z", "updated_at": "2026-06-07T08:30:00Z" }

L’objet agent n’expose que les champs orientés tenant. L’identifiant sous-jacent de fournisseur/modèle du LLM n’est délibérément pas renvoyé dans aucune réponse d’agent ou de configuration — vous définissez le modèle à la création d’un agent (une entrée de la requête), mais il n’est jamais renvoyé. Les identifiants internes, les chiffres de coût et la comptabilité de version/nouvelle tentative ne sont eux non plus jamais présents.

Le champ status vaut l’un de active, inactive, testing ou archived.


POST /agents

Créez un agent. Renvoie 201 avec l’agent créé. Accepte un Idempotency-Key afin qu’une création réessayée ne produise jamais un second agent.

Scope : agents:write · Succès : 201

ParamètreDansTypeRequisDescription
namebodystringOuiNom de l’agent (1–100 caractères).
descriptionbodystringNonUne description (≤500 caractères).
statusbodystringNonactive, inactive, testing ou archived.
languagebodystringNonUne substitution de langue de réponse BCP-47. Hérite du défaut de l’org si omis.
configurationbodyobjectOuiLe bloc de configuration du LLM (voir ci-dessous).
knowledge_accessbodyobjectNonQuels dossiers/tags/documents l’agent peut utiliser.
handoff_configbodyobjectNonConfiguration de human handoff.
Idempotency-KeyheaderstringNonKey de nouvelle tentative sûre.

Le bloc configuration requis porte le modèle et les réglages de génération. model et system_prompt sont obligatoires ; tout le reste a une valeur par défaut :

ChampTypeRequisDescription
modelstringOuiLe modèle que l’agent doit utiliser. Entrée de la requête uniquement — jamais renvoyé dans aucune réponse.
system_promptstringOuiLe system prompt de l’agent (1–10000 caractères).
temperaturenumberNon0.0–2.0. Par défaut 0.7.
max_tokensintegerNon100–4000. Par défaut 1500.
response_formatstringNonconversational ou structured.
top_pnumberNon0.0–1.0. Par défaut 1.0.
frequency_penaltynumberNon-2.0–2.0. Par défaut 0.0.
presence_penaltynumberNon-2.0–2.0. Par défaut 0.0.
streaming_enabledbooleanNonPar défaut true.
max_retrieved_chunksintegerNon5–20. Par défaut 10.
show_citationsbooleanNonPar défaut false.
curl -X POST https://cuneiform.chat/api/developer/v1/agents \ -H "Authorization: Bearer cuk_live_xxxxxxxxxxxxxxxx" \ -H "Content-Type: application/json" \ -d '{ "name": "Support Bot", "description": "Answers product questions.", "configuration": { "model": "gpt-4o-mini", "system_prompt": "You are a helpful support agent." } }'
{ "id": "agt_7c1d8e", "name": "Support Bot", "description": "Answers product questions.", "status": "active", "language": null, "type": "custom", "configuration": { "temperature": 0.7, "max_tokens": 1500, "system_prompt": "You are a helpful support agent.", "response_format": "conversational", "top_p": 1.0, "frequency_penalty": 0.0, "presence_penalty": 0.0, "streaming_enabled": true, "max_retrieved_chunks": 10, "show_citations": false }, "knowledge_access": { "folder_ids": [], "tag_ids": [], "document_ids": [], "access_mode": "inclusive", "document_count_cache": 0 }, "handoff_config": { "enabled": false }, "current_month_usage": { "queries": 0, "tokens_used": 0, "last_reset_date": "2026-06-01T00:00:00Z" }, "created_at": "2026-06-07T08:30:00Z", "updated_at": "2026-06-07T08:30:00Z" }

Erreurs : 400, 401, 403 (scope ou limite du plan), 429, 500.


GET /agents

Listez les agents, paginés par curseur, avec des filtres optionnels status et search.

Scope : agents:read · Succès : 200

ParamètreDansTypeRequisDescription
limitqueryintegerNonTaille de page, 1–100. Par défaut 20.
cursorquerystringNonLe next_cursor de la page précédente.
statusquerystringNonFiltrer par statut de l’agent.
searchquerystringNonFiltrer par un terme de recherche de nom/description.
curl "https://cuneiform.chat/api/developer/v1/agents?limit=20&status=active" \ -H "Authorization: Bearer cuk_live_xxxxxxxxxxxxxxxx"
{ "data": [ { "id": "agt_7c1d8e", "name": "Support Bot", "description": "Answers product questions.", "status": "active", "language": "en", "type": "custom", "configuration": { "temperature": 0.7, "max_tokens": 1500, "response_format": "conversational", "top_p": 1.0, "frequency_penalty": 0.0, "presence_penalty": 0.0, "streaming_enabled": true, "max_retrieved_chunks": 10, "show_citations": false }, "knowledge_access": { "folder_ids": ["fold_abc123"], "tag_ids": [], "document_ids": [], "access_mode": "inclusive", "document_count_cache": 12 }, "handoff_config": { "enabled": false }, "current_month_usage": { "queries": 134, "tokens_used": 41200, "last_reset_date": "2026-06-01T00:00:00Z" }, "created_at": "2026-05-20T11:00:00Z", "updated_at": "2026-06-07T08:30:00Z" } ], "has_more": false, "next_cursor": null }

La vue en liste omet le system_prompt de la configuration de chaque agent par souci de concision ; récupérez un seul agent pour le voir.

Erreurs : 400 invalid_cursor, 401, 403, 429, 500.


GET /agents/{agent_id}

Récupérez un seul agent par id.

Scope : agents:read · Succès : 200

ParamètreDansTypeRequisDescription
agent_idpathstringOuiL’id de l’agent.
curl https://cuneiform.chat/api/developer/v1/agents/agt_7c1d8e \ -H "Authorization: Bearer cuk_live_xxxxxxxxxxxxxxxx"

La réponse est un seul objet agent (consultez la forme de l’agent).

Erreurs : 401, 403, 404 agent_not_found, 429, 500.


PATCH /agents/{agent_id}

Mettez à jour les champs de base d’un agent. Tous les champs du corps sont optionnels ; les champs omis restent inchangés. Les réglages de génération se trouvent sur l’endpoint de configuration, pas ici.

Scope : agents:write · Succès : 200

ParamètreDansTypeRequisDescription
agent_idpathstringOuiL’id de l’agent.
namebodystringNonNouveau nom (1–100 caractères).
descriptionbodystringNonNouvelle description (≤500 caractères).
statusbodystringNonNouveau statut.
languagebodystringNonNouvelle substitution de langue BCP-47.
handoff_configbodyobjectNonNouvelle configuration de human handoff.
curl -X PATCH https://cuneiform.chat/api/developer/v1/agents/agt_7c1d8e \ -H "Authorization: Bearer cuk_live_xxxxxxxxxxxxxxxx" \ -H "Content-Type: application/json" \ -d '{ "status": "inactive" }'

La réponse est l’objet agent mis à jour.

Erreurs : 400, 401, 403, 404, 429, 500.


DELETE /agents/{agent_id}

Archivez (soft-delete) un agent. L’agent est récupérable pendant 30 jours via l’endpoint de restauration. Renvoie 200 avec un corps d’archivage portant la date limite de restauration.

Scope : agents:write (le rôle qui a généré la key doit aussi détenir la permission de suppression d’agent) · Succès : 200

ParamètreDansTypeRequisDescription
agent_idpathstringOuiL’id de l’agent.
curl -X DELETE https://cuneiform.chat/api/developer/v1/agents/agt_7c1d8e \ -H "Authorization: Bearer cuk_live_xxxxxxxxxxxxxxxx"
{ "id": "agt_7c1d8e", "archived": true, "restore_before": "2026-07-07T08:30:00Z" }

Erreurs : 401, 403, 404, 429, 500.


POST /agents/{agent_id}/restore

Restaurez un agent archivé dans sa fenêtre de récupération de 30 jours. Renvoie l’agent restauré. Une fenêtre expirée ou un agent non archivé renvoie 400.

Scope : agents:write (le rôle qui a généré la key doit aussi détenir la permission de suppression d’agent) · Succès : 200

ParamètreDansTypeRequisDescription
agent_idpathstringOuiL’id de l’agent.
curl -X POST https://cuneiform.chat/api/developer/v1/agents/agt_7c1d8e/restore \ -H "Authorization: Bearer cuk_live_xxxxxxxxxxxxxxxx"

La réponse est l’objet agent restauré.

Erreurs : 400, 401, 403, 404, 429, 500.


GET /agents/{agent_id}/configuration

Récupérez la configuration d’un agent. N’expose que les réglages de génération orientés tenant ; l’identifiant sous-jacent de fournisseur/modèle du LLM n’est pas renvoyé.

Scope : agents:read · Succès : 200

ParamètreDansTypeRequisDescription
agent_idpathstringOuiL’id de l’agent.
curl https://cuneiform.chat/api/developer/v1/agents/agt_7c1d8e/configuration \ -H "Authorization: Bearer cuk_live_xxxxxxxxxxxxxxxx"
{ "id": "agt_7c1d8e", "configuration": { "temperature": 0.7, "max_tokens": 1500, "system_prompt": "You are a helpful support agent.", "response_format": "conversational", "top_p": 1.0, "frequency_penalty": 0.0, "presence_penalty": 0.0, "streaming_enabled": true, "max_retrieved_chunks": 10, "show_citations": false }, "unsaved_changes": false }

Erreurs : 401, 403, 404, 429, 500.


PATCH /agents/{agent_id}/configuration

Mettez à jour les réglages de génération d’un agent. Tous les champs du corps sont optionnels. Un réglage qui enfreint les limites de votre plan renvoie 403.

Scope : agents:write · Succès : 200

ParamètreDansTypeRequisDescription
agent_idpathstringOuiL’id de l’agent.
system_promptbodystringNonNouveau system prompt (1–10000 caractères).
temperaturebodynumberNon0.0–2.0.
max_tokensbodyintegerNon100–4000.
response_formatbodystringNonconversational ou structured.
top_pbodynumberNon0.0–1.0.
frequency_penaltybodynumberNon-2.0–2.0.
presence_penaltybodynumberNon-2.0–2.0.
streaming_enabledbodybooleanNonSi le streaming est activé.
max_retrieved_chunksbodyintegerNon5–20.
show_citationsbodybooleanNonSi les citations sont affichées.
save_as_draftbodybooleanNonEnregistrer sans publier une nouvelle version. Par défaut false.
curl -X PATCH https://cuneiform.chat/api/developer/v1/agents/agt_7c1d8e/configuration \ -H "Authorization: Bearer cuk_live_xxxxxxxxxxxxxxxx" \ -H "Content-Type: application/json" \ -d '{ "temperature": 0.4, "max_tokens": 2000 }'
{ "id": "agt_7c1d8e", "configuration": { "temperature": 0.4, "max_tokens": 2000, "system_prompt": "You are a helpful support agent.", "response_format": "conversational", "top_p": 1.0, "frequency_penalty": 0.0, "presence_penalty": 0.0, "streaming_enabled": true, "max_retrieved_chunks": 10, "show_citations": false } }

Erreurs : 400, 401, 403 (scope ou limite du plan), 404, 429, 500.

Last updated on