volai-cz Api Keys API

The Api Keys API from volai-cz — 2 operation(s) for api keys.

Operations 2

GET /v1/api-keys List API keys on the account; full key hashes are never returned #
DELETE /v1/api-keys/{id} Revoke the API key authenticating this request (self-revoke only) #

Work with this as data

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/volai-cz:volai-cz-api-keys-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 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 Specification

volai-cz-api-keys-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: volai REST Api Keys 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: API Keys
paths:
  /v1/api-keys:
    get:
      operationId: get_api_keys
      summary: List API keys on the account; full key hashes are never returned
      description: API keys on the account. `id` is only the first 12 characters of the key's fingerprint - the full fingerprint is never returned.
      responses:
        '200':
          description: API keys
          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:
                  apiKeys:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        label:
                          type: string
                        prefix:
                          type: string
                        createdAt:
                          type: number
                        lastUsedAt:
                          type: number
                      required:
                      - id
                      - label
                      - prefix
                      - createdAt
                required:
                - apiKeys
        '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:
      - API Keys
  /v1/api-keys/{id}:
    delete:
      operationId: delete_api_keys_id
      summary: Revoke the API key authenticating this request (self-revoke only)
      description: 'Self-revoke: over the API a key may only revoke ITSELF, never another key on the account - otherwise a stolen key would cut off every other integration and stay active itself. Revoking other keys is portal-only. An e-mail goes to the account owner after revocation regardless of who requested it.'
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Revoked
          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:
                  revoked:
                    type: boolean
                    const: true
                required:
                - revoked
        '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), api_key_self_only (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
        '404':
          description: 'Error codes: not_found (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:
      - API Keys
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_...`.'