kimi-k3
Moonshot flagship model for long-horizon coding, knowledge work, and complex agent tasks.
Overview
- Kimi K3 is a flagship model available through Moonshot’s Kimi API Platform. Its model ID is kimi-k3.
- Moonshot describes a 2.8T-parameter architecture with native visual understanding and a 1M-token context window, aimed at long-horizon coding, knowledge work, and reasoning.
Best Use Cases
- Understanding large codebases and carrying out multi-step engineering work
- Processing long documents, research material, and structured knowledge tasks
- Evaluating visual inputs, tool calls, or agent workflows
Integration Notes
- Use the GPT88 Base URL https://api.gpt88.cc, model ID kimi-k3, and endpoint /v1/chat/completions.
- Kimi K3 works with OpenAI-compatible SDKs, cURL, and agent tools. Call GET /v1/models first to confirm access for the current API key.
- Moonshot’s direct API documentation uses https://api.moonshot.ai/v1. GPT88 integrations should use the unified Base URL published by GPT88.
Usage Notes
- Model availability, routes, pricing, rate limits, and permissions are determined by the current GPT88 console configuration.
- A 1M-token context window does not mean every request should send the full context. Split work by task, reuse cached context, and monitor latency and cost.
- Validate the model on representative codebases, long documents, and tool-calling workloads before a production rollout.
Capabilities
Recommended Scenarios
- Large codebase analysis
- Long documents and research
- Complex reasoning
- Multi-step agents
Endpoint Path
The endpoint path is determined by the model category. Chat, image, video, and audio models use different endpoints.
Send requests with Authorization: Bearer <API_KEY>. See Chat Completions API for the full parameter reference.
API Docs
Headers / Auth
| Field | Type | Required | Description |
|---|---|---|---|
Authorization | string | Required | Send Bearer <GPT88_API_KEY>. Create the API key in the gpt88.cc console. |
Content-Type | string | Required | Request body format. Audio transcription uploads use multipart/form-data.Default: application/json |
Accept | string | Optional | Non-streaming requests return JSON; streaming chat requests return SSE chunks. Default: application/json or text/event-stream |
AuthorizationstringRequiredSendBearer <GPT88_API_KEY>. Create the API key in the gpt88.cc console.Content-TypestringRequiredRequest body format. Audio transcription uploads usemultipart/form-data.Default:application/jsonAcceptstringNon-streaming requests return JSON; streaming chat requests return SSE chunks.Default:application/json or text/event-stream
Chat Protocol Differences
For chat models, the protocol used by the client matters as much as the model name. Claude Code / Anthropic SDK and OpenAI SDK build different request paths.
- Base URL
- https://api.gpt88.cc
- Endpoint
- POST /v1/chat/completions
- Body
- { "model": "kimi-k3", "messages": [...] }
- Base URL
- https://api.gpt88.cc
- Endpoint
- POST /v1/messages
- Body
- { "model": "kimi-k3", "messages": [...] }
This model is usually best accessed through the OpenAI-compatible protocol. Only use the Anthropic-style path when the target tool explicitly requires it.
Request Parameters
The fields below are generated by model category. Pricing, context limits, rate limits, and available routes should be confirmed in the gpt88.cc console.
| Field | Type | Required | Description |
|---|---|---|---|
model | string | Required | Current model ID: kimi-k3. Preserve the exact casing when copying. |
messages | array<Message> | Required | Conversation history. Each message includes role and content. |
stream | boolean | Optional | Enable SSE streaming. Useful for chat interfaces and long responses. Default: false |
temperature | number | Optional | Sampling temperature. Higher values produce more variation; production workloads usually start with a fixed value. Default: 1 |
max_tokens | integer | Optional | Maximum output tokens for this request. Real context limits should be confirmed in the console. |
response_format | object | Optional | Structured output config, for example { "type": "json_object" }. |
tools | array<Tool> | Optional | Function-calling tool definitions. Availability depends on the model and account configuration. |
modelstringRequiredCurrent model ID:kimi-k3. Preserve the exact casing when copying.messagesarray<Message>RequiredConversation history. Each message includesroleandcontent.streambooleanEnable SSE streaming. Useful for chat interfaces and long responses.Default:falsetemperaturenumberSampling temperature. Higher values produce more variation; production workloads usually start with a fixed value.Default:1max_tokensintegerMaximum output tokens for this request. Real context limits should be confirmed in the console.response_formatobjectStructured output config, for example{ "type": "json_object" }.toolsarray<Tool>Function-calling tool definitions. Availability depends on the model and account configuration.
Response Fields
Response bodies generally follow OpenAI-compatible shapes. Media models may return async task IDs or resource URLs.
| Field | Type | Required | Description |
|---|---|---|---|
id | string | Required | Unique completion ID for tracing and debugging. |
object | string | Required | Usually chat.completion or a streaming chunk type. |
model | string | Required | Actual model ID that handled inference. |
choices | array<Choice> | Required | Generated choices including message, delta, and finish_reason. |
usage | object | Optional | Token usage statistics. Streaming calls may return this only at the end or in non-streaming mode. |
idstringRequiredUnique completion ID for tracing and debugging.objectstringRequiredUsuallychat.completionor a streaming chunk type.modelstringRequiredActual model ID that handled inference.choicesarray<Choice>RequiredGenerated choices includingmessage,delta, andfinish_reason.usageobjectToken usage statistics. Streaming calls may return this only at the end or in non-streaming mode.
Status Codes
| Field | Type | Required | Description |
|---|---|---|---|
200 | OK | Required | Request succeeded. See the response field table above for the response body shape. |
400 | Bad Request | Optional | Invalid request fields, such as missing required fields, unsupported image size format, or unsupported file type. |
401 | Unauthorized | Optional | API key is missing, invalid, or malformed. |
404 | Not Found | Optional | Endpoint or model not found. Confirm the path is /v1/chat/completions and the model ID is kimi-k3. |
429 | Rate Limited | Optional | Rate limit, concurrency cap, or insufficient balance. Check the console for the current allowance. |
5xx | Upstream Error | Optional | Upstream or request failure. Retry with the same Base URL and keep the request ID for debugging. |
200OKRequiredRequest succeeded. See the response field table above for the response body shape.400Bad RequestInvalid request fields, such as missing required fields, unsupported image size format, or unsupported file type.401UnauthorizedAPI key is missing, invalid, or malformed.404Not FoundEndpoint or model not found. Confirm the path is/v1/chat/completionsand the model ID iskimi-k3.429Rate LimitedRate limit, concurrency cap, or insufficient balance. Check the console for the current allowance.5xxUpstream ErrorUpstream or request failure. Retry with the same Base URL and keep the request ID for debugging.
Errors and Troubleshooting
401: verifyAuthorizationisBearer <API_KEY>and the key is still valid.404: confirm the endpoint is/v1/chat/completionsand the model IDkimi-k3is available in the console.429: reduce concurrency, shorten requests, or check balance and quota in the console.5xx: retry with the same Base URL and keep the request ID for debugging.
Request Examples
curl https://api.gpt88.cc/v1/chat/completions \
-H "Authorization: Bearer $GPT88_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kimi-k3",
"messages": [
{"role": "user", "content": "Introduce gpt88.cc in one sentence."}
]
}'Expected response (trimmed example):
{
"id": "chatcmpl-kimi-k3",
"object": "chat.completion",
"created": 1730000000,
"model": "kimi-k3",
"choices": [
{
"index": 0,
"finish_reason": "stop",
"message": { "role": "assistant", "content": "..." }
}
],
"usage": { "prompt_tokens": 24, "completion_tokens": 64, "total_tokens": 88 }
}