Base URL and authentication

Every Syntic API request goes to https://app.syntic.ai/v1 and carries your key in an Authorization header. The key decides which organization’s plan and credit pay for the request.

The basics

ItemValue
Base URLhttps://app.syntic.ai/v1
Chat endpointPOST https://app.syntic.ai/v1/chat/completions
Model listGET https://app.syntic.ai/v1/models
Auth headerAuthorization: Bearer sk_live_…
Body formatJSON, with Content-Type: application/json
Request formatOpenAI-compatible chat completions

The word Bearer isn’t case-sensitive. A request with no key gets 401 unauthenticated.

Credentials the API accepts

CredentialStarts withAccepted
Private API key from the Consolesk_live_Yes
Syntic Code keysk_syntic_Yes
Syntic Code sign-in token(a signed token)Yes
Public API keypk_live_No, 403 public_key_rejected

For your own apps, always use a private sk_live_ key.

Which organization pays

A key belongs to the organization that was selected when it was created. Requests draw on that organization’s plan allowance first, then its credit balance if usage credits are on.

A key keeps working only while:

  • the account that created it is enabled,
  • that account is still an active member of the organization, and
  • the organization is available and on a paid plan.

If any of these stops being true, requests fail with a 403 even though nobody revoked the key. See My API key isn’t working.

Store the key safely

Read the key from an environment variable or secret store at runtime. Never put it in browser code, mobile apps or a repository. See Keep your API keys safe.

Useful response headers

HeaderUse it for
x-syntic-request-idIdentifying one request when you contact support. Error responses also carry the same value in x-request-id. See Request IDs.
Retry-AfterOn a 429 or 503, how many seconds to wait

Developer documentation

Full details of every field and endpoint are at platform.syntic.ai/docs.

Was this page helpful?