Skip to content
Euler Docs

Get started

This flow is safe for a first integration pass. It uses your hosted Euler API and local commands, and nothing here spends on a paid model lane until you trigger a run.

Need copy-paste API and SDK snippets instead? Use the 15-minute quickstart.

1. Check the hosted API

curl -fsS https://api.euler.sudotank.com/healthz
curl -fsS https://api.euler.sudotank.com/readyz

Both endpoints return {"status":"ok"} payloads when the service is live.

2. Clone and verify locally

git clone git@github.com:Sudotank/euler-platform.git
cd euler-platform
make setup
make check
make scenarios

3. Register data

euler project create acme --name "Acme Robotics"
euler source add acme --id pilot-042 --format mcap --uri file:///data/pilot-042

Euler records the project and source before any compiler step mutates derived artifacts. Registering a source does not ingest anything.

4. Decide what the run should produce

Before the first run, look at what the project will annotate and what it will cost:

curl -fsS -H "Authorization: Bearer $EULER_TOKEN" \
  "$EULER_BASE_URL/v1/projects/acme/annotation/settings"

The response resolves the whole layer catalog for this project: the effective mode per layer, which layers apply to your data kind and why, and the cost preview for the layers currently set to run in-run.

If the defaults are not what you want, apply a preset or set modes explicitly:

curl -fsS -X PUT -H "Authorization: Bearer $EULER_TOKEN" \
  -H "Content-Type: application/json" \
  "$EULER_BASE_URL/v1/projects/acme/annotation/settings" \
  -d '{"preset": "manipulation-qc"}'

Leaving this alone is a valid choice. A project that never touches settings gets a computed default derived from its use case and target profile.

5. Run the compiler

euler run acme pilot-042

The hosted UI exposes the same command-led flow with per-step evidence and approval checkpoints. Heavy annotation layers set to on_demand do not run here; queue them afterwards as annotation jobs.

6. Read the verdict

curl -fsS -H "Authorization: Bearer $EULER_TOKEN" \
  "$EULER_BASE_URL/v1/projects/acme/annotation/status"
curl -fsS -H "Authorization: Bearer $EULER_TOKEN" \
  "$EULER_BASE_URL/v1/projects/acme/readiness/settings"

The first tells you which layers actually landed and which are still available on demand. The second tells you which readiness checks apply to your data, at what weight and threshold, and why any check does not apply.

7. Search, curate and export

After ingestion, use structured filters and vector-backed search to find the episodes that matter. Save the result as a slice, or compose a curation plan to cut a large dataset down to a training budget with a report that defends every drop. Promote stable memberships to eval sets, and export accepted data with receipts.

Continue with integration recipes, or ask the Copilot to do the same work conversationally.