Origin Docs

Authentication

Authenticate to ORGN Gateway with API keys for programmatic access or id-orgn SSO for the console. Covers Bearer token format, key management, and security best practices.

ORGN Gateway uses two authentication surfaces, depending on how you interact with the product:

SurfaceWho uses itMethod
Gateway APIApplications, SDKs, CI pipelinesAPI key (sk-ollm-*) via Authorization: Bearer
Gateway consoleEngineers and operatorsSSO via id-orgn only

There is no email/password login, no local accounts, and no alternative identity providers. All human access to the console flows through id-orgn.

API key authentication

All requests to the Gateway API at https://api.gateway.orgn.com/v1 require a valid API key sent as a Bearer token.

Key format

Gateway API keys use the sk-ollm- prefix:

sk-ollm-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Create and manage keys in the Gateway console under API Keys. Each key is shown once at creation — copy it immediately and store it in a secrets manager. Keys cannot be recovered after you leave the creation screen.

Sending the key

Include the key in the Authorization header on every request:

Request Headers
Authorization: Bearer sk-ollm-YOUR_API_KEY
Content-Type: application/json

Example request

Authenticated curl
curl https://api.gateway.orgn.com/v1/models \
  -H "Authorization: Bearer sk-ollm-YOUR_API_KEY"
Authenticated fetch
const res = await fetch("https://api.gateway.orgn.com/v1/chat/completions", {
  method: "POST",
  headers: {
    Authorization: "Bearer sk-ollm-YOUR_API_KEY",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    model: "phala_deepseek_r1",
    messages: [{ role: "user", content: "Hello" }],
  }),
});

Never expose API keys in frontend code, public repositories, or client-side bundles. Gateway keys grant inference access and should live in server-side environments or secret stores only.

Key lifecycle

ActionWhereEffect
CreateConsole → API Keys → Generate KeyNew sk-ollm-* key, shown once
RevokeConsole → API Keys → DeleteKey stops working immediately
RotateCreate new key, update callers, revoke oldZero-downtime if done in that order

Revoked keys return 401 Unauthorized. There is no grace period.

Console authentication (SSO)

The Gateway console at gateway.orgn.com uses SSO-only authentication through id-orgn.

Sign in

Open gateway.orgn.com and click Sign in with Orgn SSO. You are redirected to id-orgn to complete authentication.

Session

On success, id-orgn returns you to the console with a signed session cookie. The console uses this session for all dashboard operations — API key management, model browsing, playground, and team settings.

Sign out

Sign out from the console or from id-orgn to end the session. Console sessions do not grant API access; you still need a separate sk-ollm-* key for programmatic requests.

Console SSO and API keys are independent credentials. Signing into the console does not automatically create an API key, and an API key does not grant console access.

What authentication does not cover

Authentication proves who is calling the API or accessing the console. It does not determine execution security — that depends on the model you select:

  • TEE models (near_*, phala_*) run in hardware-isolated Trust Domains and produce attestation receipts.
  • ZDR models (vercel_*) run under Vercel's zero data retention agreements without hardware attestation.

Model IDs use underscores (for example near_qwen3_30b, vercel_claude_sonnet_4_6) — not slashes. See Model catalog for the full list and execution-type breakdown.

Verifying TEE requests

Attestation verification happens in scanner.orgn.com, not in the Gateway console. After sending a TEE model request, open Scanner to inspect attestation status, cryptographic signatures, and verification outcomes.

Scanner shows request metadata and attestation artifacts. It does not display prompt contents or model outputs.

See Verify a request and Verification for the full attestation workflow.

Error responses

HTTP statusCauseResolution
401 UnauthorizedMissing, malformed, or revoked API keyConfirm Authorization: Bearer sk-ollm-... header is present and the key is active
403 ForbiddenValid key but insufficient permissionsCheck team membership and key scope in the console
429 Too Many RequestsRate limit exceededBack off and retry; contact support for higher limits

What's next

On this page