{"uid":"cap_OCJ4cO6EqRhJm1BzBv28F","slug":"travelpulse-flight-disruption-compensation-rights-letter-generator-1059aaf2","name":"TravelPulse — Flight Disruption Compensation Rights Letter Generator","description":"Citation-backed flight compensation claim letter across 7 regimes (EU261/UK261/Canada APPR/Brazil ANAC 400/Turkey SHY/India DGCA/Israel ASL) plus Montreal Convention baggage complaints: deterministic eligibility and amount plus a ready-to-send demand letter that pre-empts the carrier defenses, with escalation path and deadlines. Cheaper eligibility-only check: /api/rights/check ($0.05).","url":"https://travelpulse.theaslangroupllc.com/api/rights/letter?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET","HEAD","DELETE"],"type":"string"},"queryParams":{"type":"object","required":["from","to","delay_hours"],"properties":{"to":{"type":"string","description":"Final-destination airport IATA"},"from":{"type":"string","description":"Departure airport IATA"},"lang":{"type":"string","description":"Letter language (default English)"},"reason":{"type":"string","description":"Cause given by the carrier: technical|crew|rotation_knock_on|airline_staff_strike|weather|atc|security|external_strike|bird_strike|medical_diversion|unknown (default unknown)"},"airline":{"type":"string","description":"Airline name (e.g. Lufthansa)"},"disruption":{"type":"string","description":"delay | cancellation | denied_boarding | baggage_delay | baggage_damage | baggage_loss (default delay)"},"claim_value":{"type":"string","description":"Baggage claims: documented damages amount with currency (e.g. '480 USD') — the letter demands this, capped by the Montreal limit"},"delay_hours":{"type":"string","description":"Arrival delay at final destination, hours"},"distance_km":{"type":"string","description":"Distance override for airports outside the reference table"},"flight_date":{"type":"string","description":"Flight date YYYY-MM-DD (REQUIRED for baggage disruptions — the Art. 35 two-year limitation is checked against it)"},"notice_days":{"type":"string","description":"Cancellations: days of advance notice"},"carrier_size":{"type":"string","description":"APPR: large | small"},"flight_number":{"type":"string","description":"Flight number (e.g. LH400)"},"passenger_name":{"type":"string","description":"Passenger name for the letter (placeholder used if omitted)"},"carrier_country":{"type":"string","description":"Operating carrier home country ISO code, or EU (default EU)"},"bag_received_date":{"type":"string","description":"Baggage claims: date the bag was returned/received (Art. 31 deadline math)"},"international_itinerary":{"type":"string","description":"Baggage claims on same-country routes: set true if the flight was part of an international itinerary (the Montreal Convention only governs international carriage)"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"errors":{"type":"object","description":"Documented error responses, keyed by HTTP status code","additionalProperties":{"type":"object","required":["description"],"properties":{"example":{"type":"object"},"description":{"type":"string"}}}},"example":{"type":"object"}}}}},"responseSchema":{"type":"json","errors":{"400":{"example":{"error":"from parameter required"},"description":"Invalid or missing parameter(s) — required: from, to, delay_hours. Returned before the payment gate on paid requests, so a malformed call is never charged. JSON body: { error: <what is wrong and how to fix it> } plus usage hints."},"402":{"description":"Payment required — x402 v2 challenge; the accepts array lists scheme, network, and amount. Retry the same request with a PAYMENT-SIGNATURE (v2) or X-PAYMENT (v1) header. Verification is free."},"500":{"example":{"error":"upstream_failed"},"description":"Unexpected server error. If a payment settled without a usable result, contact info@theaslangroupllc.com with the settlement tx hash for a re-run or credit."}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"2","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$2/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"2","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"2","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_nReMeGL89qNqJ4zN0Nif_","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"2","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Generates a formal passenger rights demand letter for flight delays, cancellations, denied boarding, or baggage claims based on IATA routes and disruption details","exampleAgentPrompt":"Draft a formal passenger rights compensation letter for my Lufthansa flight LH400 from JFK to FRA on 2024-11-15 that arrived 5 hours late due to crew issues — the passenger is Jane Smith and I need the letter in English.","exampleUseCases":null,"resultDescription":"A JSON response containing a ready-to-send formal passenger rights demand letter addressed to the airline, citing applicable regulations (e.g. EU261/2004, Montreal Convention), calculated compensation entitlements, and tailored to the specific disruption type, route distance, delay duration, carrier country, and reason provided.","failureModes":["Missing required fields (to, from, delay_hours) returns a 400/422 validation error","Unknown or unsupported IATA code pair may require distance_km override","Ambiguous disruption reason may default to 'unknown', potentially affecting compensation calculation","Baggage claims without claim_value may produce an incomplete letter","Response schema example is empty — actual response structure may need to be inferred at runtime","Payment failure (x402) results in no letter being returned"],"whenToPreferThis":"Use this endpoint when a user needs a formally drafted, jurisdiction-aware passenger rights demand letter rather than generic legal advice or templates. Ideal when the agent has specific flight details (IATA codes, delay hours, disruption reason) and needs a ready-to-send letter citing EU261/2004, Montreal Convention, APPR, or other applicable regulations. Preferred over generic document generators because it encodes airline compensation rules, distance-based eligibility, and deadline math automatically.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-29T13:00:14.234Z","isFirstParty":false,"canonicalSlug":"travelpulse-flight-disruption-compensation-rights-letter-generator-1059aaf2"}