TABLE OF CONTENTS

Used by the distributor to retrieve the list of products/tickets. This API should be retrieved on a regular schedule (daily or weekly). Any product omitted from the response should be considered inactive by the distributor.

Retrieve the list of active products API

This API is used by the distributor to obtain the active products and remove inactive products.


REQUEST

Request Header

LevelField NameData TypeRequiredDescriptionExample
1authorization*stringYOauth2 authorization token. Details from the AUTHENTICATION sidebar
1echo-token*stringYUnique echo token generated from the distributorcc28bac659c44422b2dab11705934a4f
1distributor-id*stringYDistributor ID in the Derbysoft systemDISTRIBUTOR
1supplier-id*stringYSupplier IdDISNEY

Request Example

Request Example 
get /products

RESPONSE

Response Schema

LevelField NameData TypeRequiredDescriptionExample
1supplierId*stringY
Supplier ID

DISNEY
1productId*stringYProduct ID5XK03A
1productNamestringN
Name

1productType*stringY
Product category
Ticket, SpecialEvent, ThemePark, WaterPark, Pass, etc.
1variablePricebooleanYIndicate product price is static or dynamic


1brandIdstringNProperty brand

DLR
1officeIdsarrayNThe distributor identifier for each of their offices or points of sale consists of distributorid(Disney) and officeid(Disney), which are combined with the underscore["DERBY-1_DERBY001"]
1statusenumNProduct statusAllowed: Active┃Inactive

Response Example

Success Response (HTTP Status 200)
[
  {
    "supplierId": "DISNEY",
    "productId": "5XK03A",
    "productName": "5-Day Theme Park Ticket with Park Hopper Option",
    "productType": "Ticket",
    "variablePrice": true,
    "brandId": "WDW",
    "officeIds": [
      "DERBY-1_DERBY001"
    ],
    "status": "Active"
  }
]


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

Retrieve active ticket product API

This API is used by the distributor to obtain details for active ticket products.


REQUEST

Request Path Parameters


LevelField NameData TypeRequiredDescriptionExample
1productId*stringYProduct ID5XK03A

Request Header

LevelField NameData TypeRequiredDescriptionExample
1authorization*stringYOauth2 authorization token. Details from the AUTHENTICATION sidebar
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*stringYsupplier-idDISNEY

Request Example

 Request Example 
get /product/{productId}

RESPONSE

Response Schema

LevelField NameData TypeRequiredDescription
1supplierId*stringYSupplier IdDISNEY
1productId*stringYProduct ID5XK03A
1productNamestringNName5 Day Park Hopper w/ Lightning Lane Multi Pass
1productTypestringNProduct category. For example: Ticket, SpecialEvent, ThemePark, WaterPark, Pass, etc.
1variablePricebooleanNIndicate product price is static or dynamic
1brandIdstringNProperty brand, required for Disney, United ParksWDW
1officeIdsarrayNThe 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 Disney[“DERBY-1_DERBY001”]

statusenumNProduct statusActive┃Inactive
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

1marketRegionsarrayNIt will be used for ticket products, advising whether the tickets can only be sold to a specific region. [
"INTL_WHOLESALE"
]

1durationDaysintegerNThe number of days included in the ticket purchase5
1saleDateRange
NThe sale window of this product
2startDate*stringYStart date of date range, format with yyyy-MM-dd2025-03-11
2endDatestringNEnd date of date range, format with yyyy-MM-dd2026-02-28
1usageDateRange
NThe usage window of this product
2startDate*stringYStart date of date range, format with yyyy-MM-dd2025-05-16
2endDatestringNEnd date of date range, format with yyyy-MM-dd2026-10-09
1usageBufferDaysintegerNUsage buffer days
1parkReservationRequiredbooleanNCommunicate if the park reservation is requiredtrue
1ageQualifiesarrayN
The product age qualification list


2ageType*enumY
Allowed: Adult┃Child┃AllAges

Child
2ageRange*
Y

3unit*enumYAllowed: Years┃MonthsYears
3minAge*integerY
Constraints: Min 0┃Max 120

3
3maxAge*integerY
Constraints: Min 0┃Max 120

9
1additionsarrayNDescription for specific types. Example for more details


2additionType*enumYAllowed: Policy┃Offer┃ValidPark┃Inclusion┃Affiliation┃ParkReservationRequiredDates

Offer
2additionValues*arrayY

3id*stringYConstraints: Min 1 char

DLRAUSNZRESOFFER
3namestringN
Disneyland AUS/NZ Resident Ticket Offer
3descriptionstringN
Disneyland AUS/NZ Resident Ticket Offer

Response Example

Success Response (HTTP Status 200)
{
  "supplierId": "DISNEY",
  "productId": "5XK03A",
  "productName": "5-Day Theme Park Ticket with Park Hopper Option",
  "productType": "Ticket",
  "variablePrice": true,
  "brandId": "WDW",
  "officeIds": [
    "DERBY-1_DERBY001"
  ],
  "status": "Active",
  "destination": {
    "countryCode": "US",
    "countryName": "United States",
    "subdivisionCode": "US-IL",
    "subdivisionName": "Illinois",
    "subdivisionCategory": "State",
    "cityName": "Chicago"
  },
  "marketRegions": [
    "INTL_WHOLESALE"
  ],
  "durationDays": 5,
  "saleDateRange": [
    {
      "startDate": "2022-02-13",
      "endDate": "2022-02-15"
    }
  ],
  "usageDateRange": [
    {
      "startDate": "2022-02-13",
      "endDate": "2022-02-15"
    }
  ],
  "usageBufferDays": 2,
  "parkReservationRequired": true,
  "ageQualifies": [
    {
      "ageType": "Adult",
      "ageRange": {
        "unit": "Years",
        "minAge": 10,
        "maxAge": 120
      }
    }
  ],
  "additions": [
    {
      "additionType": "Policy",
      "additionValues": [
        {
          "id": "awakening-info",
          "name": "Awakening Info",
          "description": "<b>Theme Park Reservation Requirement</b> ..."
        }
      ]
    }
  ]
}
Error Response (HTTP Status 500)
{
  "errorCode": "System",
  "errorMessage": "Internal Server Error"
}

Retrieve active ticket product price change dates API

This API is used by the distributor to obtain price change dates for active ticket products.


REQUEST

Request Headers

LevelField NameData TypeRequiredDescriptionExample
1authorization*stringYOAuth2 authorization token
1echo-token*stringYUnique echo token 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
1dateRange*
Y

2startDate*stringYStart date of date range, format with yyyy-MM-dd
2endDate*stringYEnd date of date range, format with yyyy-MM-dd
1productIdarrayNProduct ID 5XK03A
1timestamp*stringYDS will return the changes of pricing after this time

Request Example

Request Example:post /productPrice/change
{
  "dateRange": {
    "startDate": "2022-02-13",
    "endDate": "2022-02-15"
  },
  "productId": [
    "5XK03A",
    "5XK03C"
  ],
  "timestamp": 1732601721963
}

RESPONSE

Response Schema

LevelField NameData TypeRequiredDescriptionExample
1productId*stringY Min 1 chars5XK03A
1dates*arrayYchanged dates

Response Example

Success Response (HTTP Status 200)
[
  {
    "productId": "5XK03A",
    "dates": [
      "2022-02-13",
      "2022-02-15"
    ]
  },
  {
    "productId": "5XK03C",
    "dates": [
      "2022-02-14"
    ]
  }
]
Error Response (HTTP Status 500)
{
  "errorCode": "System",
  "errorMessage": "Internal Server Error"
}