Build requests. Diagnose responses.

Inspect an OpenAI-compatible Chat Completions JSON response or captured SSE stream locally, or prepare a redacted provider report from a complete HTTP capture. These tools run without a key or model call. The request builder prepares cURL or JSON without sending it. The optional site API test is separate.

Inspect a JSON response.

Check a JSON body or captured SSE stream for token limits, syntax and missing fields.

Runs in this browserRun the 24-fixture self-test
Invisible-character scanPositions and Unicode code points only; pasted text stays unchanged.

No listed code points found. This does not replace the JSON syntax check.

Read what each character can mean.

Checks choices[0] in a non-streaming response. Paste the response body, not an API key. Responses API objects are not supported. A complete capture beginning with HTTP/ is detected automatically: the status and headers are counted, then the JSON or SSE body is routed to the matching inspector. The original paste stays unchanged.

Optional field and HTTP checks

Names are case-sensitive. This checks presence, not a complete schema, data types or factual correctness.

0 / 128,000 characters
Run a handwritten example
Run a character-diagnostic fixture

Examples are handwritten and loaded from local fixtures. No API or model request is made.

What did the API actually return?

Paste one response and choose Inspect response. The result will explain the reported stop reason, JSON syntax and any requested fields.

Nothing is uploaded, saved in browser storage or sent to a model by this checker.

Only have an error message or a partial response? Learn how to capture the full API response.

Read the JSON troubleshooting guide

LOCAL TOOL · JSON + SSE

Compare two responses.

See field-by-field differences between two captured Chat Completions responses. This compares what you paste; it does not decide which response is correct.

Runs in this browser
Start with a sample
0 / 128,000
0 / 128,000

Both inputs stay in this tab. The comparison makes no network request, model call, or upload.

Build your request

Doubao (Volcengine Ark) starting point

The public base and example model are filled in. This small text example sets reasoning_effort to none; review the settings against your account. Read access and setup notes.

Use the exact model ID available to your provider key.

Enter that provider’s documented base URL and model ID. Its own key and billing apply. This generic text export uses max_tokens and stream: false; check your model’s documentation for other output or reasoning parameters.

cURL · OpenAI-compatible chat
curl 'https://ark.cn-beijing.volces.com/api/v3/chat/completions' \
  -H 'Authorization: Bearer YOUR_PROVIDER_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "model": "doubao-seed-2-1-pro-260915",
  "messages": [
    {
      "role": "user",
      "content": "Extract the supplier quote into JSON with these fields: supplier, quantity, currency, unit_price, moq, incoterm, port, payment, lead_time_days. Use null for missing facts. Preserve currencies and units. Do not infer shipping costs or promise delivery. Return JSON only.\n\nExample only: Cedar offers 250 units at USD 5.20 each, MOQ 200, EXW Ningbo. Payment: 30% deposit, 70% before dispatch. Lead time is not stated."
    }
  ],
  "max_tokens": 256,
  "stream": false
}'

This builder makes no API call. Site key issuance follows the current availability and free limits. Never include a real key in a shared request file.

Use these settings in n8n

Try the site’s free pool

Limited free pool available

Limited free API access is available. Daily and per-key concurrency limits apply.

At most 20 attempts per network or verified account per UTC day, sharing 200 attempts across the site. Up to 256 output tokens per request, 1 active request per key and 2 active site requests. Failed attempts count. No paid fallback.

Each API request accepts up to 6 messages, including system messages and previous history, and 6,000 characters of JSON input, including message structure, tool definitions and output schemas. Every follow-up request has the same limits. Keys expire 48 hours after creation; replacing a key does not reset daily allowance. Local tools make no model request and do not use this allowance. Use one short item; long text and batches may exceed the output limit.

Open free key access

Check a request body

Check how a body fits ChinaGenAI’s Chat Completions request rules.

Local in this browser

Local paste limit: 24,000 characters for this checker only. API request limit: 6,000 serialized characters across messages, options and tool schemas. Paste JSON only, without cURL, headers or keys. Nothing is sent or saved. 0 / 24,000

Nothing leaves this tab

The checker runs locally. It does not call the API, save your text or repeat it in the result.

Check supplier-quote fields

Fictional source for the example:

Example only: Cedar offers 250 units at USD 5.20 each, MOQ 200, EXW Ningbo. Payment: 30% deposit, 70% before dispatch. Lead time is not stated.

The starting JSON is handwritten example data, not a live model response. This checker validates fields and types, not whether a model’s claims are true.

Text stays in this page’s memory. It is not uploaded or saved by the checker.