Skip to content
Get started
Docs

Use Chutes with JanitorAI

JanitorAI is a website for chatting with AI characters made by its community. Besides its own models, it can send your chats to an external OpenAI-compatible API through a proxy configuration, and that is how you connect it to Chutes. You need a Chutes API key, a model ID and the Chutes chat completions URL, https://llm.chutes.ai/v1/chat/completions.

Quick Reference

JanitorAI fieldValue
Model NameA Chutes model ID, for example zai-org/GLM-5.1-TEE
Proxy URLhttps://llm.chutes.ai/v1/chat/completions
API KeyYour Chutes API key, which starts with cpk_

JanitorAI needs the full chat completions URL, not just the base URL https://llm.chutes.ai/v1 that most other apps ask for. The base URL on its own returns 404 Not Found.

The field names on this page follow the proxy setup articles in the JanitorAI help center. JanitorAI changes its interface from time to time, so if a label on your screen is different, look for the field with the same purpose.

Before You Start

  1. Create a Chutes account at chutes.ai/auth/signup.
  2. Create an API key on the API Keys page with the Create Key button. Chutes keys start with cpk_. Copy the key straight away, because Chutes shows it only once.
  3. Add credits or choose a plan. Chutes does not offer a free tier at the moment. Add credits on the Billing page, or pick a subscription on chutes.ai/pricing. See What It Costs.

Set Up the Proxy Configuration

  1. Log in to JanitorAI and open a chat with a character that allows proxies. Each character's creator decides this: per JanitorAI's bot creation guide, a character with proxies turned off works only with JanitorAI's own model, JLLM, and a character whose definition is public always allows them.
  2. Open API Settings from the chat; JanitorAI's help center places it behind the gear icon at the top right. Choose the proxy option as your API source.
  3. Click Add Configuration and fill in the fields:
    • Config Name: any name you like, for example Chutes.
    • Model Name: a Chutes model ID such as zai-org/GLM-5.1-TEE. See Choosing a Model.
    • Proxy URL: https://llm.chutes.ai/v1/chat/completions, exactly as written, with no trailing slash or spaces.
    • API Key: your Chutes key, starting with cpk_, with no spaces before or after it.
    • Custom Prompt: optional. Leave it empty to start.
  4. Click Add, then Save Settings, and refresh the page.
  5. Check that the configuration shows as Active, then click Test or send a message.

Choosing a Model

A Chutes model ID is the exact string you put in Model Name, such as zai-org/GLM-5.1-TEE. Copy it exactly. To find IDs:

  • Browse chutes.ai/models. On a model's page, the API tab shows the ID in the model field of its code examples.
  • Open llm.chutes.ai/v1/models, the live model list in JSON. Each entry's id is a model ID, and the list needs no API key.

Three IDs from the live list on 2026-10-17: deepseek-ai/DeepSeek-V3.2-TEE, zai-org/GLM-5.1-TEE and moonshotai/Kimi-K2.6-TEE. They are examples, not recommendations. The catalog changes, so check the list before you pick, and update Model Name if a model you use is retired. Older guides that name models such as deepseek-ai/DeepSeek-R1 may point at IDs that are no longer in the list.

The -TEE suffix means the model runs inside a Trusted Execution Environment, confidential-compute hardware that keeps prompts and outputs encrypted in memory. Every model in the live list on 2026-10-17 was a TEE model. More on chutes.ai/tee.

Chutes does not publish JanitorAI generation presets. Good settings depend on the model; the API tab on each model page lists the request parameters it accepts.

What It Costs

JanitorAI traffic is billed like any other Chutes API use:

  • Pay-as-you-go: per-token prices, charged separately for input and output and taken from your balance. There is no minimum commitment.
  • Subscriptions: Plus at $10 per month and Pro at $20 per month each include a daily request quota. Requests beyond it are billed at pay-as-you-go rates, 6 percent off on Plus and 10 percent off on Pro.

Subscriptions are for casual use. The Terms of Service say: "Subscriptions are intended for casual, direct usage and not for use in large-scale automated inference, building production applications, or similar high-volume workloads. Acceptable use includes manual interactions and low-volume API usage." Current prices for every model are on chutes.ai/pricing.

Troubleshooting

Start with the basic checks from JanitorAI's help center: make sure the configuration is Active, click Save Settings even if nothing changed, refresh the page, then reopen the configuration and click Test. If the error persists, match it below.

SymptomLikely causeFix
The proxy configuration can't be used on one character, or its replies come from JanitorAI's own model instead of ChutesThe character's creator turned proxies off, so it works only with JLLM. This is a JanitorAI setting, not a Chutes error, and no request reaches Chutes.Chat with a character that allows proxies, such as one with a public definition, or ask the creator to allow them. Your Chutes configuration does not need to change.
401 error: "Missing or invalid authorization header(s)"The key is wrong, deleted, or pasted with extra characters.Paste the key again and check that it starts with cpk_. If it still fails, create a new key on the API Keys page.
404 Not Found, or an HTML page instead of a replyThe Proxy URL is wrong: it stops at /v1, has a typo, or uses another host such as api.chutes.ai or chutes.ai/api/v1.Set Proxy URL to exactly https://llm.chutes.ai/v1/chat/completions.
Model not found, or a model that used to work stops workingThe model ID is mistyped, or the model was retired or renamed.Copy a current ID from chutes.ai/models or llm.chutes.ai/v1/models into Model Name.
402 error, or a message about quota or balanceYour balance is empty, or your plan's quota is used up.Add credits on the Billing page, or check your plan's limits on chutes.ai/pricing.
429 error on the very first requestThe request reached Chutes without a key. Chutes rate-limits requests that carry no key.Fill in API Key, save, and test again.
429 error or a "maximum capacity" message mid-chatThe model is at capacity right now.Wait a moment and retry, or switch to another model.
503 error: "No instances available"The model has no running instances at the moment.Wait a few minutes or switch models. Platform incidents are posted on status.chutes.ai.

If you are comfortable with a terminal, you can test your key outside JanitorAI. A JSON reply with a choices array means the key, balance and model all work, so any remaining problem is in the JanitorAI configuration:

export CHUTES_API_KEY="cpk_..."

curl https://llm.chutes.ai/v1/chat/completions \
  -H "Authorization: Bearer $CHUTES_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "zai-org/GLM-5.1-TEE",
       "messages": [{"role": "user", "content": "Hello"}],
       "max_tokens": 50}'

Privacy

With a proxy configuration, JanitorAI builds each request from your chat and sends it to Chutes, and JanitorAI's own policies cover what JanitorAI stores. On the Chutes side, the Privacy Policy says: "We do not log, store, or persist the content of your API requests or responses." See chutes.ai/tee for how TEE models protect data while it is processed.

Prefer a Ready-Made Roleplay App?

If you would rather skip proxy setup, fictio is an AI character chat and roleplay platform built by Chutes.