IsraelGPT API Docs Get an API key

Architecture

What actually runs where. Useful if you're deciding whether to depend on this API, debugging something unexpected, or just curious.

Domains

Domain / pathWhat it is
www.israelgpt.siteThe main site: web chat and docs.
www.israelgpt.site/api/v1/chatThe public API described throughout these docs.
www.israelgpt.site/dashboardYour API keys and their request logs.
www.israelgpt.site/docsThis documentation.

Always use www.israelgpt.site. No other hostname is supported.

Request flow

your server / bot
│ HTTPS
▼
www.israelgpt.site (edge network)
│ pages are static files; API calls go on, over a private link
▼
API worker (no public address of its own)
├──▶ the key, rate limits and safety checks
├──▶ database: keys (hashed), your request log, encrypted chat logs
└──▶ the model: the actual completion
▼
the reply, back to you

Services involved

ServiceRole
Hosting and security providerHosts everything: the site, the API worker, rate limiting and the database. There is no other hosting, database or cache provider.
Model providersRun the models behind each persona (see Personas & Models). Only the API worker talks to them. We don't name outside providers publicly: attackers have targeted the ones this site used before.
DiscordOnly relevant if you use or fork the reference Discord bot (see Discord Bot). It runs as a separate process outside this stack.

What this means for you

  • Each request stands alone. There is no server-side memory between calls; send the conversation you want the model to see, with each reply's sig.
  • Call it from a server. There is no CORS, so web pages can't call it, and a key in a page could be copied by anyone.
  • Model generation is almost all of the time a request takes.
  • If the model fails to respond, the request fails with 502. There is no switch to a different model. See Errors.
  • None of this infrastructure is exposed to you directly. You only ever talk to www.israelgpt.site.

No streaming, on purpose

The endpoint returns one complete JSON response, not a token stream. Two reasons: the reference client (a Discord bot) posts one finished message rather than editing it token-by-token, and a plain JSON contract is what keeps onboarding to a curl command and a 10-line snippet instead of an SSE/streaming parser.

// what you get: one response, once generation finishes
const data = await res.json();
console.log(data.reply);