PixMind Docs
API ReferenceLanguage ModelsGemini 3.1 pro preview

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

Google

Model ID

gemini-3.1-pro-preview

Endpoint

POST /api-platform/v1/chat/completions

Authentication

Base URL: https://aihub-admin.aimix.pro. Send Authorization: Bearer <PIXMIND_API_KEY> on both creation and polling requests, and Content-Type: application/json when submitting JSON. Keep your key in a server environment variable.

Model 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

ParameterTypeRequiredDescription
modelstringYes

Stable PixMind model ID. Use `gemini-3.1-pro-preview`.

Allowed values: gemini-3.1-pro-preview

messagesarrayYes

OpenAI-compatible chat messages. Gemini user content may be a string or an array of text, image_url, and video_url blocks.

max_tokensintegerNo

Maximum completion tokens; send a positive integer. The default and upper limit depend on the selected model.

Playground default: 4096

temperaturenumberNo

Sampling temperature, a number from 0 to 2 where supported.

Default: 1

streambooleanNo

Return tokens incrementally when enabled.

Allowed values: true, false

Default: false

Request example

cURL
curl --request POST '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
}'
JavaScript
// Node.js 20+. Keep the API key on your server.
const apiKey = process.env.PIXMIND_API_KEY;
if (!apiKey) throw new Error("PIXMIND_API_KEY is required");

const response = await fetch("https://aihub-admin.aimix.pro/api-platform/v1/chat/completions", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${apiKey}`,
    "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
}),
  signal: AbortSignal.timeout(30_000)
});

const task = await response.json();
if (!response.ok) {
  throw new Error(task.message ?? task.error?.message ?? `HTTP ${response.status}`);
}
console.log(task);

Response example

Non-streaming chat completions return choices directly. With stream: true, consume the SSE stream instead.

200 OK
{
  "id": "chatcmpl_example",
  "object": "chat.completion",
  "model": "gemini-3.1-pro-preview",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Hello!"
      },
      "finish_reason": "stop"
    }
  ]
}

On this page