GLM 5.3 Flash
glm-5.3-flashUse the GLM 5.3 Flash API for vision-language chat. Send text and supported images to get a text response on a vision-enabled route. Build assistants that interpret screenshots or answer questions about images. Compare the available provider routes, request examples, and usage prices on OpenAny.
- Published price
- From $0.099 / 1M tokens
- Billing unit
- / 1M tokens
- Context / Max output
- — / —
- Listed routes
- 2
Other parameters (13)
Result preview
Neolink · 167ms
Response example. Run to see the actual response.
{
"id": "ec57729c-75ab-4d58-bb16-24305e482df7",
"model": "glm-5.3",
"usage": {
"total_tokens": 263,
"prompt_tokens": 13,
"completion_tokens": 250,
"prompt_tokens_details": {
"cached_tokens": 0
},
"completion_tokens_details": {
"reasoning_tokens": 213
}
},
"object": "chat.completion",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! I'm your GLM model trained by Z.ai. How can I help you today? Feel free to ask any questions or share topics you'd like to discuss.",
"reasoning_content": "Let me consider how to respond to this greeting effectively.\n\nThe user has initiated contact with a simple \"hello,\" which suggests they may be testing the waters or just starting the conversation. This calls for a warm and inviting response that encourages further interaction.\n\nI should acknowledge their greeting in a friendly way and make them feel welcome to share more about what they need help with. It would be good to keep the tone approachable and professional, while also being open to various types of questions they might have.\n\nSince they haven't specified any particular topic or question, I should keep my response flexible and inviting. Perhaps I could offer some guidance on what I can assist with, while leaving the door open for them to direct the conversation.\n\nThe response should be concise yet welcoming, making it easy for them to continue the dialogue if they wish. I want to strike a balance between being helpful and not overwhelming them with too much information.\n\nLet me craft a response that is warm, professional, and open-ended - something that makes them feel comfortable sharing more about what they're looking for."
},
"finish_reason": "stop"
}
],
"created": 1787113497,
"openmodels_cost": 9944
}- Base URL
https://api.openany.si/v1- POST
/v1/chat/completions- Authentication
Authorization: Bearer $OPENANY_API_KEY
Request parameters
| Parameter | Type / range | Default value | Required | Description |
|---|---|---|---|---|
messages | array | — | Yes | The conversation messages |
model | string | — | Yes | The model to use |
frequency_penalty | number · -2 ~ 2 | 0 | No | Penalty for repeated tokens |
max_completion_tokens | integer · >= 1 | — | No | Maximum visible completion tokens |
max_tokens | integer · >= 1 | — | No | Maximum completion tokens |
n | integer · 1 ~ 128 | 1 | No | Number of choices to generate |
presence_penalty | number · -2 ~ 2 | 0 | No | Penalty for previously used tokens |
response_format | object | — | No | Format constraint for the response |
route | object | — | No | OpenAny route configuration, including provider and other routing parameters |
route_mode | string | — | No | The mode for routing the request |
seed | integer | — | No | Seed for deterministic sampling |
stop | string | array | — | No | Sequences that stop generation |
stream | boolean | false | No | Whether to stream the response |
temperature | number · 0 ~ 2 | 1 | No | Sampling temperature |
tool_choice | string | object · none | auto | required | — | No | Tool selection policy: string modes none, auto, or required, or an object selecting a specific tool |
tools | array | — | No | Tools available to the model |
top_p | number · 0 ~ 1 | 1 | No | Nucleus sampling probability |
Request example
curl 'https://api.openany.si/v1/chat/completions' \
-H "Authorization: Bearer $OPENANY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"messages": [
{
"content": "Hello!",
"role": "user"
}
],
"model": "glm-5.3-flash",
"route_mode": "balanced",
"frequency_penalty": 0,
"n": 1,
"presence_penalty": 0,
"stream": false,
"temperature": 1,
"top_p": 1
}'Response example
Configured response example · not a live result
{
"id": "ec57729c-75ab-4d58-bb16-24305e482df7",
"model": "glm-5.3",
"usage": {
"total_tokens": 263,
"prompt_tokens": 13,
"completion_tokens": 250,
"prompt_tokens_details": {
"cached_tokens": 0
},
"completion_tokens_details": {
"reasoning_tokens": 213
}
},
"object": "chat.completion",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! I'm your GLM model trained by Z.ai. How can I help you today? Feel free to ask any questions or share topics you'd like to discuss.",
"reasoning_content": "Let me consider how to respond to this greeting effectively.\n\nThe user has initiated contact with a simple \"hello,\" which suggests they may be testing the waters or just starting the conversation. This calls for a warm and inviting response that encourages further interaction.\n\nI should acknowledge their greeting in a friendly way and make them feel welcome to share more about what they need help with. It would be good to keep the tone approachable and professional, while also being open to various types of questions they might have.\n\nSince they haven't specified any particular topic or question, I should keep my response flexible and inviting. Perhaps I could offer some guidance on what I can assist with, while leaving the door open for them to direct the conversation.\n\nThe response should be concise yet welcoming, making it easy for them to continue the dialogue if they wish. I want to strike a balance between being helpful and not overwhelming them with too much information.\n\nLet me craft a response that is warm, professional, and open-ended - something that makes them feel comfortable sharing more about what they're looking for."
},
"finish_reason": "stop"
}
],
"created": 1787113497,
"openmodels_cost": 9944
}Error handling
400Check the model ID and request fields.429Retry with exponential backoff.5xxRetry only temporary provider failures.JSON Schema
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"model",
"messages"
],
"properties": {
"n": {
"type": "integer",
"default": 1,
"maximum": 128,
"minimum": 1,
"description": "Number of choices to generate"
},
"seed": {
"type": "integer",
"description": "Seed for deterministic sampling"
},
"stop": {
"type": [
"string",
"array"
],
"items": {
"type": "string"
},
"description": "Sequences that stop generation"
},
"model": {
"type": "string",
"description": "The model to use"
},
"route": {
"type": "object",
"description": "OpenAny route configuration, including provider and other routing parameters"
},
"tools": {
"type": "array",
"items": {
"type": "object"
},
"description": "Tools available to the model"
},
"top_p": {
"type": "number",
"default": 1,
"maximum": 1,
"minimum": 0,
"description": "Nucleus sampling probability"
},
"stream": {
"type": "boolean",
"default": false,
"description": "Whether to stream the response"
},
"messages": {
"type": "array",
"items": {
"type": "object"
},
"description": "The conversation messages"
},
"max_tokens": {
"type": "integer",
"minimum": 1,
"description": "Maximum completion tokens"
},
"route_mode": {
"type": "string",
"description": "The mode for routing the request"
},
"temperature": {
"type": "number",
"default": 1,
"maximum": 2,
"minimum": 0,
"description": "Sampling temperature"
},
"tool_choice": {
"enum": [
"none",
"auto",
"required"
],
"type": [
"string",
"object"
],
"description": "Tool selection policy: string modes none, auto, or required, or an object selecting a specific tool"
},
"response_format": {
"type": "object",
"description": "Format constraint for the response"
},
"presence_penalty": {
"type": "number",
"default": 0,
"maximum": 2,
"minimum": -2,
"description": "Penalty for previously used tokens"
},
"frequency_penalty": {
"type": "number",
"default": 0,
"maximum": 2,
"minimum": -2,
"description": "Penalty for repeated tokens"
},
"max_completion_tokens": {
"type": "integer",
"minimum": 1,
"description": "Maximum visible completion tokens"
}
}
}Request example
POST /v1/chat/completionscurl 'https://api.openany.si/v1/chat/completions' \
-H "Authorization: Bearer $OPENANY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"messages": [
{
"content": "Hello!",
"role": "user"
}
],
"model": "glm-5.3-flash",
"route_mode": "balanced",
"frequency_penalty": 0,
"n": 1,
"presence_penalty": 0,
"stream": false,
"temperature": 1,
"top_p": 1
}'Model API questions
How do I call GLM 5.3 Flash through OpenAny?
Use model ID glm-5.3-flash with an OpenAny key and the operation published in this model's API tab. The model API base is https://api.openany.si/v1. Confirm the protocol and request schema; model availability does not imply every OpenAI API operation is supported.
How is GLM 5.3 Flash billed?
Compare the published rate and billing unit of the selected provider route. Input, output and cache token rates may differ. Image, audio and video models can use other units. Recorded usage determines the charge under that route's billing contract.
Are Community and Verified routes the same as an official publisher API?
No. Inspect the provider name and supply classification for the specific route. A marketplace listing or a supply label is not a claim of publisher endorsement, identical service or measured uptime. Different route prices may reflect different supply and conditions.
Where do these prices come from, and when were they updated?
Rates come from the provider routes in OpenAny's public model catalog, not an independent quote from the model publisher. The catalog does not supply a price update timestamp. A page or catalog snapshot date is not a price revision date. Compare supply, billing units, tiers and conditions; a lower listed rate alone does not establish equivalent service or explain the price difference.
Use GLM 5.3 Flash with your agent
Inspect endpoint contracts and confirm availability and pricing before a paid call.