Give your platform a living companion
Conversation with an evolving psyche, a voice with lipsync data, your own characters, and an animated 3D layer — the engine that powers Ami, available to your product over REST.
A companion, not a chatbot
Conversation with a psyche
Every end user gets their own relationship: nine axes, moods, attachment styles, rupture and repair — evolving turn by turn on your platform, exactly like in the Ami app.
A voice with lipsync built in
Streamed speech across six voice providers, with word and phoneme timing data in every response — everything you need to drive a talking, lipsynced character.
Your characters, three ways
Start from 24 crafted companions, build your own from personality traits and archetypes, upload a rigged 3D model, or generate a stylized avatar from parts.
The animated 3D layer
Embed the full companion — animated, lipsynced, with chat and voice — as an iframe, or drive your own renderer from the emotion, animation, and viseme data. Rendering costs you nothing per minute.
Memory that persists
The companion remembers each of your users across sessions — names, preferences, running jokes, important dates — through the same memory pipeline the app uses.
The real Ami engine
This is not a lookalike API. Turns run the app's own prompt stack, model routing, and expression system — verified at parity, down to speech that reaches first audio faster than the app itself.
Thirty seconds to a first conversation
Mint a key in your Ami developer dashboard, then send a message. Each userId you pass gets its own relationship — psyche, memory, and history included.
curl https://play.withami.app/api/v1/messages \
-H "Authorization: Bearer $AMI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"characterId": "default-ami",
"userId": "player-42",
"message": "hey! rough day honestly, glad to see you"
}'{
"reply": {
"text": "Aw, come here — tell me everything. What made it rough?",
"emotion": "loving",
"speakingStyle": "calm",
"animations": [{ "animation": "idle-wave-hand-slightly", ... }]
},
"psyche": { "mood": "warm", "axes": { "closeness": 0.13, ... } },
"usage": { "credits": 30 }
}Streaming, speech synthesis, character creation, model upload, avatar generation, and the embeddable 3D layer are all one endpoint away — full reference in your developer dashboard.
Plans that scale with your users
API Starter
- 300,000 credits / month
- ~10,000 companion messages
- Credits roll over month to month
- Voice, avatars, and embeds included in the same credits
API Growth
- 1,500,000 credits / month
- ~50,000 companion messages
- Credits roll over month to month
- Voice, avatars, and embeds included in the same credits
API Scale
- 4,500,000 credits / month
- ~150,000 companion messages
- Credits roll over month to month
- Voice, avatars, and embeds included in the same credits
| Pay as you go | Rate |
|---|---|
| Companion message (reply + emotion + psyche) | $0.0057 |
| Voice, standard tier | from $0.09 / min |
| Voice, premium HD tier | from $0.42 / min |
| Animated 3D character layer | $0 / min |
| Stylized avatar generation | $0.94 each |
Every plan is billed through your Ami account — the same credits work across the API, your embeds, and the app.
Questions builders ask first
Is this really the same companion as the app?
Yes. API turns run the same system prompt stack, psyche engine, model routing, and expression vocabulary as the Ami app. A companion served over the API and one in the app are built by the same pipeline — we measure the two side by side to keep it that way.
How does the 3D character work on my site?
Two ways. The fastest is the embed: one iframe serves the full animated, lipsynced companion with chat and voice UI. If you have your own renderer, drive it directly — every reply carries the emotion, speaking style, timed animations, and a per-phoneme lipsync track.
What are credits?
One metered currency across everything: messages, voice minutes, avatar generation. Plans include a monthly allowance that rolls over, and the same credits also power voice in the Ami app. A message costs 30 credits; voice is billed by exact audio duration.
Can my users each have their own relationship with the companion?
Yes — that's the default. You pass your own opaque id per end user, and each one gets an isolated conversation window, psyche, and memory. Nothing is shared between them.
Do you store my users' personal data?
You choose what crosses the wire. End users are identified only by the opaque id you send; the API never learns who they are. Conversations and memory are stored per that id so the companion can remember — and you can wipe any of it with one call.
Your product, her personality
Sign in, mint a key, and your first companion conversation is one curl away.