Skip to main content
Tanqory IconTanqory Logo
Log In
Get Started
  • Home
  • Why Tanqory
  • Pricing
  • Partners
  • Themes
  • App Store
  • Academy
  • Affiliates
  • Community
  • Developers
  • Support
  • Business Tools
  • News
  • Research
  • Blog
  • Engineering
  • Legal
  • Status
  • Build & Launch
  • Sell & Get Paid
  • Market & Engage
  • Ship & Deliver
  • Operate & Control
  • Go Global
  • Platform Overview
  • Commerce Core
  • Builder
  • Creative & Brand
  • Intelligence & Automation
  • Operations
  • Integrations
  • Industries overview
  • E-commerce & Retail
  • Wholesale & B2B
  • Restaurants
  • Events & Ticketing
  • Health & Wellness
  • Services
  • About
  • Executive
  • Leadership
  • Governance
  • Brand Identity
  • Careers
  • Legal
Reference
Tanqory.com
API reference
  • Overview
  • Admin API
  • Store API
  • AI API
Get started
  • Quickstart
  • Authentication
  • Base URLs and regions
  • Pagination
  • Errors
  • Rate limits
  • Webhooks
  • Versioning
Build with
  • SDKs
  • MCP server
  • Agent runtime
Resources
  • Publication coverage
  • API license and terms↗
  • Status↗
  • Trust center↗
API reference
  • Overview
  • Admin API
  • Store API
  • AI API
Get started
  • Quickstart
  • Authentication
  • Base URLs and regions
  • Pagination
  • Errors
  • Rate limits
  • Webhooks
  • Versioning
Build with
  • SDKs
  • MCP server
  • Agent runtime
Resources
  • Publication coverage
  • API license and terms↗
  • Status↗
  • Trust center↗

Authentication

Bearer JWT, MFA, social login, and the operations that govern sessions.

Every Tanqory API call carries a JSON Web Token issued by the admin-api identity service. The same token is accepted by admin, store, and ai services. This page documents the format, how to obtain one, the operations that manage keys + sessions, and the errors you will see when the token is wrong.

The scheme

Tanqory declares exactly one security scheme:

FieldValue (from spec.components.securitySchemes)
Scheme namebearer
Typehttp
Bearer formatJWT

Every operation that requires auth carries security: [{ bearer: [] }] in the OpenAPI document. The published reference reflects this — search for the lock badge on any operation page in /api/*.

Issuing a key

[FOUNDER TO CONFIRM] — verify the exact dashboard path under Settings → Developers → API keys before launch.

Once you have the key, export it as TANQORY_API_KEY (every example in this guide assumes that name):

export TANQORY_API_KEY="your_key_here"

Keys are bearer credentials. Anyone holding the token can act as you within its scopes. Treat it like a password — never commit it, never log it, never embed it in client-side bundles. Rotation policy is governed by the API License and Terms.

The header

Every authenticated request carries the same header pair:

Authorization: Bearer ${TANQORY_API_KEY}
Content-Type: application/json

Minimal curl:

curl https://api.tanqory.com/api/v1/stores \
  -H "Authorization: Bearer $TANQORY_API_KEY" \
  -H "Content-Type: application/json"

The full multi-language version is in Quickstart.

Operations that manage authentication

Authentication is not just one endpoint — it is a family of resources declared under the Authentication* and Auth - Social Accounts tags in the Admin API. Counts below are pulled from the spec and reflect publishable operations only:

ResourceOperationsUse it for
Authentication18Email + password login, session management, sign-out, token refresh.
Authentication - MFA14Enrol / verify / disable a second factor; recovery codes.
Auth - Social Accounts5Connect / disconnect Google / Apple / etc. identity providers.
Authentication - Account Management4Data export, account deletion, profile lifecycle.
Authentication - Email Change4Initiate + confirm primary email change.
Authentication - Phone4Verify / change / remove phone number.
Authentication - Secondary Email4Manage secondary email addresses.
Authentication - Avatar & Preferences3Upload avatar, edit user preferences.
Authentication - Profile3Read / update profile fields.
Authentication - Identity Confirmation2Re-confirm identity before sensitive operations.

Click into any resource to see the full operation list with method, path, request body, and response envelope.

Errors

The spec declares only a description line on 401 / 403; the structured envelope below is verified from the live gateway. See Errors for the full contract + code catalogue.

A missing or invalid token returns 401 with code auth_token_invalid:

{
  "error": {
    "type": "authentication_error",
    "code": "auth_token_invalid",
    "title": "Auth Token Invalid",
    "message": "Unauthorized",
    "status": 401,
    "doc_url": "https://docs.tanqory.com/errors/auth_token_invalid",
    "request_id": "…",
    "instance": "/api/v1/…"
  }
}
StatusReturned when (verified)Action
401Missing / invalid / expired token — code auth_token_invalid.Re-issue the token; don't retry the same token.
403Token is valid but the account is locked (spec: "Account locked").Recognised but blocked — don't retry without user intervention.

Switch on error.code, not the status. Per-scope authorization rules are [FOUNDER TO CONFIRM] — the only 403 the spec declares today is the account-locked case.

Next steps

TopicWhen to read it
ErrorsAfter the first 401 in development.
Rate limitsBefore adding retry logic — 401s are not retryable, 429s are.
VersioningWhen you ship — pin a version so a future auth-flow change doesn't surprise you.
Trust CenterFor SOC / privacy posture before procurement.
  • Home
  • Why Tanqory
  • Pricing
  • Partners
  • Themes
  • App Store