canonical: https://jentic.com/apis/muapi.ai/muapi

# Muapi API

The Muapi API runs hundreds of generative media models behind one key, with an operation per model for text-to-image, image editing, text-to-video, image-to-video, video editing, lipsync, avatars, audio and music, and 3D generation. Model operations such as flux-dev-image, veo3.1-text-to-video, seedance-2.5-image-to-video, suno-create-music, and meshy-6-image-to-3d are asynchronous: each returns a request_id, and the output is fetched from the prediction result route or pushed to a webhook. Supporting routes upload media to Muapi-hosted storage, report the wallet balance, manage API keys including sandbox keys, and expose OpenAI-compatible chat completions and image generation endpoints.

## For AI agents

Generate images, video, audio, music, and 3D assets from hundreds of models through one Muapi key, then poll each prediction for its output.

## Scope

Does not train custom foundation models, host your own model weights, or edit media without a model call. Use for running Muapi-hosted generative image, video, audio, and 3D models only.

## Capabilities

- Generate images from a text prompt with models such as flux-dev, nano-banana, midjourney-v7, and gpt-image-2
- Turn a prompt or still image into video with Veo 3.1, Kling, and Seedance model endpoints
- Create songs, text-to-speech, and sound with Suno, ElevenLabs, MiniMax, and Lyria endpoints
- Lipsync or translate an existing video with sync-lipsync, latentsync, and heygen-video-translate
- Build 3D models from text, an image, or multiple views with Tripo3D and Meshy endpoints
- Poll a prediction's status and outputs by request id, or receive the result on a webhook
- Check the wallet credit balance and create sandbox API keys that return mock outputs without billing

## Use cases

### AI creative agent producing images and video on request

An AI agent asked for a campaign visual and a matching clip needs one integration, not a separate account per model vendor. Through Jentic the agent searches for 'generate an image from a prompt', loads a Muapi model operation such as flux-dev-image with its input schema, submits the prompt, and polls the prediction result route with the returned request_id until the status is completed. The same pattern then drives an image-to-video model, with the Muapi key injected at call time.

Example prompt: Call POST `/api/v1/flux-dev-image` with a prompt, then poll GET `/api/v1/predictions/{id}/result` with the returned request_id until status is completed and return the image URL

### Text-to-video for social ads

A marketer drafting short ads sends a scene description to a video model and picks a quality tier per draft. Muapi labels operations best, balanced, fast, or budget in their summaries, so a pipeline can draft with a fast model such as veo3.1-fast-text-to-video and render the final cut with veo3.1-text-to-video, which takes prompt, aspect_ratio, resolution, and duration.

Example prompt: Call POST `/api/v1/veo3.1-fast-text-to-video` with a prompt and aspect_ratio 9:16, review the draft from the prediction result, then call POST `/api/v1/veo3.1-text-to-video` with the same prompt

### Music and voice for video content

A creator needs a soundtrack and narration for a clip. The Suno create-music operation takes a required style plus an optional prompt, title, and instrumental flag, and text-to-speech models such as elevenlabs-v4 and minimax-speech-2.6-hd return narration. Each request lands on the same prediction result route, so the agent collects audio the same way it collects images.

Example prompt: Call POST `/api/v1/suno-create-music` with style set to lo-fi hip hop and instrumental true, then fetch the track from GET `/api/v1/predictions/{id}/result`

### Product images to 3D assets

An e-commerce team wants 3D previews from existing product photos. Muapi exposes Meshy and Tripo3D operations for single-image, multi-image, and text-to-3D generation, and media can first be uploaded to Muapi-hosted storage so the model receives a hosted URL.

Example prompt: Upload a product photo with POST `/api/v1/upload_file`, then call POST `/api/v1/meshy-6-image-to-3d` with the hosted URL and poll the prediction result for the model file

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/api/v1/flux-dev-image` | Generate an image with Flux Dev |
| POST | `/api/v1/veo3.1-text-to-video` | Generate a video with Veo 3.1 |
| POST | `/api/v1/seedance-2.5-image-to-video` | Animate an image with Seedance 2.5 |
| POST | `/api/v1/suno-create-music` | Create a song with Suno |
| POST | `/api/v1/meshy-6-image-to-3d` | Build a 3D model from an image |
| GET | `/api/v1/predictions/{id}/result` | Poll a prediction's status and outputs |
| POST | `/api/v1/upload_file` | Upload media to Muapi storage |
| GET | `/api/v1/account/balance` | Get wallet balance |

## Key resources

- **Model endpoints** — One POST operation per model across image, video, lipsync, avatar, audio, music, and 3D categories, each tagged with a quality tier
- **Predictions** — Poll a request's status and outputs by id, or delete its media
- **Files** — Upload media to Muapi-hosted storage or get a presigned upload URL
- **Account and keys** — Wallet balance, top-up, auto-top-up settings, and API key creation and deletion
- **OpenAI-compatible routes** — Chat completions, image generations, and model listing in the OpenAI request shape

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 49 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 68 / 100
  - Developer Experience & Jentic Compatibility: 62 / 100
  - AI-Readiness & Agent Experience: 40 / 100
  - Agent Usability: 43 / 100
  - Security: 68 / 100
  - AI Discoverability: 39 / 100
- **View full report:** https://jentic.com/apis/muapi.ai/muapi/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring Muapi by hand means choosing between an x-api-key and OAuth client credentials, picking the right model operation out of a very large surface, and building a poll loop on the prediction result route. Through Jentic you install once, import Muapi from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Each Muapi model has its own path, such as `/api/v1/veo3.1-text-to-video`, so a rule can bound your agent to the models it should use plus the prediction result read. That matters because the spec notes a Muapi API key is unscoped. You choose the operations it may call, so key creation, key deletion, and wallet top-up are not included unless you add them.
- **Credential handling:** Your Muapi API key or OAuth client secret is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'turn an image into a video' or 'generate a song', and Jentic returns the matching Muapi model operation with its input schema, so the agent picks a fitting model without paging through the reference docs.

## Related APIs

- **fal** — Serverless inference platform for generative image, video, and audio models
- **Replicate** — Run open-source and community models through one prediction API
- **ElevenLabs** — Voice synthesis, cloning, and dubbing API

## FAQ

### What authentication does the Muapi API use?

The Muapi OpenAPI spec declares two schemes, and every operation accepts either. One is an API key sent in the x-api-key header, which the spec says is also accepted as Authorization: Bearer and carries full account access. The other is OAuth 2.0 client credentials from the Muapi token endpoint with scopes such as generate:write, generate:read, files:write, account:read, and keys:manage. Through Jentic your key or client secret is held by your own instance and injected at call time.

### How do I get the output of a Muapi generation?

Generation is asynchronous. A model operation such as POST `/api/v1/flux-dev-image` returns a request_id, and GET `/api/v1/predictions/{id}/result` reports the status (queued, processing, completed, failed, and others) and the outputs once done. You can instead pass a webhook query parameter on the model call to have the result posted to your URL.

### What are the rate limits for the Muapi API?

The OpenAPI spec does not specify numeric rate limits; usage is metered by credits debited from your wallet on completion, and GET `/api/v1/account/balance` reports what remains. Check https://muapi.ai for current plan limits.

### Can I test Muapi without spending credits?

Yes. Creating a key with POST `/api/v1/keys` and is_test set to true in the body produces a sandbox key that returns mock outputs and never deducts credits, which suits wiring up an agent before real runs.

### How do I generate a video through Jentic?

Search Jentic for 'generate a video from a text prompt', load an operation such as POST `/api/v1/veo3.1-text-to-video`, execute it with a prompt, then load GET `/api/v1/predictions/{id}/result` and poll it with the returned request_id. To run it on your own infrastructure, install Jentic One from its GitHub repo.

### Can I limit what my agent is allowed to do with the Muapi API?

Yes. Write a rule that allows only POST `/api/v1/flux-dev-image` and GET `/api/v1/predictions/{id}/result`, and the agent can generate images with that one model and fetch the results, but cannot create keys, top up the wallet, or run costlier video models. Every call it makes is logged so you can see what it spent.
