Table of contents
API endpoints
There are 9 different endpoints on the API to retrieve data and perform transactions within the Days Out Guide system.
- Get attractions - /attractions
- Get attraction by ID - /attractions/{attractionId}
- Get offers by attraction ID - /attractions/{attractionId}/offers
- Get offer by ID - /offers/{offerId}
- Claim offer for attraction ID - /offers/{offerId}/claim/{attractionId}
- Get categories - /taxonomy/categories
- Get genres - /taxonomy/genres
- Get regions - /taxonomy/regions
- Get train stations - /taxonomy/stations
The API is served over HTTPS and is available through a public domain https://api.daysoutguide.co.uk/.
API calls are versioned (e.g. /api/v1/attractions) to allow changes to be easily rolled out without breaking existing implementations. Friendly meaningful error messages with corresponding HTTP status codes are returned where necessary.
Data is available in both JSON and XML formats determined by the “Accept” or “Content-Type” headers sent with each request, as per HTTP Content Negotiation standards. See https://docs.microsoft.com/en-us/aspnet/web-api/overview/formats-and-model-binding/content-negotiation for more information on Content Negotiation.
Get attractions endpoint
The /attractions endpoint returns a collection of all attractions in the Days Out Guide system that have been made available.
It is possible to filter and sort the collection of results returned by the API. By default there are no filters set. Results appear in order of most popular (defined by the number of vouchers claimed).
Request parameters
Parameter | Description | Validation rules |
---|---|---|
Page | The current page of results | Optional, maximum value of 100 |
PerPage | The number of results to return per page | Optional, defaults to 10 if Page is set |
OrderBy | Order the results set by:
| Defaults to most popular |
Region | Filters the results set to only return attractions within a given region. Values can either be name (e.g. London) or guid (e.g. 88e47a5-1663-415a-9c5f-8ecbbe137a4a) | Accepts a pipe “|” separated list to filter by attractions where one or more of the given regions is set. *You may not mix names and guids in the same request* |
Category | Filters the results set to only return attractions within a given category. Values can either be name (e.g. Galleries & Museums) or guid (e.g. da96232f-73de-48c0-9627-ef55e8b86c21) | Accepts a pipe “|” separated list to filter by attractions where one or more of the given categories is set. *You may not mix names and guids in the same request* |
Genre | Filters the results set to only return attractions within a given genre.Values can either be name (e.g. Countryside) or guid (e.g. 6e34e6bf-8276-42e9-8958-4d88d9b0416b) | Accepts a pipe “|” separated list to filter by attractions where all of the given genres is set *You may not mix names and guids in the same request* |
ShowFree | Include “Free” and “Information” attractions in results | Defaults to false |
IsBritrailEligible | Return only attractions that are british rail eligible. | Defaults to false |
IsHeathrowExpressEligible | Return only attractions that are heathrow access eligible | Defaults to false |
Example request
https://api.daysoutguide.co.uk/v1/attractions?region=London|Scotland&genre=Free|Families and Children&showFree=true&IsBritrailEligible=true&IsHeathrowExpressEligible=true&orderBy=recent
Sample JSON response
{
"Items": [{
"Id": "1fa8e7cb-0366-466e-b6aa-63b6654840b1",
"Name": "The Coca-Cola London Eye",
"Description": "<p>The Coca-Cola London Eye has been London’s number one visitor experience for over a decade. Step into a capsule and feel the exhilaration as you rise up over the River Thames and come face to face with the Houses of Parliament and Big Ben, before soaring above them, up to 135 metres on the world’s tallest cantilevered observation wheel.</p><p>A trip on the Coca-Cola London Eye undoubtedly makes up part of the ultimate day out in the city and is ideally located on the beautiful Southbank amongst brilliant bars and restaurants.</p><p>Included with every ticket is the Coca-Cola London Eye 4D Cinema Experience. This heart-warming mini-movie is a must-see for any Londoner and comes with a few surprises and a great soundtrack featuring Coldplay and Goldfrapp. It creates the perfect build up to your take-off.</p>",
"Directions": "Exit the M4 at Junction 1",
"PhoneNumber": "03333212001",
"Website": "https://www.londoneye.com/",
"PostCode": "SE1 7PB",
"Categories": [{
"Id": "9c809ece-12b4-4122-a3c9-3837a58406bd",
"Name": "Tours & Guided Walks"
},{
"Id": "6b818e92-05fc-4c87-aad4-38bd62872c34",
"Name": "Landmarks & Historical Sites"
}],
"Genres": [{
"Id": "4d21cc5b-fa3a-43fe-b45d-365b0db54592",
"Name": "Family And Children"
},{
"Id": "a1c1bc7b-756a-4a2d-a00f-c5aeb9239ff9",
"Name": "London"
}],
"FeaturedImage": "https://www.daysoutguide.co.uk/media/1234/london-eye.jpg",
"Images": [
"https://www.daysoutguide.co.uk/media/1234/new-image.jpg",
"https://www.daysoutguide.co.uk/media/1234/alternative-image.jpg"
],
"Region": "London",
"NearestStation": {
"Id": "WAT",
"Name": "London Waterloo"
},
"AccessInformation": "<p>Please check <a href="https://www.website.com/">website</a> for details.</p>",
"OpeningTimes": "<p>Daily from 10.00</p>",
"Admission": {
"Adult": 24.95,
"Child": 24.95
},
"RecommendAttractions": [
"15ac9a80-abd3-410f-95d0-923940bc3ec2",
"324240e6-4ee9-4798-8580-90a85474d083",
"5303d949-902c-4a46-9e87-1c6883343d85",
"Ede10133-8509-4766-89cf-5884b5617ddc",
"F27a56b8-87e6-4e9e-a0d0-df85b5d676cd"
],
"Offers": [{
"Id": "4fce5728-4c1a-44bf-8311-341ebd8d9f23",
"Name": "2FOR1 London",
"Terms": "<p>Lorem ipsum dolor sit amet, et denique corrumpit splendide nam,</p>",
"OfferType": "2FOR1",
"Expires": 2020-12-31 00:00:00,
"SavingsInfo": "<p>Lorem ipsum dolor sit amet, et denique corrumpit splendide nam,</p>"
},
{
...
}]
},{
...
}],
"TotalItems": 105,
"ItemsPerPage": 10
}
In case there are no attractions available /attractions endpoint returns a response that is presented below. It contains empty array of Items and TotalItems is set to 0.
Empty JSON response
{
"Items": [],
"TotalItems": 0,
"ItemsPerPage": 10
}
Get attraction by ID endpoint
The /attractions/{attractionId} endpoint returns a single attraction from the Days Out Guide system, provided it has been made available to the requesting API user. The object returned by the endpoint will be in the same structure as a singular result item from the /attractions endpoint - an example of this is below.
There are no request parameters for this endpoint.
Example request
https://api.daysoutguide.co.uk/v1/attractions/1fa8e7cb-0366-466e-b6aa-63b6654840b1
Response object fields
Field name | Description | Type |
---|---|---|
Id | Attraction Id | Guid (string) |
Name | Name of the attraction | string |
Description | Description of the attraction | string |
Directions | Directions to the attraction | string |
PhoneNumber | Phone number of the attraction | string |
Website | URL for the attraction | string |
PostCode | Postcode of the attraction | string |
Categories | Attraction type | object |
Genres | Attraction genre | object |
FeaturedImage | URL for the main attraction image | string |
Images | URLs for images of the attraction | array |
Region | List of the regions the attraction is located within | array |
NearestStation | Name of the nearest station | object |
AccessInformation | Reference to attractions own accessibility information | string |
OpeningTimes | Details about when the offer applies which is generally when the same as the opening times | string |
Admission | The prices that the offer applies to | object |
RecommendAttractions | List of Attraction IDs for attractions located close to or similar to the listed attraction, maximum of 5 | object |
Offers | List of Offers for offers associated with the listed attraction, including details about the offer | object |
Sample JSON response
{
"Id": "1fa8e7cb-0366-466e-b6aa-63b6654840b1",
"Name": "The Coca-Cola London Eye",
"Description": "<p>The Coca-Cola London Eye has been London’s number one visitor experience for over a decade. Step into a capsule and feel the exhilaration as you rise up over the River Thames and come face to face with the Houses of Parliament and Big Ben, before soaring above them, up to 135 metres on the world’s tallest cantilevered observation wheel.</p><p>A trip on the Coca-Cola London Eye undoubtedly makes up part of the ultimate day out in the city and is ideally located on the beautiful Southbank amongst brilliant bars and restaurants.</p><p>Included with every ticket is the Coca-Cola London Eye 4D Cinema Experience. This heart-warming mini-movie is a must-see for any Londoner and comes with a few surprises and a great soundtrack featuring Coldplay and Goldfrapp. It creates the perfect build up to your take-off.</p>",
"Directions": "Exit the M4 at Junction 1",
"PhoneNumber": "03333212001",
"Website": "https://www.londoneye.com/",
"PostCode": "SE1 7PB",
"Categories": [{
"Id": "9c809ece-12b4-4122-a3c9-3837a58406bd",
"Name": "Tours & Guided Walks"
},{
"Id": "6b818e92-05fc-4c87-aad4-38bd62872c34",
"Name": "Landmarks & Historical Sites"
}],
"Genres": [{
"Id": "4d21cc5b-fa3a-43fe-b45d-365b0db54592",
"Name": "Family And Children"
},{
"Id": "a1c1bc7b-756a-4a2d-a00f-c5aeb9239ff9",
"Name": "London"
}],
"FeaturedImage": "https://www.daysoutguide.co.uk/media/1234/london-eye.jpg",
"Images": [
"https://www.daysoutguide.co.uk/media/1234/new-image.jpg",
"https://www.daysoutguide.co.uk/media/1234/alternative-image.jpg"
],
"Region": "London",
"NearestStation": {
"Id": "WAT",
"Name": "London Waterloo"
},
"AccessInformation": "<p>Please check <a href="https://www.website.com/">website</a> for details.</p>",
"OpeningTimes": "<p>Daily from 10.00</p>",
"Admission": {
"Adult": 24.95,
"Child": 24.95
},
"RecommendAttractions": [
"15ac9a80-abd3-410f-95d0-923940bc3ec2",
"324240e6-4ee9-4798-8580-90a85474d083",
"5303d949-902c-4a46-9e87-1c6883343d85",
"Ede10133-8509-4766-89cf-5884b5617ddc",
"F27a56b8-87e6-4e9e-a0d0-df85b5d676cd"
],
"Offers": [{
"Id": "4fce5728-4c1a-44bf-8311-341ebd8d9f23",
"Name": "2FOR1 London",
"Terms": "<p>Lorem ipsum dolor sit amet, et denique corrumpit splendide nam,</p>",
"OfferType": "2FOR1",
"Expires": 2020-12-31 00:00:00,
"SavingsInfo": "<p>Lorem ipsum dolor sit amet, et denique corrumpit splendide nam,</p>"
},
{
...
}]
}
Get offers by attraction ID endpoint
The /attractions/{attractionId}/offers endpoint returns a single offer from the Days Out Guide system, provided it has been made available to the requesting API user. The object returned by the endpoint will be in the same structure as a singular result item from the /attractions/{attractionId}/offers endpoint - an example of this is below.
There are no request parameters for this endpoint.
Example request
https://api.daysoutguide.co.uk/v1/attractions/1fa8e7cb-0366-466e-b6aa-63b6654840b1/offers
Response object fields
Field name | Description | Type |
---|---|---|
Id | Offer Id | Guid (string) |
Name | Name of the offer | string |
Terms | Terms of the offer | string |
OfferType | Type of the offer; e.g. 2FOR1, 3FOR2, 30% OFF | string |
Expires | Date that the offer expires. NULL indicates a valid offer with no set expiry date | datetime |
SavingsInfo | Additional information about the offer that needs to be displayed | string |
Sample JSON response
{
"Items": [{
"Id": "4fce5728-4c1a-44bf-8311-341ebd8d9f23",
"Name": "2FOR1 London",
"Terms": "<p>Lorem ipsum dolor sit amet, et denique corrumpit splendide nam,</p>",
"OfferType": "2FOR1",
"Expires": 2020-12-31 00:00:00,
"SavingsInfo": "<p>Lorem ipsum dolor sit amet, et denique corrumpit splendide nam,</p>"
},
{
...
}],
"TotalItems": 5,
"ItemsPerPage": 10
}
Get offer by ID endpoint
The /offers/{offerId} endpoint returns a collection of all offers that have been associated to the given attraction within the Days Out Guide system. It is not possible to retreive future or expired offers from the API. There are no request parameters for this endpoint.
Example request
https://api.daysoutguide.co.uk/v1/offers/4fce5728-4c1a-44bf-8311-341ebd8d9f23
Response object fields
Field name | Description | Type |
---|---|---|
Id | Offer Id | Guid (string) |
Name | Name of the offer | string |
Terms | Terms of the offer | string |
OfferType | Type of the offer; e.g. 2FOR1, 3FOR2, 30% OFF | string |
Expires | Date that the offer expires. NULL indicates a valid offer with no set expiry date | datetime |
SavingsInfo | Additional information about the offer that needs to be displayed | string |
Sample JSON response
{
"Items": [{
"Id": "4fce5728-4c1a-44bf-8311-341ebd8d9f23",
"Name": "2FOR1 London",
"Terms": "<p>Lorem ipsum dolor sit amet, et denique corrumpit splendide nam,</p>",
"OfferType": "2FOR1",
"Expires": 2020-12-31 00:00:00,
"SavingsInfo": "<p>Lorem ipsum dolor sit amet, et denique corrumpit splendide nam,</p>"
},
{
...
}],
"TotalItems": 5,
"ItemsPerPage": 10
}
Claim offer for attraction ID endpoint
The /offers/{offerId}/claim/{attractionId} endpoint returns the necessary information needed to claim / redeem an offer from Days Out Guide. It is not possible to claim / redeem future or expired offers via the API.
There are no request parameters for this endpoint.
Example request
https://api.daysoutguide.co.uk/v1/offers/4fce5728-4c1a-44bf-8311-341ebd8d9f23/claim/1fa8e7cb-0366-466e-b6aa-63b6654840b1
Response object fields
Field name | Description | Type |
---|---|---|
Id | Id for the given offer | Guid (string) |
Name | Name of the offer | string |
Terms | Terms of the offer | string |
OfferType | Type of the offer; e.g. 2FOR1, 3FOR2, 30% OFF | string |
VoucherType | Type of the voucher; e.g. Days Out Guide, Merlin, External | string |
Expires | Date that the offer expires. NULL indicates a valid offer with no set expiry date | datetime |
CouponCode | Unique coupon code from a third-party provided list, when the Voucher Type is “buy online” | string |
ClaimUrl | URL to claim the offer - link to add the current attraction and offer to “My Trip” on daysoutguide.co.uk Alternatively, this could be an external URL to a third-party site where the customer should redeem the offer | string |
Sample JSON response
{
"Id": "4fce5728-4c1a-44bf-8311-341ebd8d9f23",
"Name": "2FOR1 London",
"Terms": "<p>Lorem ipsum dolor sit amet, et denique corrumpit splendide nam,</p>",
"OfferType": "2FOR1",
"VoucherType": "Days Out Guide",
"Expires": 2020-12-31 00:00:00,
"CouponCode": "",
"ClaimUrl": "https://www.daysoutguide.co.uk/london-eye"
}
Get categories endpoint
The /taxonomy/categories endpoint returns a collection of all categories that exist in the Days Out Guide system. This endpoint is intended to be used to determine the various filter options that are available for the /attractions API endpoint.
There are no request parameters for this endpoint.
Example request
https://api.daysoutguide.co.uk/v1/taxonomy/categories
Response object fields
Field name | Description | Type |
---|---|---|
Id | Category Id | Guid (string) |
Name | Name of the category | string |
Sample JSON response
{[
{
"Id": "9c809ece-12b4-4122-a3c9-3837a58406bd",
"Name": "Tours & Guided Walks"
},
{
...
}
]}
Get genres endpoint
The /taxonomy/genres endpoint returns a collection of all genres that exist in the Days Out Guide system. This endpoint is intended to be used to determine the various filter options that are available for the /attractions API endpoint.
There are no request parameters for this endpoint.
Example request
https://api.daysoutguide.co.uk/v1/taxonomy/genres
Response object fields
Field name | Description | Type |
---|---|---|
Id | Genre Id | Guid (string) |
Name | Name of the genre | string |
Sample JSON response
{[
{
"Id": "4d21cc5b-fa3a-43fe-b45d-365b0db54592",
"Name": "Family And Children"
},
{
...
}
]}
Get regions endpoint
The /taxonomy/regions endpoint returns a collection of all regions that exist in the Days Out Guide system. This endpoint is intended to be used to determine the various filter options that are available for the /attractions API endpoint.
There are no request parameters for this endpoint.
Example request
https://api.daysoutguide.co.uk/v1/taxonomy/regions
Response object fields
Field name | Description | Type |
---|---|---|
Id | Region Id | Guid (string) |
Name | Name of the region | string |
Inner Regions | Regions within the region, “sub-regions” e.g. Scotland has an inner region of East Scotland | array |
Sample JSON response
{[
{
"Id": "1c7dde89-526f-4a74-809c-80d68deab80f",
"Name": "London",
"InnerRegions": [{
"Id": "1c7dde89-526f-4a74-809c-80d68deab80f",
"Name": "London",
"InnerRegions"": [{
...
}]
},
{
...
}]
},
{
...
}
]}
Get train stations endpoint
The /taxonomy/stations endpoint returns a collection of all train stations that exist in the Days Out Guide system.
There are no request parameters for this endpoint.
Example request
https://api.daysoutguide.co.uk/v1/taxonomy/stations
Response object fields
Field name | Description | Type |
---|---|---|
Id | Train station CRS code | string |
Name | Name of the train station | string |
Url | URL of the nationalrail.co.uk page about the train station |
Sample JSON response
{[
{
"Id": "WAT",
"Name": "London Waterloo",
"Url": “http://ojp.nationalrail.co.uk/service/ldbboard/dep/WAT.aspx”
},
{
...
}
]}