Files
Flights/api_docs/spirit_api.md
Trey t 3790792040 Initial commit: Flights iOS app
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>
2026-04-08 15:01:07 -05:00

6.4 KiB

Spirit Airlines Mobile API

Extracted from com.spirit.customerapp v4.7.0 (build 1340)

Base URL

Environment URL
Production https://api.spirit.com/customermobileprod/2.8.0/
QA1 https://apiqa.spirit.com/qa01-customermobileapi/
QA2 https://apiqa.spirit.com/qa02-customermobileapi/
Dev1 https://apiqa.spirit.com/dev01-customermobileapi/
Dev2 https://apiqa.spirit.com/dev02-customermobileapi/
Stage https://api.spirit.com/stage-customermobileapi/
CMS https://content.spirit.com/api/content/

Standby / Board of Availability (BOA)

Spirit uses "BOA" (Board of Availability) as their standby system:

GET  https://api.spirit.com/customermobileprod/2.8.0/v1/getboaparameters
POST https://api.spirit.com/customermobileprod/2.8.0/v1/getboastatus

BOA Status Request

  • Method: POST
  • Body: BoaStatusRequestDto (JSON)
  • Response: BoaStatusResponseDto containing BoaStatus objects

BOA Data Model

  • BoaStatusInfo — status of standby position
  • boaStatusChecker — polls for status updates using a boaUniqueSessionToken
  • isStandby — boolean flag on trip/flight objects
  • standby — standby details on trip segments

BOA Flow

  1. Call v1/getboaparameters to get BOA config
  2. Call v1/getboastatus with flight/booking details
  3. Poll using boaStatusChecker with session token for updates

All API Endpoints

Authentication

Method Path Description
POST v2/Token Fetch auth token
POST v3/Token Fetch v3 auth token
PUT v3/Token Refresh v3 token

Init & Config

Method Path Description
GET v1/init App initialization
GET v1/stations Airport station list
GET v1/OnD/Countries Country reference data

Flight Search & Status

Method Path Description
POST v5/Flight/Search Search flights
POST v3/GetFlightInfoBI Flight info
POST v1/booking/flightdetails Flight details
POST v1/calendar/availabledates Available dates calendar

Booking

Method Path Description
GET v1/booking/retrieve Retrieve booking (params: RecordLocator, LastName)
GET v1/booking Get booking state
GET v1/booking?screenType=ReviewTempStay Booking review
PUT v2/booking Update booking
POST v1/booking/book Confirm booking
POST v1/trip/sell Sell trip
POST v2/ValidateBookingRequest Validate booking

Standby / BOA

Method Path Description
GET v1/getboaparameters Get BOA (standby) parameters
POST v1/getboastatus Get standby status

Check-in & Boarding

Method Path Description
POST v1/booking/checkin/journey Check in for journey
POST v2/booking/boardingpasses/journey Get boarding passes

Trip Management

Method Path Description
POST v1/managetrip Manage trip
POST v2/tripdetails Get trip details
POST v3/mytrips Get my trips
POST v1/booking/passengers/passengerreturndates Passenger return dates

Seats

Method Path Description
GET v1/booking/seatmap Get seat map
GET v4/booking/seatmaps/ Get seat maps v4
POST v4/booking/passengers/{passengerKey}/seats/{unitKey} Assign seat

Bags

Method Path Description
POST v1/bags Get bags
PUT v1/bags/update Update bags

Bundles & Upsell

Method Path Description
GET v3/options Get options
PUT v1/options/update Update options
POST v1/bundle/UpsellAvailability Upsell availability
POST v3/bundle/ssrs Bundle SSRs
POST v4/bundle/ssrs Bundle SSRs v4
POST v2/cart Manage cart

Payments

Method Path Description
POST v1/booking/payments/fetchredemptiondetail Fetch redemption
POST v1/booking/payments/redeem Redeem points
DELETE V3/User/Person/StoredPayments/{key} Delete stored payment

Account

Method Path Description
POST v1/FreeSpirit/CreateAccount Create Free Spirit account
POST v1/FreeSpirit/Booking/CreateAccount Create account during booking
GET v1/User/Person Get user profile
POST v1/account/password/reset Reset password
POST v1/account/updateexpiredpassword Update expired password
POST v1/account/points Account points
POST v1/points Points
POST v1/MemberInfo/ValidateFSNumber Validate Free Spirit number
POST v1/registerForPromotion Register for promotion

Documents & SSR

Method Path Description
POST v1/booking/passengers/{key}/documents Add travel doc
PUT v1/booking/passengers/{key}/documents/{docKey} Update travel doc
POST v1/booking/passengers/{key}/infant/documents Add infant doc
POST v1/document/validate Validate document
POST v1/booking/ssrs/add/acia Add SSR
POST v2/trip/specialassistance Special assistance
POST v3/ssrs/health-ack/accept Accept health acknowledgment
POST v3/ssrs/health-ack/decline Decline health acknowledgment

Other

Method Path Description
GET v1/GetContent/help Help content
POST v1/getdynamiccontent Dynamic content
POST v1/booking/touristtax Tourist tax
POST v1/booking/passengers/temporarystay/address Temp stay address
POST v1/travelguard/getquote Travel insurance quote

Security Notes

  • No SSL pinning in network_security_config.xml
  • No PairIP or anti-tamper protection
  • Uses Retrofit2 for HTTP
  • Auth via token-based system (v2/Token, v3/Token)
  • libakamaibmp.so present — Akamai Bot Manager for bot detection
  • App runs fine on emulators

CMS Endpoints

Path Description
en-US?path=mobile/book/paxtravelingui Passenger traveling UI content
en-US?path=mobile/localnotification Local notification content
en-US?path=mobile/mytripui My trips UI content