Search live hotel availability and book with idempotent confirms. Then let Trekko's engine quietly rebook your customer at a cheaper rate after they've booked — and credit the savings back to you. Get test keys in 60 seconds, no call required.
trk_test_ key + secret instantly. No sales call.trk_live_ key — same code.# 1) self-serve signup → test key (secret shown once) curl -sS -X POST https://api.trekko.co/core/sandbox/signup \ -H "Content-Type: application/json" \ -d '{"email":"dev@acme.com","company_name":"Acme"}' # 2) first call (sandbox base URL + test key) B=https://api.trekko.co/core/sandbox curl -sS -X POST "$B/accommodation/search?query=Barcelona" \ -H "Authorization: ApiKey trk_test_xxx:secret" \ -H "Accept-Language: en"
Instant at signup. Hits the isolated sandbox — deterministic catalog, no real vendors,
money or production data. Build and verify your entire integration here, including the
booking.rebooked flow via the rebooking simulator.
Real availability and bookings, attributed to your agency in Trekko's CRM with your markup. Activated once your wallet deposit reaches the minimum (€3,000). The contract is byte-identical to test — just swap the base URL and key.
Search → availability (markup-inclusive) → checkout → confirm → cancel → list. Idempotent confirms; stable error codes.
RebookingTrekko rebooks confirmed, refundable stays at cheaper rates and credits the savings to your wallet or credit balance. A stable booking_id survives the change.
booking.rebooked delivered with an HMAC Trekko-Signature, retried on failure, deduped by event_id.
A trigger_rebooking endpoint runs the exact money model on demand, so you can test savings + webhooks without waiting.
Same paths in live (/core) and sandbox (/core/sandbox). Full schemas in the reference.
| Area | Method & path |
|---|---|
| Signup (sandbox) | POST /sandbox/signup |
| Search | POST /accommodation/search |
| Availability | POST /accommodations/get_accommodation_availability |
| Checkout → Confirm | POST /accommodation/bookings/{checkout,confirm_booking} |
| Cancel · List · Get | POST /accommodation/bookings/{cancel_booking,list_bookings,get_booking} |
| Account | POST /accommodation/account/{balance,savings} |
| Webhooks | POST·GET·DELETE /accommodation/webhooks |
| Rebooking simulator (sandbox) | POST /accommodation/bookings/trigger_rebooking |
Zero-dependency, typed, auto-retry + idempotency built in.
import { TrekkoClient } from '@staytick/trekko-client'; const trekko = new TrekkoClient({ apiKey, apiSecret, language:'es' }); const { data } = await trekko.search('Barcelona');
Standard-library only, typed, same retry + idempotency semantics.
from trekko import TrekkoClient trekko = TrekkoClient(api_key=key, api_secret=secret, language="es") res = trekko.search("Barcelona")
Both SDKs target the live base URL by default; pass the sandbox base URL to run
in test mode. PHP, Ruby, Java and Go can be generated from the OpenAPI spec on this page via
openapi-generator until the official packages publish.
Register an HTTPS endpoint and Trekko POSTs signed events.
Verify Trekko-Signature: t=<unix>,v1=<hex> where
v1 = HMAC_SHA256(secret, "<t>.<raw_body>"); reject if it doesn't match
or |now − t| is too large. Dedupe on event_id (at-least-once).
{
"event": "booking.rebooked",
"event_id": "evt_9f2c…",
"created_at": "2026-06-20T14:03:11Z",
"data": {
"booking_id": "TRK-AB12CD34",
"partner_savings": 50.00,
"credited_to": "virtual_wallet"
}
}
Integrate against the sandbox with your trk_test_ key until the full loop + webhook verification pass.
Top up your Trekko wallet (card or bank transfer) with a deposit of at least €3,000 — the funds you spend on real bookings. Bank transfers are confirmed by Trekko.
Once your balance reaches the minimum, production is enabled and your trk_live_ key is issued, attributed to your agency with your markup.
Swap the base URL to /core and the key to trk_live_. Same code, same shapes.
Heads-up: live search and bookings need a funded wallet. Calls made before the €3,000 minimum deposit clears return a clear error telling you to top up.
Open the console — get a key & go live →
Reference: OpenAPI reference · Going to production · Integration guide · Rebooking & savings · Sandbox · Postman collection