volai-cz Voices API
The Voices API from volai-cz — 1 operation(s) for voices.
The Voices API from volai-cz — 1 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/volai-cz:volai-cz-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: volai REST Voices API
version: 1.49.0
description: 'Czech Twilio for vibecoders: numbers, calls, SMS and an AI voice agent through one REST API. All requests and responses are in English, regardless of the account''s language.'
servers:
- url: https://volai.cz
security:
- bearer: []
tags:
- name: Voices
paths:
/v1/voices:
get:
operationId: get_voices
summary: List available voices
description: The catalog of voices available for an agent's voiceId.
parameters:
- name: provider
in: query
required: false
schema:
type: string
enum:
- elevenlabs
- engine
description: Restrict the list to voices usable by this call provider.
responses:
'200':
description: Voices
headers:
X-Request-Id:
description: Unique request ID for this response, in the form req_ followed by 16 hexadecimal characters.
schema:
type: string
pattern: ^req_[0-9a-f]{16}$
X-Volai-Version:
description: Current public interface version. If it changed, read GET /v1/changelog.
schema:
type: string
RateLimit-Limit:
description: Maximum authenticated requests in the current rate-limit window.
schema:
type: integer
RateLimit-Remaining:
description: Authenticated requests remaining in the current rate-limit window.
schema:
type: integer
RateLimit-Reset:
description: Seconds until the authenticated rate-limit window resets.
schema:
type: integer
content:
application/json:
schema:
type: object
properties:
voices:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
gender:
type: string
enum:
- female
- male
provider:
type: string
enum:
- elevenlabs
- cartesia
- google
tone:
type: string
description:
type: string
languages:
type: array
items:
type: string
enum:
- cs
- sk
- en
- de
- pl
preview:
type: object
properties:
studio:
type: string
phone:
type: string
required:
- studio
- phone
default:
type: boolean
required:
- id
- name
- gender
- provider
- tone
- description
- languages
- preview
- default
required:
- voices
'400':
description: 'Error codes: validation (request).'
headers:
X-Request-Id:
description: Unique request ID for this response, in the form req_ followed by 16 hexadecimal characters.
schema:
type: string
pattern: ^req_[0-9a-f]{16}$
X-Volai-Version:
description: Current public interface version. If it changed, read GET /v1/changelog.
schema:
type: string
RateLimit-Limit:
description: Maximum authenticated requests in the current rate-limit window.
schema:
type: integer
RateLimit-Remaining:
description: Authenticated requests remaining in the current rate-limit window.
schema:
type: integer
RateLimit-Reset:
description: Seconds until the authenticated rate-limit window resets.
schema:
type: integer
content:
application/json:
schema:
type: object
properties:
error:
type: object
properties:
code:
type: string
cause:
type: string
enum:
- request
- account
- busy
- service
message:
type: string
action:
type: string
currentRevision:
type: number
details:
type: object
properties:
reason:
type: string
const: task_changed_during_registration
providerActionStarted:
type: boolean
const: false
operationId:
type: string
required:
- reason
- providerActionStarted
- operationId
confirmUrl:
description: 'Only on subscription_confirmation_required (409): the portal page where a person signed in to the account confirms the change. Valid for 24 hours and usable once.'
type: string
requestId:
type: string
docsUrl:
type: string
required:
- code
- cause
- message
- action
- requestId
- docsUrl
required:
- error
'401':
description: 'Error codes: unauthorized (request).'
headers:
X-Request-Id:
description: Unique request ID for this response, in the form req_ followed by 16 hexadecimal characters.
schema:
type: string
pattern: ^req_[0-9a-f]{16}$
X-Volai-Version:
description: Current public interface version. If it changed, read GET /v1/changelog.
schema:
type: string
WWW-Authenticate:
description: Bearer authentication challenge for an invalid or missing API key.
schema:
type: string
example: Bearer realm="volai", error="invalid_token"
content:
application/json:
schema:
type: object
properties:
error:
type: object
properties:
code:
type: string
cause:
type: string
enum:
- request
- account
- busy
- service
message:
type: string
action:
type: string
currentRevision:
type: number
details:
type: object
properties:
reason:
type: string
const: task_changed_during_registration
providerActionStarted:
type: boolean
const: false
operationId:
type: string
required:
- reason
- providerActionStarted
- operationId
confirmUrl:
description: 'Only on subscription_confirmation_required (409): the portal page where a person signed in to the account confirms the change. Valid for 24 hours and usable once.'
type: string
requestId:
type: string
docsUrl:
type: string
required:
- code
- cause
- message
- action
- requestId
- docsUrl
required:
- error
'403':
description: 'Error codes: account_suspended (account).'
headers:
X-Request-Id:
description: Unique request ID for this response, in the form req_ followed by 16 hexadecimal characters.
schema:
type: string
pattern: ^req_[0-9a-f]{16}$
X-Volai-Version:
description: Current public interface version. If it changed, read GET /v1/changelog.
schema:
type: string
RateLimit-Limit:
description: Maximum authenticated requests in the current rate-limit window.
schema:
type: integer
RateLimit-Remaining:
description: Authenticated requests remaining in the current rate-limit window.
schema:
type: integer
RateLimit-Reset:
description: Seconds until the authenticated rate-limit window resets.
schema:
type: integer
content:
application/json:
schema:
type: object
properties:
error:
type: object
properties:
code:
type: string
cause:
type: string
enum:
- request
- account
- busy
- service
message:
type: string
action:
type: string
currentRevision:
type: number
details:
type: object
properties:
reason:
type: string
const: task_changed_during_registration
providerActionStarted:
type: boolean
const: false
operationId:
type: string
required:
- reason
- providerActionStarted
- operationId
confirmUrl:
description: 'Only on subscription_confirmation_required (409): the portal page where a person signed in to the account confirms the change. Valid for 24 hours and usable once.'
type: string
requestId:
type: string
docsUrl:
type: string
required:
- code
- cause
- message
- action
- requestId
- docsUrl
required:
- error
'429':
description: 'Error codes: rate_limited (busy).'
headers:
X-Request-Id:
description: Unique request ID for this response, in the form req_ followed by 16 hexadecimal characters.
schema:
type: string
pattern: ^req_[0-9a-f]{16}$
X-Volai-Version:
description: Current public interface version. If it changed, read GET /v1/changelog.
schema:
type: string
RateLimit-Limit:
description: Maximum authenticated requests in the current rate-limit window.
schema:
type: integer
RateLimit-Remaining:
description: Authenticated requests remaining in the current rate-limit window.
schema:
type: integer
RateLimit-Reset:
description: Seconds until the authenticated rate-limit window resets.
schema:
type: integer
Retry-After:
description: 'Seconds until the request may be retried. Sent for the API key limit and for the outbound call limit when the wait is known. Other 429 responses, for example the daily SMS cap or a number purchase that is still running, do not carry it: follow the error message instead.'
schema:
type: integer
content:
application/json:
schema:
type: object
properties:
error:
type: object
properties:
code:
type: string
cause:
type: string
enum:
- request
- account
- busy
- service
message:
type: string
action:
type: string
currentRevision:
type: number
details:
type: object
properties:
reason:
type: string
const: task_changed_during_registration
providerActionStarted:
type: boolean
const: false
operationId:
type: string
required:
- reason
- providerActionStarted
- operationId
confirmUrl:
description: 'Only on subscription_confirmation_required (409): the portal page where a person signed in to the account confirms the change. Valid for 24 hours and usable once.'
type: string
requestId:
type: string
docsUrl:
type: string
required:
- code
- cause
- message
- action
- requestId
- docsUrl
required:
- error
'500':
description: 'Error codes: internal_error (service).'
headers:
X-Request-Id:
description: Unique request ID for this response, in the form req_ followed by 16 hexadecimal characters.
schema:
type: string
pattern: ^req_[0-9a-f]{16}$
X-Volai-Version:
description: Current public interface version. If it changed, read GET /v1/changelog.
schema:
type: string
RateLimit-Limit:
description: Maximum authenticated requests in the current rate-limit window.
schema:
type: integer
RateLimit-Remaining:
description: Authenticated requests remaining in the current rate-limit window.
schema:
type: integer
RateLimit-Reset:
description: Seconds until the authenticated rate-limit window resets.
schema:
type: integer
content:
application/json:
schema:
type: object
properties:
error:
type: object
properties:
code:
type: string
cause:
type: string
enum:
- request
- account
- busy
- service
message:
type: string
action:
type: string
currentRevision:
type: number
details:
type: object
properties:
reason:
type: string
const: task_changed_during_registration
providerActionStarted:
type: boolean
const: false
operationId:
type: string
required:
- reason
- providerActionStarted
- operationId
confirmUrl:
description: 'Only on subscription_confirmation_required (409): the portal page where a person signed in to the account confirms the change. Valid for 24 hours and usable once.'
type: string
requestId:
type: string
docsUrl:
type: string
required:
- code
- cause
- message
- action
- requestId
- docsUrl
required:
- error
tags:
- Voices
components:
securitySchemes:
bearer:
type: http
scheme: bearer
bearerFormat: vk_...
description: 'API key from the API and MCP page of the volai portal (/en/api-and-mcp), sent as `Authorization: Bearer vk_...`.'