aaune

Ten-minute quickstart

Complete a booking without live supply

The sandbox exercises the same public request shapes and booking truth semantics as `/v1`, while using synthetic data and fixed future dates. It never contacts a provider.

Base path
/sandbox/v1
Version
aune_sandbox_v1
Clock
2099-01-15T08:00:00.000Z
Verticals
vvs, electrician, moving, cleaning
PII
Synthetic values only

Fastest complete run

The CLI reads capabilities, searches seeded availability, accepts the exact returned terms, confirms one option, and prints the full booking truth.

From a source checkout
npm run build:aune-cli
node packages/cli/dist/aune.js sandbox-book --vertical moving --postcode 11122 --destination-postcode 41256

Search without personal data

Search sends postcodes and job facts only. For moving, both origin and destination postcodes are mandatory.

Sandbox option search
curl -X POST "https://aune-homepage-chat.vercel.app/sandbox/v1/booking-options" \
  -H "Content-Type: application/json" \
  -H "X-Aune-Client-Id: quickstart" \
  --data '{
    "vertical_id": "moving",
    "job_type_id": "moving_home",
    "description": "Synthetic move for sandbox verification",
    "location": {"country_code": "SE", "postcode": "11122"},
    "destination_location": {"country_code": "SE", "postcode": "41256"},
    "timing": {"preferred_time_text": "next available time"}
  }'

Failure injection

Set `X-Aune-Sandbox-Scenario` on each request. Re-run a scenario with a unique `X-Aune-Client-Id` and idempotency key when isolation matters.

  • `happy_path`: deterministic option and confirmation.
  • `no_options`: valid search with provider-follow-up guidance.
  • `stale_option`: confirmation requires a fresh search.
  • `slot_conflict`: the selected slot is taken concurrently.
  • `dependency_timeout`: retryable dependency failure.
  • `webhook_500`: booking stays confirmed while webhook delivery retries separately.

Lifecycle proof

  • Confirm only after explicit synthetic consent and exact terms acceptance.
  • Read the booking by ID and verify redacted status.
  • Cancel only after fresh explicit user confirmation.
  • Reschedule only to a newly searched option and reaccept its exact terms version.
  • Repeat the same write with the same idempotency key and verify the same booking truth is returned.