Kimi K2.7 Code
by moonshot · family kimi
Facts
| Release date | 2026-06-12 |
|---|---|
| Retired date | — |
| Knowledge cutoff | — |
| Context (max) | 262,144 |
| Max output | — |
| Modalities | text, image, video → text |
| Aliases | kimi-k2.7-code |
| Open weights | no |
| Description | Current coding model (~180 tok/s); text/image/video input; thinking.type accepts only enabled. Release date per third-party reporting. |
Unknown values are shown as —.
Intelligence Index v4.1.1: 43 · base · Source: Artificial Analysis (accessed 2026-08-20)
Offerings
| Provider | Wire ID | Variant | Endpoint | Protocol | Status | Price (USD / Mtok) | Reasoning |
|---|---|---|---|---|---|---|---|
| Alibaba Token Plan | kimi-k2.7-code | compatible-mode | openai-chat | ga | — | toggle · default on · returns reasoning_content · round-trips reasoning_content | |
| IO Intelligence (io.net) | moonshotai/Kimi-K2.7-Code | chat | openai-chat | ga | 1.01 / 4.51 | effort · default on · mandatory · returns reasoning_content | |
| Kimi for Coding | kimi-for-coding-highspeed | highspeed | coding-openai | openai-chat | ga | — | toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content |
| Kimi for Coding | kimi-for-coding | coding-openai | openai-chat | ga | — | toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content | |
| Moonshot Kimi | kimi-k2.7-code | anthropic | anthropic-messages | ga | 0.95 / 4.00 | toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content | |
| Moonshot Kimi | kimi-k2.7-code-highspeed | highspeed | chat-completions | openai-chat | ga | 1.90 / 8.00 | toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content |
| Moonshot Kimi | kimi-k2.7-code | chat-completions | openai-chat | ga | 0.95 / 4.00 | toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content | |
| Ollama Cloud | kimi-k2.7-code | v1-chat-completions | openai-chat | ga | — | effort · default on · returns hidden | |
| OpenCode Go | kimi-k2.7-code | go-chat-completions | openai-chat | ga | — | toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content | |
| OpenCode Zen | kimi-k2.7-code | chat-completions | openai-chat | ga | 0.95 / 4.00 | toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content | |
| OpenRouter | moonshotai/kimi-k2.7-code | chat-completions | openai-chat | ga | 0.71 / 3.50 | effort · default on · mandatory · returns reasoning_content · round-trips reasoning_content |
Reasoning controls
Alibaba Token Plan· kimi-k2.7-code· compatible-mode toggle
enable_thinking on true · off false
toggle · default on · returns reasoning_content · round-trips reasoning_content
IO Intelligence (io.net)· moonshotai/Kimi-K2.7-Code· chat effort
reasoning.effort lowmediumhigh● Default not documented — verify.
effort · default on · mandatory · returns reasoning_content
Kimi for Coding· kimi-for-coding-highspeed· coding-openai toggle
thinking.type on enabled · off
toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content
Kimi for Coding· kimi-for-coding· coding-openai toggle
thinking.type on enabled · off
toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content
Moonshot Kimi· kimi-k2.7-code· anthropic toggle
thinking.type on enabled · off
toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content
Moonshot Kimi· kimi-k2.7-code-highspeed· chat-completions toggle
thinking.type on enabled · off
toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content
Incompatible with: temperature, top_p, n, presence_penalty, frequency_penalty
Moonshot Kimi· kimi-k2.7-code· chat-completions toggle
thinking.type on enabled · off
toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content
Incompatible with: temperature, top_p, n, presence_penalty, frequency_penalty
Ollama Cloud· kimi-k2.7-code· v1-chat-completions effort
reasoning_effort nonelowmediumhigh●max Default level not documented; verify.
effort · default on · returns hidden
OpenCode Go· kimi-k2.7-code· go-chat-completions toggle
thinking.type on enabled · off
toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content
Incompatible with: temperature, top_p, n, presence_penalty, frequency_penalty
OpenCode Zen· kimi-k2.7-code· chat-completions toggle
thinking.type on enabled · off
toggle · default on · mandatory · returns reasoning_content · round-trips reasoning_content
Incompatible with: temperature, top_p, n, presence_penalty, frequency_penalty
OpenRouter· moonshotai/kimi-k2.7-code· chat-completions effort
reasoning.effort lowmedium●highxhighmax
effort · default on · mandatory · returns reasoning_content · round-trips reasoning_content
Example requests
Alibaba Token Plan · openai-chat · kimi-k2.7-code
curl 'https://token-plan.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"enable_thinking": true
}'Python (requests)
import requests
resp = requests.post(
"https://token-plan.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"enable_thinking": true
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://token-plan.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"enable_thinking": true
}),
})
console.log(await resp.json())- ⚠ Responses include
reasoning_contentartifacts — pass them back unmodified on subsequent turns (dropping them triggers 400s or quality loss).
IO Intelligence (io.net) · openai-chat · moonshotai/Kimi-K2.7-Code
curl 'https://api.intelligence.io.solutions/api/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "moonshotai/Kimi-K2.7-Code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning": {
"effort": "high"
}
}'Python (requests)
import requests
resp = requests.post(
"https://api.intelligence.io.solutions/api/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "moonshotai/Kimi-K2.7-Code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning": {
"effort": "high"
}
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://api.intelligence.io.solutions/api/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "moonshotai/Kimi-K2.7-Code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning": {
"effort": "high"
}
}),
})
console.log(await resp.json())Kimi for Coding · openai-chat · kimi-for-coding-highspeed
curl 'https://api.kimi.com/coding/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "kimi-for-coding-highspeed",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}'Python (requests)
import requests
resp = requests.post(
"https://api.kimi.com/coding/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "kimi-for-coding-highspeed",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://api.kimi.com/coding/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "kimi-for-coding-highspeed",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}),
})
console.log(await resp.json())- ⚠ Responses include
reasoning_contentartifacts — pass them back unmodified on subsequent turns (dropping them triggers 400s or quality loss).
Kimi for Coding · openai-chat · kimi-for-coding
curl 'https://api.kimi.com/coding/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "kimi-for-coding",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}'Python (requests)
import requests
resp = requests.post(
"https://api.kimi.com/coding/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "kimi-for-coding",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://api.kimi.com/coding/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "kimi-for-coding",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}),
})
console.log(await resp.json())- ⚠ Responses include
reasoning_contentartifacts — pass them back unmodified on subsequent turns (dropping them triggers 400s or quality loss).
Moonshot Kimi · anthropic-messages · kimi-k2.7-code
curl 'https://api.moonshot.ai/anthropic' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "kimi-k2.7-code",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}'Python (requests)
import requests
resp = requests.post(
"https://api.moonshot.ai/anthropic",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "kimi-k2.7-code",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://api.moonshot.ai/anthropic", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "kimi-k2.7-code",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}),
})
console.log(await resp.json())- ⚠ Responses include
reasoning_contentartifacts — pass them back unmodified on subsequent turns (dropping them triggers 400s or quality loss).
Moonshot Kimi · openai-chat · kimi-k2.7-code-highspeed
curl 'https://api.moonshot.ai/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "kimi-k2.7-code-highspeed",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}'Python (requests)
import requests
resp = requests.post(
"https://api.moonshot.ai/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "kimi-k2.7-code-highspeed",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://api.moonshot.ai/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "kimi-k2.7-code-highspeed",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}),
})
console.log(await resp.json())- ⚠ Responses include
reasoning_contentartifacts — pass them back unmodified on subsequent turns (dropping them triggers 400s or quality loss). - Reported incompatible with thinking controls: temperature, top_p, n, presence_penalty, frequency_penalty.
Moonshot Kimi · openai-chat · kimi-k2.7-code
curl 'https://api.moonshot.ai/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}'Python (requests)
import requests
resp = requests.post(
"https://api.moonshot.ai/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://api.moonshot.ai/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}),
})
console.log(await resp.json())- ⚠ Responses include
reasoning_contentartifacts — pass them back unmodified on subsequent turns (dropping them triggers 400s or quality loss). - Reported incompatible with thinking controls: temperature, top_p, n, presence_penalty, frequency_penalty.
Ollama Cloud · openai-chat · kimi-k2.7-code
curl 'https://ollama.com/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning_effort": "high"
}'Python (requests)
import requests
resp = requests.post(
"https://ollama.com/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning_effort": "high"
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://ollama.com/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning_effort": "high"
}),
})
console.log(await resp.json())OpenCode Go · openai-chat · kimi-k2.7-code
curl 'https://opencode.ai/zen/go/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}'Python (requests)
import requests
resp = requests.post(
"https://opencode.ai/zen/go/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://opencode.ai/zen/go/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}),
})
console.log(await resp.json())- ⚠ Responses include
reasoning_contentartifacts — pass them back unmodified on subsequent turns (dropping them triggers 400s or quality loss). - Reported incompatible with thinking controls: temperature, top_p, n, presence_penalty, frequency_penalty.
OpenCode Zen · openai-chat · kimi-k2.7-code
curl 'https://opencode.ai/zen/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}'Python (requests)
import requests
resp = requests.post(
"https://opencode.ai/zen/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://opencode.ai/zen/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"thinking": {
"type": "enabled"
}
}),
})
console.log(await resp.json())- ⚠ Responses include
reasoning_contentartifacts — pass them back unmodified on subsequent turns (dropping them triggers 400s or quality loss). - Reported incompatible with thinking controls: temperature, top_p, n, presence_penalty, frequency_penalty.
OpenRouter · openai-chat · moonshotai/kimi-k2.7-code
curl 'https://openrouter.ai/api/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "moonshotai/kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning": {
"effort": "medium"
}
}'Python (requests)
import requests
resp = requests.post(
"https://openrouter.ai/api/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "moonshotai/kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning": {
"effort": "medium"
}
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://openrouter.ai/api/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "moonshotai/kimi-k2.7-code",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning": {
"effort": "medium"
}
}),
})
console.log(await resp.json())- ⚠ Responses include
reasoning_contentartifacts — pass them back unmodified on subsequent turns (dropping them triggers 400s or quality loss).