Issue vendor token
Exchange a client ID and secret for a vendor access token.
Authentication
POST
/api/v1/auth/tokenThe credential-exchange door. Anonymous — no bearer token is required (you don’t have one
yet). Rate-limited independently of every other route (see the Rate limits section of the
Vendor Integration Standard). Returns a JWT (audience vendor-api) valid for 5 minutes,
carrying your credential’s granted capabilities — see Authentication & capabilities.
Body parameters
clientIdstringRequiredclientSecretstringRequiredResponse
accessTokenstringtokenTypestringexpiresInintegerSeconds until expiry — always 300 today.
Other responses
401Invalid client ID/secret, or an inactive vendor.403The route is not available to your credential (FORBIDDEN).404No API route matches this path (NOT_FOUND_ROUTE). A missing resource on a real route returns that service’s own NOT_FOUND_* code instead.415The request body is not sent as application/json (UNSUPPORTED_MEDIA_TYPE).429Too many requests. Retry after the Retry-After header (seconds).502A dependent service returned an invalid response (BAD_GATEWAY). Retry with backoff.503The service is temporarily unavailable (SERVICE_UNAVAILABLE). Retry with backoff.504A dependent service did not respond in time (GATEWAY_TIMEOUT). Retry with backoff.curl --request POST \ --url https://api-omni-vendors.linra.net/api/v1/auth/token \ --header 'Content-Type: application/json' \ --data '{ "clientId": "string", "clientSecret": "string" }'const res = await fetch('https://api-omni-vendors.linra.net/api/v1/auth/token', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ clientId: 'string', clientSecret: 'string' }),});const { payload } = await res.json();var response = await httpClient.PostAsJsonAsync( "https://api-omni-vendors.linra.net/api/v1/auth/token", new { clientId = "string", clientSecret = "string" });
var envelope = await response.Content.ReadFromJsonAsync<ApiResponse<VendorTokenResponse>>();Response
{ "state": "SUCCESS", "payload": { "accessToken": "string", "tokenType": "Bearer", "expiresIn": 300 }, "details": null}
