Resemble AI subpackage_duets API

The subpackage_duets API from Resemble AI — 4 operation(s) for subpackage_duets.

Operations 7

GET /duet_voices List duet voices #
POST /duet_voices Create custom duet voice #
PUT /duet_voices/{id} Update duet voice #
DELETE /duet_voices/{id} Delete duet voice #
GET /duet_voice_pairs List duet voice pairs #
POST /duet_voice_pairs Create duet voice pair #
POST /duet Generate duet #

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/resemble-ai-subpackage-duets-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

resemble-ai-subpackage-duets-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Reference subpackage_account Subpackage Duets API
  version: 1.0.0
servers:
- url: https://f.cluster.resemble.ai
- url: https://app.resemble.ai/api/v2
tags:
- name: subpackage_duets
paths:
  /duet_voices:
    get:
      operationId: list-duet-voices
      summary: List duet voices
      description: Returns default and custom duet voices
      tags:
      - subpackage_duets
      parameters:
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      responses:
        '200':
          description: List of duet voices
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Duets_listDuetVoices_Response_200'
    post:
      operationId: create-duet-voice
      summary: Create custom duet voice
      description: Create a custom voice for duet generation
      tags:
      - subpackage_duets
      parameters:
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Duet voice created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Duets_createDuetVoice_Response_200'
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Voice name
                style_prompt:
                  type: string
                  description: Optional style prompt
                audio:
                  type: string
                  format: binary
                  description: Audio file (MP3/WAV/M4A/OGG/AAC/FLAC max 10 MB)
              required:
              - name
              - audio
  /duet_voices/{id}:
    put:
      operationId: update-duet-voice
      summary: Update duet voice
      description: Update a custom duet voice (default voices cannot be modified)
      tags:
      - subpackage_duets
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Duet voice updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Duets_updateDuetVoice_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                style_prompt:
                  type: string
    delete:
      operationId: delete-duet-voice
      summary: Delete duet voice
      description: Delete a custom duet voice (default voices cannot be deleted)
      tags:
      - subpackage_duets
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Duet voice deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Duets_deleteDuetVoice_Response_200'
  /duet_voice_pairs:
    get:
      operationId: list-duet-voice-pairs
      summary: List duet voice pairs
      description: List all voice pairs for duet generation
      tags:
      - subpackage_duets
      parameters:
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      responses:
        '200':
          description: List of voice pairs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Duets_listDuetVoicePairs_Response_200'
    post:
      operationId: create-duet-voice-pair
      summary: Create duet voice pair
      description: Create a voice pair for duet generation
      tags:
      - subpackage_duets
      parameters:
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Voice pair created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Duets_createDuetVoicePair_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                voice_1_id:
                  type: integer
                  description: ID of first voice
                voice_2_id:
                  type: integer
                  description: ID of second voice
                name:
                  type: string
                  description: Optional pair name
              required:
              - voice_1_id
              - voice_2_id
  /duet:
    post:
      operationId: generate-duet
      summary: Generate duet
      description: Generate conversational audio with two speakers
      tags:
      - subpackage_duets
      parameters:
      - name: Authorization
        in: header
        description: API token from https://app.resemble.ai/account/api
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Duet generation job created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Duets_generateDuet_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                voice_pair_id:
                  type: integer
                  description: Voice pair ID to use
                script:
                  type: array
                  items:
                    $ref: '#/components/schemas/DuetPostRequestBodyContentApplicationJsonSchemaScriptItems'
                title:
                  type: string
                  description: Optional title for the duet
                callback_uri:
                  type: string
                  format: uri
                  description: Webhook URL for completion notification
              required:
              - voice_pair_id
              - script
components:
  schemas:
    DuetPostResponsesContentApplicationJsonSchemaItem:
      type: object
      properties:
        uuid:
          type: string
        status:
          type: string
      title: DuetPostResponsesContentApplicationJsonSchemaItem
    Duets_generateDuet_Response_200:
      type: object
      properties:
        success:
          type: boolean
        item:
          $ref: '#/components/schemas/DuetPostResponsesContentApplicationJsonSchemaItem'
      title: Duets_generateDuet_Response_200
    Duets_updateDuetVoice_Response_200:
      type: object
      properties:
        success:
          type: boolean
        item:
          $ref: '#/components/schemas/DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem'
      title: Duets_updateDuetVoice_Response_200
    DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem:
      type: object
      properties: {}
      title: DuetVoicesIdPutResponsesContentApplicationJsonSchemaItem
    DuetPostRequestBodyContentApplicationJsonSchemaScriptItems:
      type: object
      properties:
        speaker:
          $ref: '#/components/schemas/DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker'
          description: Speaker index (0 or 1)
        text:
          type: string
          description: Text for this speaker
      required:
      - speaker
      - text
      title: DuetPostRequestBodyContentApplicationJsonSchemaScriptItems
    Duets_listDuetVoices_Response_200:
      type: object
      properties:
        success:
          type: boolean
        items:
          type: array
          items:
            $ref: '#/components/schemas/DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems'
      title: Duets_listDuetVoices_Response_200
    DuetVoicesPostResponsesContentApplicationJsonSchemaItem:
      type: object
      properties: {}
      title: DuetVoicesPostResponsesContentApplicationJsonSchemaItem
    Duets_listDuetVoicePairs_Response_200:
      type: object
      properties:
        success:
          type: boolean
        items:
          type: array
          items:
            $ref: '#/components/schemas/DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems'
      title: Duets_listDuetVoicePairs_Response_200
    Duets_createDuetVoice_Response_200:
      type: object
      properties:
        success:
          type: boolean
        item:
          $ref: '#/components/schemas/DuetVoicesPostResponsesContentApplicationJsonSchemaItem'
      title: Duets_createDuetVoice_Response_200
    DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker:
      type: string
      enum:
      - '0'
      - '1'
      description: Speaker index (0 or 1)
      title: DuetPostRequestBodyContentApplicationJsonSchemaScriptItemsSpeaker
    DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem:
      type: object
      properties: {}
      title: DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem
    DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems:
      type: object
      properties: {}
      title: DuetVoicesGetResponsesContentApplicationJsonSchemaItemsItems
    Duets_deleteDuetVoice_Response_200:
      type: object
      properties:
        success:
          type: boolean
      title: Duets_deleteDuetVoice_Response_200
    DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems:
      type: object
      properties: {}
      title: DuetVoicePairsGetResponsesContentApplicationJsonSchemaItemsItems
    Duets_createDuetVoicePair_Response_200:
      type: object
      properties:
        success:
          type: boolean
        item:
          $ref: '#/components/schemas/DuetVoicePairsPostResponsesContentApplicationJsonSchemaItem'
      title: Duets_createDuetVoicePair_Response_200
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: API token from https://app.resemble.ai/account/api