TABLE OF CONTENTS

Used by the distributor to make reservations with the supplier


Final query available ticket product before booking

This API is used to live check to query available ticket products before booking


REQUEST

Request Headers

LevelField NameData TypeRequiredDescriptionExample
1authorization*stringYOauth2 authorization token
1echo-token*stringYA unique echo token is generated from the distributorcc28bac659c44422b2dab11705934a4f
1distributor-id*stringYDistributor ID in the Derbysoft systemDISTRIBUTOR
1brand-idstringNProperty brand, required for Disney, United ParksWDW
1office-idstringNThe distributor identifier for each of their offices or points of sale consists of distributorid(Disney) and officeid(Disney), which are combined with the underscore. Required for DisneyDERBY-1_DERBY001
1supplier-id*stringY
DISNEY

Request Body

LevelField NameData TypeRequiredDescriptionExample
1products*array
Request Product List, Max 20 elements
2productId*stringY
5XK03A
2quantity*integerYCount of the ticket
1date*stringYCheck in date. Format with yyyy-MM-dd

Request Example

Request Example: post /livecheck
{
  "products": [
    {
      "productId": "5XK03A",
      "quantity": 2
    }
  ],
  "date": "2022-02-13"
}


RESPONSE

Response Schema

LevelField NameData TypeRequiredDescriptionExample
1supplier-id*stringYsupplier-idDISNEY
1productId*stringY
5XK03A
1destination
N

2countryCode*stringYCountry Code, ISO 3166-1 alpha-2 code, Min 1 char
2countryName*stringYMin 1 char
2subdivisionCode*stringYSubdivision Code, ISO 3166-2 code, Min 1 char
2subdivisionName*stringY Min 1 char
2subdivisionCategory*stringYSubdivision Category, such as state, province
2cityNamestringN

1brand-idstringNProperty brand, required for Disney, United ParksWDW
1marketRegionsarrayNIt will be used for ticket products, advising whether the tickets can only be sold to a specific region.
1affiliationsarrayNAll available discount codes for this product
1durationDaysintegerNThe number of days included in the ticket purchase5
2usageDateRange
NThe usage window of this product
3startDate*dateYStart date of date range, format with yyyy-MM-dd2025-03-11
3endDatedateNEnd date of date range, format with yyyy-MM-dd2026-02-28
2date*stringYCheck in date. Format with yyyy-MM-dd2026-10-09
2price*
Y

3amountBeforeTaxnumberNSingle ticket price without tax
3amountAfterTaxnumberNSingle ticket price with tax
3decimalPlacesintegerNDecimal places
2currency*stringYCurrency code
3exchangeBeforeTaxnumberNthe full retail price of the ticket without tax


3exchangeAfterTaxnumberNThe full retail price of the ticket with tax
3netDiscount
N

4typeenumNAllowed: PERCENTAGE┃AMOUNT
4valuenumberNNet discount value.
2availableParks
NThe park availability during the usage window
3date*dateYDate, format with yyyy-MM-dd
3parkIds*arrayYThe park ID list

Response Example

Success Response (HTTP Status 200)
[
  {
    "supplierId": "DISNEY",
    "productId": "5XK03A",
    "destination": {
      "countryCode": "US",
      "countryName": "United States",
      "subdivisionCode": "US-IL",
      "subdivisionName": "Illinois",
      "subdivisionCategory": "State",
      "cityName": "Chicago"
    },
    "brandId": "WDW",
    "marketRegions": [
      "INTL_WHOLESALE"
    ],
    "affiliations": [
      "STD_GST"
    ],
    "durationDays": 5,
    "usageDateRange": {
      "startDate": "2022-02-13",
      "endDate": "2022-02-15"
    },
    "date": "2022-02-13",
    "price": {
      "amountBeforeTax": 120.01,
      "amountAfterTax": 150.01,
      "decimalPlaces": 2,
      "currency": "USD",
      "exchangeBeforeTax": 652.06,
      "exchangeAfterTax": 694.06,
      "netDiscount": {
        "type": "PERCENTAGE",
        "value": 0.01
      }
    },
    "availableParks": {
      "date": "2022-03-14",
      "parkIds": [
        "magic-kingdom"
      ]
    }
  }
]


Error Response (HTTP Status 500)
{
  "errorCode": "System",
  "errorMessage": "Internal Server Error"
}


Book real-time reservation on ticket

This API is used by the Distributor to book tickets. It will be forwarded to the ticket supplier system to get a real-time confirmation.


REQUEST

Request Headers

LevelField NameData TypeRequiredDescriptionExample
1authorization*stringYOauth2 authorization token
1echo-token*stringYA unique echo token is generated from the distributorcc28bac659c44422b2dab11705934a4f
1distributor-id*stringYDistributor ID in the Derbysoft systemDISTRIBUTOR
1brand-idstringNProperty brand, required for Disney, United ParksWDW
1office-idstringNThe distributor identifier for each of their offices or points of sale consists of distributorid(Disney) and officeid(Disney), which are combined with the underscore. Required for DisneyDERBY-1_DERBY001
1supplier-id*stringY
DISNEY

Request Body

LevelField NameData TypeRequiredDescriptionExample
1reservationIds*
Y

2distributorResId*stringYReservation ID generated by Distributor
1contactPerson*
Y

2given*stringY

2middlestringN

2surname*stringY

2emailstringN

2phonestringN

1orders*
YOrder list for this reservation
2productId*stringY
5XK03A
2quantity*integerYCount of the tickets
2date*stringYCheck-in date
2price*
Y

3amountBeforeTaxnumberNSingle ticket price without tax
3amountAfterTaxnumberNSingle ticket price with tax
3decimalPlacesintegerNDecimal places
3currency*stringYCurrency code
1delivery
NOnly required for bulk ticket purchases for Disney 
2type*enumYOnly required for bulk ticket purchases for Disney
Allowed: DELIVERY┃PICKUP

2date*stringYOnly required for bulk ticket purchases for Disney
Delivery shipping date or Pickup date; format with YYYY-MM-DD

2instructionsstringNOnly required for bulk ticket purchases for Disney
Freeform text field to input additional information to the supplier for Ticket fulfillment

1languagestringNReservation Language, IETF language tag

Request Example

Request Example: post /reservation/book 
{
  "reservationIds": {
    "distributorResId": "string"
  },
  "contactPerson": {
    "given": "Jean",
    "middle": "Luc",
    "surname": "Picard",
    "email": "xxx@email.com",
    "phone": 11111111111
  },
  "orders": [
    {
      "productId": "5XK03A",
      "quantity": 2,
      "date": "2020-02-13",
      "price": {
        "amountBeforeTax": 120.01,
        "amountAfterTax": 150.01,
        "decimalPlaces": 2,
        "currency": "USD"
      }
    }
  ],
  "delivery": {
    "type": "DELIVERY",
    "date": "2024-09-01",
    "instructions": "string"
  },
  "language": "en-US"
}


RESPONSE

Response Schema

LevelField NameData TypeRequiredDescriptionExample
1reservationIds*
Y

2distributorResId*stringYReservation id generated by Distributor
2supplierResIdstringNReservation id generated by Supplier
2derbyResId*stringYReservation id generated by Derbysoft
1contactPerson
N

2given*stringY

2middlestringN


2surname*stringY

2emailstringN

2phonestringN

1orders
NOrder list for this reservation
2productId*stringY
5XK03A
2brandIdintegerNProperty brand5
2quantity*integerYCount of the tickets
2date*stringYCheck in date. Format with yyyy-MM-dd2026-10-09
2price
N

3amountBeforeTaxnumberNSingle ticket price without tax
3amountAfterTaxnumberNSingle ticket price with tax
3decimalPlacesintegerNDecimal places
3currency*stringYCurrency code
2orderIds
NTicket order Confirmed list
3confirmIdstringNConfirmed ID for each ticket
2passUrls
N

3getPassUrlstringNUrl For Get Pass
3printPassesUrlstringNUrl For Print Pass
3mobilePassesUrlstringNMobile Passes Url
1deliverydateN

2typeenumNAllowed: DELIVERY┃PICKUP
2datestringNDelivery shipping date or Pickup date; format with YYYY-MM-DD


2instructionsstringNFreeform text field to input additional information to the supplier for Ticket fulfillment


1languagestringNReservation Language

Response Example

Success Response (HTTP Status 200)
{
  "reservationIds": {
    "distributorResId": "string",
    "supplierResId": "string",
    "derbyResId": "DK51202494D1RQ"
  },
  "contactPerson": {
    "given": "Jean",
    "middle": "Luc",
    "surname": "Picard",
    "email": "xxx@email.com",
    "phone": 11111111111
  },
  "orders": [
    {
      "productId": "5XK03A",
      "brandId": "WDW",
      "quantity": 2,
      "date": "2020-02-13",
      "price": {
        "amountBeforeTax": 120.01,
        "amountAfterTax": 150.01,
        "decimalPlaces": 2,
        "currency": "USD"
      },
      "orderIds": [
        {
          "confirmId": "string"
        }
      ],
      "passUrls": {
        "getPassUrl": "https://xxx.xxx.xxx",
        "printPassesUrl": "https://xxx.xxx.xxx",
        "mobilePassesUrl": "https://xxx.xxx.xxx"
      }
    }
  ],
  "delivery": {
    "type": "DELIVERY",
    "date": "2024-09-01",
    "instructions": "string"
  },
  "language": "string"
}


Error Response (HTTP Status 500)
{
  "errorCode": "System",
  "errorMessage": "Internal Server Error"
}


Book park pass reservationBook Theme Park API (Disney Only)

This API allows authorized distributors to book which theme park to visit in advance (e.g., Disney California Adventure Park or Disneyland Park) after ticket purchase - this provides an API alternative to Disney’s offline Park Pass Rservation process.

Note: Different tickets will cover different theme parks


REQUEST

Request Headers

LevelField NameData TypeRequiredDescriptionExample
1authorization*stringYOAuth2 authorization token
1echo-token*stringYA unique echo token is generated from the distributorcc28bac659c44422b2dab11705934a4f
1distributor-id*stringYDistributor ID in the Derbysoft systemDISTRIBUTOR
1brand-idstringNProperty brand, required for Disney, United ParksWDW
1office-idstringNThe distributor identifier for each of their offices or points of sale consists of distributorid(Disney) and officeid(Disney), which are combined with the underscore. Required for DisneyDERBY-1_DERBY001
1supplier-id*stringY
DISNEY

Request Body

LevelField NameData TypeRequiredDescriptionExample
1reservationIds*
Y

2distributorResId*stringYReservation ID generated by Distributor
1parkReservations*
YPark Reservations for this reservation
2productId*stringY
5XK03A
2confirmId*stringYConfirmed ID for each ticket
2parkReservationDetails*stringYPark Reservation Detail list
3date*stringYCheck-in date
3parkId*stringYThe park ID

Request Example

Request Example: post /reservation/bookParks
{
  "reservationIds": {
    "distributorResId": "string"
  },
  "parkReservations": [
    {
      "productId": "5XK03A",
      "confirmId": "string",
      "parkReservationDetails": [
        {
          "date": "2020-02-13",
          "parkId": "magic-kingdom"
        }
      ]
    }
  ]
}

RESPONSE

Response Schema

LevelField NameData TypeRequiredDescriptionExample
1reservationIds*
Y

2distributorResId*stringYReservation ID generated by Distributor
1parkReservations
NPark Reservations for this reservation
2productId*stringY
5XK03A
2confirmId*stringYConfirmed ID for each ticket
2parkReservationDetails*
YPark Reservation Detail list
3date*stringYCheck-in date
3parkId*stringYThe park ID
3parkReservationConfirmIdstringNConfirmation No For Park Reservation


3failCause
NThis is a global error response in this specification
4errorCode*stringYError code
4errorMessage*stringYConstraints: Min 1 chars
Error detail

Response Example

Success Response (HTTP Status 200)
{
  "reservationIds": {
    "distributorResId": "string"
  },
  "parkReservations": [
    {
      "productId": "5XK03A",
      "confirmId": "string",
      "parkReservationDetails": [
        {
          "date": "2020-02-13",
          "parkId": "magic-kingdom",
          "parkReservationConfirmId": 1234567,
          "failCause": {
            "errorCode": "System",
            "errorMessage": "Internal Server Error"
          }
        }
      ]
    }
  ]
}


Error Response (HTTP Status 500)
{
  "errorCode": "System",
  "errorMessage": "Internal Server Error"
}

Cancel a ticket reservation

This API is used by the Distributor to cancel an existing ticket. It will be forwarded to the ticket supplier system to get a real-time cancellation confirmation.


REQUEST

Request Headers

LevelField NameData TypeRequiredDescriptionExample
1authorization*stringYOAuth2 authorization token
1echo-token*stringYA unique echo token is generated from the distributorcc28bac659c44422b2dab11705934a4f
1distributor-id*stringYDistributor ID in the Derbysoft systemDISTRIBUTOR
1office-idstringNThe distributor identifier for each of their offices or points of sale consists of distributorid(Disney) and officeid(Disney), which are combined with the underscore. Required for DisneyDERBY-1_DERBY001
1supplier-id*stringY
DISNEY

Request Body

LevelField NameData TypeRequiredDescriptionExample
1reservationIds*
Y

2distributorResId*stringYReservation ID generated by Distributor
2supplierResIdstringNReservation ID generated by Supplier
2derbyResId*stringYReservation ID generated by Derbysoft


Request Example

Request Example:  post /reservation/cancel
{
  "reservationIds": {
    "distributorResId": "string",
    "supplierResId": "string",
    "derbyResId": "DK51202494D1RQ"
  }
}


RESPONSE

Response Schema

LevelField NameData TypeRequiredDescriptionExample
1reservationIds*
Y

2distributorResId*stringYReservation ID generated by Distributor
2supplierResIdstringNReservation ID generated by Supplier
2derbyResId*stringYReservation ID generated by Derbysoft


1cancellationIdstringNReservation cancellation ID from the supplier
1orders
NOrder list for this reservation
2productId*stringY
5XK03A
2brandIdstringNProperty brand
2orderIds
N

3confirmIdstringNConfirmed ID for each ticket

Response Example

Success Response (HTTP Status 200)
{
  "reservationIds": {
    "distributorResId": "string",
    "supplierResId": "string",
    "derbyResId": "DK51202494D1RQ"
  },
  "cancellationId": "string",
  "orders": [
    {
      "productId": "5XK03A",
      "brandId": "WDW",
      "orderIds": [
        {
          "confirmId": "string"
        }
      ]
    }
  ]
}


Error Response (HTTP Status 500)
{
  "errorCode": "System",
  "errorMessage": "Internal Server Error"
}


Query reservation IDs during the timeframe

This API is used by the distributor to query existing ticket reservations by the reservation's last modification time.


REQUEST

Request Headers

LevelField NameData TypeRequiredDescriptionExample
1authorization*stringYOAuth2 authorization token
1echo-token*stringYA unique echo token is generated from the distributorcc28bac659c44422b2dab11705934a4f
1distributor-id*stringYDistributor ID in the Derbysoft systemDISTRIBUTOR
1office-idstringNThe distributor identifier for each of their offices or points of sale consists of distributorid(Disney) and officeid(Disney), which are combined with the underscore. Required for DisneyDERBY-1_DERBY001
1supplier-id*stringY
DISNEY

Request Body

LevelField NameData TypeRequiredDescriptionExample
1dateRange*
Y

2startDate*dateYStart date of date range, format with yyyy-MM-dd
2endDatedateNEnd date of date range, format with yyyy-MM-dd

Request Example

Request Example: post /reservations 
{
  "dateRange": {
    "startDate": "2022-02-13",
    "endDate": "2022-02-15"
  }
}


RESPONSE

Response Schema

LevelField NameData TypeRequiredDescriptionExample
1reservationIds*
Y

2distributorResId*stringYReservation ID generated by Distributor
2supplierResIdstringNReservation ID generated by Supplier
2derbyResId*stringYReservation ID generated by Derbysoft


1status*enumYAllowed: Confirmed┃Cancelled
Reservation status from Derbysoft

1result*enumYAllowed: Successful┃Failed┃Processing
Reservation results from Derbysoft

1failCause
NThis is a global error response in this specification


2errorCode*stringYError code
2errorMessage*stringYConstraints: Min 1 char
Error detail

1cancellationIdstringNReservation cancellation ID from the supplier
1orders
NOrder list for this reservation
2productId*stringY
5XK03A
2brandIdstringNProperty brand
2orderIds



3confirmIdstringNConfirmed ID for each ticket

Response Example

Success Response (HTTP Status 200)
[
  {
    "reservationIds": {
      "distributorResId": "string",
      "supplierResId": "string",
      "derbyResId": "DK51202494D1RQ"
    },
    "status": "Confirmed",
    "result": "Successful",
    "failCause": {
      "errorCode": "System",
      "errorMessage": "Internal Server Error"
    },
    "cancellationId": "string",
    "orders": [
      {
        "productId": "5XK03A",
        "brandId": "WDW",
        "orderIds": [
          {
            "confirmId": "string"
          }
        ]
      }
    ]
  }
]
Error Response (HTTP Status 500)
{
  "errorCode": "System",
  "errorMessage": "Internal Server Error"
}




Query a single reservation

This API is used by the distributor to query existing ticket reservations. It can be used to check the reservation extra info for reservation requests.


REQUEST

Request Headers

LevelField NameData TypeRequiredDescriptionExample
1authorization*stringYOAuth2 authorization token
1echo-token*stringYA unique echo token is generated from the distributorcc28bac659c44422b2dab11705934a4f
1distributor-id*stringYDistributor ID in the Derbysoft systemDISTRIBUTOR
1office-idstringNThe distributor identifier for each of their offices or points of sale consists of distributorid(Disney) and officeid(Disney), which are combined with the underscore. Required for DisneyDERBY-1_DERBY001
1supplier-id*stringY
DISNEY

Request Body

LevelField NameData TypeRequiredDescriptionExample
1reservationIds*
Y

2distributorResId*stringYReservation ID generated by Distributor
2supplierResIdstringNReservation ID generated by Supplier
2derbyResId*stringYReservation ID generated by Derbysoft


Request Example

Request Example: post /reservation/detail
{
  "reservationIds": {
    "distributorResId": "string",
    "supplierResId": "string",
    "derbyResId": "DK51202494D1RQ"
  }
}


RESPONSE

Response Schema

LevelField NameData TypeRequiredDescriptionExample
1reservationIds*
Y

2distributorResId*stringYReservation ID generated by Distributor
2supplierResIdstringNReservation ID generated by Supplier
2derbyResId*stringYReservation ID generated by Derbysoft


1status*enumYAllowed: Confirmed┃Cancelled
Reservation status from Derbysoft

1result*enumYAllowed: Successful┃Failed┃Processing
Reservation results from Derbysoft

1failCause
NThis is a global error response in this specification


2errorCode*stringYError code
2errorMessage*stringYConstraints: Min 1 char
Error detail

1contactPerson
N

2given*stringY

2middlestringN


2surname*stringY

2emailstringN

2phonestringN

1cancellationIdstringNReservation cancellation ID from the supplier
1orders
NOrder list for this reservation
2productId*stringY
5XK03A
2brandIdstringNProperty brand
2quantity*integerYCount of the tickets
2date*stringY

2price
N

3amountBeforeTaxnumberNSingle ticket price without tax
3amountAfterTaxnumberNSingle ticket price with tax
3decimalPlacesintegerNDecimal places
3currency*stringYCurrency code
2orderIds
N

3confirmIdstringNConfirmed ID for each ticket
2passUrls
N

3getPassUrlstringNUrl For Get Pass
3printPassesUrlstringNUrl For Print Pass
3mobilePassesUrlstringNMobile Passes Url

Response Example

Success Response (HTTP Status 200)
{
  "reservationIds": {
    "distributorResId": "string",
    "supplierResId": "string",
    "derbyResId": "DK51202494D1RQ"
  },
  "status": "Confirmed",
  "result": "Successful",
  "failCause": {
    "errorCode": "System",
    "errorMessage": "Internal Server Error"
  },
  "contactPerson": {
    "given": "Jean",
    "middle": "Luc",
    "surname": "Picard",
    "email": "xxx@email.com",
    "phone": 11111111111
  },
  "cancellationId": "string",
  "orders": [
    {
      "productId": "5XK03A",
      "brandId": "WDW",
      "quantity": 2,
      "date": "2020-02-13",
      "price": {
        "amountBeforeTax": 120.01,
        "amountAfterTax": 150.01,
        "decimalPlaces": 2,
        "currency": "USD"
      },
      "orderIds": [
        {
          "confirmId": "string"
        }
      ],
      "passUrls": {
        "getPassUrl": "https://xxx.xxx.xxx",
        "printPassesUrl": "https://xxx.xxx.xxx",
        "mobilePassesUrl": "https://xxx.xxx.xxx"
      }
    }
  ]
}
Error Response (HTTP Status 500)
{
  "errorCode": "System",
  "errorMessage": "Internal Server Error"
}