openapi: 3.0.3 info: title: Mintlify API description: >- Mintlify provides a suite of APIs for managing documentation deployments, automating documentation editing through agents, embedding AI assistants, and exporting analytics. Endpoints span the Update, Agent, Assistant, and Analytics APIs. version: "1.0" contact: name: Mintlify url: https://www.mintlify.com/docs/api/introduction servers: - url: https://api.mintlify.com description: Mintlify primary API server - url: https://api.mintlify.com/discovery description: Discovery server (Assistant and Search APIs) security: - adminKey: [] tags: - name: Update description: Trigger and monitor documentation deployment updates. - name: Agent description: Programmatic documentation editing via AI agent jobs. - name: Assistant description: Embeddable AI chat experience grounded in your documentation. - name: Analytics description: Export user feedback, conversations, and usage analytics. paths: /v1/project/update/{projectId}: post: tags: - Update summary: Trigger documentation update operationId: triggerUpdate parameters: - name: projectId in: path required: true schema: type: string responses: '202': description: Update queued. content: application/json: schema: type: object properties: statusId: type: string /v1/project/update-status/{statusId}: get: tags: - Update summary: Get update status operationId: getUpdateStatus parameters: - name: statusId in: path required: true schema: type: string responses: '200': description: Update status details. content: application/json: schema: $ref: '#/components/schemas/UpdateStatus' /v1/agent/{projectId}/job: post: tags: - Agent summary: Create agent job operationId: createAgentJob parameters: - name: projectId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AgentJobRequest' responses: '200': description: Server-sent event stream of agent execution. content: text/event-stream: schema: type: string /v1/agent/{projectId}/job/{id}: get: tags: - Agent summary: Get agent job operationId: getAgentJob parameters: - name: projectId in: path required: true schema: type: string - name: id in: path required: true schema: type: string responses: '200': description: Agent job details. content: application/json: schema: $ref: '#/components/schemas/AgentJob' /discovery/v2/assistant/{domain}/message: post: tags: - Assistant summary: Create assistant message description: Generate an AI assistant response grounded in your documentation. operationId: createAssistantMessage security: - assistantKey: [] parameters: - name: domain in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AssistantMessageRequest' responses: '200': description: Assistant streamed response. content: text/event-stream: schema: type: string /discovery/v1/search/{domain}: post: tags: - Assistant summary: Search documentation operationId: searchDocs security: - assistantKey: [] parameters: - name: domain in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SearchRequest' responses: '200': description: Search results. content: application/json: schema: type: array items: $ref: '#/components/schemas/SearchResult' /v1/analytics/feedback: get: tags: - Analytics summary: Get user feedback operationId: getFeedback responses: '200': description: Feedback responses. /v1/analytics/conversations: get: tags: - Analytics summary: Get assistant conversations operationId: getConversations responses: '200': description: Assistant conversation history. components: securitySchemes: adminKey: type: http scheme: bearer bearerFormat: mint_* description: Admin API key prefixed with mint_. assistantKey: type: http scheme: bearer bearerFormat: mint_dsc_* description: Public assistant API key prefixed with mint_dsc_. schemas: UpdateStatus: type: object properties: _id: type: string projectId: type: string subdomain: type: string status: type: string enum: [queued, in_progress, success, failure] createdAt: type: string format: date-time endedAt: type: string format: date-time summary: type: string logs: type: array items: type: string AgentJobRequest: type: object required: - messages properties: messages: type: array items: type: object properties: role: type: string enum: [user, system, assistant] content: type: string branch: type: string asDraft: type: boolean default: false model: type: string enum: [sonnet, opus] default: sonnet AgentJob: type: object properties: sessionId: type: string subdomain: type: string branch: type: string haultReason: type: string pullRequestLink: type: string title: type: string createdAt: type: string format: date-time AssistantMessageRequest: type: object required: - fp - messages properties: fp: type: string description: Fingerprint identifier (anonymous or unique user ID). threadId: type: string messages: type: array items: type: object retrievalPageSize: type: integer default: 5 SearchRequest: type: object required: - query properties: query: type: string pageSize: type: integer minimum: 1 maximum: 50 default: 10 scoreThreshold: type: number minimum: 0 maximum: 1 filter: type: object SearchResult: type: object properties: content: type: string path: type: string metadata: type: object