Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/jasper-knowledge-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no email required.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Jasper Knowledge API
description: Jasper API
version: '1.0'
contact: {}
servers:
- url: https://api.jasper.ai
tags:
- name: Knowledge
description: ''
paths:
/v1/knowledge:
post:
description: Create a knowledge item for use in personalizing AI outputs
operationId: uploadKnowledgeDocument
parameters: []
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/KnowledgeInputDto'
responses:
'201':
description: Created. The new knowledge item was added successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/CreateOrUpdateKnowledgeResponseDto'
'400':
description: Bad request. May be missing required fields or may have badly formatted inputs or options.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge400Error'
'500':
description: Internal server error. Unable to create knowledge.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge500Error'
security:
- X-API-Key: []
- oauth2:
- user
summary: Create a knowledge item
tags:
- Knowledge
get:
description: Returns a list of knowledge items available to your workspace, sorted from most recently created
operationId: getKnowledgeDocuments
parameters:
- name: q
required: false
in: query
description: "You can use the `q` parameter to run a query parameter search. Query parameter search supports the following fields: `name`, `tags`, `metadata`, and `settings`.\n\nSupported operators: `AND` \n\nThe `AND` operator can be used to combine multiple search criteria. \n\n`NOTE`: The `AND` operator supports a maximum of `10` operators \n\nAvailable field examples: \n\n`name: value` \n\n`tags: value` \n\n`metadata[key]:value` \n\n`settings[appVisibility]:visible` \n\n`metadata[key1]:value1 AND metadata[key2]:value2` \n\n"
schema:
example: metadata[key]:value
type: string
- name: page
required: false
in: query
description: The desired page number of Knowledge items
schema:
default: 1
example: 1
type: number
- name: size
required: false
in: query
description: The number of Knowledge items per page to return in the response
schema:
default: 10
example: 10
type: number
responses:
'200':
description: Retrieve knowledge items
content:
application/json:
schema:
$ref: '#/components/schemas/GetAllKnowledgeResponseDto'
'400':
description: Bad request. May be missing required fields or may have badly formatted inputs or options.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge400Error'
'500':
description: Internal server error. Unable to get knowledge items
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge500Error'
security:
- X-API-Key: []
- oauth2:
- user
summary: Retrieve knowledge items
tags:
- Knowledge
/v1/knowledge/{knowledgeId}:
get:
description: Retrieve a knowledge item by ID
operationId: getKnowledgeDocument
parameters:
- name: knowledgeId
required: true
in: path
description: The knowledge items unique ID
schema:
example: kno_2ee766eaa4ef48e59da1d9602bfecf2d
type: string
responses:
'200':
description: Retrieve a knowledge item by ID
content:
application/json:
schema:
$ref: '#/components/schemas/GetKnowledgeResponseDto'
'400':
description: Bad request. May be missing required fields or may have badly formatted inputs or options.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge400Error'
'404':
description: Not found. May have an incorrect URL path or Knowledge ID.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge400Error'
'500':
description: Internal server error. Unable to get Knowledge by ID.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge500Error'
security:
- X-API-Key: []
- oauth2:
- user
summary: Retrieve knowledge item by ID
tags:
- Knowledge
patch:
description: Update an existing knowledge item by ID
operationId: updateKnowledgeDocument
parameters:
- name: knowledgeId
required: true
in: path
description: The Knowledge's unique ID
schema:
example: kno_2ee766eaa4ef48e59da1d9602bfecf2d
type: string
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/KnowledgeUpdateInput'
responses:
'200':
description: Update an existing Knowledge
content:
application/json:
schema:
$ref: '#/components/schemas/CreateOrUpdateKnowledgeResponseDto'
'400':
description: Bad request. May be missing required fields or may have badly formatted inputs or options.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge400Error'
'404':
description: Not found. May have an incorrect URL path or Knowledge ID.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge400Error'
'500':
description: Internal server error. Unable to update Knowledge by ID.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge500Error'
security:
- X-API-Key: []
- oauth2:
- user
summary: Update a knowledge item by ID
tags:
- Knowledge
delete:
description: Delete an existing knowledge item by ID
operationId: deleteKnowledgeDocument
parameters:
- name: knowledgeId
required: true
in: path
description: The Knowledge's unique ID
schema:
example: kno_2ee766eaa4ef48e59da1d9602bfecf2d
type: string
responses:
'200':
description: Knowledge item deleted successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteKnowledgeResponseDto'
'404':
description: Not found. May have an incorrect URL path or Knowledge ID.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge400Error'
'500':
description: Internal server error. Unable to get specified Knowledge.
content:
application/json:
schema:
$ref: '#/components/schemas/Knowledge500Error'
security:
- X-API-Key: []
- oauth2:
- user
summary: Delete knowledge item by ID
tags:
- Knowledge
/v1/knowledge/search:
post:
description: Searches through your Knowledge Base and returns items most relevant to the provided query. This endpoint is designed to support natural language search, allowing you to find Knowledge based on meaning and context—not just exact keyword matches.
operationId: searchKnowledge
parameters: []
requestBody:
required: true
description: Search knowledge request body
content:
application/json:
schema:
$ref: '#/components/schemas/SearchKnowledgeRequestDto'
responses:
'201':
description: Successfully retrieved list of Knowledge by relevance to the query.
content:
application/json:
schema:
$ref: '#/components/schemas/SearchKnowledgeResponseDto'
'400':
description: Bad request. May be missing required inputs or may have badly formatted inputs or options.
'500':
description: Internal server error. Unable to search Knowledge.
security:
- X-API-Key: []
- oauth2:
- user
summary: Search Knowledge
tags:
- Knowledge
components:
schemas:
KnowledgePaginationResponseDto:
type: object
properties:
totalRecords:
type: number
description: The total number of Knowledge items in the response
example: 1
page:
type: number
description: The current page number of Knowledge items in the response
example: 1
default: 1
size:
type: number
description: The number of Knowledge items per page in the response
example: 10
default: 10
next:
type: object
description: The URL to the next page of Knowledge items in the response
example: null
prev:
type: object
description: The URL to the previous page of Knowledge items in the response
example: null
required:
- totalRecords
- page
- size
- next
- prev
SearchKnowledgeResponseDto:
type: object
properties:
requestId:
type: string
example: bce766ea-a4ef-48e5-9da1d9602bfecf2d
resource:
type: string
example: knowledge
data:
description: Array of Knowledge items with relevant chunks, ordered by relevance
type: array
items:
$ref: '#/components/schemas/ScoredKnowledgeDto'
Settings:
type: object
properties:
appVisibility:
type: string
description: Whether the Knowledge is available in the Jasper app. Provides a way to omit Knowledge items created from the API, from being available in the Jasper app experience. One of "visible" or "hidden". Defaults to "visible".
enum:
- visible
- hidden
default: visible
autoSummary:
type: boolean
description: Specify if the summary should be created manually or automatically.
default: true
KnowledgeInputDto:
type: object
properties:
name:
type: string
description: The friendly name of the Knowledge item. Up to 100 characters.
example: Product Release Monthly Webinar - May 2023
file:
type: string
format: binary
description: The file containing content you want to create a Knowledge item from. Supported file types are .txt, .pdf, .doc, .docx, .pptx, .mp3, .wav, .m4a, .aac, .mp4, .mov, .csv, .xlsx, .xls, .png, .jpeg, .jpg, .md, up to 300MB (or 2GB for video files).
example: jasperbrandvoice.pdf
metadata:
type: string
description: Set of key-value pairs for storing additional structured information.
format: json
example: '{"NewKey": "New Value", "AnotherKey": "Another Value"}'
settings:
type: string
description: Additional configuration options.
format: json
default: '{"appVisibility": "visible", "autoSummary": true}'
example: '{"appVisibility": "visible", "autoSummary": true}'
summary:
type: string
description: The manually created Knowledge item summary.
example: This Knowledge item outlines guidelines for using the Jasper logo
tags:
description: The tags associated with the Knowledge item. Tags are searchable via the Jasper app.
example:
- tag1
- tag2
type: array
items:
type: string
required:
- name
- file
Knowledge500Error:
type: object
properties:
requestId:
type: string
example: bce766ea-a4ef-48e5-9da1-d9602bfecf2d
resource:
type: string
example: knowledge
errors:
example: Couldn't get the Knowledge item document
type: array
items:
type: string
KnowledgeResponseDto:
type: object
properties:
name:
type: string
description: The friendly name of the Knowledge item. Up to 100 characters.
example: Product Release Monthly Webinar - May 2023
file:
type: string
description: The filename or download URL of the Knowledge item source file. When available, this will be a signed URL for downloading the file.
example: jasperbrandvoice.pdf
metadata:
type: object
description: Set of key-value pairs that you can attach to a Knowledge. This can be useful for storing any additional information you wish, in a structured format. You can specify up to 10 keys, with key names up to 40 characters long and values up to 500 characters long.
example:
key1: value1
key2: value2
settings:
description: Additional configuration options.
allOf:
- $ref: '#/components/schemas/Settings'
id:
type: string
example: kno_2ee766eaa4ef48e59da1d9602bfecf2d
createdAt:
type: string
example: '2023-09-21T15:38:00.474Z'
updatedAt:
type: string
example: '2023-09-21T15:38:00.474Z'
processingState:
type: string
example: InProgress
tags:
example:
- tag1
- tag2
type: array
items:
type: string
appUrl:
type: string
description: The client URL to view the Knowledge item in the Jasper app. Empty when no link can be resolved.
example: https://app.jasper.ai/jasper-iq/knowledge-base/kno_2ee766eaa4ef48e59da1d9602bfecf2d
required:
- name
- file
GetAllKnowledgeResponseDto:
type: object
properties:
requestId:
type: string
example: bce766ea-a4ef-48e5-9da1-d9602bfecf2d
resource:
type: string
example: knowledge
data:
type: array
items:
$ref: '#/components/schemas/KnowledgeResponseDto'
pagination:
$ref: '#/components/schemas/KnowledgePaginationResponseDto'
KnowledgeUpdateInput:
type: object
properties:
name:
type: string
description: The friendly name of the Knowledge item. Up to 100 characters.
example: Product Release Monthly Webinar - May 2023
file:
type: string
format: binary
description: The file containing content you want to create a Knowledge item from. Supported file types are .txt, .pdf, .doc, .docx, .pptx, .mp3, .wav, .m4a, .aac, .mp4, .mov, .csv, .xlsx, .xls, .png, .jpeg, .jpg, .md, up to 300MB (or 2GB for video files).
example: jasperbrandvoice.pdf
metadata:
type: string
description: Set of key-value pairs for storing additional structured information.
format: json
example: '{"NewKey": "New Value", "AnotherKey": "Another Value"}'
settings:
type: string
description: Additional configuration options.
format: json
default: '{"appVisibility": "visible", "autoSummary": true}'
example: '{"appVisibility": "visible", "autoSummary": true}'
summary:
type: string
description: The manually created Knowledge item summary.
example: This Knowledge item outlines guidelines for using the Jasper logo
tags:
description: The tags associated with the Knowledge item. Tags are searchable via the Jasper app.
example:
- tag1
- tag2
type: array
items:
type: string
ScoredKnowledgeDto:
type: object
properties:
id:
type: string
description: The unique identifier of the Knowledge item
example: kno_2ee766eaa4ef48e59da1d9602bfecf2d
name:
type: string
description: The name of the Knowledge item
example: Brand Guidelines Document
summary:
type: string
description: The summary of the Knowledge item
example: Comprehensive brand guidelines including logo usage, color palette, and typography standards.
tags:
description: Tags associated with the Knowledge item
example:
- branding
- guidelines
- logo
type: array
items:
type: string
appUrl:
type: string
description: The client URL to view the Knowledge item in the Jasper app. Empty when no link can be resolved.
example: https://app.jasper.ai/jasper-iq/knowledge-base/kno_2ee766eaa4ef48e59da1d9602bfecf2d
relevantChunks:
description: Array of relevant content chunks from the Knowledge item, ordered by relevance score
type: array
items:
$ref: '#/components/schemas/RelevantChunkDto'
required:
- id
- name
- summary
- tags
- appUrl
- relevantChunks
DeleteKnowledgeResponseDto:
type: object
properties:
requestId:
type: string
example: bce766ea-a4ef-48e5-9da1-d9602bfecf2d
resource:
type: string
example: knowledge
deleted:
type: boolean
example: true
required:
- deleted
GetKnowledgeResponseDto:
type: object
properties:
requestId:
type: string
example: bce766ea-a4ef-48e5-9da1-d9602bfecf2d
resource:
type: string
example: knowledge
data:
$ref: '#/components/schemas/KnowledgeResponseDto'
Knowledge400Error:
type: object
properties:
requestId:
type: string
example: bce766ea-a4ef-48e5-9da1-d9602bfecf2d
resource:
type: string
example: knowledge
errors:
example:
- error message
type: array
items:
type: array
SearchKnowledgeRequestDto:
type: object
properties:
query:
type: string
description: The search query to find relevant Knowledge items. Supports natural language search.
example: What are my brand guidelines for social media posts?
required:
- query
CreateOrUpdateKnowledgeResponseDto:
type: object
properties:
requestId:
type: string
example: bce766ea-a4ef-48e5-9da1-d9602bfecf2d
resource:
type: string
example: knowledge
data:
$ref: '#/components/schemas/KnowledgeResponseDto'
RelevantChunkDto:
type: object
properties:
content:
type: string
description: The content of the relevant chunk from the Knowledge item
example: Brand guidelines specify that our logo should always maintain a minimum clear space equivalent to the height of the "J" in our wordmark.
score:
type: number
description: The relevance score of this chunk (0-1, where 1 is most relevant)
example: 0.85
required:
- content
- score
securitySchemes:
X-API-Key:
type: apiKey
in: header
name: X-API-Key
description: Workspace authentication using API key tokens in the X-API-Key header.
oauth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://api.jasper.ai/oauth2/authorize
tokenUrl: https://api.jasper.ai/oauth2/token
refreshUrl: https://api.jasper.ai/oauth2/token
scopes:
user:read: Read user information
user: Read and write user information
description: User-level authentication using OAuth bearer tokens in the Authorization header.
x-readme:
metrics-enabled: false