LocalAI Voice Profiles API

The voice-profiles API from LocalAI — 3 operation(s) for voice-profiles.

Operations 4

GET /api/voice-profiles List voice profiles
POST /api/voice-profiles Create a voice profile
DELETE /api/voice-profiles/{id} Delete a voice profile
GET /api/voice-profiles/{id}/audio Preview voice profile audio

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/localai-voice-profiles-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 Specification

localai-voice-profiles-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: The LocalAI Rest API.
  title: LocalAI Voice Profiles API
  contact:
    name: LocalAI
    url: https://localai.io
  license:
    name: MIT
    url: https://raw.githubusercontent.com/mudler/LocalAI/master/LICENSE
  version: 2.0.0
servers:
- url: /
tags:
- name: voice-profiles
paths:
  /api/voice-profiles:
    get:
      description: List saved voice-cloning references without exposing filesystem paths.
      tags:
      - voice-profiles
      summary: List voice profiles
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/localai.VoiceProfileListResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/schema.ErrorResponse'
    post:
      description: Save a consent-confirmed PCM WAV reference clip and exact transcript for voice cloning. Admin-only.
      tags:
      - voice-profiles
      summary: Create a voice profile
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/voiceprofile.Profile'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/schema.ErrorResponse'
        '413':
          description: Request Entity Too Large
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/schema.ErrorResponse'
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Display name
                description:
                  type: string
                  description: Optional description
                language:
                  type: string
                  description: Optional language tag
                transcript:
                  type: string
                  description: Exact transcript of the reference clip
                consent_confirmed:
                  type: boolean
                  description: Confirms authorization to clone the voice
                audio:
                  type: string
                  description: 16-bit PCM WAV, preferably mono 24 kHz, 1-120 seconds, up to 50 MiB
                  format: binary
              required:
              - name
              - transcript
              - consent_confirmed
              - audio
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Display name
                description:
                  type: string
                  description: Optional description
                language:
                  type: string
                  description: Optional language tag
                transcript:
                  type: string
                  description: Exact transcript of the reference clip
                consent_confirmed:
                  type: boolean
                  description: Confirms authorization to clone the voice
                audio:
                  type: string
                  description: 16-bit PCM WAV, preferably mono 24 kHz, 1-120 seconds, up to 50 MiB
                  format: binary
              required:
              - name
              - transcript
              - consent_confirmed
              - audio
  /api/voice-profiles/{id}:
    delete:
      description: Permanently remove a saved voice-cloning profile. Admin-only.
      tags:
      - voice-profiles
      summary: Delete a voice profile
      parameters:
      - description: Voice profile UUID
        name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No Content
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/schema.ErrorResponse'
  /api/voice-profiles/{id}/audio:
    get:
      description: Stream the saved reference WAV for an authenticated TTS user.
      tags:
      - voice-profiles
      summary: Preview voice profile audio
      parameters:
      - description: Voice profile UUID
        name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            audio/x-wav:
              schema:
                type: string
        '404':
          description: Not Found
          content:
            audio/x-wav:
              schema:
                $ref: '#/components/schemas/schema.ErrorResponse'
components:
  schemas:
    voiceprofile.AudioMetadata:
      type: object
      properties:
        bit_depth:
          type: integer
        channels:
          type: integer
        duration_ms:
          type: integer
        mime_type:
          type: string
        sample_rate:
          type: integer
        size_bytes:
          type: integer
    schema.ErrorResponse:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/schema.APIError'
    schema.APIError:
      type: object
      properties:
        code: {}
        message:
          type: string
        param:
          type: string
        type:
          type: string
    voiceprofile.Profile:
      type: object
      properties:
        audio:
          $ref: '#/components/schemas/voiceprofile.AudioMetadata'
        consent_confirmed_at:
          type: string
        created_at:
          type: string
        description:
          type: string
        id:
          type: string
        language:
          type: string
        name:
          type: string
        transcript:
          type: string
        updated_at:
          type: string
        voice:
          type: string
    localai.VoiceProfileListResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/voiceprofile.Profile'
  securitySchemes:
    BearerAuth:
      type: apiKey
      name: Authorization
      in: header