Last updated: September 2026

Jev rate limits and context window

Jev takes 64,000 tokens per request, of which 32,000 is the budget for the state plus the longest question. The account limits are 250,000 tokens per second and 1,200 requests per minute. Input is text only. Input tokens cost $0.042 per 1M, output tokens are free, and there is no free tier.

Every figure on this page, including the summary above, is from TypeSafe's models page and API reference, read on 18 September 2026. The last section works out which limit actually binds you.

Token budget per request

Limit
Value
Note
Total tokens per request
64,000
State plus every question in the request.
State plus the longest question
32,000
The binding constraint on how much content one call can judge.
Character equivalent of the 32k budget
about 150,000 English characters
TypeSafe's own rule of thumb in the primitives docs.
Questions per request
Not documented
The token budget is the only stated constraint. No maximum question count is published.
Output tokens
Unmetered
Answers are small and fixed-shape. They are not billed.

Account rate limits

Limit
Value
Note
Tokens per second
250,000
Input tokens, across your account.
Requests per minute
1,200
Equivalent to 20 requests per second sustained.
Stability
Adjusting dynamically
The docs say limits are adjusted dynamically and may change without notice. Do not hard-code them as guarantees.

Schema and modality limits

Limit
Value
Choice options
255 maximum
Score levels
2 minimum, 10 maximum
Noul answer fields
One float named noul. No confidence field.
Input modality
Text only. String, JSON object, or array of text values.
Images, audio, video
Not supported as input.
Languages
English is primary. Other languages including CJK are handled but not equally well.

What each primitive returns, and how the criteria are shaped, is in Choice vs Score vs Noul.

Model strings

model
What it is
jev-1.13.0
The current pinned version. Use this one in production.
jev-latest
Alias, currently pointing at jev-1.13.0. Moves without warning.
jev-preview
Alias, currently the same as jev-latest.

Pin the version, do not ride the alias

Confidence thresholds are tuned against a specific model. When jev-latest moves to a new version, every threshold you calibrated moves with it and nothing in your logs says so. Send jev-1.13.0 and record it with each answer.

SDK defaults

Setting
Value
Python package
typesafe-sdk, Python 3.10 or newer
JavaScript package
@typesafe-ai/sdk, Node 20 or newer
API key env var
TYPESAFE_API_KEY
Base URL env var
TYPESAFE_BASE_URL, default https://api.typesafe.ai
Default model
jev-latest, overridable with TYPESAFE_DEFAULT_MODEL
Default timeout
10.0 seconds

The 10 second default timeout is generous against the 70ms to 500ms TypeSafe publishes for end-to-end response time. If Jev sits in a request path a user is waiting on, set it lower and retry once, because a scorer that hangs is worse than a scorer that says it could not score.

Pricing

Item
Value
Input tokens
$0.042 per 1M, which is $42 per billion
Output tokens
Free. TypeSafe calls them too cheap to meter.
Free tier
None published. There is no documented free allowance or trial.
Access
Early access, waitlist-gated on the direct API since 2026-09-15.

Source: typesafe.ai and docs.typesafe.ai/models, September 2026. Ways in that skip the waitlist are on the API access page.

Errors

Code
Meaning
What to do
401
Missing or invalid API key
Do not retry. Check the Authorization header and TYPESAFE_API_KEY.
422
Validation failure in the request body
Do not retry. Usually a criteria shape: a map where an array belongs, or more than 10 Score levels.
429
Rate limit exceeded
Retry with exponential backoff. You hit the requests-per-minute or tokens-per-second ceiling.
529
TypeSafe temporarily overloaded
Retry with backoff. Not your fault and not your quota.

What the limits mean in practice

Two ceilings run at once: 250,000 tokens per second and 1,200 requests per minute. Convert both to a minute and they cross at a single number. 1,200 requests a minute against 15,000,000 tokens a minute is 12,500 input tokens per request. Below that, the request cap binds and the token budget goes unused. Above it, the token cap binds and you never reach 1,200 requests.

The caps are TypeSafe's published figures. The throughput column is our arithmetic on them, not a measurement.

Input tokens per request
Token budget allows
Cap that binds
Real throughput
430 (one X post plus seven questions)
34,900 requests per minute
Requests per minute
1,200 per minute
2,000
7,500 requests per minute
Requests per minute
1,200 per minute
12,500
1,200 requests per minute
Both, exactly
1,200 per minute
32,000 (the state ceiling)
468 requests per minute
Tokens per second
468 per minute

Social content sits at the far left of that table. A post at X's 280-character limit is somewhere around 70 tokens, and a seven-question request over one is about 430 input tokens. At that size you are 29 times under the token ceiling and pinned to the request cap, which works out on the published caps at 1,200 posts a minute, 72,000 an hour, one post per request.

The fix for the request cap is questions, not requests. All the questions in one request are evaluated in the same parallel pass and share one copy of the state, so attaching an eighth question to an existing call costs you its own tokens and nothing else. TypeSafe's fan-out cookbook measured 13 questions in one request at 12.2x cheaper and 10.0x faster than asking them separately, with no change in the answers. If you are near 1,200 requests a minute, look for two calls about the same state that could be one.

The 32k state budget is not your problem on social

32,000 tokens is roughly 150,000 English characters, which is more than 500 posts at X's 280-character limit. The state ceiling bites on long documents, transcripts and PDFs, not on posts and replies. What does bite on social is the opposite: TypeSafe documents that irrelevant context degrades accuracy, so send the post and the platform, not the thread and the account history.

What it costs at those volumes

Workload
Input tokens
Cost
A 430-token request
about 430
$0.000018
1,000 posts
430,000
$0.018
10,000 posts a day, for a month
129M
$5.42
1,000,000 posts
430M
$18.06
One hour flat out at 1,200 requests a minute
31.0M
$1.30

Our arithmetic on TypeSafe's published $0.042 per 1M input tokens, at about 430 input tokens for a short post carrying seven questions. Output tokens are free, so they are not in the arithmetic.

The number worth carrying around: running out of rate limit costs about $1.30 an hour. Cost is not the constraint at social volume. The request cap is, and after that, whether the answers are right. That question is a different page.

backoff.ts
// 429 and 529 are the only two worth retrying.
// 401 and 422 are your request, not the service.
const RETRYABLE = new Set([429, 529]);

async function ask(body: unknown, attempt = 0): Promise<Response> {
  const res = await fetch('https://api.typesafe.ai/v1/systemone', {
    method: 'POST',
    headers: {
      Authorization: `Bearer ${process.env.TYPESAFE_API_KEY}`,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify(body),
  });

  if (RETRYABLE.has(res.status) && attempt < 3) {
    await new Promise((r) => setTimeout(r, 200 * 2 ** attempt));
    return ask(body, attempt + 1);
  }

  return res;
}

One request, seven questions

Will it go viral? is the 430-token request from the table above, running live and free with no signup. The OpenTweet API has its own rate limits, per plan, and publishes to X, Bluesky and LinkedIn in one call.