Skip to main content
The Seyval API lets you manage repositories, run code analysis, execute code, and configure integrations programmatically. All endpoints use JSON over HTTPS.

Base URL

Versioning

All resource endpoints are prefixed with /v1. OAuth and discovery endpoints are unversioned.

Authentication

Most endpoints require a bearer token. Pass it in the Authorization header:
You can create and manage API keys from the dashboard or via the API keys endpoints.

Response format

All responses return JSON. Successful responses use standard HTTP status codes:

Error responses

Validation errors return a 422 status with details about which fields failed:

Which compute a run used

Two fields describe a run’s compute, and they answer different questions: For a managed run the two agree: you get the tier you asked for, so compute_type is that tier (gpu-h100). For a BYO cluster they do not. compute_type reports the GPU model the cluster itself named — the GRES type from sinfo, such as nvidia_gb200 — or unknown when the cluster never reported one. It is therefore a free-form string, not a fixed set of values. Note that the compute_type you send to start a run means something different: it is what you request, and for a BYO cluster it carries a compatibility tier used to derive the GPU request. Requesting and recording are separate values, and on a BYO cluster they differ.

Download URLs

Endpoints that hand back file contents — run logs (stdout_url / stderr_url) and run outputs (download_url) — return short-lived presigned URLs rather than the bytes themselves. Each is valid for at most one hour from the moment it is issued, and log URLs are served from a cache, so the remaining lifetime can be shorter than that. Do not persist these URLs. A saved URL later returns only Request has expired. Store the run_id (and the output path) instead, and request a fresh URL when you actually need the file:

Endpoint groups

Use the sidebar to browse all available endpoints organized by group:
  • Repositories — Register, list, and manage repositories
  • Repository files — Browse files within a repository
  • Code analysis — Start, monitor, and manage code analyses
  • Code execution — Run code and retrieve execution results
  • Run streaming — Stream real-time stdout/stderr logs via SSE
  • API keys — Create and revoke API keys
  • Environment variables — Manage environment variables for execution
  • GitHub integration — Connect and manage GitHub repositories
  • GitHub App Webhooks — Receive push and pull request events for automated analysis
  • OAuth 2.0 — Authorization, tokens, and client registration