Flight search app built on FlightConnections.com API data. Features: airport search with autocomplete, browse by country/state/map, flight schedules by route and date, multi-airline support with per-airline schedule loading. Includes 4,561-airport GPS database for map browsing. Adaptive light/dark mode UI inspired by Flighty. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
5.4 KiB
5.4 KiB
Delta Air Lines Mobile API
Extracted from com.delta.mobile.android v6.7 (build 24019)
Base URLs
| Environment | URL |
|---|---|
| Production | https://www.delta.com |
| CDN | https://content.delta.com |
| Embed Web | https://api.delta.com/embedweb |
Key Endpoints
Airport Standby List (ASL)
POST https://www.delta.com/api/mobile/asl
This is the standby/upgrade list endpoint. Uses AirportStandbyListRequest with fields:
departureDate— flight departure date- Request likely includes flight number, origin, destination
- Returns
AirportUpgradeStandbyModelwith upgrade list and standby list data
Flight Status
POST https://www.delta.com/api/mobile/getFlightStatus
POST https://www.delta.com/api/mobile/getFlightStatusByLeg
Upgrade Eligibility
POST https://www.delta.com/api/mobile/getUpgradeEligibilityInfo
POST https://www.delta.com/api/mobile/purchaseEfirst
Complimentary Upgrade (from DEX strings)
/getComplimentaryUpgrade
/processComplimentaryUpgrade
/purchaseUpgrade
All Mobile API Endpoints
| Endpoint | Path |
|---|---|
| Standby List | /api/mobile/asl |
| Flight Status | /api/mobile/getFlightStatus |
| Flight Status By Leg | /api/mobile/getFlightStatusByLeg |
| Flight Schedule | /api/mobile/getFlightSchedule |
| Login | /api/mobile/login |
| Logout | /api/mobile/logout |
| Check Login | /api/mobile/checkLogin |
| Get Profile | /api/mobile/getprofile |
| Manage Profile | /api/mobile/manageProfile |
| Get PNR | /api/mobile/getPnr |
| Validate PNR | /api/mobile/validatePnr |
| Dashboard | /api/mobile/getDashboard |
| Check-in | /api/mobile/checkin |
| Seat Map | /api/mobile/getSeatMap |
| Change Seat | /api/mobile/changeSeat |
| Upgrade Eligibility | /api/mobile/getUpgradeEligibilityInfo |
| Purchase E-First | /api/mobile/purchaseEfirst |
| Bag Info | /api/mobile/getBagInfo |
| Add Bags | /api/mobile/addBags |
| Get Bags | /api/mobile/getBags |
| Bag Carousel | /api/mobile/getBagCarousel |
| Weather | /api/mobile/getWeather |
| Account Activity | /api/mobile/getAcctActivity |
| SkyClub Info | /api/mobile/getSkyclubInfo |
| Purchase SkyClub | /api/mobile/purchaseSkyclub |
| Receipts | /api/mobile/getReceipts |
| Email Receipt | /api/mobile/processEmailReceipt |
| Merchandise | /api/mobile/getMerchandise |
| Promotions | /api/mobile/getPromotions |
| Airport Mode | /api/mobile/getAirportMode |
| Passenger Info | /api/mobile/getPaxInfo |
| Manage Passenger | /api/mobile/managePaxInfo |
| Travel Documents | /api/mobile/getTravelDoc |
| Add Travel Doc | /api/mobile/addTravelDoc |
| Emergency Contact | /api/mobile/addEmergencyContact |
| Manage Cart | /api/mobile/manageCart |
| Get Cart | /api/mobile/getCart |
| Clear Cart | /api/mobile/clearCart |
| Eligible FOP | /api/mobile/getEligibleFop |
| SSR | /api/mobile/getSsr |
| Available SSR | /api/mobile/getAvailableSsr |
| Manage SSR | /api/mobile/manageSsr |
| Manage FF | /api/mobile/manageFF |
| Validate Address | /api/mobile/validateAddress |
| Forgot Username | /api/mobile/forgotUserName |
| Country Reference | /api/mobile/getCountryReferenceData |
| Address Fields | /api/mobile/getAddressFields |
| Enroll SkyMiles | /api/mobile/enrollSM |
| Upsell Info | /api/mobile/getPnrUpsellInfo |
| Upsell Fare Rules | /api/mobile/getUpsellFareRules |
| Purchase Upsell | /api/mobile/purchaseUpsell |
| Supported Version | /api/mobile/supportedVersion |
| SkyMiles Info | /api/mobile/getSMInfo |
| SkyMiles Pass | /api/mobile/getSMPass |
| SC Info | /api/mobile/getSCInfo |
| SC Pass | /api/mobile/getSCPass |
| Membership Status | /api/mobile/getMembershipStatusInfo |
| EOD Eligibility | /api/mobile/getEODEligibility |
| Store Password | /api/mobile/storePassword |
| Store Email | /api/mobile/storeEmail |
| Update Password | /api/mobile/updatePassword |
| Security Questions | /api/mobile/getSecurityQuestions |
| Get SQA | /api/mobile/getSQA |
| Store SQA | /api/mobile/storeSQA |
| App Info | /api/mobile/getinfo |
Request Headers (from DEX analysis)
The app uses an AirlineRequest pattern with these common headers:
Content-Type: application/json- Custom auth headers (session-based after
/api/mobile/login)
ASL Data Model (from DEX class analysis)
AirportStandbyListRequest
requestInfo— flight identificationdepartureDate— date string
AirportUpgradeStandbyModel
Contains:
- Upgrade list (by cabin class)
- Standby list
standbyPriority/standbyPriorityCodeupgradeListentriesASLStandby— individual standby entriesASLUpgrade— individual upgrade entriesUpgradeSeatRemaining— available seats per cabinPassengerChiclet— passenger display data
UpgradeStandbyParams
airportModeResponse- Flight leg details
- Eligibility flags
Security Notes
- No SSL pinning in
network_security_config.xml(only trusts system CAs) - No PairIP or anti-tamper — app runs on emulators
- Auth is session-based via
/api/mobile/login - The ASL endpoint likely requires an authenticated session
- No Akamai bot detection observed on the mobile API path
Next Steps
- Call
/api/mobile/loginwith Delta credentials to get a session - Call
/api/mobile/getFlightStatuswith a flight number - Call
/api/mobile/aslwith the flight details from the status response - The ASL response should contain upgrade and standby lists