Charapter 18+ Get unlimited
PATCH 1.0Unlimited season is live

Unlimited tokensfor roleplay.

Slow burns, group chats, 3 a.m. rerolls. The same price at message 10 and at message 10,000.

API connected model charapter-rp tokens ∞ memory on
Loading Shino…
Shino
Chat 1 · Unlimited

Swipe till yourthumb hurts.

Shino#401 · 03:12 1/3

*taps the bill on the counter* Four hundred messages into a slow burn, and your API sends you an invoice. Romantic.

your month on a per-token API · input tokens only · estimate
Pay-per-token$216 / month
Charapter · Main Character$49.99 flat

Y
You#402

ok but how many tokens do I actually get?

Shino#403

*counts on her fingers, gives up* All of them. No cap, no meter, no "out of credits" right at the climax.

Chat 2 · Connect

Two fields.Then you're in.

Y
You#404

how do I plug you into SillyTavern?

Shino#405

*pulls up your settings* Where do you play? Pick it and I'll fill in the rest. Same key everywhere.

  1. Open API Connections, the plug icon.
  2. API: Chat Completion. Source: Custom (OpenAI-compatible).
  3. Paste the URL into Custom Endpoint and your key into Custom API Key.
  4. Pick charapter-rp and hit Connect.
  1. In any chat, open API Settings and choose Proxy.
  2. Model: charapter-rp.
  3. Proxy URL is the full endpoint, ending in /chat/completions. It's filled in below.
  4. Paste your key and Save.
  1. Open Settings, then the AI model settings.
  2. Choose the OpenAI-compatible provider with a custom URL.
  3. Paste the URL and your key. Model: charapter-rp.
  1. Any OpenAI SDK works. Change base_url and the key, keep the rest.
  2. Add memory with a user id and a character id, and she remembers across apps.
API type
Chat Completion · OpenAI-compatible▾
Base URL
https://api.charapterapi.com/v1
API keyfrom your dashboard
chp_live_••••••••••••••••4f2a
Model
charapter-rp▾
not connected
from openai import OpenAI

client = OpenAI(base_url="https://api.charapterapi.com/v1", api_key=KEY)

reply = client.chat.completions.create(
    model="charapter-rp",
    messages=[{"role": "user", "content": "*pushes the door open* Shino?"}],
    extra_body={"memory": {"user": "kai", "character": "shino"}},
)
# no token meter on your bill
import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.charapterapi.com/v1", apiKey: KEY });

const reply = await client.chat.completions.create({
  model: "charapter-rp",
  messages: [{ role: "user", content: "*pushes the door open* Shino?" }],
  // @ts-expect-error charapter extension
  memory: { user: "kai", character: "shino" },
});
curl https://api.charapterapi.com/v1/chat/completions \
  -H "Authorization: Bearer $CHARAPTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"charapter-rp","stream":true,
       "messages":[{"role":"user","content":"*pushes the door open* Shino?"}],
       "memory":{"user":"kai","character":"shino"}}'
Chat 3 · Memory

Your storyauto-saves.

Names, promises, inside jokes, where the last scene ended. Close the tab for a month and she picks the thread back up, on any app.

SAVE 01

Kai hates the rainnight 1 · SillyTavern

SAVE 02

Tea, never coffeenight 1 · SillyTavern

SAVE 03

Promise: show Kai the rooftopnight 9 · phone

Three weeks, three screens

She neverloses the plot.

Night 1 · SillyTavern

You mention it once.

A name, a habit, a fear. Saved the moment you say it, no lorebook busywork.

Night 4 · Phone

New device. Same story.

Memory belongs to you and the character, not to the app you opened.

Night 21 · Discord

The promise comes back.

The detail that makes her feel real, recalled the night it matters.

Chat 4 · Character card

Read the cardbefore you start.

An OpenAI-compatible API made for roleplay. One subscription, unlimited tokens, and a memory of every user that follows them from app to app.

Bring the character cards you already have. Give them a voice, or a full 3D body.

Generous with tokens. Never forgets a promise. Stays in character when you push. Keeps your chats private and never trains on them.

{{user}} is four hundred messages into a slow burn, with a per-token bill they are afraid to open. {{char}} slides a flat-rate key across the bar.

*slides a key across the bar*
Paste this into SillyTavern. Then talk to me as long as you like, {{user}}. I'll keep the tab open.
unlimited tokenslong-term memoryopenai-compatiblecard importvoicevrm avatarsprivate18+ verified
card stats
Tokens∞
Swipes∞
MemoryPer user
Card importYes
VoiceOptional
AvatarVRM
Trains on chatsNever
Chat 5 · Choose your class

Pick your class.

Every class has unlimited tokens. What changes is how many keys and chats run at once.

↑ ↓ to choose
Class I · Solo

Main Character

For power roleplayers and indie devs.

$49.99/ month
TOKENS
∞
KEYS
1
PARALLEL
2
  • Every roleplay model in the lineup
  • Memory for up to 25 characters
  • SillyTavern, RisuAI, Agnai, JanitorAI
  • Voice included
Play solo
Class II · Co-op

Party

For startups and growing companion apps.

$99.99/ month
TOKENS
∞
KEYS
5
PARALLEL
10
  • Everything in Main Character
  • Memory per end user, any number of characters
  • Usage view per end user
  • Priority queue at peak hours
Form a party
Class III · Raid

Guild

For high-volume platforms and studios.

$199.99/ month, from
TOKENS
∞
KEYS
Custom
PARALLEL
Custom
  • Everything in Party
  • Dedicated capacity and uptime SLA
  • Custom model routing
  • Invoicing and a private support channel
Found a guild
18+ verification on every classCancel any timeMonthly billing, USD
Chat 6 · Lorebook

World info.

Every entry fires on its keys. Open one and she answers.

Is it really unlimited?keys: unlimited, cap, limit

Yes. No per-token billing and no monthly token cap. Classes differ in how many chats can run at the same time, which keeps replies fast for everyone.

Which frontends work?keys: sillytavern, risu, agnai, janitor

Anything that takes an OpenAI-compatible endpoint: SillyTavern, RisuAI, Agnai, JanitorAI's proxy setting, or the OpenAI SDKs in your own code. Set the base URL and your key.

Which models do I get?keys: model, lineup

A lineup tuned for roleplay and long-form fiction. The current list lives in the docs and in your dashboard, and every class gets all of them.

Is mature content allowed?keys: nsfw, 18+, filter

For verified adults, mature fiction is allowed within our content policy. Content involving minors or real people is never allowed, in any class.

Does memory follow me across apps?keys: memory, sync, phone

Yes. Memory is tied to you and the character, not to the frontend. Send the same ids from SillyTavern, your phone or a Discord bot and the story continues.

Can I cancel?keys: cancel, refund

Any time, from the dashboard. Your class runs until the end of the billing period, and you can export or wipe your memories before you go.

Chapter 38 · to be continued

Continue?

Unlimited tokens, a memory that keeps your place, one price a month. Your next chapter starts with a key.