mirror of
https://github.com/mintlify/docs.git
synced 2026-09-14 13:35:46 +08:00
269 lines
10 KiB
JSON
269 lines
10 KiB
JSON
{
|
|
"openapi": "3.0.1",
|
|
"info": {
|
|
"title": "API de Exportación Estática de Mintlify",
|
|
"description": "Genera de forma programática una exportación estática autocontenida de tu documentación y descárgala como un único paquete. Disponible en los planes Enterprise.",
|
|
"version": "1.0.0"
|
|
},
|
|
"servers": [
|
|
{
|
|
"url": "https://api.mintlify.com/v1"
|
|
}
|
|
],
|
|
"security": [
|
|
{
|
|
"bearerAuth": []
|
|
}
|
|
],
|
|
"paths": {
|
|
"/static-export/{projectId}/jobs": {
|
|
"post": {
|
|
"summary": "Iniciar trabajo de exportación estática",
|
|
"description": "Inicia un trabajo de exportación estática para una implementación. El trabajo prerrenderiza tu documentación en un conjunto autocontenido de archivos HTML, RSC y recursos estáticos, y luego empaqueta el resultado como un único archivo descargable.\n\nUna implementación solo puede tener un trabajo de exportación estática activo a la vez. Iniciar un trabajo mientras otro está `queued` o `running` devuelve `409`. El endpoint está limitado a 10 inicios de trabajo por organización por hora.\n\nLa exportación estática está disponible en los planes Enterprise.\n\nAutentícate con una clave de API de administrador.",
|
|
"operationId": "startStaticExportJob",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/projectId"
|
|
}
|
|
],
|
|
"responses": {
|
|
"202": {
|
|
"description": "El trabajo de exportación fue aceptado y puesto en cola.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/StaticExportJob"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "El cuerpo de la solicitud no es válido. `basePath` debe ser uno de los valores admitidos.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Error"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "La autenticación falló.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Error"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "La exportación estática no está habilitada para esta implementación. Contacta con sales@mintlify.com para actualizar tu plan.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Error"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"409": {
|
|
"description": "Ya hay un trabajo de exportación estática en curso para esta implementación. Espera a que el trabajo activo se complete antes de iniciar uno nuevo.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Error"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"429": {
|
|
"description": "Se excedió el límite de velocidad. La API de exportación estática permite hasta 10 inicios de trabajo por organización por hora.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Error"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"requestBody": {
|
|
"required": false,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"basePath": {
|
|
"type": "string",
|
|
"enum": [
|
|
"",
|
|
"/docs",
|
|
"/documentation"
|
|
],
|
|
"description": "Ruta base bajo la que se sirve el sitio exportado. Anula la ruta base configurada de la implementación para esta exportación. Si se omite, la exportación usa la ruta base configurada de la implementación.",
|
|
"example": "/docs"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/static-export/{projectId}/jobs/{jobId}": {
|
|
"get": {
|
|
"summary": "Obtener el estado del trabajo de exportación estática",
|
|
"description": "Recupera el estado actual de un trabajo de exportación estática. Consulta este endpoint después de iniciar un trabajo hasta que `status` sea `completed` (o `failed`).\n\nUna vez que el trabajo se completa, la respuesta incluye `bundleUrl`, `sizeBytes` y `expiresAt`. `bundleUrl` es un enlace de S3 prefirmado con tiempo limitado. Descarga el paquete antes de la marca de tiempo `expiresAt`. Vuelve a llamar a este endpoint para obtener un enlace nuevo. Los archivos de exportación subyacentes siguen siendo reutilizables.\n\nLa exportación estática está disponible en los planes Enterprise.\n\nAutentícate con una clave de API de administrador.",
|
|
"operationId": "getStaticExportJob",
|
|
"parameters": [
|
|
{
|
|
"$ref": "#/components/parameters/projectId"
|
|
},
|
|
{
|
|
"name": "jobId",
|
|
"in": "path",
|
|
"description": "El ID del trabajo de exportación estática devuelto por `Start static export job`.",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "El estado actual del trabajo de exportación.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/StaticExportJob"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "La autenticación falló.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Error"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "La exportación estática no está habilitada para esta implementación. Contacta con sales@mintlify.com para actualizar tu plan.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Error"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "No existe ningún trabajo con el ID proporcionado para esta implementación.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Error"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"components": {
|
|
"securitySchemes": {
|
|
"bearerAuth": {
|
|
"type": "http",
|
|
"scheme": "bearer",
|
|
"description": "El encabezado Authorization requiere un token de tipo Bearer. Usa una clave de API de administrador. Esta es una clave secreta del lado del servidor. Genera una en la [página de claves de API](https://app.mintlify.com/settings/organization/api-keys) de tu dashboard."
|
|
}
|
|
},
|
|
"parameters": {
|
|
"projectId": {
|
|
"schema": {
|
|
"type": "string",
|
|
"description": "El ID de tu proyecto. Puedes copiarlo desde la página de [claves de API](https://app.mintlify.com/settings/organization/api-keys) de tu dashboard."
|
|
},
|
|
"required": true,
|
|
"name": "projectId",
|
|
"in": "path"
|
|
}
|
|
},
|
|
"schemas": {
|
|
"StaticExportJob": {
|
|
"type": "object",
|
|
"required": [
|
|
"jobId",
|
|
"status",
|
|
"createdAt",
|
|
"updatedAt"
|
|
],
|
|
"properties": {
|
|
"jobId": {
|
|
"type": "string",
|
|
"description": "Identificador único del trabajo de exportación estática.",
|
|
"example": "6520f3a1c9b1a20012ab34cd"
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"description": "El estado actual del trabajo.",
|
|
"enum": [
|
|
"queued",
|
|
"running",
|
|
"completed",
|
|
"failed"
|
|
],
|
|
"example": "completed"
|
|
},
|
|
"createdAt": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Cuándo se creó el trabajo."
|
|
},
|
|
"updatedAt": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Cuándo el trabajo cambió de estado por última vez."
|
|
},
|
|
"error": {
|
|
"type": "string",
|
|
"description": "Un mensaje de error legible por humanos. Solo está presente cuando `status` es `failed`; de lo contrario, es `null`.",
|
|
"nullable": true
|
|
},
|
|
"bundleUrl": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"description": "Un enlace de S3 prefirmado con tiempo limitado al archivo del paquete de exportación estática. Solo está presente cuando `status` es `completed`. Descarga el paquete antes de `expiresAt`. Vuelve a llamar a este endpoint para obtener un enlace nuevo.",
|
|
"example": "https://mintlify-static-exports.s3.amazonaws.com/6520f3a1c9b1a20012ab34cd/export.zip?X-Amz-Signature=..."
|
|
},
|
|
"sizeBytes": {
|
|
"type": "integer",
|
|
"description": "El tamaño del paquete en bytes. Solo está presente cuando `status` es `completed`.",
|
|
"example": 18432000
|
|
},
|
|
"expiresAt": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Cuándo caduca el `bundleUrl` actual. Solo está presente cuando `status` es `completed`."
|
|
}
|
|
}
|
|
},
|
|
"Error": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": {
|
|
"type": "string",
|
|
"description": "Una descripción del error legible por humanos."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|