dokumentasjon
Start

Slik fungerer det

Markdown

Hva som skjer med forespørselen mellom programmet ditt og modellen.

Fullstendig guide

Du sender en forespørsel til Ailoot API på samme måte som direkte til OpenAI, Anthropic eller Google. Ailoot kontrollerer nøkkel og saldo, sender forespørselen videre til modellen, returnerer svaret i samme format og belaster etter faktisk forbruk.

01ForespørselKlienten din sender forespørselen til api.ailoot.ai med nøkkelen sk-…
02Kontroll og reservasjonNøkkel, grenser og saldo. Et beløp reserveres mens svaret behandles.
03ModellModellen svarer, og svaret returneres i ditt format.
04BelastningÉn belastning etter faktisk tokenforbruk; resten av reservasjonen frigjøres.

Én nøkkel — tre formater

Formatet bestemmes av forespørselens endepunkt, ikke av modellen. Den samme Claude-modellen kan kalles via OpenAI Chat, OpenAI Responses eller Anthropic Messages — svaret kommer i formatet til endepunktet du kalte.

FormatEndepunktHvem som bruker det
OpenAI Chat Completions/v1/chat/completionsOpenAI SDK, de fleste chatter og redigeringsverktøy, n8n, LangChain
OpenAI Responses/v1/responsesCodex CLI, OpenAI Agents SDK, nye SDK-versjoner
Anthropic Messages/v1/messagesClaude Code, Anthropic SDK, Zed, Cline
Gemini/v1beta/models/{model}:generateContentGemini CLI, Google GenAI SDK

Økonomi: reservasjon og én belastning

  • Før en ny tekstforespørsel sendes, reserverer Ailoot et beløp basert på anslått inndata og et typisk svar, med hensyn til grensen (max_tokens) og vilkårene for den konkrete modellen. Hvis reservasjonen ikke dekkes av fri saldo eller nøkkelgrensen, kan grensen som sendes til modellen bare reduseres for en modell og metode som faktisk følger den, og aldri under 256 tokener eller et høyere, fastsatt svarminimum. For bilder, video og lyd som utdata beholdes full reservasjon for resultatkostnaden.
  • Etter svaret — én belastning etter faktisk forbruk. Ubrukt reservasjon frigjøres til saldoen umiddelbart.
  • Hvis svaret koster mer enn reservasjonen, tas differansen fra tilgjengelig saldo. Saldoen blir aldri negativ.
  • Hvis saldoen ikke engang dekker minimumsreservasjonen, sendes ikke forespørselen: du får en forståelig feil 402, og ingenting belastes.
  • Feil uten resultat belastes ikke.

Detaljer og et beregningseksempel finnes på siden Reservasjon og belastning.

Feil med Request ID

Hvert svar får en forespørselsidentifikator: i headeren X-Request-ID og i feilmeldingen. Feil returneres i JSON-formatet du kalte, slik at SDK-ene gjenkjenner dem riktig. Hvis noe går galt, sender du Request ID til brukerstøtte — slik finner vi forespørselen på ett minutt.

401 Unauthorized
{
  "code": "API_KEY_REQUIRED",
  "error": {
    "code": "invalid_api_key",
    "message": "No API key was sent with the request. Nothing was charged. Please check that the full key is sent in the Authorization header as \"Bearer <key>\". Request ID: 3b28d3de-5b02-4d07-9f3c-4b9a7d0e68d6.",
    "param": null,
    "reason": "invalid_api_key",
    "request_id": "3b28d3de-5b02-4d07-9f3c-4b9a7d0e68d6",
    "type": "invalid_request_error"
  },
  "message": "No API key was sent with the request. Nothing was charged. …"
}

Strømming og tidsgrenser

Strømmede svar (stream: true) leveres som Server-Sent Events. Ailoot leverer betalte tekstsvar etter at kostnaden er beregnet. Med stream: true er formatet derfor fortsatt strømmet (SSE), men teksten kommer som én blokk når modellen er ferdig, ikke ord for ord. Hvis svaret tar mer enn omtrent 15 sekunder, begynner Chat Completions-, Responses- og Messages-strømmer med kontrollinjene : ping (omtrent hvert 10. sekund), deretter linjen : ailoot-charged-usd … med belastningsbeløpet og selve dataene. SDK-ene ignorerer slike linjer.

Gemini-formatet har ingen kontrollinjer: svaret :streamGenerateContent leveres i sin helhet etter beregningen. Gi klienten god tidsmargin for resonnerende modeller: flere minutter er normalt.

Svarheadere

X-Request-ID kommer i hvert svar. Ailoot legger de andre headerne til betalte tekstsvar:

HeaderHva den inneholder
X-Request-IDForespørselsidentifikator — denne ber brukerstøtte om
X-Ailoot-Charged-USDBeløpet som er belastet for denne forespørselen, i dollar
X-Ailoot-Output-TokensAntall svartokener som er betalt
X-Ailoot-Max-Tokens-CappedDen nye, reduserte svargrensen, satt fordi saldoen ikke dekket hele reservasjonen
X-Ailoot-Notice-Code, X-Ailoot-NoticeForklaring hvis svaret stoppet ved lengdegrensen

Hvis strømmen allerede har begynt med kontrollinjer, kommer disse opplysningene som en kommentarlinje før dataene, ikke som en header.

Prompt-cache

Hvis modellen støtter caching, kan et langt prefiks som sendes på nytt (systeminstruksjon, dokumenter) koste mindre. Prisene for lesing og skriving til cache vises på modellens oppføring i katalogen. Modellutvikleren avgjør om forespørselen treffer cachen; Ailoot garanterer det ikke.

Flere spørsmål? Send Request ID og en beskrivelse, så hjelper vi deg.Kontakt brukerstøtte