Gemini 3.1 Pro Preview Chat Completions
Call Gemini 3.1 Pro Preview through PixMind for text, image and video understanding, reasoning, tools, and streaming.
Gemini 3.1 Pro Preview is available through PixMind's OpenAI-compatible chat completions endpoint for multimodal agent workflows and complex reasoning.
Gemini 3.1 Pro Preview through PixMind's OpenAI-compatible chat completions endpoint.
Provider
GoogleModel ID
gemini-3.1-pro-previewEndpoint
POST /api-platform/v1/chat/completionsModel notes
- Keep the API key on your server and use streaming when the client needs incremental output.
- Gemini accepts up to 10 images (10MB each) and one video (20MB) per request. Media URLs must use HTTPS.
Request parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
model | string | Yes | Stable PixMind model ID. Use `gemini-3.1-pro-preview`. Allowed values: |
messages | array | Yes | OpenAI-compatible chat messages. Gemini user content may be a string or an array of text, image_url, and video_url blocks. |
max_tokens | integer | No | Maximum number of completion tokens to generate. Default: |
temperature | number | No | Sampling temperature for the response. Allowed values: Default: |
stream | boolean | No | Return tokens incrementally when enabled. Allowed values: Default: |
Request example
curl https://aihub-admin.aimix.pro/api-platform/v1/chat/completions \
-H "Authorization: Bearer $PIXMIND_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3.1-pro-preview",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Compare the product image with the motion in the video."
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/product.png"
}
},
{
"type": "video_url",
"video_url": {
"url": "https://example.com/motion.mp4"
}
}
]
}
],
"stream": false
}'const response = await fetch("https://aihub-admin.aimix.pro/api-platform/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.PIXMIND_API_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"model": "gemini-3.1-pro-preview",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Compare the product image with the motion in the video."
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/product.png"
}
},
{
"type": "video_url",
"video_url": {
"url": "https://example.com/motion.mp4"
}
}
]
}
],
"stream": false
})
});
const task = await response.json();Accepted task response
Generation is asynchronous. Save taskId and poll GET /api-platform/v1/tasks/{taskId} until status is ready or failed.
{
"code": 1000,
"data": {
"id": "img_44160",
"taskId": 44160,
"type": "image",
"model": "gemini-3.1-pro-preview",
"status": "processing"
}
}API pricing
| Configuration | Price |
|---|---|
| Input tokens | 1911 credits / 1M tokens |
| Output tokens | 11466 credits / 1M tokens |
| Cache read | 254.8 credits / 1M tokens |
API pricing uses the apiPlatform role and is separate from PixMind Studio credits. The accepted task response is the final pricing snapshot.