Jasper Voices API
The Voices API from Jasper — 2 operation(s) for voices.
The Voices API from Jasper — 2 operation(s) for voices.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/jasper-da-com:jasper-da-com-voices-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Jasper Voices API
description: Jasper API
version: '1.0'
contact: {}
servers:
- url: https://api.jasper.ai
tags:
- name: Voices
description: ''
paths:
/v1/tones:
post:
description: Create a voice for use in personalizing AI outputs
operationId: createTone
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateToneDto'
responses:
'201':
description: Created. The new voice was added successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/GetToneResponseDto'
'400':
description: Bad request. May be missing required fields or may have badly formatted inputs or options.
'500':
description: Internal server error. Unable to create the voice.
security:
- X-API-Key: []
- oauth2:
- user
summary: Create a voice
tags:
- Voices
get:
description: Returns a list of voices available to your workspace, sorted from most recently created
operationId: getAllTones
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`, `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`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 voices
schema:
default: 1
type: number
- name: size
required: false
in: query
description: The number of voices per page to return in the response
schema:
default: 10
type: number
responses:
'200':
description: Retrieve voices
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/GetAllTonesResponseDto'
'500':
description: Internal server error. Unable to get voices
security:
- X-API-Key: []
- oauth2:
- user
summary: Retrieve all voices
tags:
- Voices
/v1/tones/{toneId}:
get:
description: Retrieve a voice by ID
operationId: getTone
parameters:
- name: toneId
required: true
in: path
description: The voice's unique ID
schema:
example: ton_2ee766eaa4ef48e59da1d9602bfecf2d
type: string
responses:
'200':
description: Retrieve voice by ID
content:
application/json:
schema:
$ref: '#/components/schemas/GetToneResponseDto'
'404':
description: Not found. May have an incorrect URL path or voice ID.
'500':
description: Internal server error. Unable to get specified voice ID.
security:
- X-API-Key: []
- oauth2:
- user
summary: Retrieve voice by ID
tags:
- Voices
patch:
description: Update an existing voice by ID
operationId: updateTone
parameters:
- name: toneId
required: true
in: path
description: The voice's unique ID
schema:
example: ton_2ee766eaa4ef48e59da1d9602bfecf2d
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateToneDto'
responses:
'200':
description: Update an existing voice
content:
application/json:
schema:
$ref: '#/components/schemas/GetToneResponseDto'
'404':
description: Not found. May have an incorrect URL path or voice ID.
'500':
description: Internal server error. Unable to update specified voice.
security:
- X-API-Key: []
- oauth2:
- user
summary: Update voice by ID
tags:
- Voices
delete:
description: Delete an existing voice by ID
operationId: deleteTone
parameters:
- name: toneId
required: true
in: path
description: The voice's unique ID
schema:
example: ton_2ee766eaa4ef48e59da1d9602bfecf2d
type: string
responses:
'200':
description: Voice deleted successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteToneResponseDto'
'404':
description: Not found. May have an incorrect URL path or voice ID.
'500':
description: Internal server error. Unable to get specified voice.
security:
- X-API-Key: []
- oauth2:
- user
summary: Delete voice by ID
tags:
- Voices
components:
schemas:
GetAllTonesResponseDto:
type: object
properties:
requestId:
type: string
example: bce766ea-a4ef-48e5-9da1-d9602bfecf2d
resource:
type: string
example: tone
data:
$ref: '#/components/schemas/ToneDto'
pagination:
$ref: '#/components/schemas/TonePaginationDto'
GetToneResponseDto:
type: object
properties:
requestId:
type: string
example: bce766ea-a4ef-48e5-9da1-d9602bfecf2d
resource:
type: string
example: tone
data:
$ref: '#/components/schemas/ToneDto'
ToneDto:
type: object
properties:
name:
type: string
description: The friendly name of the voice.
example: It's-a me, Mario!
value:
type: string
description: The voice's description
example: This voice is energetic, playful, and humorous, characterized by exclamations, wordplay, and a confident, charismatic character, with techniques including catchphrases, direct address, and hyperbole to engage and entertain the audience.
metadata:
type: object
description: An optional set of key-value pairs to attach any data you wish to the voice, 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.
settings:
description: Additional configuration options.
allOf:
- $ref: '#/components/schemas/ToneSettingsDto'
id:
type: string
example: ton_2ee766eaa4ef48e59da1d9602bfecf2d
createdAt:
type: string
example: '2023-09-21T15:38:00.474Z'
updatedAt:
type: string
example: '2023-09-21T15:38:00.474Z'
appUrl:
type: string
description: The client URL to view the voice in the Jasper app. Empty when no link can be resolved.
example: https://app.jasper.ai/jasper-iq/brand-voice/ton_2ee766eaa4ef48e59da1d9602bfecf2d
required:
- name
- value
TonePaginationDto:
type: object
properties:
totalRecords:
type: number
description: Total number of records
page:
type: number
description: Current page
pageSize:
type: number
description: Page size
next:
type: object
description: URL for requesting the next page
prev:
type: object
description: URL for requesting the previous page
DeleteToneResponseDto:
type: object
properties:
requestId:
type: string
example: bce766ea-a4ef-48e5-9da1-d9602bfecf2d
resource:
type: string
example: tone
deleted:
type: boolean
required:
- deleted
ToneSettingsDto:
type: object
properties:
appVisibility:
type: string
description: Whether the brand is available in the Jasper app. Provides a way to omit voices created from the API, from being available in the Jasper app experience. One of "visible" or "hidden". Defaults to "visible".
default: visible
example: visible
enum:
- visible
- hidden
CreateToneDto:
type: object
properties:
name:
type: string
description: The friendly name of the voice.
example: It's-a me, Mario!
value:
type: string
description: The voice's description
example: This voice is energetic, playful, and humorous, characterized by exclamations, wordplay, and a confident, charismatic character, with techniques including catchphrases, direct address, and hyperbole to engage and entertain the audience.
metadata:
type: object
description: An optional set of key-value pairs to attach any data you wish to the voice, 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.
settings:
description: Additional configuration options.
allOf:
- $ref: '#/components/schemas/ToneSettingsDto'
required:
- name
- value
UpdateToneDto:
type: object
properties:
name:
type: string
description: The friendly name of the voice.
example: It's-a me, Mario!
value:
type: string
description: The voices's description.
example: This voice is energetic, playful, and humorous, characterized by exclamations, wordplay, and a confident, charismatic character, with techniques including catchphrases, direct address, and hyperbole to engage and entertain the audience.
metadata:
type: object
description: An optional set of key-value pairs to attach any data you wish to the voice, 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.
settings:
description: Additional configuration options.
allOf:
- $ref: '#/components/schemas/ToneSettingsDto'
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-provenance:
method: searched
source: https://developers.jasper.ai/reference
harvested: '2026-10-23'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://developers.jasper.ai/reference/cleanup.md
- https://developers.jasper.ai/reference/command-2.md
- https://developers.jasper.ai/reference/completetemplate-1.md
- https://developers.jasper.ai/reference/createanalysis.md
- https://developers.jasper.ai/reference/createattachment.md
- https://developers.jasper.ai/reference/createcontextsource.md
- https://developers.jasper.ai/reference/createdocument.md
- https://developers.jasper.ai/reference/createproduct.md
- https://developers.jasper.ai/reference/createproject.md
- https://developers.jasper.ai/reference/createtone.md
- https://developers.jasper.ai/reference/decompose-1.md
- https://developers.jasper.ai/reference/deleteanalysis.md
- https://developers.jasper.ai/reference/deletedocumentbyid.md
- https://developers.jasper.ai/reference/deleteknowledgedocument.md
- https://developers.jasper.ai/reference/deleteproduct.md
- https://developers.jasper.ai/reference/deleteproject.md
- https://developers.jasper.ai/reference/deletetone.md
- https://developers.jasper.ai/reference/getallaudiences.md
- https://developers.jasper.ai/reference/getalldocuments.md
- https://developers.jasper.ai/reference/getallproducts.md
- https://developers.jasper.ai/reference/getalltemplates-1.md
- https://developers.jasper.ai/reference/getalltones.md
- https://developers.jasper.ai/reference/getallusers.md
- https://developers.jasper.ai/reference/getanalysis.md
- https://developers.jasper.ai/reference/getaudiencebyid.md
- https://developers.jasper.ai/reference/getcontextsourcebyid.md
- https://developers.jasper.ai/reference/getdocumentbyid.md
- https://developers.jasper.ai/reference/getknowledgedocument.md
- https://developers.jasper.ai/reference/getknowledgedocuments.md
- https://developers.jasper.ai/reference/getproductattributes.md
- https://developers.jasper.ai/reference/getproductbyid.md
- https://developers.jasper.ai/reference/getprojectbyid.md
- https://developers.jasper.ai/reference/getprojects.md
- https://developers.jasper.ai/reference/getrun.md
- https://developers.jasper.ai/reference/getrunclaims.md
- https://developers.jasper.ai/reference/getrunrecommendations.md
- https://developers.jasper.ai/reference/getstyle.md
- https://developers.jasper.ai/reference/getstylebyid.md
- https://developers.jasper.ai/reference/gettaskbyid.md
- https://developers.jasper.ai/reference/gettemplate-1.md
- https://developers.jasper.ai/reference/gettone.md
- https://developers.jasper.ai/reference/gettrends.md
- https://developers.jasper.ai/reference/getuser.md
- https://developers.jasper.ai/reference/listanalyses.md
- https://developers.jasper.ai/reference/listanalysissummaries.md
- https://developers.jasper.ai/reference/listruns.md
- https://developers.jasper.ai/reference/listtasks.md
- https://developers.jasper.ai/reference/packshotcompositing.md
- https://developers.jasper.ai/reference/removebackground.md
- https://developers.jasper.ai/reference/removetext.md
- https://developers.jasper.ai/reference/renderimagetemplate.md
- https://developers.jasper.ai/reference/replacebackground.md
- https://developers.jasper.ai/reference/runtask.md
- https://developers.jasper.ai/reference/runtaskstream.md
- https://developers.jasper.ai/reference/searchknowledge.md
- https://developers.jasper.ai/reference/uncrop.md
- https://developers.jasper.ai/reference/updateanalysis.md
- https://developers.jasper.ai/reference/updatedocument.md
- https://developers.jasper.ai/reference/updateknowledgedocument.md
- https://developers.jasper.ai/reference/updateproduct.md
- https://developers.jasper.ai/reference/updateproject.md
- https://developers.jasper.ai/reference/updatetone.md
- https://developers.jasper.ai/reference/uploadknowledgedocument.md
- https://developers.jasper.ai/reference/upscale.md
- https://developers.jasper.ai/reference/usage-1.md
merge:
pages: 65
deduped: 240
conflicts_kept_first: 0