Source: https://ailoot.ai/models/nl-be/gemini-3-pro-preview/
Canonical: https://ailoot.ai/models/nl-be/gemini-3-pro-preview/
Language: nl-be

# gemini-3-pro-preview

[Markdown](https://ailoot.ai/models/nl-be/gemini-3-pro-preview/index.md) · [JSON](https://ailoot.ai/models/nl-be/gemini-3-pro-preview/facts.json)

## [gemini-3-pro-preview](https://ailoot.ai/models/nl-be/gemini-3-pro-preview/)

Gemini 3 Pro Preview is het multimodale redeneermodel van Google voor tekst, afbeeldingen, audio, video en pdf’s, met tekst als uitvoer. De ruime invoerlimiet, programmeermogelijkheden en ondersteunde werkwijzen met hulpmiddelen zijn geschikt voor gedetailleerde analyse, documentvergelijking en taakuitvoering op basis van bewijs.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `gemini-3-pro-preview`](https://ailoot.ai/models/nl-be/gemini-3-pro-preview/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `gemini-3-pro-preview`](https://ailoot.ai/models/nl-be/gemini-3-pro-preview/#method-1)

Over het model

Deze beschrijving gaat over de mogelijkheden van het model. De via Ailoot beschikbare invoer, uitvoer en opties staan hieronder voor de geselecteerde methode.

Gemini 3 Pro Preview is het door Google benoemde previewprofiel van Gemini 3 Pro voor multimodaal redeneren en tekstgeneratie. Het kan met tekst, afbeeldingen, audio, video en pdf-documenten werken en een schriftelijk resultaat teruggeven. Beoogde toepassingen omvatten complexe analyse, geavanceerd programmeren, algoritmeontwikkeling en taken die een omvangrijke verzameling bronnen met een specifieke vraag combineren.

#### Model en invoerstructuur

Gemini 3 Pro is een op transformers gebaseerd sparse mixture-of-experts-model met ingebouwde ondersteuning voor multimodale invoer. De architectuur stuurt ieder token door een geselecteerde deelverzameling van experts. Dit is een onderscheid in het modelontwerp, geen gebruikersinstelling om een bepaalde expert te selecteren of een vaste configuratie voor het aanbieden van het model in te stellen.

Bereid invoer voor rond de informatiebehoefte van de taak. Een document, schermafbeelding en audio-opname kunnen elk ander bewijs leveren. Geef aan wat elk bestand bevat en hoe het aan het antwoord moet bijdragen. De uitvoer blijft tekst; begrip van visueel of gesproken materiaal maakt van deze preview geen generator voor afbeeldingen, spraak of video.

#### Multimodale analyse

Gebruik afbeeldingen voor vragen over zichtbare inhoud, audio voor gesproken of akoestische informatie en video voor een reeks waarin veranderingen in de tijd van belang zijn. Voeg het eigenlijke bestand bij de vraag in plaats van het alleen uit het geheugen te beschrijven. Label meerdere bestanden duidelijk wanneer u ze vergelijkt, zodat het antwoord naar de juiste bron kan verwijzen.

Een opdracht voor productanalyse kan bijvoorbeeld een schriftelijke specificatie, een schermafbeelding van de interface en een opgenomen demonstratie combineren. Vraag om een vergelijking die onderscheid maakt tussen wat de specificatie belooft en wat in het aangeleverde materiaal zichtbaar of hoorbaar is. Definieer het gewenste resultaat als bevindingen, ondersteunende waarnemingen en onopgeloste vragen.

Lever voor een pdf-taak het document aan en vermeld welke onderdelen of beweringen onderzocht moeten worden. Een nuttige vraag vraagt om een vergelijking, extractie of uitleg die aan de bron gekoppeld is, in plaats van alleen om een algemene samenvatting van een groot bestand.

#### Lange context en uitvoerlimiet

De exacte previewspecificatie vermeldt een invoerlimiet van 1.048.576 tokens en een uitvoerlimiet van 65.536 tokens. De maker geeft januari 2025 als kennisgrens op; lever recenter bewijs aan wanneer de vraag van latere gebeurtenissen of informatie afhangt. Dit zijn verschillende limieten. Een grote verzameling bronnen kan gelezen worden voor een gericht antwoord zonder dat het model ieder deel van de invoer hoeft te reproduceren.

Organiseer lang materiaal met een duidelijke structuur: documenttitels, grenzen tussen onderdelen, codepaden en de vraag die de uitvoer moet beantwoorden. Houd relevante uitzonderingen en definities dicht bij de inhoud die ze nader bepalen. Als een taak een lang rapport vraagt, geef dan de onderdelen van het rapport en het verwachte bewijs per onderdeel op.

Een groot contextvenster garandeert niet dat elk detail evenveel aandacht krijgt of dat iedere conclusie juist is. Google wijst ook op mogelijke achteruitgang tijdens gesprekken met meerdere beurten; controleer belangrijke bronfeiten en hergebruikte context naarmate het gesprek vordert. Toets het antwoord aan de specifieke passages of bestanden die belangrijke beweringen ondersteunen.

#### Programmeren en algoritmeontwikkeling

De beoogde toepassingen van de producent omvatten geavanceerd programmeerwerk en algoritmische taken. Lever de relevante broncode, aannames over de omgeving, de waargenomen fout en het verwachte gedrag aan. Definieer voor een algoritmetaak de invoer, de gewenste uitvoer en voorwaarden zoals volgorde, duplicaten of ongeldige gegevens.

Een bruikbare debugopdracht combineert de falende invoer en foutmelding met het kleinste relevante deel van de broncode. Vraag om een diagnose en een gerichte wijziging en controleer vervolgens of de voorgestelde wijziging het gemelde gedrag aanpakt. Gegenereerde code en de bewering dat ze zou moeten werken, verschillen van een implementatie die uitgevoerd en gecontroleerd is.

Gebruik bij een vraag over een grotere repository de invoerruimte om de nodige bestanden met duidelijke padlabels aan te leveren. Vermeld of het gewenste resultaat een uitleg, een voorgestelde patch of een analyse van alternatieven is, zodat het resultaat een concreet doel heeft.

#### Hulpmiddelen, bronnen en gestructureerde resultaten

De specificatie van de producent voor deze preview ondersteunt functieaanroepen, code-uitvoering, bestandszoeken, onderbouwing met zoekresultaten en URL-context. Die functies hebben verschillende rollen. Een functieaanroep beschrijft een bewerking die een toepassing moet uitvoeren; een hulpmiddelresultaat levert vervolgens bewijs voor de volgende modelstap. Code-uitvoering is een werkwijze met een hulpmiddel, geen garantie dat willekeurige gegenereerde toepassingscode al getest is.

Onderbouwing met zoekresultaten en URL-context bieden brongerichte werkwijzen, terwijl bestandszoeken met een voorbereide bestandsverzameling werkt. Bewaar hulpmiddelresultaten en hun bronkoppelingen bij het antwoord, zodat een conclusie gecontroleerd kan worden. Volgens de specificatie ondersteunt dit profiel geen computerbediening of onderbouwing met Maps.

Ondersteuning voor gestructureerde uitvoer kan een resultaat in een vastgelegd schema uitdrukken. Geef vóór de generatie de velden en hun betekenis op en controleer zowel de inhoud als het formaat. Een geldig gestructureerd object vereist nog steeds een feitelijke en taakspecifieke controle.

#### Redeneren, hergebruik en grenzen tussen edities

Deze preview ondersteunt denken. Gebruik voor werk dat meerdere redeneerstappen vraagt een duidelijke taak, relevant bewijs en expliciete voorwaarden. Het resultaat moet de aannames en de bruikbare conclusie uitleggen; verborgen redeneringen of het bestaan van een denkmodus vormen op zichzelf geen verificatie.

De producent vermeldt ook ondersteuning voor caching en batchverwerking. Dit zijn verwerkingsfuncties die losstaan van de inhoudelijke mogelijkheden van het model. Hun aanwezigheid toont niet aan dat een specifiek verzoek gecachet werd of dat een batchresultaat juist is.

Houd Gemini 3 Pro Preview gescheiden van Gemini 3.1 Pro Preview, Gemini 3 Pro Image en de audio- of Live-profielen. De uitvoer van deze preview is tekst en de specificatie omvat geen beeldgeneratie, audiogeneratie of Live-werking. Beoordeel het teruggegeven antwoord, de code of het gestructureerde resultaat aan de hand van de aangeleverde bronnen en de beoogde taak.

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `gemini-3-pro-preview`

[`gemini-3-pro-preview`](https://ailoot.ai/models/nl-be/#m=gemini-3-pro-preview&route=Ultra&caller=gemini-3-pro-preview&fmt=chat)

Overig /`gemini-3-pro-preview`

### Aan de slag

Gemini 3 Pro Preview is het multimodale redeneermodel van Google voor tekst, afbeeldingen, audio, video en pdf’s, met tekst als uitvoer. De ruime invoerlimiet, programmeermogelijkheden en ondersteunde werkwijzen met hulpmiddelen zijn geschikt voor gedetailleerde analyse, documentvergelijking en taakuitvoering op basis van bewijs.

Toegestane invoer

Tekst

Resultaten

Tekst

### Beschikbaar in Ailoot · invoer en methoden

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions`

Invoer

`text`

Uitvoer

`text`

Uitvoerformaat

json of SSE

| Veld | Type | Vereiste | Waarden en limieten | Standaard |
| --- | --- | --- | --- | --- |
| Veld`model` | Type`string` | VereisteVereist | Waarden en limieten gemini-3-pro-preview | Standaard— |
| Veld`messages` | Type`message[]` | VereisteVereist | Waarden en limieten Minimumaantal items: 1 | Standaard— |
| Veld`messages[].role` | Type`string` | VereisteVereist | Waarden en limieten Afhankelijk van het model | Standaard— |
| Veld`messages[].content` | Type`string` | VereisteOptioneel | Waarden en limieten Geldt wanneer: Tekstgesprek | Standaard— |
| Veld`stream` | Type`boolean` | VereisteOptioneel | Waarden en limieten | Standaardfalse |

Combinaties van invoermaterialen

**Tekst** · UTF8-tekst

`messages[].content`

Methodeparameters en levenscyclus

| Parameter | Contract |
| --- | --- |
| Parameter`content_type` | Contractapplication/json |
| Parameter`required` | Contractmodel, messages |
| Parameter`material_types` | Contracttext |
| Parameter`messages` | Contractberichtenarray met de structuur role/content |
| Parameter`file_material` | Contractwerkelijk UTF-8-document ingevoegd als letterlijke tekst; er wordt geen bestands-ID afgeleid |
| Parameter`optional_controls` | Contractstream |
| Parameter`control_scope` | ContractTekstgesprek; stream is een booleaanse waarde en is standaard false. |
| Parameter`output_modalities` | Contracttext |
| Parameter`hosted_operations` | Contractfalse |
| Parameter`multimodal_input_binding` | Contractnull |

Methodealiasnamen: `/chat/completions`

Levenscyclus: `synchronous_or_streamed`

Stuur het exacte model-ID mee met messages.

Contextlengte is geen uitvoerlimiet.

Een tekstbestand kan letterlijke tekst aanleveren; beeld-, audio- en bestandsobjectinvoer vereisen een exacte koppeling.

### Tarieven

Tariefverwijzingen voegen geen verzoekopties toe. Ondersteunde parameters staan bij de geselecteerde methode.

Snelle modus

Niet opgegeven Wanneer de snelle modus geselecteerd is

Flex-modus

Niet opgegeven Wanneer de flex-modus geselecteerd is

Maximale redeneerinspanning

Niet opgegeven Wanneer voor maximale redeneerinspanning de default-aanpassing wordt gebruikt

Tarieven voor expliciete caching

Niet ingeschakeld Wanneer expliciete caching wordt aangevraagd

#### Ailoot-tarieven

#### Prijzen per configuratie

| Configuratie | Tariefstaffel | Kosten |
| --- | --- | --- |
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Kosten Invoer · Invoertokens **$0.004** / 1K tokens Uitvoer · Uitvoertokens **$0.024** / 1K tokens Invoer · Cache lezen **$0** / 1K tokens Invoer · Cache schrijven **$0** / 1K tokens Invoer · Cache schrijven, 1 uur **—** / 1K tokens |

Ailoot reserveert vóór een verzoek een geschat bedrag. Na het resultaat worden de uiteindelijke kosten afgerekend op basis van het gemeten verbruik. Bij streaming gebeurt de afrekening op basis van de definitieve verbruiksregistratie. [Zo werken reservering en afrekening →](https://ailoot.ai/docs/nl-be/billing/reserve/)

### Voorbeeldverzoeken

#### Ailoot Ultra · OpenAI Chat

curlPython SDK

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"gemini-3-pro-preview","messages":[{"role":"user","content":"hello"}],"stream":false}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
```

```python
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model="gemini-3-pro-preview", messages=[{"role":"user","content":"hello"}], stream=False)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
```

### Resultaten ophalen en opslaan

#### Ailoot Ultra · OpenAI Chat

json of SSE

##### Alle voltooide resultaten bewaren

Bewaar elk volledig teruggegeven antwoord, bestand en inhoudsonderdeel.

Bewaar elke keuze en de bijbehorende inhoud, toolaanroepen en redeneringen. Voeg in SSE delta’s samen per keuze-/toolindex en bewaar de uiteindelijke reden van beëindiging en de verbruiksgegevens.

##### Als het oorspronkelijke antwoord moet worden gecontroleerd

Bewaar aanvraag-/antwoord-ID’s en headers. Er wordt geen algemene URL meegeleverd om teksttaken op te halen.

Antwoordvelden

| Veld | Type |
| --- | --- |
| Veld`choices[].index` | Typeinteger |
| Veld`choices[].message.content` | Typestring\|null |
| Veld`choices[].message.tool_calls` | Typetool\_call\[\] |
| Veld`choices[].message.reasoning_content` | Typestring |
| Veld`choices[].message.reasoning_details` | Typeobject\|array |
| Veld`choices[].finish_reason` | Typestring\|null |
| Veld`usage` | Typeobject |

Fouten en vervolgstappen

| Antwoord | Voorwaarde | Volgende stap |
| --- | --- | --- |
| Antwoord400 · `invalid_request_error` | VoorwaardeVerplichte velden, de materiaalrepresentatie of een parameterwaarde zijn ongeldig | Volgende stapCorrigeer de aangegeven velden vóór een nieuwe aanmaakaanvraag. |

### Aliasnamen

#### Modelaliasnamen

**Ailoot Ultra** [`gemini-3-pro-preview`](https://ailoot.ai/models/nl-be/#m=gemini-3-pro-preview&route=Ultra&caller=gemini-3-pro-preview&fmt=chat)

#### Aliasnamen voor methodepaden

`/chat/completions`

#### Gerelateerde aanroeper-ID’s

[`gemini-3-pro-preview`](https://ailoot.ai/models/nl-be/#m=gemini-3-pro-preview&route=Ultra&caller=gemini-3-pro-preview&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `gemini-3-pro-preview`

[`gemini-3-pro-preview`](https://ailoot.ai/models/nl-be/#m=gemini-3-pro-preview&route=Ultra&caller=gemini-3-pro-preview&fmt=messages)

Overig /`gemini-3-pro-preview`

### Aan de slag

Gemini 3 Pro Preview is het multimodale redeneermodel van Google voor tekst, afbeeldingen, audio, video en pdf’s, met tekst als uitvoer. De ruime invoerlimiet, programmeermogelijkheden en ondersteunde werkwijzen met hulpmiddelen zijn geschikt voor gedetailleerde analyse, documentvergelijking en taakuitvoering op basis van bewijs.

Toegestane invoer

Tekst

Resultaten

json · sse

### Beschikbaar in Ailoot · invoer en methoden

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages`

Invoer

`text`

Uitvoer

`json`, `sse`

Uitvoerformaat

JSON of SSE

| Veld | Type | Vereiste | Waarden en limieten | Standaard |
| --- | --- | --- | --- | --- |
| Veld`model` | Type`string` | VereisteVereist | Waarden en limieten gemini-3-pro-preview | Standaard— |
| Veld`messages` | Type`message[]` | VereisteVereist | Waarden en limieten | Standaard— |
| Veld`messages[].role` | Type`string` | VereisteVereist | Waarden en limieten user, assistant | Standaard— |
| Veld`messages[].content` | Type`string` | VereisteVereist | Waarden en limieten | Standaard— |
| Veld`max_tokens` | Type`integer` | VereisteVereist | Waarden en limieten | Standaard— |
| Veld`stream` | Type`boolean` | VereisteOptioneel | Waarden en limieten | Standaardfalse |

Combinaties van invoermaterialen

**Tekst** · UTF-8-tekst

`messages[].content als tekenreeks`

Methodeparameters en levenscyclus

| Parameter | Contract |
| --- | --- |
| Parameter`content_type` | Contractapplication/json |
| Parameter`required` | Contractmodel, messages, max\_tokens |
| Parameter`optional_controls` | Contractstream |
| Parameter`material_types` | Contracttext |
| Parameter`text_file_material` | ContractLees het werkelijke UTF-8-document en plaats de tekst ervan in de aangegeven invoer of in de inhoudstekenreeks van een bericht. |

Levenscyclus: `synchronous_or_streamed`

### Tarieven

Tariefverwijzingen voegen geen verzoekopties toe. Ondersteunde parameters staan bij de geselecteerde methode.

Snelle modus

Niet opgegeven Wanneer de snelle modus geselecteerd is

Flex-modus

Niet opgegeven Wanneer de flex-modus geselecteerd is

Maximale redeneerinspanning

Niet opgegeven Wanneer voor maximale redeneerinspanning de default-aanpassing wordt gebruikt

Tarieven voor expliciete caching

Niet ingeschakeld Wanneer expliciete caching wordt aangevraagd

#### Ailoot-tarieven

#### Prijzen per configuratie

| Configuratie | Tariefstaffel | Kosten |
| --- | --- | --- |
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Kosten Invoer · Invoertokens **$0.004** / 1K tokens Uitvoer · Uitvoertokens **$0.024** / 1K tokens Invoer · Cache lezen **$0** / 1K tokens Invoer · Cache schrijven **$0** / 1K tokens Invoer · Cache schrijven, 1 uur **—** / 1K tokens |

Ailoot reserveert vóór een verzoek een geschat bedrag. Na het resultaat worden de uiteindelijke kosten afgerekend op basis van het gemeten verbruik. Bij streaming gebeurt de afrekening op basis van de definitieve verbruiksregistratie. [Zo werken reservering en afrekening →](https://ailoot.ai/docs/nl-be/billing/reserve/)

### Voorbeeldverzoeken

#### Ailoot Ultra · Anthropic Messages

Volledige minimale JSON-bodycurl · gebruik je UTF-8-documentPython · sla het volledige resultaat op

```json
{
  "model": "gemini-3-pro-preview",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'gemini-3-pro-preview', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
```

```python
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'gemini-3-pro-preview', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
```

### Resultaten ophalen en opslaan

#### Ailoot Ultra · Anthropic Messages

JSON of SSE

##### Alle voltooide resultaten bewaren

Bewaar elk volledig teruggegeven antwoord, bestand en inhoudsonderdeel.

Bewaar alle inhoudsblokken, handtekeningen van redeneringen en werkelijke toolgebruik-ID’s. Voeg alle SSE-blokdelta’s samen; het eerste tekstblok is niet de volledige uitvoer.

##### Als het oorspronkelijke antwoord moet worden gecontroleerd

Bewaar aanvraag-/antwoord-ID’s en headers. Er wordt geen algemene URL meegeleverd om teksttaken op te halen.

Antwoordvelden

| Veld | Type |
| --- | --- |
| Veld`id` | Typestring |
| Veld`model` | Typestring |
| Veld`content[]` | Typetext\|thinking\|tool\_use\|other content block |
| Veld`stop_reason` | Typestring\|null |
| Veld`usage` | Typeobject |

Fouten en vervolgstappen

| Antwoord | Voorwaarde | Volgende stap |
| --- | --- | --- |
| Antwoord400 · `invalid_request_error` | VoorwaardeVerplichte velden, de materiaalrepresentatie of een parameterwaarde zijn ongeldig | Volgende stapCorrigeer de aangegeven velden vóór een nieuwe aanmaakaanvraag. |

### Aliasnamen

#### Modelaliasnamen

**Ailoot Ultra** [`gemini-3-pro-preview`](https://ailoot.ai/models/nl-be/#m=gemini-3-pro-preview&route=Ultra&caller=gemini-3-pro-preview&fmt=messages)

#### Aliasnamen voor methodepaden

`/chat/completions`

#### Gerelateerde aanroeper-ID’s

[`gemini-3-pro-preview`](https://ailoot.ai/models/nl-be/#m=gemini-3-pro-preview&route=Ultra&caller=gemini-3-pro-preview&fmt=messages)

FAQ · gemini-3-pro-preview

Welke invoer en resultaten zijn beschikbaar?

`POST /v1/chat/completions` · `gemini-3-pro-preview`: `text` → `text` `POST /v1/messages` · `gemini-3-pro-preview`: `text` → `json`, `sse`

Welke velden gebruikt het verzoek?

`POST /v1/chat/completions` · `gemini-3-pro-preview`: `model`, `messages`, `stream` `POST /v1/messages` · `gemini-3-pro-preview`: `model`, `messages`, `max_tokens`, `stream`

Welke limieten gelden?

`POST /v1/chat/completions` · `gemini-3-pro-preview`: `messages.min_items`: `1`

Verbind Ailoot met Claude Code, OpenCode, Hermes of je eigen applicatie.

## Het bedrijf en zijn projectenportefeuille

Het bedrijf en zijn projectenportefeuille: miljoenen klanten; maandelijkse verkopen in de miljarden.

## Koop tokens met korting.

Abonnementsvoordeel voor regelmatig gebruik. Promotiecodes geven tot 50% korting op tokens.

Abonnement

Kies een abonnement met korting voor je terugkerende verzoeken.

Promotiecode tot 50%

Vul de code bij aankoop in. De prijs wordt volgens de lopende actie herberekend.

Kosten in de geschiedenis

Model, tokens en bedrag worden per verzoek bewaard.

[Kies een abonnement](https://ailoot.ai/docs/nl-be/billing/subscriptions/) · [Bekijk modelprijzen](https://ailoot.ai/models/nl-be/)

## Verbind de API met het product dat je verkoopt.

SaaS, apps en bots volgens de openbare aanbodvoorwaarden en licentieovereenkomst van Ailoot. Vraag voor doorverkoop een resellerlicentie aan.

Commerciële applicatie

Voeg tekst-, beeld-, video- en geluidsgeneratie aan betaalde functies van je service toe.

Resellerlicentie

Stuur een projectbeschrijving en toegangsschema. Vraag schriftelijke voorwaarden voor gebruik en doorverkoop.

Documenten op de site

Aanbodvoorwaarden, licentieovereenkomst en gegevensbeleid zijn vóór het verbinden beschikbaar.

[Vraag een resellerlicentie aan](mailto:support@ailoot.ai) · [Aanbodvoorwaarden en licentieovereenkomst](https://ailoot.ai/legal/offer?lang=nl-be)

## Ailoot · Het bedrijf en zijn projectenportefeuille





Ailoot bouwt op opgebouwde operationele ervaring, een groot klantenbestand, een stabiele dienst en doorlopende KPI-controle.





Het bedrijf en zijn projectenportefeuille: miljoenen klanten; maandelijkse verkopen in de miljarden.





Ailoot gebruikt die operationele ervaring voor API-toegang tot AI-functies in klantproducten, agents, applicaties en automatiseringen.
