mirror of
https://github.com/mintlify/docs.git
synced 2026-09-14 13:35:46 +08:00
3b821703e8
Co-authored-by: mintlify[bot] <109931778+mintlify[bot]@users.noreply.github.com>
943 lines
40 KiB
JSON
943 lines
40 KiB
JSON
{
|
|
"openapi": "3.0.1",
|
|
"info": {
|
|
"title": "Mintlify Assistant API",
|
|
"description": "An API to integrate Mintlify discovery features into your product.",
|
|
"version": "1.0.0"
|
|
},
|
|
"servers": [
|
|
{
|
|
"url": "https://api.mintlify.com/discovery"
|
|
}
|
|
],
|
|
"security": [
|
|
{
|
|
"bearerAuth": []
|
|
}
|
|
],
|
|
"paths": {
|
|
"/v1/assistant/{domain}/message": {
|
|
"post": {
|
|
"summary": "Assistant message v1",
|
|
"description": "Generates a response message from the assistant for the specified domain. Compatible with AI SDK v4.\n\nAuthenticate with an assistant API key.",
|
|
"parameters": [
|
|
{
|
|
"name": "domain",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"description": "The domain identifier from your `domain.mintlify.site` URL. Can be found at the end of your dashboard URL. For example, `app.mintlify.com/organization/domain` has a domain identifier of `domain`."
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"required": [
|
|
"fp",
|
|
"messages"
|
|
],
|
|
"properties": {
|
|
"fp": {
|
|
"type": "string",
|
|
"description": "Fingerprint identifier for tracking conversation sessions. Use 'anonymous' for anonymous users or provide a unique user identifier."
|
|
},
|
|
"threadId": {
|
|
"default": null,
|
|
"type": "string",
|
|
"description": "An optional identifier used to maintain conversation continuity across multiple messages. When provided, it allows the system to associate follow-up messages with the same conversation thread. The threadId is returned in the response as event.threadId when event.type === 'finish'."
|
|
},
|
|
"messages": {
|
|
"type": "array",
|
|
"default": [
|
|
{
|
|
"id": "foobar",
|
|
"role": "user",
|
|
"content": "how do i get started",
|
|
"parts": [
|
|
{
|
|
"type": "text",
|
|
"text": "How do I get started"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "Unique identifier for the message."
|
|
},
|
|
"role": {
|
|
"type": "string",
|
|
"enum": [
|
|
"system",
|
|
"assistant",
|
|
"data",
|
|
"user"
|
|
],
|
|
"description": "The role of the message sender."
|
|
},
|
|
"createdAt": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Timestamp when the message was created."
|
|
},
|
|
"content": {
|
|
"type": "string",
|
|
"description": "The content of the message."
|
|
},
|
|
"annotations": {
|
|
"type": "array",
|
|
"items": {},
|
|
"description": "Optional array of annotations for the message."
|
|
},
|
|
"parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"oneOf": [
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"text"
|
|
]
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"text"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"reasoning"
|
|
]
|
|
},
|
|
"reasoning": {
|
|
"type": "string"
|
|
},
|
|
"details": {
|
|
"type": "array",
|
|
"items": {
|
|
"oneOf": [
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"text"
|
|
]
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
},
|
|
"signature": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"text"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"redacted"
|
|
]
|
|
},
|
|
"data": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"data"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"reasoning",
|
|
"details"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"step-start"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"type"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"source"
|
|
]
|
|
},
|
|
"source": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sourceType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"url"
|
|
]
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sourceType",
|
|
"id",
|
|
"url"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"source"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"tool-invocation"
|
|
]
|
|
},
|
|
"toolInvocation": {
|
|
"oneOf": [
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"state": {
|
|
"type": "string",
|
|
"enum": [
|
|
"partial-call"
|
|
]
|
|
},
|
|
"step": {
|
|
"type": "number"
|
|
},
|
|
"toolCallId": {
|
|
"type": "string"
|
|
},
|
|
"toolName": {
|
|
"type": "string"
|
|
},
|
|
"args": {}
|
|
},
|
|
"required": [
|
|
"state",
|
|
"toolCallId",
|
|
"toolName",
|
|
"args"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"state": {
|
|
"type": "string",
|
|
"enum": [
|
|
"call"
|
|
]
|
|
},
|
|
"step": {
|
|
"type": "number"
|
|
},
|
|
"toolCallId": {
|
|
"type": "string"
|
|
},
|
|
"toolName": {
|
|
"type": "string"
|
|
},
|
|
"args": {}
|
|
},
|
|
"required": [
|
|
"state",
|
|
"toolCallId",
|
|
"toolName",
|
|
"args"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"state": {
|
|
"type": "string",
|
|
"enum": [
|
|
"result"
|
|
]
|
|
},
|
|
"step": {
|
|
"type": "number"
|
|
},
|
|
"toolCallId": {
|
|
"type": "string"
|
|
},
|
|
"toolName": {
|
|
"type": "string"
|
|
},
|
|
"args": {},
|
|
"result": {}
|
|
},
|
|
"required": [
|
|
"state",
|
|
"toolCallId",
|
|
"toolName",
|
|
"args",
|
|
"result"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"toolInvocation"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"description": "Array of message parts with different types including text, reasoning, sources, and tool invocations."
|
|
},
|
|
"experimental_attachments": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"contentType": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
]
|
|
},
|
|
"description": "Optional array of experimental attachments for the message."
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"role",
|
|
"content",
|
|
"parts"
|
|
]
|
|
},
|
|
"description": "Array of messages in the conversation. On the frontend, you will likely want to use the handleSubmit function from the @ai-sdk package's useChat hook to append user messages and handle streaming responses, rather than manually defining the objects in this array as they have so many parameters."
|
|
},
|
|
"retrievalPageSize": {
|
|
"type": "number",
|
|
"default": 5,
|
|
"description": "Number of documentation search results to use for generating the response. Higher values provide more context but may increase response time. Recommended: 5."
|
|
},
|
|
"filter": {
|
|
"type": "object",
|
|
"default": null,
|
|
"properties": {
|
|
"version": {
|
|
"type": "string",
|
|
"description": "Optional version filter."
|
|
},
|
|
"language": {
|
|
"type": "string",
|
|
"description": "Optional language filter."
|
|
}
|
|
},
|
|
"description": "Optional filter criteria for the search."
|
|
},
|
|
"context": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"code",
|
|
"textSelection"
|
|
],
|
|
"description": "The type of context being provided."
|
|
},
|
|
"value": {
|
|
"type": "string",
|
|
"description": "The code snippet or selected text content."
|
|
},
|
|
"path": {
|
|
"type": "string",
|
|
"description": "Optional path to the source file or page."
|
|
},
|
|
"elementId": {
|
|
"type": "string",
|
|
"description": "Optional identifier for the UI element containing the context."
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"value"
|
|
]
|
|
},
|
|
"description": "Optional array of contextual information to provide to the assistant."
|
|
},
|
|
"currentPath": {
|
|
"type": "string",
|
|
"description": "The path of the page the user is currently viewing. When provided, the assistant uses this context to provide more relevant answers. Maximum length: 200 characters."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Message generated successfully",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"description": "Response object with data stream parts formatted with the specified status, headers, and content. For more information, see the AI SDK documentation at [ai-sdk.dev/docs/ai-sdk-ui/streaming-data](https://ai-sdk.dev/docs/ai-sdk-ui/streaming-data). Use the [useChat hook from ai-sdk](https://ai-sdk.dev/docs/reference/ai-sdk-ui/use-chat#usechat) to handle the response stream."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/v2/assistant/{domain}/message": {
|
|
"post": {
|
|
"summary": "Assistant message",
|
|
"description": "Generates a response message from the assistant for the specified domain. Compatible with AI SDK v5+.\n\nAuthenticate with an assistant API key.",
|
|
"parameters": [
|
|
{
|
|
"name": "domain",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"description": "The domain identifier from your `domain.mintlify.site` URL. Can be found at the end of your dashboard URL. For example, `app.mintlify.com/organization/domain` has a domain identifier of `domain`."
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"required": [
|
|
"fp",
|
|
"messages"
|
|
],
|
|
"properties": {
|
|
"fp": {
|
|
"type": "string",
|
|
"description": "Fingerprint identifier for tracking conversation sessions. Use `anonymous` for anonymous users or provide a unique user identifier."
|
|
},
|
|
"threadId": {
|
|
"default": null,
|
|
"type": "string",
|
|
"description": "An optional identifier used to maintain conversation continuity across multiple messages. When provided, it allows the system to associate follow-up messages with the same conversation thread. The `threadId` is returned in the response as `event.threadId` when `event.type === 'finish'`."
|
|
},
|
|
"messages": {
|
|
"type": "array",
|
|
"default": [
|
|
{
|
|
"id": "foobar",
|
|
"role": "user",
|
|
"parts": [
|
|
{
|
|
"type": "text",
|
|
"text": "How do I get started"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "Unique identifier for the message."
|
|
},
|
|
"role": {
|
|
"type": "string",
|
|
"enum": [
|
|
"system",
|
|
"assistant",
|
|
"user"
|
|
],
|
|
"description": "The role of the message sender."
|
|
},
|
|
"createdAt": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Timestamp when the message was created."
|
|
},
|
|
"parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"oneOf": [
|
|
{
|
|
"type": "object",
|
|
"description": "Text content part.",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"text"
|
|
]
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"text"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Reasoning content part with optional provider metadata.",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"reasoning"
|
|
]
|
|
},
|
|
"text": {
|
|
"type": "string"
|
|
},
|
|
"providerMetadata": {
|
|
"type": "object",
|
|
"description": "Optional provider-specific metadata."
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"text"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Source URL reference part.",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"source-url"
|
|
]
|
|
},
|
|
"sourceId": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"providerMetadata": {
|
|
"type": "object",
|
|
"description": "Optional provider-specific metadata."
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"sourceId",
|
|
"url"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "File attachment part.",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"file"
|
|
]
|
|
},
|
|
"mediaType": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"filename": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"mediaType",
|
|
"url"
|
|
]
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Marks the start of a new step.",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"step-start"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"type"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"description": "Array of message parts. Each part has a type and type-specific fields."
|
|
},
|
|
"metadata": {
|
|
"type": "object",
|
|
"description": "Optional metadata associated with the message."
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"role",
|
|
"parts"
|
|
]
|
|
},
|
|
"description": "Array of messages in the conversation. Use the handleSubmit function from the @ai-sdk/react package's useChat hook to manage messages and streaming responses."
|
|
},
|
|
"retrievalPageSize": {
|
|
"type": "number",
|
|
"default": 5,
|
|
"description": "Number of documentation search results to use for generating the response. Higher values provide more context but may increase response time. Recommended: 5."
|
|
},
|
|
"filter": {
|
|
"type": "object",
|
|
"default": null,
|
|
"properties": {
|
|
"version": {
|
|
"type": "string",
|
|
"description": "Optional version filter."
|
|
},
|
|
"language": {
|
|
"type": "string",
|
|
"description": "Optional language filter."
|
|
},
|
|
"groups": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"description": "Optional array of group identifiers to filter results."
|
|
}
|
|
},
|
|
"description": "Optional filter criteria for the search."
|
|
},
|
|
"context": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"code",
|
|
"textSelection"
|
|
],
|
|
"description": "The type of context being provided."
|
|
},
|
|
"value": {
|
|
"type": "string",
|
|
"description": "The code snippet or selected text content."
|
|
},
|
|
"path": {
|
|
"type": "string",
|
|
"description": "Optional path to the source file or page."
|
|
},
|
|
"elementId": {
|
|
"type": "string",
|
|
"description": "Optional identifier for the UI element containing the context."
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"value"
|
|
]
|
|
},
|
|
"description": "Optional array of contextual information to provide to the assistant."
|
|
},
|
|
"currentPath": {
|
|
"type": "string",
|
|
"description": "The path of the page the user is currently viewing. When provided, the assistant uses this context to provide more relevant answers. Maximum length: 200 characters."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Message generated successfully",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"description": "Streaming response compatible with AI SDK v5. Use the [useChat hook from @ai-sdk/react](https://ai-sdk.dev/docs/reference/ai-sdk-ui/use-chat#usechat) to handle the response stream."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/v1/page/{domain}": {
|
|
"post": {
|
|
"summary": "Get page content",
|
|
"description": "Retrieve the full text content of a specific documentation page by its path. Use this after a search to fetch the complete content of a matching page.\n\nAuthenticate with an assistant API key. Page content requests do not consume credits.",
|
|
"parameters": [
|
|
{
|
|
"name": "domain",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"description": "The domain identifier from your `domain.mintlify.site` URL. Can be found at the end of your dashboard URL. For example, `app.mintlify.com/organization/domain` has a domain identifier of `domain`."
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"required": [
|
|
"path"
|
|
],
|
|
"properties": {
|
|
"path": {
|
|
"type": "string",
|
|
"description": "The page slug or path to retrieve content for. This corresponds to the `path` field returned by the [Search documentation](/api/assistant/search) endpoint."
|
|
},
|
|
"groups": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"description": "Optional documentation groups the caller is authorized to access. When the deployment uses `auth` or `userAuth`, page content is returned only if the specified groups can view the page. If omitted or empty on a protected deployment, only public pages are returned."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Page content retrieved successfully",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"path": {
|
|
"type": "string",
|
|
"description": "The page path that was requested."
|
|
},
|
|
"content": {
|
|
"type": "string",
|
|
"description": "The full text content of the page."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Page not found or no search index available",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string",
|
|
"description": "Error message describing why the page could not be found."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/v1/search/{domain}": {
|
|
"post": {
|
|
"x-mint": {
|
|
"mcp": {
|
|
"enabled": true
|
|
}
|
|
},
|
|
"summary": "Search documentation",
|
|
"description": "Perform semantic and keyword searches across your documentation with configurable filtering and pagination.\n\nAuthenticate with an assistant API key. Search requests do not consume credits.",
|
|
"parameters": [
|
|
{
|
|
"name": "domain",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"description": "The domain identifier from your `domain.mintlify.site` URL. Can be found at the end of your dashboard URL. For example, `app.mintlify.com/organization/domain` has a domain identifier of `domain`."
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"required": [
|
|
"query"
|
|
],
|
|
"properties": {
|
|
"query": {
|
|
"type": "string",
|
|
"description": "The search query to execute against your documentation content."
|
|
},
|
|
"pageSize": {
|
|
"type": "integer",
|
|
"default": 10,
|
|
"minimum": 1,
|
|
"maximum": 50,
|
|
"description": "Number of search results to return. Must be between 1 and 50. Defaults to 10 if not specified."
|
|
},
|
|
"scoreThreshold": {
|
|
"type": "number",
|
|
"minimum": 0,
|
|
"maximum": 1,
|
|
"description": "Minimum relevance score for results. Only results with a score at or above this threshold are returned. Must be between 0 and 1."
|
|
},
|
|
"filter": {
|
|
"type": "object",
|
|
"description": "Optional filtering parameters to narrow search results.",
|
|
"properties": {
|
|
"version": {
|
|
"type": "string",
|
|
"description": "Filter results by documentation version."
|
|
},
|
|
"language": {
|
|
"type": "string",
|
|
"description": "Filter results by content language."
|
|
},
|
|
"tag": {
|
|
"type": "string",
|
|
"description": "Filter results by tag."
|
|
},
|
|
"groups": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"description": "Optional documentation groups the caller is authorized to access. When the deployment uses `auth` or `userAuth`, results are limited to pages the specified groups can view. If omitted or empty on a protected deployment, results are limited to public pages."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Search results",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"content": {
|
|
"type": "string",
|
|
"description": "The matching content from your documentation."
|
|
},
|
|
"path": {
|
|
"type": "string",
|
|
"description": "The path or URL to the source document."
|
|
},
|
|
"metadata": {
|
|
"type": "object",
|
|
"description": "Additional metadata about the search result."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"components": {
|
|
"securitySchemes": {
|
|
"bearerAuth": {
|
|
"type": "http",
|
|
"scheme": "bearer",
|
|
"description": "The Authorization header expects a Bearer token. Use an assistant API key. Generate one on the [API keys page](https://app.mintlify.com/settings/organization/api-keys) in your dashboard. In production, proxy requests through your backend rather than embedding the key in client-side code."
|
|
}
|
|
}
|
|
}
|
|
}
|