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

# bitHuman

The bitHuman API generates real-time, lip-synced AI avatars that turn audio into talking video, in the cloud, on your own hardware, or in the browser. An agent generates an avatar agent from a prompt and provider configuration, makes it speak, renders a talking video as a pollable job, and starts a WebRTC realtime call for live sessions. It also builds knowledge bases for an avatar, generates gesture animations, and manages runtime tokens, webhooks, and API secrets.

## For AI agents

Create talking AI avatars: generate an avatar agent, make it speak, render a talking video, or start a live WebRTC session, plus build knowledge bases and generate gesture animations.

## Scope

Does not handle text chat models, video editing, or live-stream distribution. Use for AI avatar generation and real-time avatar sessions only.

## Capabilities

- Generate a talking AI avatar agent from a prompt and provider configuration
- Make an avatar agent speak a line of text
- Render a talking video and poll its job status
- Generate gesture animations for an avatar through the dynamics endpoint
- Start a WebRTC realtime call with a cloud avatar
- Build knowledge bases and ingest files or URLs for an avatar
- Create webhooks and inspect their delivery attempts

## Use cases

### Agent-driven avatar video

An AI agent turns a script into a talking-avatar video. Through Jentic the agent generates an avatar from a prompt, submits the text through the speak operation, and renders a talking video as a job whose status it polls until the render finishes. This produces a presenter video without a human opening a studio UI.

Example prompt: Generate an avatar from a prompt, make it speak a short script, and poll the video job until it returns a finished talking video

### Live avatar sessions

A product embeds a live, conversational avatar. The realtime-connect operation starts a WebRTC session with a cloud avatar, and runtime tokens scope access to one agent, so a browser or app streams a lip-synced avatar in real time rather than rendering a file. Sessions can be listed and terminated when the conversation ends.

Example prompt: Mint a runtime token for one avatar and start a WebRTC realtime session, then end the session when the call finishes

### Knowledge-grounded avatars

A support avatar answers from a company's own content. The API ingests files or URLs into a knowledge base and rebuilds it, so the avatar's responses draw on that material. An agent can create the knowledge base, add sources, and trigger a rebuild before putting the avatar live.

Example prompt: Create a knowledge base, ingest a product-docs URL, and rebuild the knowledge base so the avatar answers from it

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/v1/agent/generate` | Generate a new avatar agent |
| POST | `/v1/agent/{code}/speak` | Make an avatar agent speak |
| POST | `/v1/video/generate` | Generate a talking video |
| GET | `/v1/video/{job_id}` | Get talking-video status |
| POST | `/v1/dynamics/generate` | Generate gesture animations |
| POST | `/v1/realtime/connect` | Start or end a WebRTC Realtime call |
| POST | `/v1/knowledge/kbs` | Create a knowledge base |
| POST | `/v1/webhooks` | Create a webhook |

## Key resources

- **Agents** — Generate, update, read, and drive avatar agents, including the speak operation
- **Video** — Render a talking video and poll its job status
- **Realtime** — Start and end WebRTC realtime avatar sessions
- **Knowledge** — Create knowledge bases and ingest files or URLs for an avatar
- **Webhooks** — Create webhooks and list their delivery attempts

## 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:** 62 / 100
- **Maturity:** AI-Aware
- **Dimensions:**
  - Foundational Compliance: 45 / 100
  - Developer Experience & Jentic Compatibility: 71 / 100
  - AI-Readiness & Agent Experience: 53 / 100
  - Agent Usability: 93 / 100
  - Security: 55 / 100
  - AI Discoverability: 79 / 100
- **View full report:** https://jentic.com/apis/bithuman.ai/bithuman/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 the bitHuman API by hand means handling its api-secret header auth (self-hosted runtimes send the same secret as a bearer token), polling video and agent-generation jobs for status, and managing runtime and embed tokens yourself. Through Jentic you install once, import it from the API Directory, store the secret once, and your agent calls it.
- **Permission scoping:** The bitHuman API puts the agent code in the URL path (`/v1/agent/{code}`), so a rule can pin your agent to one bitHuman avatar: it can make that avatar speak and read its sessions without touching account-level api-secret management. You choose the operations it may call, so deleting an avatar or revoking runtime keys is not included unless you add it.
- **Credential handling:** Your bitHuman api-secret is held 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 'generate a talking avatar' or 'make an avatar speak', and Jentic returns the matching bitHuman operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **HeyGen** — Generates avatar presenter videos from text
- **Synthesia** — Creates AI presenter videos from scripts and templates
- **Tavus** — Real-time conversational video avatars
- **ElevenLabs** — Generates the voice audio that drives a talking avatar

## FAQ

### What authentication does the bitHuman API use?

The bitHuman API authenticates with an api-secret sent in the api-secret header per its OpenAPI spec; self-hosted runtimes may send the same secret as a bearer token in the Authorization header. A few endpoints, such as the showcase models and the readiness check, need no credential. Through Jentic the secret is injected at call time by your own Jentic One instance, so it never enters the agent's prompt or logs.

### Can I generate a talking video with the bitHuman API?

Yes. The video-generate operation renders a talking video and returns a job id whose status you poll until the render finishes. For live use, the realtime-connect operation starts a WebRTC session with a cloud avatar instead of rendering a file.

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

The OpenAPI spec does not specify rate limits. Check the bitHuman documentation at https://docs.bithuman.ai for current limits and credit pricing before running high-volume renders.

### Is there a bitHuman MCP server?

You don't need an MCP server to give your agent the bitHuman API. Jentic connects it directly from the API Directory: import it, store your api-secret once, and your agent calls it, so you skip installing and syncing a separate server.

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

Yes. Write a rule that allows only the speak and video-generate operations for one avatar code, so your agent can produce talking video for that avatar but cannot delete agents or create new api-secrets. Every call it makes is logged.

### How do I make an avatar speak with the bitHuman API through Jentic?

Search Jentic for 'make an avatar speak' and it returns the speak operation with its input schema; the agent passes the avatar code and the text, then reads the session or video job it produces. To run it on your own infrastructure, install Jentic One from its GitHub repo.
