Skip to content

Modify an existing car booking

Request

Make modifications to an existing car booking.

Security
Bearer
Path
pnrIdstringrequired

Pnr Id of the Pnr to be modified.

Example:4974a66b
Bodyapplication/jsonrequired
carIdstringrequired

CarId of the car to be booked.

Example:"EgRFQ0FSGgNFVzIiAkVUKgoKA1NGTxIDU0ZPMgoKA1NGTxIDU0ZP"
tripDataobject(TripData)required

Trip data to book a PNR.

bookingChargesArray of objects(BookingCharge)required
travelersArray of objects(CarTravelerInfo)required
customFieldV3ResponsesArray of objects(CustomFieldV3Response)

Custom field responses for the booking.

waiveOffInfoobject(WaiveOffInfo)

Waive off info.

arrivalFlightNumberobject(FlightNumber)

Flight number and airline code.

bookingKeystring

Booking Key from car price check response.

Example:"ChBjMmRlYjdhNzJiM2RjMzE1EhBmNDA3MzZlYjFiZDRmYWU5"
bookingPaymentDetailsobject(BookingPaymentDetails)

Details about the payment methods used by travelers for booking.

supplierFieldValuesobject

See CarCreatePnrRequest.supplierFieldValues -- same shape and purpose.

Example:
{ "18903794122757": "Engineering" }
postPaymentVerificationInfoPostStripeVerificationInfoWrapper (object) or PostUrlBasedVerificationInfoWrapper (object) or AmadeusCheckoutVerificationInfoWrapper (object) or ThreeDSecure2PostVerificationInfoWrapper (object) or RazorpayPostVerificationInfoWrapper (object)(PostPaymentVerificationInfo)
One of:

Wrapper for post stripe verification info object.

searchIdstringrequireddeprecated

SearchID of the car modify search.

Example:"1cf76aba18e4015f"
preBookAnswersobject(PreBookAnswers)deprecated
curl -i -X POST \
  https://api-ext-sboxmeta.partners.spotnana.com/v2/car/pnrs/4974a66b/modify-book \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "searchId": "1cf76aba18e4015f",
    "carId": "EgRFQ0FSGgNFVzIiAkVUKgoKA1NGTxIDU0ZPMgoKA1NGTxIDU0ZP",
    "tripData": {
      "approverEmail": "string",
      "approverName": "string",
      "hardApprovalRequired": true,
      "outOfPolicy": true,
      "policyId": "string",
      "policyVersion": 0,
      "tripId": {
        "id": "2783425534"
      }
    },
    "preBookAnswers": {
      "answers": [
        {
          "entityId": "string",
          "userInput": "string",
          "itemIds": [
            0
          ],
          "answers": [
            {
              "item": "string",
              "value": "string",
              "description": "string"
            }
          ],
          "customFieldType": "QUESTION",
          "questionDisplayText": "string",
          "question": {
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
            "name": "string",
            "questionFormat": "CHECKBOX",
            "optionInfo": {
              "source": "MANUAL",
              "sourceMetadata": {
                "companyConfig": {}
              },
              "totalNumOptions": 0,
              "options": [
                {}
              ]
            },
            "isRequired": true,
            "isDisabled": true,
            "includeInItinerary": true,
            "customFieldLocations": [
              "POLICY_APPROVAL_EMAIL"
            ],
            "matchConditions": {
              "travelerConditions": {
                "workerTypes": [
                  null
                ],
                "countries": [
                  null
                ],
                "legalEntities": [
                  null
                ],
                "departments": [
                  null
                ],
                "costCenters": [
                  null
                ],
                "offices": [
                  null
                ]
              },
              "travelTypes": [
                "AIR"
              ],
              "travelRegionTypes": [
                "DOMESTIC"
              ],
              "tripUsageTypes": [
                "STANDARD"
              ]
            },
            "questionType": {
              "preSearchQuestionType": "PURPOSE_OF_TRIP",
              "preCheckoutQuestionType": "OOP_REASON_CODE"
            }
          }
        }
      ],
      "preBookQuestionResponseId": "string"
    },
    "bookingCharges": [
      {
        "amount": {
          "base": {
            "amount": 510,
            "currencyCode": "GBP",
            "convertedAmount": 715.42,
            "convertedCurrency": "USD",
            "otherCoinage": [
              {
                "coinageCode": "BREX_POINTS",
                "amount": 1000,
                "conversionRate": 0.01,
                "preferredCurrencyConversionRate": 0.01,
                "otherCoinageMetadata": {}
              }
            ]
          },
          "tax": {
            "amount": 510,
            "currencyCode": "GBP",
            "convertedAmount": 715.42,
            "convertedCurrency": "USD",
            "otherCoinage": [
              {
                "coinageCode": "BREX_POINTS",
                "amount": 1000,
                "conversionRate": 0.01,
                "preferredCurrencyConversionRate": 0.01,
                "otherCoinageMetadata": {}
              }
            ]
          },
          "taxBreakdown": [
            {
              "amount": {
                "amount": 510,
                "currencyCode": "GBP",
                "convertedAmount": 715.42,
                "convertedCurrency": "USD",
                "otherCoinage": [
                  {}
                ]
              },
              "taxCode": "VAT",
              "percentage": 9,
              "description": "AIR TRAVELLERS SECURITY CHARGE"
            }
          ]
        },
        "paymentMethod": {
          "selectedPaymentSource": {
            "paymentSourceId": "f49d00fe-1eda-4304-ba79-a980f565281d",
            "rawPaymentSource": {
              "type": "DPAN",
              "cardDetails": {
                "company": "VISA",
                "token": "4111111111111111",
                "expiry": {}
              }
            },
            "postPaymentRedirectionUrl": "https://mycompany.com/checkout?paymentSourceId=f49d00fe-1eda-4304-ba79-a980f565281d",
            "cvv": "string",
            "amount": {
              "amount": 510,
              "currencyCode": "GBP",
              "convertedAmount": 715.42,
              "convertedCurrency": "USD",
              "otherCoinage": [
                {}
              ]
            }
          }
        }
      }
    ],
    "travelers": [
      {
        "travelerId": {
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
        },
        "name": {
          "family1": "Gandas",
          "family2": "FamilyTwo",
          "given": "Vichitr",
          "middle": "Kumar",
          "suffix": "SR",
          "preferred": "Don"
        },
        "dob": {
          "iso8601": "2017-07-21"
        },
        "phoneNumber": {
          "countryCode": 91,
          "countryCodeSource": "FROM_NUMBER_WITH_PLUS_SIGN",
          "extension": "222",
          "isoCountryCode": "IN",
          "italianLeadingZero": true,
          "nationalNumber": 8150,
          "numberOfLeadingZeros": 1,
          "preferredDomesticCarrierCode": "7",
          "rawInput": "77777",
          "type": "MOBILE"
        },
        "email": "example@email.com",
        "loyaltyInfo": {
          "appliedTo": [
            "TAJ"
          ],
          "id": "firstId",
          "issuedBy": "firstIssuedBy",
          "type": "AIR",
          "linked": false,
          "tier": "GOLD"
        },
        "loyaltyInfos": [
          {
            "appliedTo": [
              "TAJ"
            ],
            "id": "firstId",
            "issuedBy": "firstIssuedBy",
            "type": "AIR",
            "linked": false,
            "tier": "GOLD"
          }
        ],
        "blockLoyalty": false,
        "persona": "EMPLOYEE",
        "adhocUserInfo": {
          "profileOwner": {
            "userId": {
              "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
            }
          },
          "isSaved": false
        }
      }
    ],
    "customFieldV3Responses": [
      {
        "fieldId": "84922011-b03d-4966-bc95-c5b49bc2e342",
        "fieldName": "string",
        "armId": "0fd508db-63ff-4444-bfb1-b89c43061433",
        "includeLocations": [
          "APPROVAL_EMAILS"
        ],
        "selectedOptions": [
          {
            "name": "string",
            "translatedName": "string",
            "description": "string",
            "translatedDescription": "string",
            "additionalUserInput": "string",
            "additionalInfos": [
              "string"
            ],
            "additionalInfoConfigs": [
              {
                "type": "VARIABLE",
                "name": "LLF"
              }
            ],
            "optionId": "dee15a0e-f1fe-4cd8-88ac-c090810707f8"
          }
        ]
      }
    ],
    "waiveOffInfo": {
      "waiveOffInfoPerModules": [
        {
          "moduleId": "BOOKING",
          "waiveOffFeeReason": {
            "reasonCode": "WA05",
            "reason": "Customer goodwill"
          }
        }
      ]
    },
    "arrivalFlightNumber": {
      "num": "321",
      "airlineCode": "AA"
    },
    "bookingKey": "ChBjMmRlYjdhNzJiM2RjMzE1EhBmNDA3MzZlYjFiZDRmYWU5",
    "bookingPaymentDetails": {
      "bookingTravelerPaymentDetails": [
        {
          "selectedFormOfPayments": [
            {
              "paymentItems": [
                {
                  "fareComponent": []
                }
              ],
              "selectedPaymentSources": [
                {}
              ]
            }
          ]
        }
      ]
    },
    "supplierFieldValues": {
      "18903794122757": "Engineering"
    },
    "postPaymentVerificationInfo": {
      "paymentKey": "string",
      "postStripeVerificationInfo": {
        "paymentMethodId": "pm_1HzKDPI3bT9GUjvoUkRQooN3"
      }
    }
  }'

Responses

OK

Bodyapplication/json
pnrIdstring

Spotnana PNR ID.

Example:"2267585596"
sourcePnrIdstring

Source PNR ID.

Example:"LRXQXA"
pnrStatusstring(PnrStatus)

Status of PNR

Enum ValueDescription
UNKNOWN

PNR status could not be determined or mapped from the supplier.

INITIATED

Default status when a PNR entity is first created in our database. The booking may not yet be confirmed by the supplier, and we may not have a vendor confirmation ID.

CANCELLED

The booking or flight is cancelled. Terminal status.

CONFIRMED

Booking confirmed by the supplier. For Air PNRs, confirmed but not yet ticketed (no active tickets).

GROUP_BOOKING_ON_REQUEST

Group booking requested but not yet confirmed. Air only

WAITLISTED

Booking is on a waitlist, pending confirmation by the supplier.

PENDING

Booking is awaiting confirmation or action. Used across all PNR types as a catch-all for not-yet-confirmed states.

AIRLINE_UPGRADE

Passenger upgraded by the airline. Not directly mapped by any supplier.

WAITLIST_CONFIRMED

Previously waitlisted booking confirmed by the supplier. Air only

BOOKING_DENIED_CONTACT_SUPPORT

Booking denied by the supplier, requires support intervention. Air only

NO_SHOW

Passenger did not show up for the flight or hotel stay.

CONTACT_SUPPORT

Requires manual agent/support intervention. Mapped from the OK passive-confirmation action code in GDS systems, indicating the segment was manually confirmed and needs verification.

STATUS_CHANGED_CONTACT_SUPPORT

Booking status changed by the supplier, requires support review. Air only

SCHEDULE_CHANGE

Schedule change applied to the booking by the airline. Booking is still active but flight times or routing may have changed.

SEGMENT_REQUEST

Passive Segment requested but not yet confirmed by the supplier.

SCHEDULE_CHANGE_WAITLISTED_BOOKING

Waitlisted booking with a schedule change applied. Air only

REQUEST_PENDING

Booking request submitted but only partially confirmed or awaiting further processing. Rail, and Hotel only.

WAITLISTED_NOT_CONFIRMED

Waitlisted booking not confirmed by the supplier. Not directly mapped by any supplier.

SCHEDULE_CHANGE_NOT_CONFIRMED

Schedule change occurred but booking not reconfirmed. Not directly mapped by any supplier

SCHEDULE_CHANGE_PENDING_STATUS

Schedule change proposed but pending confirmation/action. Air only

MIS_CONNECTION

Misconnection — passenger missed a connecting flight. Not directly mapped by any supplier

REQUESTED

Booking initiated but no vendor confirmation ID exists yet. Intermediate state between INITIATED and CONFIRMED. When segments have blank confirmation IDs;

TICKETED

Tickets issued and payment charged for an Air PNR. Terminal status for successful air bookings.

VOIDED

All tickets voided — any charged amount refunded, including non-refundable bookings. Terminal status.

CANCELLED_BY_VENDOR

Booking cancelled by the vendor/airline, not by the traveler.

CANCELLATION_IN_PROGRESS

Cancellation initiated but not yet complete. Also set internally during the air cancellation workflow before the supplier call completes.

REINSTATED

Previously cancelled flight became active again. Air only. Not mapped from any GDS status code directly.

BOOKING_ON_HOLD

Air PNR confirmed with the airline but held for a limited time before auto-cancellation if not ticketed. Requires active hold metadata (REQUESTED or ON_HOLD hold status). Air only

AIRLINE_CONTROL

PNR taken over by the airline. Updates no longer visible to the TMC. Terminal status.

MODIFIED

Booking has been modified/rebooked. Car: CarTrawler Rebooked status. Also referenced in Sabre Hotel mapper for modified hotel PNR handling.

PAYMENT_DECLINED

Payment failed during ticketing. Retained as long as unticketed fare quotes exist (Sabre PQ/PQR or Amadeus TSTs), preventing incorrect progression to TICKETED.

INOPERATIVE

Booking inoperative or unavailable for use.

UNCONFIRMED

Booking unconfirmed and pending verification.

Example:"CONFIRMED"
paymentVerificationInfoStripeVerificationInfoWrapper (object) or UrlVerificationInfoWrapper (object) or ThreeDSecure2VerificationInfoWrapper (object) or RazorpayVerificationInfoWrapper (object)(PaymentVerificationInfo)
One of:

Wrapper for stripe verification Info.

dcDetailsobject(CarDcDetails)

What the supplier confirmed for delivery & collection on this booking. Present only when the booking carried dcInfo.

Response
{ "pnrId": "2267585596", "sourcePnrId": "LRXQXA", "pnrStatus": "CONFIRMED", "paymentVerificationInfo": { "gatewayIdentifier": { … }, "paymentKey": "string", "stripeVerificationInfo": { … } }, "dcDetails": { "status": "DC_AVAILABLE", "servingBranch": "ABZT50", "chargesMayApply": true } }