Skip to content

Service capabilities and effective limits

GET
/info

Reports the limits every task runs under, the sandbox profiles a request may choose, whether the step cache is enabled, and the language toolchains installed in this image (from FABER_TOOLCHAINS).

Service capabilities

object
version
required
string
api_version
required
string
Allowed values: v1
arch
required

Kernel architecture, e.g. x86_64 or aarch64

string
sandbox_profiles
required
object
default
required

Versioned seccomp policy. v2 profiles are allowlists (an unlisted syscall fails with ENOSYS); v1 profiles are denylists. compile_* tasks may create processes and namespace-scoped sockets (compilers, interpreters, build tools); native_* tasks may do neither (running a compiled submission). A denied syscall kills the task with SIGSYS and outcome policy_violation.

string
Allowed values: compile_v2 native_v2 compile_v1 native_v1
allowed
required
Array<string>
Allowed values: compile_v2 native_v2 compile_v1 native_v1
limits
required

Limits applied to every task; requests cannot raise them.

object
memory_max_bytes
required
integer format: int64
pids_max
required
integer
cpu_max
required

Cgroup cpu.max value, "<quota> <period>" in microseconds

string
wall_timeout_ms
required
integer format: int64
cpu_time_limit_ms
required
integer format: int64
overall_timeout_ms
required
integer format: int64
output_limit_bytes
required
integer format: int64
request_output_limit_bytes
required
integer format: int64
max_steps
required
integer
max_parallel_tasks
required
integer
max_concurrency
required
integer
execute_body_limit_bytes
required
integer format: int64
upload_file_limit_bytes
required
integer format: int64
cache
required
object
enabled
required
boolean
backend
required
string
Allowed values: memory redis
toolchains
required
Array<object>
object
id
required

Catalog id, e.g. python, node, rust

string
version
string | null

Missing or wrong API key (unauthorized)

object
error
required

Human-readable message

string
code
required

Stable machine-readable error code. Clients should treat unknown codes as internal_error.

string
Allowed values: invalid_request unauthorized not_found file_not_found payload_too_large limits_exceeded profile_not_allowed capacity_exhausted rate_limited shutting_down cancelled deadline_exceeded sandbox_setup_failed cache_disabled internal_error
Example
{
"error": "Missing or invalid API key",
"code": "unauthorized"
}
WWW-Authenticate
string

The API key has used up its requests (rate_limited). Sent only when the service enables per-key rate limiting (RATE_LIMIT_PER_MINUTE). Retry after the Retry-After header.

object
error
required

Human-readable message

string
code
required

Stable machine-readable error code. Clients should treat unknown codes as internal_error.

string
Allowed values: invalid_request unauthorized not_found file_not_found payload_too_large limits_exceeded profile_not_allowed capacity_exhausted rate_limited shutting_down cancelled deadline_exceeded sandbox_setup_failed cache_disabled internal_error
Example
{
"error": "Rate limit exceeded for this API key",
"code": "rate_limited"
}
Retry-After
integer

Seconds until the key may make another request