OAuth 2.0 client credentials token management.
Tote Online Ordering API (1.0.0)
REST API for 3rd party developers building online ordering integrations with Tote POS convenience stores and fuel stations.
The Tote Online Ordering API enables partners to:
- Authenticate via OAuth 2.0 client credentials
- Browse store locations and business hours
- Retrieve full menus with nested modifier groups
- Create and manage shopping carts
- Submit orders with split payment support
- Track order fulfillment status
- Subscribe to webhook events for real-time updates
- Check item availability and inventory
The server URLs below are placeholders. Your actual API base URL, client ID, and client secret are provided during partner onboarding. Contact developer@totepos.com to get started.
Path parameters use snake_case. JSON response fields use snake_case. Schema names use PascalCase. Enum values use SCREAMING_SNAKE_CASE.
Request
Exchange your client credentials for an access token using the OAuth 2.0 client credentials flow.
How it works:
- Send your
client_idandclient_secretin the request body - Receive a Bearer token valid for 24 hours
- Include the token in the
Authorizationheader of all subsequent requests
Token caching: Cache your token and reuse it until it expires. Do not request a new token for every API call -- this will trigger rate limiting.
Token expiry: Tokens expire after 86400 seconds (24 hours). When your token expires, request a new one. There is no refresh token flow -- simply re-authenticate with your client credentials.
- Mock serverhttps://developers.tote.ai/_mock/online-ordering/spec/openapi/auth/token
- Production (placeholder -- use your assigned base URL)https://api.tote.ai/v1/online-ordering/auth/token
- Sandbox (placeholder -- use your assigned base URL)https://sandbox.api.tote.ai/v1/online-ordering/auth/token
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://developers.tote.ai/_mock/online-ordering/spec/openapi/auth/token \
-H 'Content-Type: application/json' \
-d '{
"grant_type": "CLIENT_CREDENTIALS",
"client_id": "d7a8fbb3-07d4-4e3c-b5f2-9a6c8b1e0f23",
"client_secret": "sk_live_a1b2c3d4e5f6..."
}'{ "access_token": "eyJhbGciOiJSUzI1NiIs...", "token_type": "BEARER", "expires_in": 86400 }