NewKling V4, Kimi K3.1 Pro and DeepSeek V4.1 Flash are now available.

Tchavi
ModelsPricingDocumentationBlog
Tchavi
  • Why Tchavi
  • Models
  • Pricing

Tchavi is an OpenAI-compatible AI API: 120+ models, from text to video, topped up with mobile money in FCFA or your local currency, no bank card needed.

  • support@tchavi.com
  • Support

Popular models

  • GPT-6 Sol API
  • Claude Sonnet 5.5 API
  • Claude Opus 5.5 API
  • Gemini 4 Argon API
  • DeepSeek V4.1 Flash API
  • Nano Banana 2.1 (images)
  • GPT Image 2 (images)
  • Wan 3.0 (video)
  • All 120+ models

Developers

  • Quickstart
  • API Reference
  • Claude Code
  • Cursor
  • SDKs

Resources

  • Documentation
  • Blog
  • Image models
  • Video models
  • Audio models
  • Mobile money payments
  • Pay for AI APIs with M-Pesa
  • Claude Code with mobile money

Legal

  • Privacy
  • Terms of Service

APIs by creator

  • OpenAI API
  • Gemini API
  • Claude API
  • Qwen API
  • DeepSeek API
  • Seedance API
  • MiniMax API
  • Mistral API

Mobile money payments · Available in 12 countries: Benin, Cameroon, Congo, Côte d'Ivoire, DR Congo, Gabon, Kenya, Rwanda, Senegal, Sierra Leone, Uganda, and Zambia. Operators: Moov Money, MTN MoMo, Airtel Money, Orange Money, M-Pesa, Free Money, and Zamtel Kwacha.

© 2026 Tchavi. All rights reserved.

We use cookies to enhance your experience, provide personalised content, and analyse our traffic; see our Cookie Policy.

Back to models

GPT-6.1 Terra

openai/gpt-6.1-terra

1M tokens of context, images, documents and tools

GPT-6.1 Terra is an OpenAI model with a 1.05M-token context window and up to 128K tokens of output. It reads text, images and files, returns structured JSON, calls function tools and lets you choose how much it reasons, from none to higher efforts.

Modalities
Input / Output
2.195 / 10.975cr / 1K
Context window
1.1M
Released
Oct 13, 2026
Capabilities
  • Tools
  • JSON mode
  • Vision
  • PDF
  • Streaming
  • Prompt caching· read 0.11 cr / 1K

It suits the work that comes in volume: extracting fields from documents, classifying and tagging, drafting replies, first-pass code review, long-context questions over a whole archive. Repeated context is billed at a reduced cached rate.

On Tchavi you pay with mobile money, no bank card and no KYC, and credits never expire. One account and one API key open 100+ models: change the base URL, keep your OpenAI SDK.

What this model does well

  • 📚

    1.05M token context

    A whole repository, a year of tickets or forty invoices in one call

  • 👁️

    Images and documents

    Reads screenshots, scans and attached files alongside text

  • 🛠️

    Tools + JSON

    Function calling and structured JSON output

  • 🧠

    Adjustable reasoning

    Choose the effort per request: none for volume work, more when the task needs it

  • 📤

    128K output

    Long enough for a full report or a migration diff in one pass

  • 💾

    Cached input

    Repeated context is read from cache at a reduced rate

Example prompts

  • Here are 200 support tickets. Return one JSON object per ticket with area, intent and urgency, and flag any that mention a payment that was debited but not credited.

  • Read this scanned supplier invoice and return its lines and total as JSON, flagging any total that does not match the lines.

Good to know

  • Function tools run with reasoning switched off. On /v1/chat/completions OpenAI accepts tools for Terra only at `reasoning_effort: 'none'`, so Tchavi sets it when you send tools without choosing an effort. Set another effort yourself and OpenAI rejects the request.
  • Prompts over 272K input tokens are billed at a higher rate for the whole request: input and output both cost more above that size.
  • Sampling parameters are ignored. This model rejects temperature and top_p, so Tchavi drops them rather than letting the request fail.

Technical specifications

Author
openai
API identifier
gpt-6.1-terra
Category
Chat & Text
Context window
1,050,000 tokens
Max output
128,000 tokens
Rate limit
500 RPM
Billing unit
token
Streaming
Yes

Ideal for

  • Extracting fields from invoices, SMS and contracts
  • Classifying and tagging tickets at volume
  • Drafting support replies
  • Long document and archive analysis
  • Tool-calling agents with a large context

Ready to try it?

Test this model in the playground, no setup needed.

Frequently asked questions

Can I pay with mobile money, without a bank card?

Yes. Top up your Tchavi account with Orange Money, MTN MoMo, M-Pesa or another mobile money operator. No bank card is needed. Credits land as soon as the payment is confirmed and are deducted as you use them.

Is the API compatible with OpenAI's?

Yes. Keep your current OpenAI SDK, just change the base URL to Tchavi's (shown in the API tab) and use your Tchavi key. The rest of your code stays the same.

API

import Tchavi from '@tchavi/sdk';

const client = new Tchavi({ apiKey: 'API_KEY' });

const response = await client.chat.completions.create({
  model: 'gpt-6.1-terra',
  messages: [
  {
    "role": "user",
    "content": "Hello!"
  }
],
});

console.log(response.choices[0].message.content);
console.log('Credits used:', response.tchavi.credits_used);

API parameters

Every parameter this model accepts on the API. Check the SDK for full typings.

modelRequired
string

ID of the chat model (e.g. `gpt-6.1-terra`).

messagesRequired
Array<{ role, content }>

Conversation messages. Each item has a `role` (system/user/assistant) and a `content` that's either a plain string or an array of content blocks (`text`, `image_url`, `document_url`).

temperature
number
Default: 1

Sampling temperature between 0 and 2. Higher values = more random.

max_tokens
integer

Maximum number of tokens to generate in the response.

max_completion_tokens
integer

OpenAI alias for `max_tokens`. Either field works; if both are sent, `max_completion_tokens` wins.

stream
boolean
Default: false

If true, partial message deltas are streamed as Server-Sent Events.

tools
Array<{ type, function }>

Function-calling toolbox. Pass an array of `{ type: "function", function: { name, description, parameters } }`. Returned tool calls land in `choices[].message.tool_calls`. Only models with `supportsTools: true` accept this.

tool_choice
"auto" | "none" | { type, function }

How the model picks among tools: `"auto"` (default), `"none"` to force a plain text reply, or `{ type: "function", function: { name } }` to force a specific tool. Only with `supportsTools: true`.

response_format
{ type: "json_object" | "text" }

Constrain the output. Pass `{ type: "json_object" }` to force valid JSON (the model still needs a JSON instruction in your prompt). Only models with `supportsJsonMode: true` honour this.

reasoning_effort
"low" | "medium" | "high"

Reasoning depth on OpenAI o-series / GPT-5 reasoning models. Values `"low"`, `"medium"`, `"high"`. Silently ignored by non-reasoning OpenAI models.

Show all parameters (22)
top_p
number
Default: 1

Nucleus sampling: only tokens in the top `top_p` probability mass are considered.

seed
integer

Integer seed for deterministic output. The same seed + identical request yields the same completion when supported by the provider. OpenAI honours it; Anthropic ignores.

n
integer
Default: 1

Number of completions to generate in one call. Defaults to 1; each extra completion is billed.

stream_options
{ include_usage?: boolean }

Streaming options, e.g. `{ "include_usage": true }` to receive a final SSE chunk with usage counts. Effective only when `stream: true`.

stop
string | string[]

Up to 4 sequences where the API will stop generating further tokens.

frequency_penalty
number
Default: 0

Between -2.0 and 2.0. Positive values penalize tokens that have appeared frequently.

presence_penalty
number
Default: 0

Between -2.0 and 2.0. Positive values encourage the model to talk about new topics.

user
string

End-user identifier passed to the upstream provider for abuse / moderation tracking. Should be stable per end-user.

logit_bias
Record<string, number>

Per-token logit bias `{ "<tokenId>": <-100..100>, ... }`. OpenAI-specific; Anthropic ignores silently.

messages[].content[].image_url
string

Attach an image on a user message. Pass a content block `{ "type": "image_url", "image_url": { "url": ... } }`. PNG / JPEG / WebP, up to 4 per request. Only models with `supportsImageInput: true` accept this block (e.g. `gpt-4o`, `claude-opus-4-7`).

messages[].content[].document_url
string

Attach a PDF on a user message. Pass a content block `{ "type": "document_url", "document_url": { "url": ... } }`. Up to 5 PDFs per request. Only models with `supportsDocuments: true` accept this block (e.g. `claude-sonnet-4-6`, `gpt-4.1`).

parallel_tool_calls
boolean
Default: true

Whether the model may call multiple tools in parallel within one turn. Set `false` to force serial tool calls. Only with `supportsTools: true` (OpenAI).

Pricing

per 1,000 tokens
2.195 credits
Input 2.195 · Output 10.975 cr/1K

How billing works

  • Billed per token used, down to a thousandth of a credit.
  • A typical message (500 in, 150 out) costs about —, or 2.744 credits.
  • Prompt cache reads: — per 1K tokens (0.11 credits).

Long-prompt pricing

This model costs more upstream once a prompt passes a threshold, and we pass that through rather than cap the window or raise the price for everyone. The rate above is the first band.

Prompt lengthInput / 1KOutput / 1K
Under 272K tokens
272K tokens and above

The threshold counts every input token on the request, cached ones included — a 95K cache hit plus 10K of new prompt is a 105K prompt. Output is priced by the prompt’s length, so a long prompt with a short answer still pays the higher output rate.

Real-world scenarios
Per day
Per week
Per month

Estimated over 30 days, for a typical message: ~500 input + ~150 output tokens, billed to the thousandth of a credit.

A 10 000 F CFA top-up gives you about ~10 934 questions. Pay with Orange Money, MTN MoMo or M-Pesa — no Visa card needed.

Ready to use GPT-6.1 Terra?

Create your accountAPI Documentation

Bonus credits on your first top-up · No card to sign up