LimitRail Developer Console
Public API workbench for OAuth clients
API https://stg-api.limitrail.com OAuth https://stg-oauth.limitrail.com Token missing Docs IT Docs EN Swagger
Request

POST /connect/token

Requests a bearer token with client_credentials. Run this first, then call the public API.
Scope OAuth token
Response

Execution result

Not sent Status - Duration - Token missing
HTTP request
{
  "status": "waiting_for_request"
}
HTTP response headers
-
HTTP response body
{
  "status": "waiting_for_response"
}
API documentation

Authentication

Exchanges OAuth client credentials for a bearer token used by every public LimitRail API call.

POST /connect/token
When to use: Run it before any other endpoint. The selected scopes define what the returned token is allowed to call.
The token is a short-lived bearer credential. Treat it as sensitive and never persist it in a mobile client.
Form fields 4 field(s)
grant_type string Required
OAuth2 grant type.
Allowed values: client_credentials
Impact: Only CLIENT_CREDENTIALS is supported for machine-to-machine integration.
client_credentials requests a token for the integration platform, not for an end user.
client_id string Required
Public identifier of the OAuth client created in Developer access.
Allowed values: lr_cdadc4d7359a489ca5a2bd3fc9cb0202
Impact: It selects the tenant and the allowed scope set.
Using a client from another environment gives you a token for that environment only.
client_secret string Required
Secret credential paired with the client id.
Impact: It proves that the calling system owns the OAuth client.
Rotate it if it is copied into an unsafe location.
scope space-separated string Required
Scopes requested for the token.
Impact: The token can call only APIs covered by these scopes.
Ask only for scopes the integration flow needs; for this console all public scopes can be selected.
Response fields 4 field(s)
access_token string Required
Bearer token to send in Authorization header.
Impact: Every public API endpoint validates this token and its scopes.
Authorization: Bearer eyJhbGci...
token_type string Required
OAuth token type.
Impact: Use it as the Authorization header prefix.
Bearer
expires_in number Required
Token lifetime in seconds.
Impact: When it expires, API calls return 401 and the client must request a fresh token.
3600
scope string Optional
Scopes granted by the authorization server.
Impact: Compare this with the scope required by the selected endpoint.
Status and errors 5 field(s)
200 OK HTTP Required
The request was accepted and the response body follows the endpoint contract.
Impact: For list endpoints this can still be an empty items array.
200 with items: [] means no matching data, not a transport failure.
400 Bad Request HTTP Optional
The input shape is invalid or a business-required field is missing.
Impact: The body uses ProblemDetails with errorCode, resourceKey, traceId and sometimes field.
If from/to are missing on runtime lists, the API returns field = From.
401 Unauthorized HTTP Optional
The bearer token is missing, expired or not valid for this API host.
Impact: Request a new token from /connect/token and retry with Authorization: Bearer <token>.
Do not send client_secret to public API endpoints; it is only used at the token endpoint.
403 Forbidden HTTP Optional
The token is valid but does not contain the required scope.
Impact: Select the scope shown in the request header area, get a new token, then retry.
Calling /v1/usage/commit needs limitrail.usage.write.
404 Not Found HTTP Optional
The requested id or external account reference does not exist for the current tenant.
Impact: The tenant is resolved from the OAuth client, so data from another tenant is not visible.
An existing account in another tenant still returns 404.