Every API here is available over the APIs.io API and to AI agents over MCP.
{
"info": {
"title": "assistants",
"version": ""
},
"paths": {
"/api/v1/assistants": {
"get": {
"tags": [
"assistants"
],
"summary": "List assistants",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/assistantsResult"
}
}
},
"description": "Successful operation."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The user does not have privileges to perform the requested action."
}
},
"parameters": [
{
"in": "query",
"name": "limit",
"schema": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1
},
"description": "The number of assistants to get."
},
{
"in": "query",
"name": "next",
"schema": {
"type": "string"
},
"description": "Optional parameter to request the next page."
},
{
"in": "query",
"name": "prev",
"schema": {
"type": "string"
},
"description": "Optional parameter to request the previous page."
},
{
"in": "query",
"name": "sort",
"schema": {
"enum": [
"NAME",
"-NAME",
"DESCRIPTION",
"-DESCRIPTION",
"CREATED",
"-CREATED",
"UPDATED",
"-UPDATED"
],
"type": "string"
},
"description": "Optional resource field name to sort on, case insensitive, e.g. `name`. Can be prefixed with `-` to set descending order; defaults to ascending."
},
{
"in": "query",
"name": "spaceId",
"schema": {
"type": "string"
},
"description": "Optional parameter to filter assistants by space ID."
},
{
"in": "query",
"name": "countTotal",
"schema": {
"type": "boolean",
"default": false
},
"description": "Optional parameter to request total count for query.",
"x-qlik-deprecated": true
}
],
"description": "Retrieves the list of assistants. The result can be filtered, sorted, and paginated.",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "1",
"limit": 1000
}
},
"post": {
"tags": [
"assistants"
],
"summary": "Create an assistant",
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Assistant"
}
}
},
"headers": {
"Etag": {
"schema": {
"type": "string"
},
"description": "Assistant version."
},
"Last-Modified": {
"schema": {
"type": "string"
},
"description": "Last modified date and time of the assistant."
}
},
"description": "Successfully created an assistant."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The user does not have privileges to perform the requested action."
}
},
"description": "Creates a new assistant.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/createAssistant"
}
},
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/createAssistantWithAvatar"
}
}
}
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/v1/assistants/{assistantId}/actions/search": {
"post": {
"tags": [
"search"
],
"summary": "Perform search on an assistant",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/searchResponse"
}
}
},
"description": "Chunks retrieved successfully."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponse"
}
}
},
"description": "The request is in incorrect format"
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponse"
}
}
},
"description": "The user does not have privileges to perform the requested action."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponse"
}
}
},
"description": "Assistant is not found."
},
"405": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponse"
}
}
},
"description": "Method is not allowed."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponse"
}
}
},
"description": "Prompt processing error."
}
},
"parameters": [
{
"in": "path",
"name": "assistantId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID for the Assistant of interest"
}
],
"description": "Perform search with either `SIMPLE` or `FULL` mode. SIMPLE does semantic search while FULL does semantic search, reranking and hybrid search. Use topN to control number of chunks in response, max limit is 50. Default to 5.\n",
"operationId": "searchAssistants",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/searchRequest"
}
}
}
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/v1/assistants/{assistantId}/feedback": {
"get": {
"tags": [
"assistants"
],
"summary": "Get feedback",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/feedbackSummary"
}
}
},
"description": "Successfully retrieved the feedback summary for the assistant."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The operation failed due to insufficient permissions."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The assistant was not found."
}
},
"parameters": [
{
"in": "path",
"name": "assistantId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the assistant from which to retrieve feedback summary."
}
],
"description": "Retrieves feedback summary for the assistant.",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "1",
"limit": 1000
}
}
},
"/api/v1/assistants/{assistantId}/sources/plaintexts": {
"post": {
"tags": [
"assistants"
],
"summary": "Bulk search source chunks",
"responses": {
"202": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/sourcesPlaintext"
}
}
},
"description": "Successfully retrieved plaintext of the chunks."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The user does not have privileges to perform the requested action."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The resource was not found."
}
},
"parameters": [
{
"in": "path",
"name": "assistantId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the assistant in which to search for source chunks."
}
],
"description": "Perform a bulk search for the plaintext of source chunks for the assistant.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ChunksRefs"
}
}
}
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/v1/assistants/{assistantId}/starters": {
"get": {
"tags": [
"starters"
],
"summary": "List starters",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/startersResult"
}
}
},
"description": "Successfully retrieved the assistant's starters."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The operation failed due to insufficient permissions."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The assistant was not found."
}
},
"parameters": [
{
"in": "path",
"name": "assistantId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the assistant from which to retrieve starters."
},
{
"in": "query",
"name": "limit",
"schema": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1
},
"description": "The number of starters to get."
},
{
"in": "query",
"name": "next",
"schema": {
"type": "string"
},
"description": "Optional parameter to request the next page."
},
{
"in": "query",
"name": "prev",
"schema": {
"type": "string"
},
"description": "Optional parameter to request the previous page."
},
{
"in": "query",
"name": "sort",
"schema": {
"enum": [
"QUESTION",
"-QUESTION",
"CREATED",
"-CREATED",
"UPDATED",
"-UPDATED"
],
"type": "string"
},
"description": "Optional resource field name to sort on, case insensitive, e.g. `name`. Can be prefixed with `-` to set descending order; defaults to ascending."
}
],
"description": "Retrieves the list of starters for the assistant.",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "1",
"limit": 1000
}
},
"post": {
"tags": [
"starters"
],
"summary": "Create a starter",
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Starter"
}
}
},
"headers": {
"Etag": {
"schema": {
"type": "string"
},
"description": "Assistant starter version."
},
"Last-Modified": {
"schema": {
"type": "string"
},
"description": "Last modified date and time of the assistant starter."
}
},
"description": "Successfully created a new assistant starter."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format or starter limit exceeded."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The user does not have privileges to perform the requested action."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The assistant was not found."
}
},
"parameters": [
{
"in": "path",
"name": "assistantId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the assistant in which to create the starter."
}
],
"description": "Creates a new starter for the assistant.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/createStarter"
}
}
}
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/v1/assistants/{assistantId}/starters/{starterId}": {
"get": {
"tags": [
"starters"
],
"summary": "Get a starter",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Starter"
}
}
},
"description": "Successfully retrieved the starter."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The operation failed due to insufficient permissions."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The starter was not found."
}
},
"parameters": [
{
"in": "path",
"name": "assistantId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the assistant containing the requested starter."
},
{
"in": "path",
"name": "starterId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the starter to retrieve."
}
],
"description": "Retrieves the specified starter.",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "1",
"limit": 1000
}
},
"put": {
"tags": [
"starters"
],
"summary": "Update a starter",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Starter"
}
}
},
"headers": {
"Etag": {
"schema": {
"type": "string"
},
"description": "Assistant version."
},
"Last-Modified": {
"schema": {
"type": "string"
},
"description": "Last modified date and time of the assistant."
}
},
"description": "Successfully updated the starter."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The operation failed due to insufficient permissions."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The record was not found."
}
},
"parameters": [
{
"in": "path",
"name": "assistantId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the assistant containing the requested starter."
},
{
"in": "path",
"name": "starterId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the starter to retrieve."
}
],
"description": "Updates the specified starter.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Starter"
}
}
}
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
},
"delete": {
"tags": [
"starters"
],
"summary": "Delete a starter",
"responses": {
"204": {
"description": "Successful operation."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The operation failed due to insufficient permissions."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The assistant was not found."
}
},
"parameters": [
{
"in": "path",
"name": "assistantId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the assistant containing the requested starter."
},
{
"in": "path",
"name": "starterId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the starter to delete."
}
],
"description": "Deletes the starter and all of its resources.",
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
}
},
"/api/v1/assistants/{assistantId}/starters/{starterId}/followups/{followupId}": {
"put": {
"tags": [
"starters"
],
"summary": "Update a Followup",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Starter"
}
}
},
"headers": {
"Etag": {
"schema": {
"type": "string"
},
"description": "Assistant version."
},
"Last-Modified": {
"schema": {
"type": "string"
},
"description": "Last modified date and time of the Followup."
}
},
"description": "Successfully updated the Followup."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The operation failed due to insufficient permissions."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The record was not found."
}
},
"parameters": [
{
"in": "path",
"name": "assistantId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the assistant containing the requested Followup."
},
{
"in": "path",
"name": "followupId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the Followup to update."
},
{
"in": "path",
"name": "starterId",
"schema": {
"type": "string",
"format": "uuid",
"example": "507f191e810c19729de860ea"
},
"required": true,
"description": "The ID of the starter containing the requested Followup."
}
],
"description": "Updates the specified Followup.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/followup"
}
}
}
},
"x-qlik-visibility": "public",
"x-qlik-stability": "stable",
"x-qlik-deprecated": false,
"x-qlik-tier": {
"tier": "2",
"limit": 100
}
},
"delete": {
"tags": [
"starters"
],
"summary": "Delete a Followup",
"responses": {
"204": {
"description": "Successful operation."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The request is in incorrect format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The operation failed due to insufficient permissions."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/errorResponseCopy",
"x-qlik-merge-conflict": true
}
}
},
"description": "The Followup was not found."
# --- truncated at 32 KB (133 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/qliksense/refs/heads/main/openapi/qliksense-assistants.json