Status & reliability

If something breaks, here's what to do.

This page documents what an outage looks like from your side, how to tell whether the problem is ours or yours, what we commit to during incidents, and how to escalate. We're a small team — honesty plays better than fake-enterprise puffery, so this page is plain-spoken.

What we commit to

While in early access:

If you have a custom SLA in your contract, that contract overrides these defaults.

Common symptoms

1. HTTP 401 — Unauthorized on every request

Likely cause: your API key is missing, malformed, or revoked.
Confirm: open /app, sign in, check API keys. If your key shows revoked, you'll need to create a new one.
Workaround: rotate to a new key. The dashboard shows the full secret once on creation; save it.

2. HTTP 429 — Rate limit exceeded

Likely cause: your account hit the per-minute rate limit (default 30 rpm on Free, 60 rpm on Starter).
Confirm: the response includes X-RateLimit-Limit and X-RateLimit-Remaining headers + a Retry-After seconds header.
Workaround: back off until Retry-After; reduce concurrency in your client. Long-term: upgrade tier (returns higher rate-limit and quota).

3. HTTP 429 — quota_exceeded

Likely cause: your account hit the monthly request quota.
Confirm: the response body includes {"error": "quota_exceeded", "used": ..., "quota": ..., "reset_at": "..."} and a recommended_plan.
Workaround: upgrade in the dashboard (the response body's upgrade_url deep-links). Quota resets at the start of the next calendar month UTC.

4. HTTP 5xx on data endpoints; Concierge times out

Likely cause: something on our side. The Concierge agent has an 80s deadline (180s on local-inference customers); a sustained pattern of timeouts is an incident.
Confirm: check status.travelminds.ai/status. If we haven't posted, file a ticket — we may be in detection latency.
Workaround: shorter Concierge queries (max_days <= 3) consistently fit the deadline; if you can split a long query into shorter ones, do that until we resolve.

5. Webhook events not arriving (Paddle / Razorpay)

Likely cause: in-flight payment but our reconciler hasn't drained yet (max ~5min lag), OR a webhook signature mismatch.
Confirm: in your Paddle / Razorpay dashboard, check the webhook delivery log for non-2xx responses or "delivery failed" events.
Workaround: if the dashboard shows successful delivery but your account's plan hasn't flipped after 10 minutes, escalate (see below) — that's an incident on our side.

Escalation

  1. Status page first. If status.travelminds.ai/status already shows the incident, sit tight — adding a duplicate ticket slows our response.
  2. If status looks green but you're seeing problems: email support@travelminds.ai with your account email + a sample request URL + the response status / body. Use SUPPORT in the subject.
  3. If revenue-impacting (your end users are hitting our errors live): subject your email URGENT — that page-trips the founder regardless of timezone.
  4. If you're a Bihar / DMO / Enterprise contract holder, use the channel in your contract's Schedule 4 (named contact + Slack-shared channel + phone fallback).

We don't have a 24/7 NOC. We have a small team who responds quickly during business hours and best-effort otherwise. The status page is honest about that.