RunAPI Producer API
The Producer API from RunAPI — 2 operation(s) for producer.
The Producer API from RunAPI — 2 operation(s) for producer.
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/runapi:runapi-producer-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: RunAPI Producer API
version: v1
description: Create and retrieve AI media tasks, or use compatible LLM protocol endpoints.
servers:
- url: https://runapi.ai
security:
- bearerAuth: []
tags:
- name: Producer
paths:
/api/v1/producer/text_to_music:
post:
tags:
- Producer
summary: Producer Text-to-Music
description: Create an asynchronous task through the Producer text to music endpoint.
operationId: task_endpoint_producer_text_to_music
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- type: object
properties:
model:
type: string
description: Model slug.
const: fuzz-0.8
vocal_mode:
type: string
enum:
- exact_lyrics
- instrumental
description: Vocal generation mode.
prompt:
type: string
maxLength: 200
minLength: 1
description: Music style and production brief.
lyrics:
type: string
description: Exact lyrics to sing.
title:
type: string
description: Music title.
callback_url:
type: string
description: Webhook URL for async notifications.
additionalProperties: false
required:
- model
- vocal_mode
- prompt
allOf:
- if:
properties:
vocal_mode:
const: exact_lyrics
required:
- vocal_mode
then:
required:
- lyrics
- if:
properties:
vocal_mode:
const: instrumental
required:
- vocal_mode
then:
not:
required:
- lyrics
- type: object
properties:
model:
type: string
description: Model slug.
const: fuzz-1.0
vocal_mode:
type: string
enum:
- exact_lyrics
- instrumental
description: Vocal generation mode.
prompt:
type: string
maxLength: 200
minLength: 1
description: Music style and production brief.
lyrics:
type: string
description: Exact lyrics to sing.
title:
type: string
description: Music title.
callback_url:
type: string
description: Webhook URL for async notifications.
additionalProperties: false
required:
- model
- vocal_mode
- prompt
allOf:
- if:
properties:
vocal_mode:
const: exact_lyrics
required:
- vocal_mode
then:
required:
- lyrics
- if:
properties:
vocal_mode:
const: instrumental
required:
- vocal_mode
then:
not:
required:
- lyrics
- type: object
properties:
model:
type: string
description: Model slug.
const: fuzz-1.0-pro
vocal_mode:
type: string
enum:
- exact_lyrics
- instrumental
description: Vocal generation mode.
prompt:
type: string
maxLength: 200
minLength: 1
description: Music style and production brief.
lyrics:
type: string
description: Exact lyrics to sing.
title:
type: string
description: Music title.
callback_url:
type: string
description: Webhook URL for async notifications.
additionalProperties: false
required:
- model
- vocal_mode
- prompt
allOf:
- if:
properties:
vocal_mode:
const: exact_lyrics
required:
- vocal_mode
then:
required:
- lyrics
- if:
properties:
vocal_mode:
const: instrumental
required:
- vocal_mode
then:
not:
required:
- lyrics
- type: object
properties:
model:
type: string
description: Model slug.
const: fuzz-1.1
vocal_mode:
type: string
enum:
- exact_lyrics
- instrumental
description: Vocal generation mode.
prompt:
type: string
maxLength: 200
minLength: 1
description: Music style and production brief.
lyrics:
type: string
description: Exact lyrics to sing.
title:
type: string
description: Music title.
callback_url:
type: string
description: Webhook URL for async notifications.
additionalProperties: false
required:
- model
- vocal_mode
- prompt
allOf:
- if:
properties:
vocal_mode:
const: exact_lyrics
required:
- vocal_mode
then:
required:
- lyrics
- if:
properties:
vocal_mode:
const: instrumental
required:
- vocal_mode
then:
not:
required:
- lyrics
- type: object
properties:
model:
type: string
description: Model slug.
const: fuzz-1.1-pro
vocal_mode:
type: string
enum:
- exact_lyrics
- instrumental
description: Vocal generation mode.
prompt:
type: string
maxLength: 200
minLength: 1
description: Music style and production brief.
lyrics:
type: string
description: Exact lyrics to sing.
title:
type: string
description: Music title.
callback_url:
type: string
description: Webhook URL for async notifications.
additionalProperties: false
required:
- model
- vocal_mode
- prompt
allOf:
- if:
properties:
vocal_mode:
const: exact_lyrics
required:
- vocal_mode
then:
required:
- lyrics
- if:
properties:
vocal_mode:
const: instrumental
required:
- vocal_mode
then:
not:
required:
- lyrics
- type: object
properties:
model:
type: string
description: Model slug.
const: fuzz-2.0
vocal_mode:
type: string
enum:
- exact_lyrics
- instrumental
description: Vocal generation mode.
prompt:
type: string
maxLength: 200
minLength: 1
description: Music style and production brief.
lyrics:
type: string
description: Exact lyrics to sing.
title:
type: string
description: Music title.
callback_url:
type: string
description: Webhook URL for async notifications.
additionalProperties: false
required:
- model
- vocal_mode
- prompt
allOf:
- if:
properties:
vocal_mode:
const: exact_lyrics
required:
- vocal_mode
then:
required:
- lyrics
- if:
properties:
vocal_mode:
const: instrumental
required:
- vocal_mode
then:
not:
required:
- lyrics
- type: object
properties:
model:
type: string
description: Model slug.
const: fuzz-2.0-pro
vocal_mode:
type: string
enum:
- exact_lyrics
- instrumental
description: Vocal generation mode.
prompt:
type: string
maxLength: 200
minLength: 1
description: Music style and production brief.
lyrics:
type: string
description: Exact lyrics to sing.
title:
type: string
description: Music title.
callback_url:
type: string
description: Webhook URL for async notifications.
additionalProperties: false
required:
- model
- vocal_mode
- prompt
allOf:
- if:
properties:
vocal_mode:
const: exact_lyrics
required:
- vocal_mode
then:
required:
- lyrics
- if:
properties:
vocal_mode:
const: instrumental
required:
- vocal_mode
then:
not:
required:
- lyrics
- type: object
properties:
model:
type: string
description: Model slug.
const: fuzz-2.0-raw
vocal_mode:
type: string
enum:
- exact_lyrics
- instrumental
description: Vocal generation mode.
prompt:
type: string
maxLength: 200
minLength: 1
description: Music style and production brief.
lyrics:
type: string
description: Exact lyrics to sing.
title:
type: string
description: Music title.
callback_url:
type: string
description: Webhook URL for async notifications.
additionalProperties: false
required:
- model
- vocal_mode
- prompt
allOf:
- if:
properties:
vocal_mode:
const: exact_lyrics
required:
- vocal_mode
then:
required:
- lyrics
- if:
properties:
vocal_mode:
const: instrumental
required:
- vocal_mode
then:
not:
required:
- lyrics
responses:
'202':
description: Create acceptance
content:
application/json:
schema:
type: object
required:
- id
- status
properties:
id:
type: string
status:
type: string
enum:
- processing
task_replayed:
type: boolean
unevaluatedProperties: false
'400':
description: Invalid request
content:
application/json:
schema:
oneOf:
- type: object
required:
- error
properties:
error:
type: string
description: Human-readable error message.
unevaluatedProperties: false
- type: object
required:
- error
- errors
properties:
error:
type: string
description: Human-readable validation summary.
errors:
type: object
description: Validation messages keyed by public request field, with an array of human-readable strings for each field.
additionalProperties:
type: array
items:
type: string
unevaluatedProperties: false
'401':
description: Authentication required
content:
application/json:
schema:
type: object
required:
- error
properties:
error:
type: string
description: Human-readable error message.
unevaluatedProperties: false
'402':
description: Insufficient balance
content:
application/json:
schema:
type: object
required:
- error
properties:
error:
type: string
description: Human-readable error message.
unevaluatedProperties: false
'409':
description: Request conflict
content:
application/json:
schema:
type: object
required:
- error
properties:
error:
type: string
description: Human-readable error message.
unevaluatedProperties: false
'429':
description: Api token credit limit exceeded or Rate limited
content:
application/json:
schema:
type: object
required:
- error
properties:
error:
type: string
description: Human-readable error message.
unevaluatedProperties: false
'503':
description: Service unavailable
content:
application/json:
schema:
type: object
required:
- error
properties:
error:
type: string
description: Human-readable error message.
unevaluatedProperties: false
'504':
description: Timeout error
content:
application/json:
schema:
type: object
required:
- error
properties:
error:
type: string
description: Human-readable error message.
unevaluatedProperties: false
/api/v1/producer/text_to_music/{id}:
get:
tags:
- Producer
summary: Retrieve Producer Text-to-Music task
description: Create an asynchronous task through the Producer text to music endpoint.
operationId: task_endpoint_producer_text_to_music_retrieve
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: Polling processing or Polling completed or Polling failed
content:
application/json:
schema:
oneOf:
- type: object
required:
- id
- status
properties:
id:
type: string
status:
type: string
enum:
- processing
unevaluatedProperties: false
- type: object
required:
- id
- status
- generation_stage
- audios
- usage
properties:
id:
type: string
status:
type: string
enum:
- completed
generation_stage:
type: string
enum:
- all_audios_ready
audios:
type: array
items:
type: object
required:
- id
- audio_url
- model_name
properties:
id:
type: string
audio_url:
type: string
x-runapi-generated-media: true
image_url:
type: string
x-runapi-generated-media: true
model_name:
type: string
title:
type: string
duration_seconds:
type: number
lyrics:
type: string
unevaluatedProperties: false
usage:
type: object
properties:
cost:
type: number
unevaluatedProperties: false
unevaluatedProperties: false
- type: object
required:
- id
- status
- error
- generation_stage
properties:
id:
type: string
status:
type: string
enum:
- failed
error:
type: string
generation_stage:
type: string
enum:
- failed
unevaluatedProperties: false
'401':
description: Polling authentication required
content:
application/json:
schema:
type: object
required:
- error
properties:
error:
type: string
description: Human-readable error message.
unevaluatedProperties: false
'404':
description: Task not found
content:
application/json:
schema:
type: object
required:
- error
properties:
error:
type: string
description: Human-readable error message.
unevaluatedProperties: false
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: API token