intentic
Create your workspace
Models and accounts

Routed providers

Subscriptions that run another vendor's model under the Claude Code harness

On this page(4 sections)

The bundled translator runs a non-Claude model on the user's own subscription, so each provider connects by signing in rather than with an API key, and one provider can hold several accounts at once. Two sign-in shapes ride these routes: a code typed on a device page, which finishes by itself, and a redirect whose landing address is handed back.

GET/translator/accountsSubscriptions connected through the translator

What is signed in per provider. Each provider can hold several accounts at once, and the translator spreads work across them.

What you send

Nothing. Call it as it is.

What comes back

FieldType
codexobject[]
namestring
labelstring
usageobject
windowsobject[]
kindstring
labelstring
utilizationnumber
resetsAtnumber
measuredAtnumber
grokobject[]
namestring
labelstring
usageobject
windowsobject[]
kindstring
labelstring
utilizationnumber
resetsAtnumber
measuredAtnumber
kimiobject[]
namestring
labelstring
usageobject
windowsobject[]
kindstring
labelstring
utilizationnumber
resetsAtnumber
measuredAtnumber
geminiobject[]
namestring
labelstring
usageobject
windowsobject[]
kindstring
labelstring
utilizationnumber
resetsAtnumber
measuredAtnumber
Try itanswered in this tab
curl
curl "$SANDBOX/translator/accounts" \
  -H "x-intentic-control: $INTENTIC_TOKEN"
TypeScript
import { sandbox } from "@intentic/sandbox-client";

const result = await sandbox.translator.accounts();
POST/translator/{provider}/connectStart connecting a subscription

Begins the sign-in for one provider and says which of the two shapes it is: a code you type into a device page, which finishes by itself in the background, or a redirect whose landing address you hand back afterwards.

What you send

FieldTypeWhere
providerrequired"codex" | "grok" | "kimi" | "gemini"address

What comes back

FieldType
urlThe page to openstring
codeThe one-time code, where the provider…string
stateThe handshake's id, which the finishing…string
flowWhich shape this is"device" | "redirect"
Try itanswered in this tab
curl
curl -X POST "$SANDBOX/translator/codex/connect" \
  -H "x-intentic-control: $INTENTIC_TOKEN"
TypeScript
import { sandbox } from "@intentic/sandbox-client";

const result = await sandbox.translator.connect({
  "provider": "codex"
});
POST/translator/{provider}/completeFinish a redirect sign-in

For the providers that redirect somewhere this sandbox cannot receive: hand back the address you landed on and the connection completes.

What you send

FieldTypeWhere
providerrequiredWhich provider"codex" | "grok" | "kimi" | "gemini"address
redirectUrlrequiredThe address the browser was sent…stringbody
staterequiredThe handshake this belongs tostringbody

What comes back

FieldType
okAlways truetrue
Try itanswered in this tab
curl
curl -X POST "$SANDBOX/translator/codex/complete" \
  -H "x-intentic-control: $INTENTIC_TOKEN" \
  -H "content-type: application/json" \
  -d '{"redirectUrl":"https://sandbox-a1b2c3d4e5f6.intentic.dev","state":"idle"}'
TypeScript
import { sandbox } from "@intentic/sandbox-client";

const result = await sandbox.translator.complete({
  "provider": "codex",
  "redirectUrl": "https://sandbox-a1b2c3d4e5f6.intentic.dev",
  "state": "idle"
});
POST/translator/{provider}/disconnectDisconnect one subscription

Clears a single account by name. Any others under the same provider stay connected.

What you send

FieldTypeWhere
providerrequired"codex" | "grok" | "kimi" | "gemini"address
namerequiredstringbody

What comes back

FieldType
okAlways truetrue
Try itanswered in this tab
curl
curl -X POST "$SANDBOX/translator/codex/disconnect" \
  -H "x-intentic-control: $INTENTIC_TOKEN" \
  -H "content-type: application/json" \
  -d '{"name":"nightly changelog"}'
TypeScript
import { sandbox } from "@intentic/sandbox-client";

const result = await sandbox.translator.disconnect({
  "provider": "codex",
  "name": "nightly changelog"
});

Type to search every page, in the docs and the API reference.