Kimi uses the same universal gd-… key, Guard API address, and shared USD balance as Claude. No separate Kimi key is required.
| Parameter | Value |
|---|---|
| Base URL | https://api.guardrelay.ai/v1 |
| Authorization | Authorization: Bearer gd-… |
| Model catalog | GET /v1/models |
| Generation | POST /v1/chat/completions, POST /v1/messages, POST /v1/responses |
| Token count (free) | POST /v1/messages/count_tokens |
| File upload | POST /v1/files |
| Web search | POST /v1/kimi/search |
| Page fetch | POST /v1/kimi/fetch |
| Model | API ID | Context window |
|---|---|---|
| Kimi K3 | k3 | 1,048,576 tokens |
| Kimi K3-256K | k3-256k | 262,144 tokens |
| Kimi K2.7 Code | kimi-for-coding | 262,144 tokens |
| Kimi K2.7 Code HighSpeed | kimi-for-coding-highspeed | 262,144 tokens |
Kimi has an independent server-prompt entitlement and option; changes do not affect Claude, Composer or Grok. A prompt applies only with an active entitlement, enabled option and suitable text. Otherwise the request proceeds without it.
bash
curl -X POST https://api.guardrelay.ai/v1/chat/completions \
-H "Authorization: Bearer $GUARD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "k3",
"messages": [{"role": "user", "content": "Hello!"}],
"max_tokens": 128
}'Python · OpenAI SDKReady example and Base URLNode.js · OpenAI SDKReady example and Base URLChat CompletionsRequest fields and exampleFiles, search, and pagesUploading a document,
input_file, search and fetchStreaming and usageWhy usage may appear twicePrices and reserveLive rates and hold formulaErrorsCodes and safe retry guidance