Files
mintlify__docs/fr/admin-openapi.json
mintlify[bot] 802368c3e2 docs: translate deslop endpoint reference edits (es, fr, zh) (#6677)
Co-authored-by: mintlify[bot] <109931778+mintlify[bot]@users.noreply.github.com>
2026-07-20 23:37:49 +00:00

816 lines
33 KiB
JSON
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"openapi": "3.0.1",
"info": {
"title": "Mintlify Admin API",
"description": "Une API pour les opérations administratives, y compris les mises à jour de la documentation et la gestion des agents.",
"version": "2.0.0"
},
"servers": [
{
"url": "https://api.mintlify.com"
}
],
"security": [
{
"bearerAuth": []
}
],
"paths": {
"/v1/deslop/{projectId}": {
"post": {
"summary": "Détecter la prose qui sonne comme de l'IA dans une page",
"description": "Analyse une page à la recherche de prose générée par IA et renvoie les passages signalés ainsi que des suggestions de réécriture. Consomme un crédit IA par page vérifiée. Ignore les pages de moins de 50 mots. Limité à 30 requêtes par minute par adresse IP client.",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": { "type": "string" },
"description": "L'identifiant de votre projet. Il peut être copié depuis la page [Clés d'API](https://app.mintlify.com/settings/organization/api-keys) de votre tableau de bord."
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": ["path", "content"],
"properties": {
"path": {
"type": "string",
"minLength": 1,
"description": "Chemin de la page relatif au dépôt, utilisé uniquement pour le rapport."
},
"content": {
"type": "string",
"maxLength": 1000000,
"description": "Le contenu MDX ou Markdown brut de la page à vérifier."
}
}
}
}
}
},
"responses": {
"200": {
"description": "La page a été vérifiée, ou ignorée parce qu'elle était trop courte.",
"content": {
"application/json": { "schema": { "$ref": "#/components/schemas/DeslopResult" } }
}
},
"400": {
"description": "Corps de requête invalide.",
"content": {
"application/json": { "schema": { "$ref": "#/components/schemas/Error" } }
}
},
"402": {
"description": "Crédits IA insuffisants.",
"content": {
"application/json": { "schema": { "$ref": "#/components/schemas/Error" } }
}
},
"429": {
"description": "Limite de débit dépassée.",
"content": {
"text/plain": {
"schema": {
"type": "string",
"example": "Trop de requêtes, veuillez réessayer plus tard."
}
}
}
},
"503": {
"description": "La détection est temporairement indisponible. Aucun crédit n'est facturé.",
"content": {
"application/json": { "schema": { "$ref": "#/components/schemas/Error" } }
}
},
"500": {
"description": "Une erreur inattendue s'est produite lors du traitement de la page."
}
}
}
},
"/v1/agent/{projectId}/job": {
"post": {
"summary": "Créer une tâche dagent (v1)",
"deprecated": true,
"description": "Obsolète : utilisez plutôt [v2 create agent job](/api/agent/v2/create-agent-job). Crée une nouvelle tâche dagent capable de générer et de modifier de la documentation à partir des messages fournis et des informations de branche.\n\nAuthentifiez-vous avec une clé d'API administrateur.",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "LID de votre projet. Vous pouvez le copier depuis la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard."
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"messages"
],
"properties": {
"branch": {
"type": "string",
"description": "Le nom de la branche Git sur laquelle lagent doit travailler. Sil est omis, lagent génère un nom de branche à partir du contenu des messages."
},
"messages": {
"type": "array",
"description": "Une liste de messages à fournir à lagent. Une invite système par défaut est toujours ajoutée automatiquement au début. Vous navez donc généralement besoin dinclure que des messages utilisateur.",
"items": {
"type": "object",
"required": [
"role",
"content"
],
"properties": {
"role": {
"type": "string",
"enum": [
"system",
"user",
"assistant"
],
"description": "Le rôle de lexpéditeur du message. Utilisez `user` pour les instructions de tâche. Utilisez `system` pour ajouter des instructions supplémentaires après linvite système par défaut (sans la remplacer). Utilisez `assistant` pour fournir des exemples de réponses de lAssistant pour le prompting few-shot."
},
"content": {
"type": "string",
"description": "Le contenu du message."
}
}
}
},
"asDraft": {
"type": "boolean",
"default": false,
"description": "Détermine si la pull request (demande de fusion) est créée en mode brouillon ou non. Si la valeur est true, crée une pull request (demande de fusion) en brouillon. Si la valeur est false (par défaut), crée une pull request (demande de fusion) prête à être examinée."
},
"model": {
"type": "string",
"enum": [
"sonnet",
"opus"
],
"default": "sonnet",
"description": "Le modèle dIA à utiliser pour la tâche dagent. Utilisez `sonnet` pour un traitement plus rapide et plus économique. Utilisez `opus` pour un traitement plus performant, mais plus lent."
}
}
}
}
}
},
"responses": {
"200": {
"description": "Tâche d'agent créée avec succès. Retourne une réponse en flux avec des événements Server-Sent Events.",
"headers": {
"X-Session-Id": {
"schema": {
"type": "string"
},
"description": "Identifiant unique de session pour la tâche d'agent créée."
},
"X-Branch-Name": {
"schema": {
"type": "string"
},
"description": "Nom de la branche Git où l'agent effectue les modifications."
}
},
"content": {
"text/event-stream": {
"schema": {
"type": "string",
"description": "Flux Server-Sent Events contenant les détails d'exécution et les résultats de la tâche d'agent."
}
}
}
}
}
}
},
"/v1/agent/{projectId}/job/{id}": {
"get": {
"summary": "Récupérer une tâche dagent par ID (v1)",
"deprecated": true,
"description": "Obsolète : utilisez plutôt [v2 get agent job](/api/agent/v2/get-agent-job). Récupère les détails et le statut dune tâche dagent spécifique à partir de son ID.\n\nAuthentifiez-vous avec une clé d'API administrateur.",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "LID de votre projet. Vous pouvez le copier depuis la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard."
},
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "Lidentifiant unique de la tâche dagent à récupérer."
}
],
"responses": {
"200": {
"description": "Détails de la tâche dagent récupérés avec succès",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"description": "Le sous-domaine auquel cette session appartient."
},
"subdomain": {
"type": "string",
"description": "Le sous-domaine auquel cette session appartient."
},
"branch": {
"type": "string",
"description": "Nom de la branche Git où les modifications ont été effectuées.",
"nullable": true
},
"haulted": {
"type": "boolean",
"description": "Indique si lexécution de la session a été interrompue."
},
"haultReason": {
"type": "string",
"enum": [
"completed",
"github_missconfigured",
"error",
"processing",
"interrupted"
],
"description": "Motif de l'interruption de la session. `processing` indique que la tâche est en cours. `interrupted` indique que la tâche a été interrompue manuellement."
},
"pullRequestLink": {
"type": "string",
"description": "Lien vers la pull request (demande de fusion) créée."
},
"messageToUser": {
"type": "string",
"description": "Message destiné à lutilisateur concernant lissue de la session."
},
"todos": {
"type": "array",
"description": "Liste des éléments de la liste de tâches de la session.",
"items": {
"type": "object",
"properties": {
"content": {
"type": "string",
"description": "Brève description de la tâche."
},
"status": {
"type": "string",
"enum": [
"pending",
"in_progress",
"completed",
"cancelled"
],
"description": "Statut actuel de la tâche."
},
"priority": {
"type": "string",
"enum": [
"high",
"medium",
"low"
],
"description": "Niveau de priorité de la tâche."
},
"id": {
"type": "string",
"description": "Identifiant unique de lélément de la liste de tâches."
}
}
}
},
"userId": {
"type": "string",
"description": "ID de lutilisateur ayant créé cette session, si disponible."
},
"title": {
"type": "string",
"description": "Titre généré résumant la tâche de lagent."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Horodatage de création de la session."
}
}
}
}
}
}
}
}
},
"/v1/agent/{projectId}/jobs": {
"get": {
"summary": "Récupérer toutes les tâches dagent (v1)",
"deprecated": true,
"description": "Obsolète : utilisez plutôt [v2 get agent job](/api/agent/v2/get-agent-job). Récupère toutes les tâches dagent pour le domain spécifié, y compris leur statut et leurs détails.\n\nAuthentifiez-vous avec une clé d'API administrateur.",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "LID de votre projet. Vous pouvez le copier depuis la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard."
},
{
"name": "skip",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 0,
"default": 0
},
"description": "Nombre de résultats à ignorer pour la pagination."
},
{
"name": "take",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 12
},
"description": "Nombre de résultats à retourner. Maximum 100."
}
],
"responses": {
"200": {
"description": "Toutes les tâches dagent ont été récupérées avec succès",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"allSessions": {
"type": "array",
"description": "Tableau de toutes les sessions dagent pour le domain.",
"items": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"description": "Le sous-domaine auquel cette session appartient."
},
"subdomain": {
"type": "string",
"description": "Le sous-domaine auquel cette session appartient."
},
"branch": {
"type": "string",
"description": "Nom de la branche Git où les modifications ont été effectuées.",
"nullable": true
},
"haulted": {
"type": "boolean",
"description": "Indique si lexécution de la session a été interrompue."
},
"haultReason": {
"type": "string",
"enum": [
"completed",
"github_missconfigured",
"error",
"processing",
"interrupted"
],
"description": "Motif de l'interruption de la session. `processing` indique que la tâche est en cours. `interrupted` indique que la tâche a été interrompue manuellement."
},
"pullRequestLink": {
"type": "string",
"description": "Lien vers la pull request (demande de fusion) créée."
},
"messageToUser": {
"type": "string",
"description": "Message destiné à lutilisateur concernant lissue de la session."
},
"todos": {
"type": "array",
"description": "Liste des éléments de la liste de tâches de la session.",
"items": {
"type": "object",
"properties": {
"content": {
"type": "string",
"description": "Brève description de la tâche."
},
"status": {
"type": "string",
"enum": [
"pending",
"in_progress",
"completed",
"cancelled"
],
"description": "Statut actuel de la tâche."
},
"priority": {
"type": "string",
"enum": [
"high",
"medium",
"low"
],
"description": "Niveau de priorité de la tâche."
},
"id": {
"type": "string",
"description": "Identifiant unique de lélément de la liste de tâches."
}
}
}
},
"userId": {
"type": "string",
"description": "ID de lutilisateur ayant créé cette session, si disponible."
},
"title": {
"type": "string",
"description": "Titre généré résumant la tâche de lagent."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Horodatage de création de la session."
}
}
}
}
}
}
}
}
}
}
}
},
"/v2/agent/{projectId}/job": {
"post": {
"summary": "Créer une tâche dagent",
"description": "Crée une nouvelle tâche dagent qui sexécute en arrière-plan. La tâche traite le prompt de manière asynchrone — interrogez le point de terminaison get job pour suivre sa progression. Si lagent modifie les fichiers avec succès, une pull request (demande de fusion) est automatiquement créée.\n\nAuthentifiez-vous avec une clé d'API administrateur.",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "LID de votre projet. Vous pouvez le copier depuis la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard."
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"prompt"
],
"properties": {
"prompt": {
"type": "string",
"minLength": 1,
"description": "Linstruction que lagent doit exécuter."
}
}
}
}
}
},
"responses": {
"201": {
"description": "Tâche dagent créée avec succès",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AgentJob"
}
}
}
},
"400": {
"description": "requête invalide",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"429": {
"description": "limite de débit dépassé",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}
},
"/v2/agent/{projectId}/job/{id}": {
"get": {
"summary": "Récupérer une tâche dagent",
"description": "Récupère le statut actuel et les détails dune tâche dagent. Interrogez ce point de terminaison pour suivre la progression de la tâche.\n\nAuthentifiez-vous avec une clé d'API administrateur.",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "LID de votre projet. Vous pouvez le copier depuis la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard."
},
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "Lidentifiant unique de la tâche dagent."
}
],
"responses": {
"200": {
"description": "Détails de la tâche dagent",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AgentJob"
}
}
}
},
"404": {
"description": "Tâche introuvable",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}
},
"/v2/agent/{projectId}/job/{id}/message": {
"post": {
"summary": "Envoyer un message de suivi",
"description": "Envoie un message de suivi à une tâche dagent existante. Le message est traité de manière asynchrone — interroger le point de terminaison get job pour suivre la progression.\n\nAuthentifiez-vous avec une clé d'API administrateur.",
"parameters": [
{
"name": "projectId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "LID de votre projet. Vous pouvez le copier depuis la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard."
},
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "Lidentifiant unique de la tâche dagent à laquelle envoyer un message."
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"prompt"
],
"properties": {
"prompt": {
"type": "string",
"minLength": 1,
"description": "Linstruction de suivi destinée à lagent."
}
}
}
}
}
},
"responses": {
"200": {
"description": "Message envoyé avec succès",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AgentJob"
}
}
}
},
"400": {
"description": "Requête invalide",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"404": {
"description": "Tâche introuvable",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"429": {
"description": "Limite de débit dépassée",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"DeslopResult": {
"type": "object",
"required": ["path", "skipped", "creditsCharged"],
"properties": {
"path": { "type": "string", "description": "Le chemin fourni dans la requête." },
"skipped": {
"type": "string",
"nullable": true,
"enum": ["too_short", null],
"description": "Raison pour laquelle la page a été ignorée, ou null lorsque la page a été vérifiée. `too_short` signifie que la page contenait moins de 50 mots de prose et n'a pas été facturée."
},
"predictionShort": {
"type": "string",
"enum": ["AI", "AI-Assisted", "Human", "Mixed"],
"description": "Verdict global pour la page. Présent uniquement lorsque la page a été vérifiée."
},
"fractionAi": { "type": "number", "description": "Fraction de la page détectée comme générée par IA (0-1)." },
"fractionAiAssisted": { "type": "number", "description": "Fraction détectée comme assistée par IA (0-1)." },
"fractionHuman": { "type": "number", "description": "Fraction détectée comme rédigée par un humain (0-1)." },
"windows": {
"type": "array",
"description": "Passages signalés (non humains). Présent uniquement lorsque la page a été vérifiée.",
"items": { "$ref": "#/components/schemas/DeslopWindow" }
},
"creditsCharged": { "type": "integer", "description": "Crédits IA facturés pour cette requête (0 lorsque la page est ignorée)." }
}
},
"DeslopWindow": {
"type": "object",
"required": ["text", "label", "aiAssistanceScore", "startLine", "endLine"],
"properties": {
"text": { "type": "string", "description": "Le texte du passage signalé." },
"label": { "type": "string", "description": "Étiquette de détection pour le passage, par exemple `AI-Generated`." },
"aiAssistanceScore": { "type": "number", "description": "Score d'assistance par IA pour le passage (0-1)." },
"confidence": {
"description": "Confiance de la détection, renvoyée sous forme d'étiquette telle que `High` ou de score numérique.",
"oneOf": [
{ "type": "string" },
{ "type": "number" }
]
},
"startLine": { "type": "integer", "description": "Ligne de début du passage dans le contenu d'origine (indexée à partir de 1)." },
"endLine": { "type": "integer", "description": "Ligne de fin du passage dans le contenu d'origine (indexée à partir de 1)." },
"rewrites": {
"type": "array",
"description": "Suggestions de réécriture au style humain du passage.",
"items": {
"type": "object",
"required": ["text", "rationale"],
"properties": {
"text": { "type": "string", "description": "Le passage réécrit." },
"rationale": { "type": "string", "description": "Pourquoi la réécriture se lit de manière plus humaine." }
}
}
}
}
},
"AgentJob": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Identifiant unique de la tâche dagent."
},
"status": {
"type": "string",
"enum": [
"active",
"completed",
"archived",
"failed"
],
"description": "Statut actuel de la tâche. `active` — lagent traite actuellement le prompt. `completed` — lagent a terminé avec succès et une PR a peut-être été créée (vérifiez `prLink`). `archived` — la tâche a été archivée. `failed` — lagent a rencontré une erreur non récupérable. Interrogez régulièrement jusquà ce que le statut soit `completed`, `archived` ou `failed`."
},
"source": {
"type": "object",
"description": "Informations sur le référentiel source.",
"properties": {
"repository": {
"type": "string",
"description": "URL complète du référentiel GitHub."
},
"ref": {
"type": "string",
"description": "Branche Git sur laquelle lagent travaille.",
"nullable": true
}
}
},
"model": {
"type": "string",
"description": "Modèle dIA utilisé pour cette tâche."
},
"prLink": {
"type": "string",
"format": "uri",
"example": "https://github.com/org/repo/pull/123",
"description": "URL de la pull request (demande de fusion) GitHub créée par lagent. `null` tant que la tâche est `active` ou si aucun fichier na été modifié. Renseignée une fois que lagent a créé une PR avec succès.",
"nullable": true
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Horodatage de création de la tâche."
},
"archivedAt": {
"type": "string",
"format": "date-time",
"description": "Horodatage darchivage de la tâche.",
"nullable": true
}
}
},
"Error": {
"type": "object",
"properties": {
"error": {
"type": "string",
"description": "Message derreur."
}
}
}
},
"securitySchemes": {
"bearerAuth": {
"type": "http",
"scheme": "bearer",
"description": "L'en-tête Authorization requiert un jeton Bearer. Utilisez une clé d'API administrateur. Il s'agit d'une clé secrète côté serveur. Générez-en une depuis la [page des clés d'API](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard."
}
}
}
}