Trip API (v2)

Download OpenAPI description
Languages
Servers
Staging URL
https://apis.spotnana.com/
Spotnana mock server
https://developer.spotnana.com/_mock/openapi/tripapi/

Trips

APIs to manage trips and PNRs.

Operations

Cancel PNR

Request

This endpoint cancels PNR or part of PNR object.In case of partial PNR cancel we can cancel journey/ticket.

Path
tripIdstringrequired

Trip ID

Example: 6926658168
pnrIdstringrequired

PNR ID

Example: 6926658168
Bodyapplication/jsonrequired
cancellationTypestring

Type of cancellation to be performed. For the NO_REFUND, FULL_REFUND and FULL_CREDIT cancellation types, if no cancellationDetails are provided, we assume the entire PNR is being canceled. If the cancellation type is FULL_CREDIT, we will also assume the credits created will have 0 penalty and an expiry date of 1 year from the issue date of the ticket.

Enum"NO_REFUND""FULL_REFUND""PARTIAL_REFUND""FULL_CREDIT"
Example: "FULL_REFUND"
cancellationDetailsArray of objects(CancelDetail)

List of object to be cancelled and their associated refund details.

bookingEmailInfoobject

Information passed to the Spotnana email system that processes booking updates.

curl -i -X POST \
  https://apis.spotnana.com/v3/trips/6926658168/pnrs/6926658168/cancel \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "cancellationType": "FULL_REFUND",
    "cancellationDetails": [
      {
        "cancelObjectDetail": {
          "cancelObjectType": "PNR",
          "cancelObjectId": "string",
          "vendorCancellationId": "string"
        },
        "refundInfo": [
          {
            "refundType": "CREDIT",
            "amount": {
              "base": {
                "amount": 510,
                "currencyCode": "GBP",
                "convertedAmount": 715.42,
                "convertedCurrency": "USD",
                "otherCoinage": [
                  {}
                ]
              },
              "tax": {
                "amount": 510,
                "currencyCode": "GBP",
                "convertedAmount": 715.42,
                "convertedCurrency": "USD",
                "otherCoinage": [
                  {}
                ]
              }
            },
            "fop": {
              "type": "CARD",
              "card": {
                "id": "34d536b6-f8ff-11eb-9a61-0242ac180002",
                "type": "CREDIT",
                "company": "VISA",
                "name": "Harrison Schwartz",
                "address": {
                  "addressLines": [],
                  "recipients": []
                },
                "number": "4111111111111111",
                "expiryMonth": 1,
                "expiryYear": 2010,
                "cvv": "012",
                "label": "Label amex",
                "currency": "USD",
                "externalId": "bxt_RNGsNfzgJDaTstKIKqK4xEuhGYAnMdYK8T40",
                "vaultId": "34d536b6-f8ff-11eb-9a61-0242ac180002",
                "expiry": {},
                "ownershipLabel": "CORPORATE"
              },
              "additionalInfo": "string",
              "accessType": {
                "accessType": "UNKNOWN_TYPE",
                "entityIds": [
                  null
                ],
                "entities": [
                  null
                ]
              },
              "paymentMethod": "BREX_POINTS",
              "paymentMetadata": {
                "customPaymentMethodMetadata": {
                  "brexBudgetMetadata": {}
                },
                "vendorProgramPaymentMetadata": {},
                "virtualCardMetadata": {},
                "cardMetadata": {}
              },
              "paymentSourceType": "CARD"
            },
            "expiryDate": {
              "iso8601": "2017-07-21"
            }
          }
        ]
      }
    ],
    "bookingEmailInfo": {
      "disableEmail": true
    }
  }'

Responses

OK

Response
No content

Get trip partner info

Request

This endpoint provides info related to partner for the trip.

Path
tripIdstringrequired

Identifier for trip.

Example: 2398199412
bookerEmailIdstringrequired

Booker Email Id for whom budget info will be fetched.

Example: akanksha@spotnana.com
curl -i -X GET \
  https://apis.spotnana.com/v2/trips/2398199412/booker-email/akanksha@spotnana.com/partner-info \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
tripIdstringrequired

Spotnana trip Id

Example: "6926658168"
partnerInfoobject(TripPartnerInfo)required

Partner info such as budget info for a given trip Id.

partnerInfo.​partnerInfoTypestring(TripPartnerInfoType)required

Trip Partner Info type.

Value"BUDGET"
partnerInfo.​partnerInfoDetailsTripPartnerInfoDetailsWrapper (object)(TripPartnerInfoDetails)required
One of:

Trip budget info wrapper

partnerInfo.​partnerInfoDetails.​tripBudgetInfoobject(TripBudgetInfo)

Trip budget Info

Response
application/json
{ "tripId": "6926658168", "partnerInfo": { "partnerInfoType": "BUDGET", "partnerInfoDetails": {} } }

Get cancellation details

Request

This endpoint gets cancellation details for a given trip ID and PNR ID.

Path
tripIdstringrequired

Trip ID.

Example: 1234567890
pnrIdstringrequired

PNR ID.

Example: 6926658168
curl -i -X GET \
  https://apis.spotnana.com/v2/trips/1234567890/pnrs/6926658168/cancellation-details \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
pnrIdstringrequired

PNR ID for the booking.

Example: "1234567890"
tripIdstringrequired

Trip ID for the booking.

Example: "2345678901"
cancellationDetailsCancellationDetails (object) or CancellationDetails (object)(CancellationDetails)
One of:

Cancellation details for this booking.

Response
application/json
{ "pnrId": "1234567890", "tripId": "2345678901", "cancellationDetails": { "air": {} } }

Invoicing

Operations

Approval

Operations