Rate-limited to 5 requests per 15 minutes per IP. Tokens are opaque and stored server-side. Scopes are additive; request only what you need. Tokens expire after expires_in_days (default 30, max 90).
Body
Required
-
Maximum length is
255. -
Not stored or logged. Used only to verify identity.
Minimum length is
8, maximum length is128. -
Descriptive label for the token (e.g., local-agent, ci-bot). Must be unique per user.
Maximum length is
50. Format should match the following pattern:^[a-zA-Z0-9_-]+$. -
Minimum value is
1, maximum value is90. Default value is30. -
Requested scopes. Grant only what the client needs. runs:read — list and inspect runs, samples, history. runs:write — trigger, cancel, retry runs. results:read — access expected/actual output, diffs, errors, logs. baselines:write — approve new expected baselines. system:read — queue, infrastructure errors, stack traces, artifacts.
Not more than
8elements. Values areruns:read,runs:write,results:read,baselines:write, orsystem:read. Default value is["runs:read", "results:read"].
curl \
--request POST 'https://sampleplatform.ccextractor.org/api/v1/auth/tokens' \
--header "Content-Type: application/json" \
--data '{"email":"hello@example.com","password":"string","token_name":"string","expires_in_days":30,"scopes":["runs:read","results:read"]}'
{
"email": "hello@example.com",
"password": "string",
"token_name": "string",
"expires_in_days": 30,
"scopes": [
"runs:read",
"results:read"
]
}
{
"token": "string",
"token_type": "Bearer",
"token_name": "string",
"scopes": [
"runs:read"
],
"expires_at": "2026-05-04T09:42:00Z"
}
{
"code": "validation_error",
"message": "Request failed schema validation.",
"details": {
"fields": {
"commit_sha": "Must match pattern ^[a-fA-F0-9]{40}$",
"platform": "Must be one of [linux, windows]"
}
}
}
{
"code": "invalid_credentials",
"message": "Email or password is incorrect.",
"details": {}
}
{
"code": "rate_limited",
"message": "Rate limit exceeded. Retry after 30 seconds.",
"details": {
"retry_after": 30,
"limit": 120,
"window": "60s"
}
}
{
"code": "not_found",
"message": "Run 9317 not found.",
"details": {}
}