Early access
Forward a confirmation.
Build a complete itinerary.
Loominator turns the airline, hotel, car and rail emails already in your inbox into structured, versioned itinerary data behind a REST API. No scraping, no inbox access, no vendor integrations to maintain.
50 emails included. Extra 50 for $5, only up to a cap you set.
Forward the confirmation
Every account gets a private address on in.loominator.io. Forward the airline, hotel, car or rail email to it, inline or as an attachment, from any address you have verified.
We extract it, and keep the receipts
A decision model classifies the email, an extraction model turns it into a typed reservation, and every step is recorded: model, tokens, raw output, timings. The original email is stored as received.
Read it as JSON
Reservations merge into itineraries by date and place. Pull them from the REST API with an API key, or register a webhook and get told the moment each email is done.
Built for the people who have to trust the data
Extraction is only useful if you can tell when it went wrong. Everything in Loominator is designed around that.
Twelve reservation types
Air, Lodging, Car, Rail, Transport, Cruise, Restaurant, Activity, Parking, plus Note, Map and Directions. One stable JSON vocabulary, versioned per reservation.
Verified senders and domains
Only mail from addresses you have verified is processed. Verify a whole domain once with a DNS record, a meta tag or a file, the same way security tooling does it.
Provenance on every run
Each processing step keeps its model id, prompt version, token counts, raw output and validated result. When a field looks wrong, you can see exactly where it came from.
Webhooks that retry
Signed deliveries with every attempt stored. Failures back off for up to a day, land in a dead-letter list you can see, and can be retried by hand.
Honest metering
Every response carries RateLimit headers. When you reach your cap you get a 429 with a Retry-After, never a surprise on the invoice.
A dashboard for the edge cases
See every email, run, step and delivery. Move a reservation to another itinerary, pin dates, or reprocess a failed email without touching the API.
What the API gives you
An itinerary is a Trip with its reservations grouped by type. Every reservation carries the booking fields you expect, normalized date-times with time zones, and a pointer back to the email and run it came from.
GET /v1/itineraries/trp_01J…?include_objects=true
{
"Trip": { "display_name": "Lisbon Nov 2026", "start_date": "2026-11-03", … },
"Air": [ { "supplier_name": "TAP", "record_locator": "X7K2QL",
"Segment": [ { "start_airport_code": "SFO", "end_airport_code": "LIS",
"StartDateTime": { "date": "2026-11-03", "time": "16:45:00",
"timezone": "America/Los_Angeles" } } ],
"source": { "email_id": "eml_01J…", "run_id": "run_01J…" } } ],
"Lodging": [ … ]
}