{
  "schema_version": 1,
  "public_model_id": "google/gemini-3.1-pro-preview",
  "canonical_page": "https://www.maxapi.dev/models/google/gemini-3.1-pro-preview",
  "reviewed_at": "2026-09-10",
  "generated_at": "2026-09-11T02:12:59.280Z",
  "scope": "Checked against MaxAPI's public catalogue, gateway implementation and local regression cases. Shared gateway checks are not separate end-to-end tests of every listed model. This is an integration reference, not a live upstream availability or performance report.",
  "summary": "Gemini 3.1 Pro Preview is listed as google/gemini-3.1-pro-preview. Use the Gemini-native request format in the example below, then read candidates and usageMetadata from the response. Model access, routing and account limits are separate from the task instructions you put in contents.",
  "model_profile": {
    "family_id": "google/gemini-3.1-pro-preview",
    "reviewed_at": "2026-09-10",
    "title": "Complex engineering and multi-step planning",
    "provider_positioning": "Google describes Gemini 3.1 Pro Preview as a refinement of the 3 Pro family for reasoning, software engineering and precise tool use in multi-step workflows. It remains a preview model with text output.",
    "selection_advice": "Compare it for architectural trade-offs, difficult root-cause analysis and plans with dependencies and rollback conditions. For short extraction or repetitive translation, evaluate a Lite entry first.",
    "limitations": "The separate official customtools variant is not this MaxAPI public ID. A model's proposed tool call still needs application validation. Long context and advanced reasoning do not eliminate fabricated facts or the need for tests.",
    "suggested_use_cases": [
      {
        "title": "Architecture decision records",
        "body": "Provide constraints and compare alternatives against them, distinguishing measured facts from estimates."
      },
      {
        "title": "Migration plans with rollback",
        "body": "Require dependencies, checks and stop conditions. Keep execution and authorization outside the model's answer."
      },
      {
        "title": "Hypothesis-driven diagnosis",
        "body": "Map each hypothesis to supporting evidence and a falsifiable check rather than one confident conclusion."
      }
    ],
    "example_prompt": {
      "title": "Plan a reversible schema change",
      "text": "Using the supplied application constraints, propose an expand-and-contract database schema migration. List dependencies, validation checks, rollback conditions and unanswered questions. Distinguish code changes from operational actions. Do not execute anything or assume maintenance downtime is approved. Constraints: [insert].",
      "review": "Have an engineer verify dependencies, reversibility and any missing operational assumptions."
    },
    "scope": "Provider capabilities describe the model, not the complete MaxAPI feature set. Use the parameters, input types and routes documented for this MaxAPI entry. Vendor speed or quality descriptions are not service-level guarantees.",
    "variant_note": null,
    "sources": [
      {
        "label": "Google · gemini-3.1-pro-preview",
        "url": "https://ai.google.dev/gemini-api/docs/models/gemini-3.1-pro-preview"
      }
    ]
  },
  "illustration": {
    "url": "https://www.maxapi.dev/model-guides/individual-20260910/gemini-3-1-pro-preview.webp",
    "alt": "Modular bridge scale model with blueprints and engineering tools",
    "caption": "Staged-change planning metaphor: define dependencies, checkpoints and a reversible path before execution.",
    "provenance": "ai_generated_editorial_concept",
    "is_output_from_named_model": false,
    "is_benchmark": false
  },
  "illustrations": [
    {
      "section": "usecases",
      "url": "https://www.maxapi.dev/model-guides/individual-20260910/gemini-3-1-pro-preview.webp",
      "alt": "Modular bridge scale model with blueprints and engineering tools",
      "caption": "Staged-change planning metaphor: define dependencies, checkpoints and a reversible path before execution.",
      "width": 1536,
      "height": 1024,
      "provenance": "ai_generated_editorial_concept",
      "is_output_from_named_model": false,
      "is_benchmark": false
    },
    {
      "section": "features",
      "url": "https://www.maxapi.dev/model-guides/expanded-20260911/gemini-3-1-pro-preview-practice.webp",
      "alt": "Modular blue and clear blocks with a removable bridge piece",
      "caption": "Map dependencies and define checkpoints before a reversible change.",
      "width": 1536,
      "height": 1024,
      "provenance": "ai_generated_editorial_concept",
      "is_output_from_named_model": false,
      "is_benchmark": false
    },
    {
      "section": "prompts",
      "url": "https://www.maxapi.dev/model-guides/expanded-20260911/gemini-3-1-pro-preview-prompt.webp",
      "alt": "Physical bridge model with parallel supports and a removable connecting section.",
      "caption": "Physical analogy for a staged, reversible migration.",
      "width": 1536,
      "height": 1024,
      "provenance": "ai_generated_editorial_concept",
      "is_output_from_named_model": false,
      "is_benchmark": false
    },
    {
      "section": "workflow",
      "url": "https://www.maxapi.dev/model-guides/expanded-20260911/gemini-3-1-pro-preview-workflow.webp",
      "alt": "Completed modular bridge model with a retained spare section.",
      "caption": "Use checkpoints and retain a practical rollback option.",
      "width": 1536,
      "height": 1024,
      "provenance": "ai_generated_editorial_concept",
      "is_output_from_named_model": false,
      "is_benchmark": false
    }
  ],
  "configured_facts": [
    {
      "label": "Request model ID",
      "value": "google/gemini-3.1-pro-preview",
      "code": true
    },
    {
      "label": "Output type",
      "value": "Language"
    },
    {
      "label": "Base URL",
      "value": "https://api.maxapi.dev",
      "code": true
    },
    {
      "label": "Generation workflow",
      "value": "Gemini-compatible generateContent"
    }
  ],
  "pricing_scope": "1 credit = US$1. These are catalogue base rates, not a live account quote. Account multipliers and the active billing configuration determine the final charge. Token rates are not a fixed price per image.",
  "pricing_index": "https://www.maxapi.dev/pricing.json",
  "routing_rules": [
    {
      "title": "Which route wins?",
      "body": "Routing priority is: the API key's configured route_modes list → an explicitly requested route → the model's default route. A non-empty key list takes precedence over route_mode in the request. To test a specific route, check the key configuration first; changing the request alone may not change the route used."
    },
    {
      "title": "A key cannot grant account permissions",
      "body": "The a, x and pro routes require the corresponding account permission. Listing one on an API key does not grant that permission. An unauthorized gated-route selection returns 403 rather than silently switching to a different pricing tier."
    },
    {
      "title": "RPM is shared at account level",
      "body": "An account's positive RPM limit covers its API keys together. A key can impose a stricter limit, but a higher key limit does not override the user limit. For example, a user limit of 200 RPM is not 200 RPM for each key. Service-level RPM and concurrency controls also apply; adding keys is not a way to bypass them."
    }
  ],
  "troubleshooting": [
    {
      "code": "403",
      "title": "a_route_not_enabled / x_route_not_enabled / pro_route_not_enabled",
      "meaning": "The selected restricted route is not enabled for the account. It is an access issue, not evidence that the model is offline.",
      "action": "Check both the account permission and the API key's route list. Select a route you are entitled to use or request access; do not solve a 403 by increasing retries."
    },
    {
      "code": "429",
      "title": "rate_limit_exceeded / capacity_exhausted",
      "meaning": "429 can represent account/key RPM, service-wide capacity or generation capacity. Use Retry-After and available X-RateLimit-* / X-Global-* headers to distinguish them; one status code does not identify one unique cause.",
      "action": "Respect Retry-After when present, reduce request rate or active concurrency as appropriate, and use bounded backoff. Do not treat the site's total capacity as your account's personal quota."
    }
  ],
  "verification": {
    "environment": "local_mock_requests_and_test_storage",
    "coverage": "shared_gateway_components_not_each_model_end_to_end",
    "paid_upstream_calls": 0,
    "reviewed_at": "2026-09-10",
    "cases": [
      {
        "key": "shared-user-rpm",
        "title": "Multiple keys share the user limit",
        "input": "Use two keys owned by the same account against an in-memory limiter with a small user quota.",
        "result": "Requests across the keys consume the same user quota; subsequent requests are limited. A larger key quota does not override the user quota, and a smaller key quota remains effective."
      }
    ],
    "limitations": "Local tests use simulated requests, responses and test storage; they do not call paid model channels. They verify request handling, not model image quality, live success rates, latency or end-to-end support for the maximum reference count. The concept illustrations elsewhere on this page are not these test outputs."
  },
  "sources": {
    "maxapi_documentation": "https://www.maxapi.dev/docs",
    "catalogue": "https://www.maxapi.dev/models.json",
    "provider_documentation": "https://ai.google.dev/gemini-api/docs/models/gemini-3.1-pro-preview"
  }
}
