GLM-4.7 Flash
by zai · family glm
Facts
| Release date | 2026-01-19 |
|---|---|
| Retired date | — |
| Knowledge cutoff | — |
| Context (max) | 202,752 |
| Max output | — |
| Modalities | text → text |
| Aliases | glm-4.7-flash |
| Open weights | yes (zai-org/GLM-4.7-Flash) |
| Description | Small fast open-weight sibling of GLM-4.7 (MIT weights); ~200K context, text-only. $0.06/$0.40 per Mtok on OpenRouter; serves as Synthetic's syn:small:text default. |
Unknown values are shown as —.
Offerings
| Provider | Wire ID | Variant | Endpoint | Protocol | Status | Price (USD / Mtok) | Reasoning |
|---|---|---|---|---|---|---|---|
| IO Intelligence (io.net) | zai-org/GLM-4.7-Flash | flash | chat | openai-chat | ga | 0.06 / 0.40 | effort · default on · returns reasoning_content |
| OpenRouter | z-ai/glm-4.7-flash | flash | chat-completions | openai-chat | ga | 0.06 / 0.40 | effort · default on · returns reasoning_content · round-trips reasoning_content |
| Synthetic | hf:zai-org/GLM-4.7-Flash | flash | openai-chat | openai-chat | ga | — | effort · default on · returns reasoning_content |
| Synthetic | syn:small:text | openai-chat | openai-chat | ga | — | effort · default on · returns reasoning_content |
Reasoning controls
IO Intelligence (io.net)· zai-org/GLM-4.7-Flash· chat effort
reasoning.effort nonelowmediumhigh● Default not documented — verify.
effort · default on · returns reasoning_content
OpenRouter· z-ai/glm-4.7-flash· chat-completions effort
reasoning.effort nonelowmedium●highxhighmax
effort · default on · returns reasoning_content · round-trips reasoning_content
Synthetic· hf:zai-org/GLM-4.7-Flash· openai-chat effort
reasoning_effort lowmediumhigh●
effort · default on · returns reasoning_content
Synthetic· syn:small:text· openai-chat effort
reasoning_effort lowmediumhigh●
effort · default on · returns reasoning_content
Example requests
IO Intelligence (io.net) · openai-chat · zai-org/GLM-4.7-Flash
curl 'https://api.intelligence.io.solutions/api/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "zai-org/GLM-4.7-Flash",
"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": "zai-org/GLM-4.7-Flash",
"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": "zai-org/GLM-4.7-Flash",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning": {
"effort": "high"
}
}),
})
console.log(await resp.json())OpenRouter · openai-chat · z-ai/glm-4.7-flash
curl 'https://openrouter.ai/api/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "z-ai/glm-4.7-flash",
"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": "z-ai/glm-4.7-flash",
"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": "z-ai/glm-4.7-flash",
"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).
Synthetic · openai-chat · hf:zai-org/GLM-4.7-Flash
curl 'https://api.synthetic.new/openai/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "hf:zai-org/GLM-4.7-Flash",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning_effort": "high"
}'Python (requests)
import requests
resp = requests.post(
"https://api.synthetic.new/openai/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "hf:zai-org/GLM-4.7-Flash",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning_effort": "high"
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://api.synthetic.new/openai/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "hf:zai-org/GLM-4.7-Flash",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning_effort": "high"
}),
})
console.log(await resp.json())Synthetic · openai-chat · syn:small:text
curl 'https://api.synthetic.new/openai/v1/chat/completions' \
-H 'Authorization: Bearer <YOUR_API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "syn:small:text",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning_effort": "high"
}'Python (requests)
import requests
resp = requests.post(
"https://api.synthetic.new/openai/v1/chat/completions",
headers={
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
json={
"model": "syn:small:text",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning_effort": "high"
},
)
print(resp.json())TypeScript (fetch)
const resp = await fetch("https://api.synthetic.new/openai/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <YOUR_API_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "syn:small:text",
"messages": [
{
"role": "user",
"content": "Tell me about the weather."
}
],
"reasoning_effort": "high"
}),
})
console.log(await resp.json())