Reference
API Reference
Every route the app uses internally, grouped by resource. All routes are relative to the app's origin, accept and return JSON, and require no authentication.
Base URL
In the preview, that's https://preview.devx-ai.xyz. Locally it's whatever host your dev server runs on (typically http://localhost:3000).
Resources
| Resource | Covers |
|---|---|
| Datasets | Golden test case collections. |
| Evaluations | Runs, comparisons, and the real scoring engine. |
| Traces | Logged LLM calls with spans and metadata. |
| Prompts | Versioned prompt templates. |
| Annotations | Human ratings on traces and results. |
| Alerts | Threshold rules and triggered events. |
| Playground | Interactive prompt runs. |
Conventions
- Successful reads return
200with the resource wrapped in a named key, e.g.{ "dataset": {...} }. - Successful creates return
201with the created resource. - Nothing is ever paginated — every list route returns the full collection, since datasets are small and mock.
- Dynamic segments (
:datasetId,:runId, etc.) are the resource'sidfield.
Errors
Errors return a JSON body with a single error string and an appropriate status code:
| Status | Meaning | Example cause |
|---|---|---|
| 400 | Bad request | Missing a required field, or an empty dataset. |
| 404 | Not found | The id in the URL doesn't match any resource. |
| 500 | Server error | Unexpected failure — check server logs. |
{ "error": "Dataset not found" }No auth, no rate limits
This is a demo workspace over an in-memory store — there's no API key, no session, and no throttling. See About for what that means for persistence.
Try it now
New to the API? Start with the Quickstart, which walks through triggering a real evaluation run with a single curl command.