diff --git a/api/introduction.mdx b/api/introduction.mdx index 470124bd6..76f412ae4 100644 --- a/api/introduction.mdx +++ b/api/introduction.mdx @@ -16,6 +16,7 @@ The Mintlify REST (Representational State Transfer) API enables you to programma - [Create assistant message](/api/assistant/create-assistant-message-v2): Embed the assistant, trained on your docs, into any application of your choosing. - [Search documentation](/api/assistant/search): Search through your documentation. - [Get page content](/api/assistant/get-page-content): Retrieve the full text content of a documentation page. +- [Create preview deployment](/api/preview/create): Create a preview deployment from a Git branch. - [Get user feedback](/api/analytics/feedback): Export user feedback from your documentation. - [Get feedback by page](/api/analytics/feedback-by-page): Export feedback counts aggregated by page. - [Get assistant conversations](/api/analytics/assistant-conversations): Export AI assistant conversation history. @@ -27,6 +28,7 @@ The Mintlify REST (Representational State Transfer) API enables you to programma - **Automated deployments**: Trigger site updates at set intervals or when events occur with [Trigger update](/api/update/trigger) and [Get update status](/api/update/status). - **CI/CD integration**: Update documentation as part of your deployment pipeline when code changes with [Trigger update](/api/update/trigger). +- **Preview deployments**: Programmatically create preview deployments for branches with [Create preview deployment](/api/preview/create). - **Custom integrations**: Embed the AI assistant into your product, support portal, or internal tools with [Create assistant message](/api/assistant/create-assistant-message-v2), [Search documentation](/api/assistant/search), and [Get page content](/api/assistant/get-page-content). - **Automated editing**: Use agent jobs to programmatically update documentation at scale with [Create agent job](/api/agent/v2/create-agent-job), [Get agent job](/api/agent/v2/get-agent-job), and [Send follow-up message](/api/agent/v2/send-message). - **Analytics export**: Export feedback, assistant conversations, search analytics, page views, and visitor data for external analysis with [Get user feedback](/api/analytics/feedback), [Get feedback by page](/api/analytics/feedback-by-page), [Get assistant conversations](/api/analytics/assistant-conversations), [Get search queries](/api/analytics/searches), [Get page views](/api/analytics/views), and [Get unique visitors](/api/analytics/visitors). @@ -39,7 +41,7 @@ You can create up to 10 API keys per hour per organization. ### Admin API key -Use the admin API key to authenticate requests to [Trigger update](/api/update/trigger), [Get update status](/api/update/status), [Create agent job](/api/agent/v2/create-agent-job), [Get agent job](/api/agent/v2/get-agent-job), [Send follow-up message](/api/agent/v2/send-message), [Get user feedback](/api/analytics/feedback), [Get feedback by page](/api/analytics/feedback-by-page), [Get assistant conversations](/api/analytics/assistant-conversations), [Get search queries](/api/analytics/searches), [Get page views](/api/analytics/views), and [Get unique visitors](/api/analytics/visitors). +Use the admin API key to authenticate requests to [Trigger update](/api/update/trigger), [Get update status](/api/update/status), [Create preview deployment](/api/preview/create), [Create agent job](/api/agent/v2/create-agent-job), [Get agent job](/api/agent/v2/get-agent-job), [Send follow-up message](/api/agent/v2/send-message), [Get user feedback](/api/analytics/feedback), [Get feedback by page](/api/analytics/feedback-by-page), [Get assistant conversations](/api/analytics/assistant-conversations), [Get search queries](/api/analytics/searches), [Get page views](/api/analytics/views), and [Get unique visitors](/api/analytics/visitors). Admin API keys begin with the `mint_` prefix. diff --git a/api/preview/create.mdx b/api/preview/create.mdx new file mode 100644 index 000000000..dd5b91730 --- /dev/null +++ b/api/preview/create.mdx @@ -0,0 +1,6 @@ +--- +title: "Create preview deployment" +description: "Create a preview deployment from a Git branch to preview documentation changes before merging." +openapi: "/openapi.json POST /project/{projectId}/preview" +keywords: ["preview", "deployment", "create", "branch"] +--- diff --git a/docs.json b/docs.json index 5c863c53e..c2658770f 100644 --- a/docs.json +++ b/docs.json @@ -369,6 +369,13 @@ "api/assistant/get-page-content" ] }, + { + "group": "Preview deployments", + "icon": "eye", + "pages": [ + "api/preview/create" + ] + }, { "group": "Analytics", "icon": "chart-line", @@ -746,6 +753,13 @@ "fr/api/assistant/get-page-content" ] }, + { + "group": "Déploiements de prévisualisation", + "icon": "eye", + "pages": [ + "fr/api/preview/create" + ] + }, { "group": "Analytics", "icon": "chart-line", @@ -1119,6 +1133,13 @@ "es/api/assistant/get-page-content" ] }, + { + "group": "Despliegues de vista previa", + "icon": "eye", + "pages": [ + "es/api/preview/create" + ] + }, { "group": "Analytics", "icon": "chart-line", @@ -1492,6 +1513,13 @@ "zh/api/assistant/get-page-content" ] }, + { + "group": "预览部署", + "icon": "eye", + "pages": [ + "zh/api/preview/create" + ] + }, { "group": "数据分析", "icon": "chart-line", diff --git a/es/api/introduction.mdx b/es/api/introduction.mdx index edabcf184..03b794723 100644 --- a/es/api/introduction.mdx +++ b/es/api/introduction.mdx @@ -18,6 +18,7 @@ La REST (Representational State Transfer) API de Mintlify te permite interactuar * [Create assistant message](/es/api/assistant/create-assistant-message-v2): Integra el assistant, entrenado con tu documentación, en cualquier aplicación que elijas. * [Search documentation](/es/api/assistant/search): Busca en tu documentación. * [Get page content](/es/api/assistant/get-page-content): Recupera el contenido de texto completo de una página de documentación. +* [Create preview deployment](/es/api/preview/create): Crea un despliegue de vista previa desde una rama de Git. * [Get user feedback](/es/api/analytics/feedback): Exporta los comentarios de los usuarios de tu documentación. * [Get assistant conversations](/es/api/analytics/assistant-conversations): Exporta el historial de conversaciones del Asistente de IA. @@ -27,6 +28,7 @@ La REST (Representational State Transfer) API de Mintlify te permite interactuar * **Implementaciones automatizadas**: Activa actualizaciones del sitio a intervalos establecidos o cuando se produzcan eventos con [Trigger update](/es/api/update/trigger) y [Get update status](/es/api/update/status). * **Integración CI/CD**: Actualiza la documentación como parte de tu pipeline de implementación cuando el código cambie con [Trigger update](/es/api/update/trigger). +* **Despliegues de vista previa**: Crea despliegues de vista previa de forma programática con [Create preview deployment](/es/api/preview/create). * **Integraciones personalizadas**: Inserta el Asistente de IA en tu producto, portal de soporte o herramientas internas con [Create assistant message](/es/api/assistant/create-assistant-message-v2), [Search documentation](/es/api/assistant/search) y [Get page content](/es/api/assistant/get-page-content). * **Edición automatizada**: Usa trabajos de agente para actualizar la documentación programáticamente y a escala con [Create agent job](/es/api/agent/v2/create-agent-job), [Get agent job](/es/api/agent/v2/get-agent-job) y [Send follow-up message](/es/api/agent/v2/send-message). * **Exportación de Analytics**: Exporta comentarios y conversaciones del Asistente de IA para análisis externo con [Get user feedback](/es/api/analytics/feedback) y [Get assistant conversations](/es/api/analytics/assistant-conversations). @@ -43,7 +45,7 @@ Puedes crear hasta 10 API keys por hora y por organización. ### Clave de la API de administrador -Usa la clave de la API de administrador para autenticar solicitudes a [Trigger update](/es/api/update/trigger), [Get update status](/es/api/update/status), [Create agent job](/es/api/agent/v2/create-agent-job), [Get agent job](/es/api/agent/v2/get-agent-job), [Send follow-up message](/es/api/agent/v2/send-message), [Get user feedback](/es/api/analytics/feedback) y [Get assistant conversations](/es/api/analytics/assistant-conversations). +Usa la clave de la API de administrador para autenticar solicitudes a [Trigger update](/es/api/update/trigger), [Get update status](/es/api/update/status), [Create preview deployment](/es/api/preview/create), [Create agent job](/es/api/agent/v2/create-agent-job), [Get agent job](/es/api/agent/v2/get-agent-job), [Send follow-up message](/es/api/agent/v2/send-message), [Get user feedback](/es/api/analytics/feedback) y [Get assistant conversations](/es/api/analytics/assistant-conversations). Las claves de la API de administrador comienzan con el prefijo `mint_`. diff --git a/es/api/preview/create.mdx b/es/api/preview/create.mdx new file mode 100644 index 000000000..b069cd926 --- /dev/null +++ b/es/api/preview/create.mdx @@ -0,0 +1,6 @@ +--- +title: "Crear despliegue de vista previa" +description: "Crea un despliegue de vista previa desde una rama de Git para previsualizar los cambios en la documentación antes de fusionar." +openapi: "/es/openapi.json POST /project/{projectId}/preview" +keywords: ["vista previa", "despliegue", "crear", "rama"] +--- diff --git a/es/openapi.json b/es/openapi.json index a130df6b7..ac77e98db 100644 --- a/es/openapi.json +++ b/es/openapi.json @@ -214,6 +214,86 @@ } } } + }, + "/project/{projectId}/preview": { + "post": { + "summary": "Crear despliegue de vista previa", + "description": "Crea un despliegue de vista previa para una rama específica. El despliegue se construye de forma asíncrona. Usa el `statusId` devuelto para consultar el estado de la construcción. Requiere el derecho `PREVIEW_DEPLOYMENTS`.", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "El ID de tu proyecto. Puedes copiarlo de la página de [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de tu dashboard.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": ["branch"], + "properties": { + "branch": { + "type": "string", + "description": "La rama de Git desde la cual crear un despliegue de vista previa.", + "example": "feature/my-branch" + } + } + } + } + } + }, + "responses": { + "202": { + "description": "La creación del despliegue de vista previa ha sido puesta en cola.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "statusId": { + "type": "string", + "description": "El ID de estado para consultar el progreso de la construcción." + }, + "previewDeploymentId": { + "type": "string", + "description": "El identificador único del despliegue de vista previa creado." + }, + "subdomain": { + "type": "string", + "description": "El subdominio asignado al despliegue de vista previa." + }, + "previewUrl": { + "type": "string", + "description": "La URL donde el despliegue de vista previa es accesible." + } + } + } + } + } + }, + "400": { + "description": "Solicitud inválida. La rama falta o el proyecto de origen es un despliegue de vista previa.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "error": { + "type": "string" + } + } + } + } + } + } + } + } } }, "components": { diff --git a/fr/api/introduction.mdx b/fr/api/introduction.mdx index ab4b9d3cb..0678e38da 100644 --- a/fr/api/introduction.mdx +++ b/fr/api/introduction.mdx @@ -18,6 +18,7 @@ L'API REST (Representational State Transfer) de Mintlify vous permet d'interagir * [Create assistant message](/fr/api/assistant/create-assistant-message-v2): Intégrez l'Assistant, entraîné sur votre documentation, dans n'importe quelle application de votre choix. * [Search documentation](/fr/api/assistant/search): Effectuez une recherche dans votre documentation. * [Get page content](/fr/api/assistant/get-page-content): Récupérez le contenu textuel complet d'une page de documentation. +* [Create preview deployment](/fr/api/preview/create) : Créez un déploiement de prévisualisation à partir d'une branche Git. * [Get user feedback](/fr/api/analytics/feedback): Exportez les retours utilisateurs issus de votre documentation. * [Get assistant conversations](/fr/api/analytics/assistant-conversations): Exportez l'historique des conversations de l'Assistant IA. @@ -27,6 +28,7 @@ L'API REST (Representational State Transfer) de Mintlify vous permet d'interagir * **Déploiements automatisés** : Déclenchez les mises à jour du site à intervalles réguliers ou lorsqu'un événement se produit avec [Trigger update](/fr/api/update/trigger) et [Get update status](/fr/api/update/status). * **Intégration CI/CD** : Mettez à jour la documentation dans le cadre de votre pipeline de déploiement lorsque le code change avec [Trigger update](/fr/api/update/trigger). +* **Déploiements de prévisualisation** : Créez des déploiements de prévisualisation de manière programmatique avec [Create preview deployment](/fr/api/preview/create). * **Intégrations personnalisées** : Intégrez l'Assistant IA à votre produit, portail d'assistance ou outils internes avec [Create assistant message](/fr/api/assistant/create-assistant-message-v2), [Search documentation](/fr/api/assistant/search) et [Get page content](/fr/api/assistant/get-page-content). * **Édition automatisée** : Utilisez des jobs d'agent pour mettre à jour la documentation de manière programmatique et à grande échelle avec [Create agent job](/fr/api/agent/v2/create-agent-job), [Get agent job](/fr/api/agent/v2/get-agent-job), et [Send follow-up message](/fr/api/agent/v2/send-message). * **Export Analytics** : Exportez les retours utilisateurs et les conversations avec l'Assistant pour une analyse externe avec [Get user feedback](/fr/api/analytics/feedback) et [Get assistant conversations](/fr/api/analytics/assistant-conversations). @@ -43,7 +45,7 @@ Vous pouvez créer jusqu'à 10 clés d'API par heure et par organisation. ### Clé d'API administrateur -Utilisez la clé d'API administrateur pour authentifier les requêtes vers [Trigger update](/fr/api/update/trigger), [Get update status](/fr/api/update/status), [Create agent job](/fr/api/agent/v2/create-agent-job), [Get agent job](/fr/api/agent/v2/get-agent-job), [Send follow-up message](/fr/api/agent/v2/send-message), [Get user feedback](/fr/api/analytics/feedback) et [Get assistant conversations](/fr/api/analytics/assistant-conversations). +Utilisez la clé d'API administrateur pour authentifier les requêtes vers [Trigger update](/fr/api/update/trigger), [Get update status](/fr/api/update/status), [Create preview deployment](/fr/api/preview/create), [Create agent job](/fr/api/agent/v2/create-agent-job), [Get agent job](/fr/api/agent/v2/get-agent-job), [Send follow-up message](/fr/api/agent/v2/send-message), [Get user feedback](/fr/api/analytics/feedback) et [Get assistant conversations](/fr/api/analytics/assistant-conversations). Les clés d'API administrateur commencent par le préfixe `mint_`. diff --git a/fr/api/preview/create.mdx b/fr/api/preview/create.mdx new file mode 100644 index 000000000..3d9e20805 --- /dev/null +++ b/fr/api/preview/create.mdx @@ -0,0 +1,6 @@ +--- +title: "Créer un déploiement de prévisualisation" +description: "Créez un déploiement de prévisualisation à partir d'une branche Git pour prévisualiser les modifications de la documentation avant de les fusionner." +openapi: "/fr/openapi.json POST /project/{projectId}/preview" +keywords: ["prévisualisation", "déploiement", "créer", "branche"] +--- diff --git a/fr/openapi.json b/fr/openapi.json index 90e207123..804df6335 100644 --- a/fr/openapi.json +++ b/fr/openapi.json @@ -190,22 +190,395 @@ "type": "string" } } + }, + "source": { + "type": "string", + "description": "La source du déclencheur de mise à jour.", + "enum": [ + "internal", + "github-app-installation", + "api", + "github", + "dashboard", + "gitlab", + "onboarding" + ] } } } + } + } + } + } + } + }, + "/project/{projectId}/preview": { + "post": { + "summary": "Créer un déploiement de prévisualisation", + "description": "Créez un déploiement de prévisualisation pour une branche spécifique. Le déploiement est construit de manière asynchrone. Utilisez le `statusId` retourné pour suivre l'état de la construction. Nécessite le droit `PREVIEW_DEPLOYMENTS`.", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Identifiant de votre projet. Vous pouvez le copier à partir de la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "branch" + ], + "properties": { + "branch": { + "type": "string", + "description": "La branche Git à partir de laquelle créer un déploiement de prévisualisation.", + "example": "feature/my-branch" + } + } + } + } + } + }, + "responses": { + "202": { + "description": "La création du déploiement de prévisualisation a été mise en file d'attente.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "statusId": { + "type": "string", + "description": "L'identifiant de statut pour suivre la progression de la construction." + }, + "previewDeploymentId": { + "type": "string", + "description": "L'identifiant unique du déploiement de prévisualisation créé." + }, + "subdomain": { + "type": "string", + "description": "Le sous-domaine attribué au déploiement de prévisualisation." + }, + "previewUrl": { + "type": "string", + "description": "L'URL où le déploiement de prévisualisation est accessible." + } + } + } + } + } + }, + "400": { + "description": "Requête invalide. La branche est manquante ou le projet source est lui-même un déploiement de prévisualisation.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "error": { + "type": "string" + } + } + } + } + } + } + } + }, + "get": { + "summary": "Lister les déploiements de prévisualisation", + "description": "Listez tous les déploiements de prévisualisation d'un projet. Retourne l'identifiant de déploiement, le sous-domaine, la branche et l'URL de prévisualisation pour chaque aperçu.", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Identifiant de votre projet. Vous pouvez le copier à partir de la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Une liste de déploiements de prévisualisation.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "previews": { + "type": "array", + "description": "Un tableau de déploiements de prévisualisation.", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "L'identifiant du déploiement de prévisualisation." + }, + "subdomain": { + "type": "string", + "description": "Le sous-domaine du déploiement de prévisualisation." + }, + "branch": { + "type": "string", + "description": "La branche Git à partir de laquelle la prévisualisation a été créée." + }, + "previewUrl": { + "type": "string", + "description": "L'URL où la prévisualisation est accessible." + } + } + } + } + } + } + } + } + } + } + } + }, + "/project/{projectId}/preview/{statusId}/status": { + "get": { + "summary": "Obtenir le statut du déploiement de prévisualisation", + "description": "Obtenez le statut de construction d'un déploiement de prévisualisation en utilisant l'identifiant de statut retourné lors de la création de la prévisualisation.", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Identifiant de votre projet. Vous pouvez le copier à partir de la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "statusId", + "in": "path", + "description": "L'identifiant de statut retourné par l'endpoint de création de déploiement de prévisualisation.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Le statut de construction du déploiement de prévisualisation.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "queued", + "in_progress", + "success", + "failure" + ], + "description": "Le statut actuel de la construction du déploiement de prévisualisation." + }, + "previewUrl": { + "type": "string", + "description": "L'URL où le déploiement de prévisualisation est accessible." + }, + "subdomain": { + "type": "string", + "description": "Le sous-domaine du déploiement de prévisualisation." + }, + "createdAt": { + "type": "string", + "description": "Une date et heure au format ISO 8601 en UTC indiquant quand la construction a été créée." + }, + "endedAt": { + "type": "string", + "description": "Une date et heure au format ISO 8601 en UTC indiquant quand la construction s'est terminée. Null si toujours en cours.", + "nullable": true + }, + "summary": { + "type": "string", + "description": "Un résumé du résultat de la construction.", + "nullable": true + } + } + } + } + } + }, + "404": { + "description": "L'identifiant de statut ou le déploiement de prévisualisation n'a pas été trouvé.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "error": { + "type": "string" + } + } + } + } + } + } + } + } + }, + "/project/{projectId}/preview/{previewDeploymentId}": { + "delete": { + "summary": "Supprimer un déploiement de prévisualisation", + "description": "Supprimez un déploiement de prévisualisation et nettoyez le cache associé. Cette action est irréversible.", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Identifiant de votre projet. Vous pouvez le copier à partir de la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "previewDeploymentId", + "in": "path", + "description": "L'identifiant du déploiement de prévisualisation à supprimer.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Le déploiement de prévisualisation a été supprimé avec succès.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "deleted": { + "type": "boolean", + "description": "Indique si le déploiement de prévisualisation a été supprimé." + } + } + } + } + } + }, + "404": { + "description": "Le déploiement de prévisualisation n'a pas été trouvé.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "error": { + "type": "string" + } + } + } + } + } + } + } + } + } + }, + "components": { + "securitySchemes": { + "bearerAuth": { + "type": "http", + "scheme": "bearer", + "description": "L'en-tête Authorization requiert un jeton Bearer. Utilisez une clé d'API administrateur (préfixée par `mint_`). Il s'agit d'une clé secrète utilisée côté serveur. Générez-en une depuis la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard." + } + } + } + } + }, + "/project/{projectId}/preview": { + "post": { + "summary": "Créer un déploiement de prévisualisation", + "description": "Créez un déploiement de prévisualisation pour une branche spécifique. Le déploiement est construit de manière asynchrone. Utilisez le `statusId` retourné pour suivre l'état de la construction. Nécessite le droit `PREVIEW_DEPLOYMENTS`.", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Identifiant de votre projet. Vous pouvez le copier à partir de la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "branch" + ], + "properties": { + "branch": { + "type": "string", + "description": "La branche Git à partir de laquelle créer un déploiement de prévisualisation.", + "example": "feature/my-branch" + } + } + } + } + } + }, + "responses": { + "202": { + "description": "La création du déploiement de prévisualisation a été mise en file d'attente.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "statusId": { + "type": "string", + "description": "L'identifiant de statut pour suivre la progression de la construction." }, - "source": { + "previewDeploymentId": { "type": "string", - "description": "La source du déclencheur de mise à jour.", - "enum": [ - "internal", - "github-app-installation", - "api", - "github", - "dashboard", - "gitlab", - "onboarding" - ] + "description": "L'identifiant unique du déploiement de prévisualisation créé." + }, + "subdomain": { + "type": "string", + "description": "Le sous-domaine attribué au déploiement de prévisualisation." + }, + "previewUrl": { + "type": "string", + "description": "L'URL où le déploiement de prévisualisation est accessible." + } + } + } + } + } + }, + "400": { + "description": "Requête invalide. La branche est manquante ou le projet source est lui-même un déploiement de prévisualisation.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "error": { + "type": "string" } } } @@ -215,14 +588,5 @@ } } } - }, - "components": { - "securitySchemes": { - "bearerAuth": { - "type": "http", - "scheme": "bearer", - "description": "L’en-tête Authorization requiert un jeton Bearer. Utilisez une clé d’API administrateur (préfixée par `mint_`). Il s’agit d’une clé secrète utilisée côté serveur. Générez-en une depuis la page [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) de votre Dashboard." - } - } } -} \ No newline at end of file +} diff --git a/openapi.json b/openapi.json index fcd4d140f..08aebebaf 100644 --- a/openapi.json +++ b/openapi.json @@ -209,6 +209,86 @@ } } } + }, + "/project/{projectId}/preview": { + "post": { + "summary": "Create preview deployment", + "description": "Create a preview deployment for a specific branch. The deployment is built asynchronously. Use the returned `statusId` to poll for build status. Requires the `PREVIEW_DEPLOYMENTS` entitlement.", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Your project ID. Can be copied from the [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) page in your dashboard.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": ["branch"], + "properties": { + "branch": { + "type": "string", + "description": "The Git branch to create a preview deployment from.", + "example": "feature/my-branch" + } + } + } + } + } + }, + "responses": { + "202": { + "description": "Preview deployment creation has been queued.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "statusId": { + "type": "string", + "description": "The status ID to poll for build progress." + }, + "previewDeploymentId": { + "type": "string", + "description": "The unique identifier of the created preview deployment." + }, + "subdomain": { + "type": "string", + "description": "The subdomain assigned to the preview deployment." + }, + "previewUrl": { + "type": "string", + "description": "The URL where the preview deployment is accessible." + } + } + } + } + } + }, + "400": { + "description": "Invalid request. The branch is missing or the source project is itself a preview deployment.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "error": { + "type": "string" + } + } + } + } + } + } + } + } } }, "components": { diff --git a/zh/api/introduction.mdx b/zh/api/introduction.mdx index ba44b829e..8f2d83a13 100644 --- a/zh/api/introduction.mdx +++ b/zh/api/introduction.mdx @@ -18,6 +18,7 @@ Mintlify 的 REST(Representational State Transfer)API 让你可以以编程 * [Create assistant message](/zh/api/assistant/create-assistant-message-v2):将基于您的文档训练的 AI 助手嵌入到任意您选择的应用中。 * [搜索文档](/zh/api/assistant/search):搜索您的文档。 * [获取页面内容](/zh/api/assistant/get-page-content):检索文档页面的完整文本内容。 +* [创建预览部署](/zh/api/preview/create):从 Git 分支创建预览部署。 * [获取用户反馈](/zh/api/analytics/feedback):从您的文档中导出用户反馈。 * [获取 AI 助手会话](/zh/api/analytics/assistant-conversations):导出 AI 助手的会话历史。 @@ -27,6 +28,7 @@ Mintlify 的 REST(Representational State Transfer)API 让你可以以编程 * **自动化部署**:使用 [Trigger update](/zh/api/update/trigger) 和 [Get update status](/zh/api/update/status),在设定的时间间隔或当特定事件发生时触发站点更新。 * **CI/CD 集成**:在代码变更时,将文档更新作为部署流水线的一部分来执行,使用 [Trigger update](/zh/api/update/trigger)。 +* **预览部署**:以编程方式创建分支的预览部署,使用 [Create preview deployment](/zh/api/preview/create)。 * **自定义集成**:使用 [Create assistant message](/zh/api/assistant/create-assistant-message-v2)、[Search documentation](/zh/api/assistant/search) 和 [Get page content](/zh/api/assistant/get-page-content),将 AI 助手嵌入到你的产品、支持门户或内部工具中。 * **自动化编辑**:使用 agent 任务,以编程方式大规模更新文档,配合 [Create agent job](/zh/api/agent/v2/create-agent-job)、[Get agent job](/zh/api/agent/v2/get-agent-job) 和 [Send follow-up message](/zh/api/agent/v2/send-message)。 * **Analytics 导出**:使用 [Get user feedback](/zh/api/analytics/feedback) 和 [Get assistant conversations](/zh/api/analytics/assistant-conversations),导出反馈和 AI 助手会话以进行外部分析。 @@ -43,7 +45,7 @@ Mintlify 的 REST(Representational State Transfer)API 让你可以以编程 ### 管理员 API key -使用管理员 API key 对发送到 [Trigger update](/zh/api/update/trigger)、[Get update status](/zh/api/update/status)、[Create agent job](/zh/api/agent/v2/create-agent-job)、[Get agent job](/zh/api/agent/v2/get-agent-job)、[Send follow-up message](/zh/api/agent/v2/send-message)、[Get user feedback](/zh/api/analytics/feedback) 和 [Get assistant conversations](/zh/api/analytics/assistant-conversations) 的请求进行身份验证。 +使用管理员 API key 对发送到 [Trigger update](/zh/api/update/trigger)、[Get update status](/zh/api/update/status)、[Create preview deployment](/zh/api/preview/create)、[Create agent job](/zh/api/agent/v2/create-agent-job)、[Get agent job](/zh/api/agent/v2/get-agent-job)、[Send follow-up message](/zh/api/agent/v2/send-message)、[Get user feedback](/zh/api/analytics/feedback) 和 [Get assistant conversations](/zh/api/analytics/assistant-conversations) 的请求进行身份验证。 管理员 API key 以 `mint_` 前缀开头。 diff --git a/zh/api/preview/create.mdx b/zh/api/preview/create.mdx new file mode 100644 index 000000000..e18290b33 --- /dev/null +++ b/zh/api/preview/create.mdx @@ -0,0 +1,6 @@ +--- +title: "创建预览部署" +description: "从 Git 分支创建预览部署,在合并之前预览文档更改。" +openapi: "/zh/openapi.json POST /project/{projectId}/preview" +keywords: ["预览", "部署", "创建", "分支"] +--- diff --git a/zh/openapi.json b/zh/openapi.json index a6ec005e1..42c3b7cad 100644 --- a/zh/openapi.json +++ b/zh/openapi.json @@ -214,6 +214,86 @@ } } } + }, + "/project/{projectId}/preview": { + "post": { + "summary": "创建预览部署", + "description": "为指定分支创建预览部署。部署将异步构建。使用返回的 `statusId` 查询构建状态。需要 `PREVIEW_DEPLOYMENTS` 权限。", + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "项目 ID。可在控制台的 [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) 页面中复制。", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": ["branch"], + "properties": { + "branch": { + "type": "string", + "description": "要创建预览部署的 Git 分支。", + "example": "feature/my-branch" + } + } + } + } + } + }, + "responses": { + "202": { + "description": "预览部署创建已加入队列。", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "statusId": { + "type": "string", + "description": "用于查询构建进度的状态 ID。" + }, + "previewDeploymentId": { + "type": "string", + "description": "创建的预览部署的唯一标识符。" + }, + "subdomain": { + "type": "string", + "description": "分配给预览部署的子域名。" + }, + "previewUrl": { + "type": "string", + "description": "预览部署可访问的 URL。" + } + } + } + } + } + }, + "400": { + "description": "无效请求。缺少分支或源项目本身是预览部署。", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "error": { + "type": "string" + } + } + } + } + } + } + } + } } }, "components": {