< Return to Summary | File Generated: Thu Apr 17 2025 12:09:49 GMT+0000 (Coordinated Universal Time)
Booking Flow: OpenBookingSimpleFlow
Opportunity Type: IndividualFacilityUseSlot
Feature: Core / Amending the OrderQuote before B (Implemented)
Test: Amend, at C2, an existing OrderQuote
Run C1,C2 with X opportunities, then - with the same Order UUID - run C2 with Y opportunities and different customer details, then runs B. The resulting Order should include confirmed bookings for only Y opportunities
npm start -- --runInBand test/features/core/amending-order-quote/implemented/amend-c2-test.js
The OpenActive Reference Implementation test result for this test can be used as a reference to help with debugging.
⚠️ 26 passed with 0 failures, 148 warnings and 0 suggestions
POST http://localhost:3000/test-interface/datasets/uat-ci/opportunities
{
"@type": "Slot",
"facilityUse": {
"@type": "IndividualFacilityUse",
"provider": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1"
}
},
"@context": [
"https://openactive.io/",
"https://openactive.io/test-interface"
],
"test:testOpportunityCriteria": "https://openactive.io/test-interface#TestOpportunityBookable",
"test:testOpenBookingFlow": "https://openactive.io/test-interface#OpenBookingSimpleFlow"
}
Response status code: 200 OK. Responded in 5.7877ms.
{
"@context": "https://openactive.io/",
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247"
}
GET http://localhost:3000/opportunity/https%3A%2F%2Flocalhost%3A5001%2Fapi%2Fidentifiers%2Ffacility-uses%2F725%2Findividual-facility-uses%2F6%2Fslots%2F7247?useCacheIfAvailable=true
Response status code: 200 OK. Responded in 4.298319ms.
{
"data": {
"@context": [
"https://openactive.io/"
],
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247",
"identifier": 7247,
"duration": "PT4H26M",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6",
"name": "Court 6 at Soft Sports Hall",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725",
"identifier": 725,
"name": "Soft Sports Hall",
"facilityType": [
{
"@type": "Concept",
"@id": "https://openactive.io/facility-types#da364f9b-8bb2-490e-9e2f-1068790b9e35",
"inScheme": "https://openactive.io/facility-types",
"prefLabel": "Sports Hall"
}
],
"location": {
"@type": "Place",
"@id": "https://example.com/place/1",
"identifier": 1,
"name": "Post-ercise Plaza",
"description": "Sorting Out Your Fitness One Parcel Lift at a Time! Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Oxford",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "Kings Mead House"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": true
},
{
"@type": "Showers",
"name": "Showers",
"value": true
},
{
"@type": "Lockers",
"name": "Lockers",
"value": true
},
{
"@type": "Towels",
"name": "Towels",
"value": false
},
{
"@type": "Creche",
"name": "Creche",
"value": false
},
{
"@type": "Parking",
"name": "Parking",
"value": false
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7502,
"longitude": -1.2674
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e5/Oxford_StAldates_PostOffice.jpg"
}
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Sunday"
],
"opens": "09:00"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Monday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Tuesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Wednesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Thursday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Friday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Saturday"
],
"opens": "09:00"
}
],
"telephone": "01865 000001",
"url": "https://en.wikipedia.org/wiki/Post_Office_Limited"
},
"provider": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1",
"name": "Acme Fitness Ltd",
"isOpenBookingAllowed": true,
"sameAs": [
"https://socialmedia.com/AcmeFitnessLtd"
],
"taxMode": "https://openactive.io/TaxGross",
"telephone": "05171 664406",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "https://kaden.biz"
},
"url": "https://www.example.com/facilities/725"
}
},
"maximumUses": 1,
"offers": [
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
}
],
"remainingUses": 1,
"startDate": "2025-04-19T13:03:25+00:00",
"endDate": "2025-04-19T17:29:25+00:00"
}
}
description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.PUT https://localhost:5001/api/openbooking/order-quote-templates/9f6fab11-6cc4-4135-962a-a28ee23de364
"application/vnd.openactive.booking+json; version=1""Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3NDQ4OTE0NzEsImV4cCI6MTc0NDg5NTA3MSwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiZGRkYzA4ZDMtOGM0MC00OGJjLWI0YjktNDVmZDMzMGUxYzZiIiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiZGRkYzA4ZDMtOGM0MC00OGJjLWI0YjktNDVmZDMzMGUxYzZiIiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzQ0ODkxNDcxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6IjI3RjlDQkJBRDJGQjU2MTBCOUYxOTAyNUE0OUQ2RDlBIiwic2lkIjoiMUM5OTRDQUQzRUNGOTFDNUMyMDlFQURGREQ3RUIyMDMiLCJpYXQiOjE3NDQ4OTE0NzEsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.fEYu53J4oLtCgpKHxXbcGQeS0kGo7PzFZm5nk8nD2eZANay4vly7TPouFjWeuUU1bN6fnKR9Z5btivyyFjQ4s6D_k3ZZWXSCOaRhYMbd6wHwvyzpYgxXtuR_c8ALAwlnLrAb3zcNCer2HVM5bC5cCE_mS_xQxnjYx_qI9r8IzKZgbDVlhFJBND9IuTRmdbP99YNl16XM5GiHG8_Hh3oLM8l5tv3d6tI4en0xlWwL9jC2We-7yYXXLtIRenGGe4nG3jlf5mDT1gsIfzcSjxBpCtAQa7wlO03de9eGqcGdqEkOM9H9PO0oLnbbtUgyZy8P_3HNQWOwkRJgaVYB7kBuEw"{
"@context": "https://openactive.io/",
"@type": "OrderQuote",
"brokerRole": "https://openactive.io/AgentBroker",
"broker": {
"@type": "Organization",
"name": "MyFitnessApp",
"url": "https://myfitnessapp.example.com",
"description": "A fitness app for all the community",
"logo": {
"@type": "ImageObject",
"url": "http://data.myfitnessapp.org.uk/images/logo.png"
},
"address": {
"@type": "PostalAddress",
"streetAddress": "Alan Peacock Way",
"addressLocality": "Village East",
"addressRegion": "Middlesbrough",
"postalCode": "TS4 3AE",
"addressCountry": "GB"
}
},
"seller": "https://localhost:5001/api/identifiers/sellers/1",
"orderedItem": [
{
"@type": "OrderItem",
"position": 0,
"acceptedOffer": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247"
}
],
"payment": {
"@type": "Payment",
"name": "AcmeBroker Points",
"accountId": "SN1593",
"paymentProviderId": "STRIPE"
}
}
Response status code: 200 OK. Responded in 35.288803ms.
{
"@context": "https://openactive.io/",
"@type": "OrderQuote",
"@id": "https://localhost:5001/api/openbooking/order-quotes/9f6fab11-6cc4-4135-962a-a28ee23de364",
"lease": {
"@type": "Lease",
"leaseExpires": "2025-04-17T12:15:01+00:00"
},
"orderRequiresApproval": false,
"bookingService": {
"@type": "BookingService",
"name": "Acme booking system",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "https://example.com"
},
"broker": {
"@type": "Organization",
"name": "MyFitnessApp",
"url": "https://myfitnessapp.example.com"
},
"brokerRole": "https://openactive.io/AgentBroker",
"orderedItem": [
{
"@type": "OrderItem",
"acceptedOffer": {
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
},
"orderedItem": {
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725",
"name": "Soft Sports Hall",
"facilityType": [
{
"@type": "Concept",
"@id": "https://openactive.io/facility-types#a1f82b7a-1258-4d9a-8dc5-bfc2ae961651",
"inScheme": "https://openactive.io/facility-types",
"prefLabel": "Squash Court"
}
],
"location": {
"@type": "Place",
"@id": "https://example.com/place/1",
"identifier": 1,
"name": "Post-ercise Plaza",
"description": "Sorting Out Your Fitness One Parcel Lift at a Time! Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Oxford",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "Kings Mead House"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": true
},
{
"@type": "Showers",
"name": "Showers",
"value": true
},
{
"@type": "Lockers",
"name": "Lockers",
"value": true
},
{
"@type": "Towels",
"name": "Towels",
"value": false
},
{
"@type": "Creche",
"name": "Creche",
"value": false
},
{
"@type": "Parking",
"name": "Parking",
"value": false
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7502,
"longitude": -1.2674
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e5/Oxford_StAldates_PostOffice.jpg"
}
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Sunday"
],
"opens": "09:00"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Monday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Tuesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Wednesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Thursday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Friday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Saturday"
],
"opens": "09:00"
}
],
"telephone": "01865 000001",
"url": "https://en.wikipedia.org/wiki/Post_Office_Limited"
},
"url": "https://example.com/events/725"
},
"name": "Court 6 at Soft Sports Hall"
},
"maximumUses": 1,
"remainingUses": 1,
"startDate": "2025-04-19T13:03:25+00:00",
"endDate": "2025-04-19T17:29:25+00:00"
},
"position": 0,
"unitTaxSpecification": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 0.342,
"priceCurrency": "GBP",
"rate": 0.2
}
]
}
],
"payment": {
"@type": "Payment",
"name": "AcmeBroker Points",
"accountId": "SN1593",
"paymentProviderId": "STRIPE"
},
"seller": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1",
"name": "Acme Fitness Ltd",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Another town",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "1 Hidden Gem"
},
"isOpenBookingAllowed": true,
"legalName": "Acme Fitness Ltd",
"taxMode": "https://openactive.io/TaxGross",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
]
},
"totalPaymentDue": {
"@type": "PriceSpecification",
"openBookingPrepayment": "https://openactive.io/Required",
"price": 1.71,
"priceCurrency": "GBP"
},
"totalPaymentTax": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 0.342,
"priceCurrency": "GBP",
"rate": 0.2
}
]
}
name is missing from Offer.ageRestriction is missing from Offer.duration is missing from Slot.description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.email is missing from Organization.url is missing from Organization.logo is missing from Organization.vatID is missing from Organization.GET http://localhost:3000/opportunity/https%3A%2F%2Flocalhost%3A5001%2Fapi%2Fidentifiers%2Ffacility-uses%2F725%2Findividual-facility-uses%2F6%2Fslots%2F7247?useCacheIfAvailable=true&expectedCapacity=0
Response status code: 200 OK. Responded in 403.707428ms.
{
"state": "updated",
"id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247",
"modified": "1744891802824",
"data": {
"@context": [
"https://openactive.io/"
],
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247",
"identifier": 7247,
"duration": "PT4H26M",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6",
"name": "Court 6 at Soft Sports Hall",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725",
"identifier": 725,
"name": "Soft Sports Hall",
"facilityType": [
{
"@type": "Concept",
"@id": "https://openactive.io/facility-types#da364f9b-8bb2-490e-9e2f-1068790b9e35",
"inScheme": "https://openactive.io/facility-types",
"prefLabel": "Sports Hall"
}
],
"location": {
"@type": "Place",
"@id": "https://example.com/place/1",
"identifier": 1,
"name": "Post-ercise Plaza",
"description": "Sorting Out Your Fitness One Parcel Lift at a Time! Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Oxford",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "Kings Mead House"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": true
},
{
"@type": "Showers",
"name": "Showers",
"value": true
},
{
"@type": "Lockers",
"name": "Lockers",
"value": true
},
{
"@type": "Towels",
"name": "Towels",
"value": false
},
{
"@type": "Creche",
"name": "Creche",
"value": false
},
{
"@type": "Parking",
"name": "Parking",
"value": false
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7502,
"longitude": -1.2674
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e5/Oxford_StAldates_PostOffice.jpg"
}
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Sunday"
],
"opens": "09:00"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Monday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Tuesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Wednesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Thursday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Friday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Saturday"
],
"opens": "09:00"
}
],
"telephone": "01865 000001",
"url": "https://en.wikipedia.org/wiki/Post_Office_Limited"
},
"provider": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1",
"name": "Acme Fitness Ltd",
"isOpenBookingAllowed": true,
"sameAs": [
"https://socialmedia.com/AcmeFitnessLtd"
],
"taxMode": "https://openactive.io/TaxGross",
"telephone": "05171 664406",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "https://kaden.biz"
},
"url": "https://www.example.com/facilities/725"
}
},
"maximumUses": 1,
"offers": [
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
}
],
"remainingUses": 0,
"startDate": "2025-04-19T13:03:25+00:00",
"endDate": "2025-04-19T17:29:25+00:00"
}
}
description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.PUT https://localhost:5001/api/openbooking/order-quotes/9f6fab11-6cc4-4135-962a-a28ee23de364
"application/vnd.openactive.booking+json; version=1""Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3NDQ4OTE0NzEsImV4cCI6MTc0NDg5NTA3MSwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiZGRkYzA4ZDMtOGM0MC00OGJjLWI0YjktNDVmZDMzMGUxYzZiIiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiZGRkYzA4ZDMtOGM0MC00OGJjLWI0YjktNDVmZDMzMGUxYzZiIiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzQ0ODkxNDcxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6IjI3RjlDQkJBRDJGQjU2MTBCOUYxOTAyNUE0OUQ2RDlBIiwic2lkIjoiMUM5OTRDQUQzRUNGOTFDNUMyMDlFQURGREQ3RUIyMDMiLCJpYXQiOjE3NDQ4OTE0NzEsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.fEYu53J4oLtCgpKHxXbcGQeS0kGo7PzFZm5nk8nD2eZANay4vly7TPouFjWeuUU1bN6fnKR9Z5btivyyFjQ4s6D_k3ZZWXSCOaRhYMbd6wHwvyzpYgxXtuR_c8ALAwlnLrAb3zcNCer2HVM5bC5cCE_mS_xQxnjYx_qI9r8IzKZgbDVlhFJBND9IuTRmdbP99YNl16XM5GiHG8_Hh3oLM8l5tv3d6tI4en0xlWwL9jC2We-7yYXXLtIRenGGe4nG3jlf5mDT1gsIfzcSjxBpCtAQa7wlO03de9eGqcGdqEkOM9H9PO0oLnbbtUgyZy8P_3HNQWOwkRJgaVYB7kBuEw"{
"@context": "https://openactive.io/",
"@type": "OrderQuote",
"brokerRole": "https://openactive.io/AgentBroker",
"broker": {
"@type": "Organization",
"name": "MyFitnessApp",
"url": "https://myfitnessapp.example.com",
"description": "A fitness app for all the community",
"logo": {
"@type": "ImageObject",
"url": "http://data.myfitnessapp.org.uk/images/logo.png"
},
"address": {
"@type": "PostalAddress",
"streetAddress": "Alan Peacock Way",
"addressLocality": "Village East",
"addressRegion": "Middlesbrough",
"postalCode": "TS4 3AE",
"addressCountry": "GB"
}
},
"seller": "https://localhost:5001/api/identifiers/sellers/1",
"customer": {
"@type": "Person",
"email": "[email protected]",
"givenName": "Wiegand",
"identifier": "6c02941c-cd05-4de8-80fa-11a480e23145"
},
"orderedItem": [
{
"@type": "OrderItem",
"position": 0,
"acceptedOffer": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247"
}
],
"payment": {
"@type": "Payment",
"name": "AcmeBroker Points",
"accountId": "SN1593",
"paymentProviderId": "STRIPE"
}
}
Response status code: 200 OK. Responded in 57.041174ms.
{
"@context": "https://openactive.io/",
"@type": "OrderQuote",
"@id": "https://localhost:5001/api/openbooking/order-quotes/9f6fab11-6cc4-4135-962a-a28ee23de364",
"lease": {
"@type": "Lease",
"leaseExpires": "2025-04-17T12:15:01+00:00"
},
"orderRequiresApproval": false,
"bookingService": {
"@type": "BookingService",
"name": "Acme booking system",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "https://example.com"
},
"broker": {
"@type": "Organization",
"name": "MyFitnessApp",
"url": "https://myfitnessapp.example.com"
},
"brokerRole": "https://openactive.io/AgentBroker",
"customer": {
"@type": "Person",
"identifier": "6c02941c-cd05-4de8-80fa-11a480e23145",
"email": "[email protected]",
"givenName": "Wiegand"
},
"orderedItem": [
{
"@type": "OrderItem",
"acceptedOffer": {
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
},
"orderedItem": {
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725",
"name": "Soft Sports Hall",
"facilityType": [
{
"@type": "Concept",
"@id": "https://openactive.io/facility-types#a1f82b7a-1258-4d9a-8dc5-bfc2ae961651",
"inScheme": "https://openactive.io/facility-types",
"prefLabel": "Squash Court"
}
],
"location": {
"@type": "Place",
"@id": "https://example.com/place/1",
"identifier": 1,
"name": "Post-ercise Plaza",
"description": "Sorting Out Your Fitness One Parcel Lift at a Time! Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Oxford",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "Kings Mead House"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": true
},
{
"@type": "Showers",
"name": "Showers",
"value": true
},
{
"@type": "Lockers",
"name": "Lockers",
"value": true
},
{
"@type": "Towels",
"name": "Towels",
"value": false
},
{
"@type": "Creche",
"name": "Creche",
"value": false
},
{
"@type": "Parking",
"name": "Parking",
"value": false
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7502,
"longitude": -1.2674
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e5/Oxford_StAldates_PostOffice.jpg"
}
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Sunday"
],
"opens": "09:00"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Monday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Tuesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Wednesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Thursday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Friday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Saturday"
],
"opens": "09:00"
}
],
"telephone": "01865 000001",
"url": "https://en.wikipedia.org/wiki/Post_Office_Limited"
},
"url": "https://example.com/events/725"
},
"name": "Court 6 at Soft Sports Hall"
},
"maximumUses": 1,
"remainingUses": 1,
"startDate": "2025-04-19T13:03:25+00:00",
"endDate": "2025-04-19T17:29:25+00:00"
},
"position": 0,
"unitTaxSpecification": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 0.342,
"priceCurrency": "GBP",
"rate": 0.2
}
]
}
],
"payment": {
"@type": "Payment",
"name": "AcmeBroker Points",
"accountId": "SN1593",
"paymentProviderId": "STRIPE"
},
"seller": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1",
"name": "Acme Fitness Ltd",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Another town",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "1 Hidden Gem"
},
"isOpenBookingAllowed": true,
"legalName": "Acme Fitness Ltd",
"taxMode": "https://openactive.io/TaxGross",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
]
},
"totalPaymentDue": {
"@type": "PriceSpecification",
"openBookingPrepayment": "https://openactive.io/Required",
"price": 1.71,
"priceCurrency": "GBP"
},
"totalPaymentTax": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 0.342,
"priceCurrency": "GBP",
"rate": 0.2
}
]
}
name is missing from Offer.ageRestriction is missing from Offer.duration is missing from Slot.description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.email is missing from Organization.url is missing from Organization.logo is missing from Organization.vatID is missing from Organization.GET http://localhost:3000/opportunity/https%3A%2F%2Flocalhost%3A5001%2Fapi%2Fidentifiers%2Ffacility-uses%2F725%2Findividual-facility-uses%2F6%2Fslots%2F7247?useCacheIfAvailable=true&expectedCapacity=0
Response status code: 200 OK. Responded in 9.422875ms.
{
"data": {
"@context": [
"https://openactive.io/"
],
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247",
"identifier": 7247,
"duration": "PT4H26M",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6",
"name": "Court 6 at Soft Sports Hall",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725",
"identifier": 725,
"name": "Soft Sports Hall",
"facilityType": [
{
"@type": "Concept",
"@id": "https://openactive.io/facility-types#da364f9b-8bb2-490e-9e2f-1068790b9e35",
"inScheme": "https://openactive.io/facility-types",
"prefLabel": "Sports Hall"
}
],
"location": {
"@type": "Place",
"@id": "https://example.com/place/1",
"identifier": 1,
"name": "Post-ercise Plaza",
"description": "Sorting Out Your Fitness One Parcel Lift at a Time! Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Oxford",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "Kings Mead House"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": true
},
{
"@type": "Showers",
"name": "Showers",
"value": true
},
{
"@type": "Lockers",
"name": "Lockers",
"value": true
},
{
"@type": "Towels",
"name": "Towels",
"value": false
},
{
"@type": "Creche",
"name": "Creche",
"value": false
},
{
"@type": "Parking",
"name": "Parking",
"value": false
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7502,
"longitude": -1.2674
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e5/Oxford_StAldates_PostOffice.jpg"
}
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Sunday"
],
"opens": "09:00"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Monday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Tuesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Wednesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Thursday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Friday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Saturday"
],
"opens": "09:00"
}
],
"telephone": "01865 000001",
"url": "https://en.wikipedia.org/wiki/Post_Office_Limited"
},
"provider": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1",
"name": "Acme Fitness Ltd",
"isOpenBookingAllowed": true,
"sameAs": [
"https://socialmedia.com/AcmeFitnessLtd"
],
"taxMode": "https://openactive.io/TaxGross",
"telephone": "05171 664406",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "https://kaden.biz"
},
"url": "https://www.example.com/facilities/725"
}
},
"maximumUses": 1,
"offers": [
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/725/individual-facility-uses/6/slots/7247#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": false,
"latestCancellationBeforeStartDate": "P1D",
"price": 1.71,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P2DT3H52M"
}
],
"remainingUses": 0,
"startDate": "2025-04-19T13:03:25+00:00",
"endDate": "2025-04-19T17:29:25+00:00"
}
}
description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.POST http://localhost:3000/test-interface/datasets/uat-ci/opportunities
{
"@type": "Slot",
"facilityUse": {
"@type": "IndividualFacilityUse",
"provider": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1"
}
},
"@context": [
"https://openactive.io/",
"https://openactive.io/test-interface"
],
"test:testOpportunityCriteria": "https://openactive.io/test-interface#TestOpportunityBookable",
"test:testOpenBookingFlow": "https://openactive.io/test-interface#OpenBookingSimpleFlow"
}
Response status code: 200 OK. Responded in 5.847752ms.
{
"@context": "https://openactive.io/",
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106"
}
GET http://localhost:3000/opportunity/https%3A%2F%2Flocalhost%3A5001%2Fapi%2Fidentifiers%2Ffacility-uses%2F611%2Findividual-facility-uses%2F5%2Fslots%2F6106?useCacheIfAvailable=true
Response status code: 200 OK. Responded in 4.014691ms.
{
"data": {
"@context": [
"https://openactive.io/"
],
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106",
"identifier": 6106,
"duration": "PT41M",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5",
"name": "Court 5 at Steel Sports Hall",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611",
"identifier": 611,
"name": "GOLDEN: Steel Sports Hall",
"facilityType": [
{
"@type": "Concept",
"@id": "https://openactive.io/facility-types#da364f9b-8bb2-490e-9e2f-1068790b9e35",
"inScheme": "https://openactive.io/facility-types",
"prefLabel": "Sports Hall"
}
],
"location": {
"@type": "Place",
"@id": "https://example.com/place/1",
"identifier": 1,
"name": "Post-ercise Plaza",
"description": "Sorting Out Your Fitness One Parcel Lift at a Time! Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Oxford",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "Kings Mead House"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": true
},
{
"@type": "Showers",
"name": "Showers",
"value": true
},
{
"@type": "Lockers",
"name": "Lockers",
"value": true
},
{
"@type": "Towels",
"name": "Towels",
"value": false
},
{
"@type": "Creche",
"name": "Creche",
"value": false
},
{
"@type": "Parking",
"name": "Parking",
"value": false
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7502,
"longitude": -1.2674
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e5/Oxford_StAldates_PostOffice.jpg"
}
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Sunday"
],
"opens": "09:00"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Monday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Tuesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Wednesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Thursday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Friday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Saturday"
],
"opens": "09:00"
}
],
"telephone": "01865 000001",
"url": "https://en.wikipedia.org/wiki/Post_Office_Limited"
},
"provider": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1",
"name": "Acme Fitness Ltd",
"isOpenBookingAllowed": true,
"sameAs": [
"https://socialmedia.com/AcmeFitnessLtd"
],
"taxMode": "https://openactive.io/TaxGross",
"telephone": "00569 554463",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "http://ross.org"
},
"url": "https://www.example.com/facilities/611"
}
},
"maximumUses": 1,
"offers": [
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
}
],
"remainingUses": 1,
"startDate": "2025-04-20T14:24:25+00:00",
"endDate": "2025-04-20T15:05:25+00:00"
}
}
description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.PUT https://localhost:5001/api/openbooking/order-quotes/9f6fab11-6cc4-4135-962a-a28ee23de364
"application/vnd.openactive.booking+json; version=1""Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3NDQ4OTE0NzEsImV4cCI6MTc0NDg5NTA3MSwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiZGRkYzA4ZDMtOGM0MC00OGJjLWI0YjktNDVmZDMzMGUxYzZiIiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiZGRkYzA4ZDMtOGM0MC00OGJjLWI0YjktNDVmZDMzMGUxYzZiIiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzQ0ODkxNDcxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6IjI3RjlDQkJBRDJGQjU2MTBCOUYxOTAyNUE0OUQ2RDlBIiwic2lkIjoiMUM5OTRDQUQzRUNGOTFDNUMyMDlFQURGREQ3RUIyMDMiLCJpYXQiOjE3NDQ4OTE0NzEsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.fEYu53J4oLtCgpKHxXbcGQeS0kGo7PzFZm5nk8nD2eZANay4vly7TPouFjWeuUU1bN6fnKR9Z5btivyyFjQ4s6D_k3ZZWXSCOaRhYMbd6wHwvyzpYgxXtuR_c8ALAwlnLrAb3zcNCer2HVM5bC5cCE_mS_xQxnjYx_qI9r8IzKZgbDVlhFJBND9IuTRmdbP99YNl16XM5GiHG8_Hh3oLM8l5tv3d6tI4en0xlWwL9jC2We-7yYXXLtIRenGGe4nG3jlf5mDT1gsIfzcSjxBpCtAQa7wlO03de9eGqcGdqEkOM9H9PO0oLnbbtUgyZy8P_3HNQWOwkRJgaVYB7kBuEw"{
"@context": "https://openactive.io/",
"@type": "OrderQuote",
"brokerRole": "https://openactive.io/AgentBroker",
"broker": {
"@type": "Organization",
"name": "MyFitnessApp",
"url": "https://myfitnessapp.example.com",
"description": "A fitness app for all the community",
"logo": {
"@type": "ImageObject",
"url": "http://data.myfitnessapp.org.uk/images/logo.png"
},
"address": {
"@type": "PostalAddress",
"streetAddress": "Alan Peacock Way",
"addressLocality": "Village East",
"addressRegion": "Middlesbrough",
"postalCode": "TS4 3AE",
"addressCountry": "GB"
}
},
"seller": "https://localhost:5001/api/identifiers/sellers/1",
"customer": {
"@type": "Person",
"email": "[email protected]",
"telephone": "1-598-422-7408 x5158",
"givenName": "Hegmann",
"identifier": "d0636aac-37b2-4bb4-8b27-277eba07192f"
},
"orderedItem": [
{
"@type": "OrderItem",
"position": 0,
"acceptedOffer": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106"
}
],
"payment": {
"@type": "Payment",
"name": "AcmeBroker Points",
"accountId": "SN1593",
"paymentProviderId": "STRIPE"
}
}
Response status code: 200 OK. Responded in 39.401183ms.
{
"@context": "https://openactive.io/",
"@type": "OrderQuote",
"@id": "https://localhost:5001/api/openbooking/order-quotes/9f6fab11-6cc4-4135-962a-a28ee23de364",
"lease": {
"@type": "Lease",
"leaseExpires": "2025-04-17T12:15:02+00:00"
},
"orderRequiresApproval": false,
"bookingService": {
"@type": "BookingService",
"name": "Acme booking system",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "https://example.com"
},
"broker": {
"@type": "Organization",
"name": "MyFitnessApp",
"url": "https://myfitnessapp.example.com"
},
"brokerRole": "https://openactive.io/AgentBroker",
"customer": {
"@type": "Person",
"identifier": "d0636aac-37b2-4bb4-8b27-277eba07192f",
"email": "[email protected]",
"givenName": "Hegmann",
"telephone": "1-598-422-7408 x5158"
},
"orderedItem": [
{
"@type": "OrderItem",
"acceptedOffer": {
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
},
"orderedItem": {
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611",
"name": "Steel Sports Hall",
"facilityType": [
{
"@type": "Concept",
"@id": "https://openactive.io/facility-types#a1f82b7a-1258-4d9a-8dc5-bfc2ae961651",
"inScheme": "https://openactive.io/facility-types",
"prefLabel": "Squash Court"
}
],
"location": {
"@type": "Place",
"@id": "https://example.com/place/1",
"identifier": 1,
"name": "Post-ercise Plaza",
"description": "Sorting Out Your Fitness One Parcel Lift at a Time! Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Oxford",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "Kings Mead House"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": true
},
{
"@type": "Showers",
"name": "Showers",
"value": true
},
{
"@type": "Lockers",
"name": "Lockers",
"value": true
},
{
"@type": "Towels",
"name": "Towels",
"value": false
},
{
"@type": "Creche",
"name": "Creche",
"value": false
},
{
"@type": "Parking",
"name": "Parking",
"value": false
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7502,
"longitude": -1.2674
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e5/Oxford_StAldates_PostOffice.jpg"
}
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Sunday"
],
"opens": "09:00"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Monday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Tuesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Wednesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Thursday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Friday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Saturday"
],
"opens": "09:00"
}
],
"telephone": "01865 000001",
"url": "https://en.wikipedia.org/wiki/Post_Office_Limited"
},
"url": "https://example.com/events/611"
},
"name": "Court 5 at Steel Sports Hall"
},
"maximumUses": 1,
"remainingUses": 1,
"startDate": "2025-04-20T14:24:25+00:00",
"endDate": "2025-04-20T15:05:25+00:00"
},
"position": 0,
"unitTaxSpecification": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 0,
"priceCurrency": "GBP",
"rate": 0.2
}
]
}
],
"seller": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1",
"name": "Acme Fitness Ltd",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Another town",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "1 Hidden Gem"
},
"isOpenBookingAllowed": true,
"legalName": "Acme Fitness Ltd",
"taxMode": "https://openactive.io/TaxGross",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
]
},
"totalPaymentDue": {
"@type": "PriceSpecification",
"openBookingPrepayment": "https://openactive.io/Unavailable",
"price": 0,
"priceCurrency": "GBP"
},
"totalPaymentTax": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 0,
"priceCurrency": "GBP",
"rate": 0.2
}
]
}
name is missing from Offer.ageRestriction is missing from Offer.duration is missing from Slot.description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.email is missing from Organization.url is missing from Organization.logo is missing from Organization.vatID is missing from Organization.GET http://localhost:3000/opportunity/https%3A%2F%2Flocalhost%3A5001%2Fapi%2Fidentifiers%2Ffacility-uses%2F611%2Findividual-facility-uses%2F5%2Fslots%2F6106?useCacheIfAvailable=true&expectedCapacity=0
Response status code: 200 OK. Responded in 445.685598ms.
{
"state": "updated",
"id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106",
"modified": "1744891803971",
"data": {
"@context": [
"https://openactive.io/"
],
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106",
"identifier": 6106,
"duration": "PT41M",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5",
"name": "Court 5 at Steel Sports Hall",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611",
"identifier": 611,
"name": "GOLDEN: Steel Sports Hall",
"facilityType": [
{
"@type": "Concept",
"@id": "https://openactive.io/facility-types#da364f9b-8bb2-490e-9e2f-1068790b9e35",
"inScheme": "https://openactive.io/facility-types",
"prefLabel": "Sports Hall"
}
],
"location": {
"@type": "Place",
"@id": "https://example.com/place/1",
"identifier": 1,
"name": "Post-ercise Plaza",
"description": "Sorting Out Your Fitness One Parcel Lift at a Time! Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Oxford",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "Kings Mead House"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": true
},
{
"@type": "Showers",
"name": "Showers",
"value": true
},
{
"@type": "Lockers",
"name": "Lockers",
"value": true
},
{
"@type": "Towels",
"name": "Towels",
"value": false
},
{
"@type": "Creche",
"name": "Creche",
"value": false
},
{
"@type": "Parking",
"name": "Parking",
"value": false
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7502,
"longitude": -1.2674
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e5/Oxford_StAldates_PostOffice.jpg"
}
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Sunday"
],
"opens": "09:00"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Monday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Tuesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Wednesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Thursday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Friday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Saturday"
],
"opens": "09:00"
}
],
"telephone": "01865 000001",
"url": "https://en.wikipedia.org/wiki/Post_Office_Limited"
},
"provider": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1",
"name": "Acme Fitness Ltd",
"isOpenBookingAllowed": true,
"sameAs": [
"https://socialmedia.com/AcmeFitnessLtd"
],
"taxMode": "https://openactive.io/TaxGross",
"telephone": "00569 554463",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "http://ross.org"
},
"url": "https://www.example.com/facilities/611"
}
},
"maximumUses": 1,
"offers": [
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
}
],
"remainingUses": 0,
"startDate": "2025-04-20T14:24:25+00:00",
"endDate": "2025-04-20T15:05:25+00:00"
}
}
description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.PUT https://localhost:5001/api/openbooking/orders/9f6fab11-6cc4-4135-962a-a28ee23de364
"application/vnd.openactive.booking+json; version=1""Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3NDQ4OTE0NzEsImV4cCI6MTc0NDg5NTA3MSwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiZGRkYzA4ZDMtOGM0MC00OGJjLWI0YjktNDVmZDMzMGUxYzZiIiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiZGRkYzA4ZDMtOGM0MC00OGJjLWI0YjktNDVmZDMzMGUxYzZiIiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzQ0ODkxNDcxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6IjI3RjlDQkJBRDJGQjU2MTBCOUYxOTAyNUE0OUQ2RDlBIiwic2lkIjoiMUM5OTRDQUQzRUNGOTFDNUMyMDlFQURGREQ3RUIyMDMiLCJpYXQiOjE3NDQ4OTE0NzEsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.fEYu53J4oLtCgpKHxXbcGQeS0kGo7PzFZm5nk8nD2eZANay4vly7TPouFjWeuUU1bN6fnKR9Z5btivyyFjQ4s6D_k3ZZWXSCOaRhYMbd6wHwvyzpYgxXtuR_c8ALAwlnLrAb3zcNCer2HVM5bC5cCE_mS_xQxnjYx_qI9r8IzKZgbDVlhFJBND9IuTRmdbP99YNl16XM5GiHG8_Hh3oLM8l5tv3d6tI4en0xlWwL9jC2We-7yYXXLtIRenGGe4nG3jlf5mDT1gsIfzcSjxBpCtAQa7wlO03de9eGqcGdqEkOM9H9PO0oLnbbtUgyZy8P_3HNQWOwkRJgaVYB7kBuEw"{
"@context": "https://openactive.io/",
"@type": "Order",
"brokerRole": "https://openactive.io/AgentBroker",
"broker": {
"@type": "Organization",
"name": "MyFitnessApp",
"url": "https://myfitnessapp.example.com",
"description": "A fitness app for all the community",
"logo": {
"@type": "ImageObject",
"url": "http://data.myfitnessapp.org.uk/images/logo.png"
},
"address": {
"@type": "PostalAddress",
"streetAddress": "Alan Peacock Way",
"addressLocality": "Village East",
"addressRegion": "Middlesbrough",
"postalCode": "TS4 3AE",
"addressCountry": "GB"
}
},
"seller": "https://localhost:5001/api/identifiers/sellers/1",
"customer": {
"@type": "Person",
"email": "[email protected]",
"telephone": "1-598-422-7408 x5158",
"givenName": "Hegmann",
"identifier": "d0636aac-37b2-4bb4-8b27-277eba07192f"
},
"orderedItem": [
{
"@type": "OrderItem",
"position": 0,
"acceptedOffer": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106"
}
],
"totalPaymentDue": {
"@type": "PriceSpecification",
"price": 0,
"priceCurrency": "GBP"
}
}
Response status code: 201 Created. Responded in 45.601327ms.
{
"@context": [
"https://openactive.io/",
"https://openactive.io/ns-beta"
],
"@type": "Order",
"@id": "https://localhost:5001/api/openbooking/orders/9f6fab11-6cc4-4135-962a-a28ee23de364",
"bookingService": {
"@type": "BookingService",
"name": "Acme booking system",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "https://example.com"
},
"broker": {
"@type": "Organization",
"name": "MyFitnessApp",
"url": "https://myfitnessapp.example.com"
},
"brokerRole": "https://openactive.io/AgentBroker",
"customer": {
"@type": "Person",
"identifier": "d0636aac-37b2-4bb4-8b27-277eba07192f",
"email": "[email protected]",
"givenName": "Hegmann",
"telephone": "1-598-422-7408 x5158"
},
"orderedItem": [
{
"@type": "OrderItem",
"@id": "https://localhost:5001/api/openbooking/orders/9f6fab11-6cc4-4135-962a-a28ee23de364#/orderedItems/29",
"acceptedOffer": {
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
},
"accessCode": [
{
"@type": "PropertyValue",
"name": "Pin Code",
"description": "469363"
}
],
"accessPass": [
{
"@type": "ImageObject",
"url": "https://via.placeholder.com/25x25/cccccc/9c9c9c.png"
},
{
"@type": "Barcode",
"text": "5636049974",
"url": "https://via.placeholder.com/25x25/cccccc/9c9c9c.png",
"beta:codeType": "code128"
}
],
"orderedItem": {
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611",
"name": "Steel Sports Hall",
"facilityType": [
{
"@type": "Concept",
"@id": "https://openactive.io/facility-types#a1f82b7a-1258-4d9a-8dc5-bfc2ae961651",
"inScheme": "https://openactive.io/facility-types",
"prefLabel": "Squash Court"
}
],
"location": {
"@type": "Place",
"@id": "https://example.com/place/1",
"identifier": 1,
"name": "Post-ercise Plaza",
"description": "Sorting Out Your Fitness One Parcel Lift at a Time! Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Oxford",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "Kings Mead House"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": true
},
{
"@type": "Showers",
"name": "Showers",
"value": true
},
{
"@type": "Lockers",
"name": "Lockers",
"value": true
},
{
"@type": "Towels",
"name": "Towels",
"value": false
},
{
"@type": "Creche",
"name": "Creche",
"value": false
},
{
"@type": "Parking",
"name": "Parking",
"value": false
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7502,
"longitude": -1.2674
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e5/Oxford_StAldates_PostOffice.jpg"
}
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Sunday"
],
"opens": "09:00"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Monday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Tuesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Wednesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Thursday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Friday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Saturday"
],
"opens": "09:00"
}
],
"telephone": "01865 000001",
"url": "https://en.wikipedia.org/wiki/Post_Office_Limited"
},
"url": "https://example.com/events/611"
},
"name": "Court 5 at Steel Sports Hall"
},
"maximumUses": 1,
"remainingUses": 1,
"startDate": "2025-04-20T14:24:25+00:00",
"endDate": "2025-04-20T15:05:25+00:00"
},
"orderItemStatus": "https://openactive.io/OrderItemConfirmed",
"position": 0,
"unitTaxSpecification": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 0,
"priceCurrency": "GBP",
"rate": 0.2
}
]
}
],
"seller": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1",
"name": "Acme Fitness Ltd",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Another town",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "1 Hidden Gem"
},
"isOpenBookingAllowed": true,
"legalName": "Acme Fitness Ltd",
"taxMode": "https://openactive.io/TaxGross",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
]
},
"totalPaymentDue": {
"@type": "PriceSpecification",
"openBookingPrepayment": "https://openactive.io/Unavailable",
"price": 0,
"priceCurrency": "GBP"
},
"totalPaymentTax": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 0,
"priceCurrency": "GBP",
"rate": 0.2
}
]
}
accessChannel is missing from OrderItem.name is missing from Offer.ageRestriction is missing from Offer.duration is missing from Slot.description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.email is missing from Organization.url is missing from Organization.logo is missing from Organization.vatID is missing from Organization.GET http://localhost:3000/opportunity/https%3A%2F%2Flocalhost%3A5001%2Fapi%2Fidentifiers%2Ffacility-uses%2F611%2Findividual-facility-uses%2F5%2Fslots%2F6106?useCacheIfAvailable=true&expectedCapacity=0
Response status code: 200 OK. Responded in 3.129637ms.
{
"data": {
"@context": [
"https://openactive.io/"
],
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106",
"identifier": 6106,
"duration": "PT41M",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5",
"name": "Court 5 at Steel Sports Hall",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611",
"identifier": 611,
"name": "GOLDEN: Steel Sports Hall",
"facilityType": [
{
"@type": "Concept",
"@id": "https://openactive.io/facility-types#da364f9b-8bb2-490e-9e2f-1068790b9e35",
"inScheme": "https://openactive.io/facility-types",
"prefLabel": "Sports Hall"
}
],
"location": {
"@type": "Place",
"@id": "https://example.com/place/1",
"identifier": 1,
"name": "Post-ercise Plaza",
"description": "Sorting Out Your Fitness One Parcel Lift at a Time! Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
"address": {
"@type": "PostalAddress",
"addressCountry": "GB",
"addressLocality": "Oxford",
"addressRegion": "Oxfordshire",
"postalCode": "OX1 1AA",
"streetAddress": "Kings Mead House"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": true
},
{
"@type": "Showers",
"name": "Showers",
"value": true
},
{
"@type": "Lockers",
"name": "Lockers",
"value": true
},
{
"@type": "Towels",
"name": "Towels",
"value": false
},
{
"@type": "Creche",
"name": "Creche",
"value": false
},
{
"@type": "Parking",
"name": "Parking",
"value": false
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7502,
"longitude": -1.2674
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e5/Oxford_StAldates_PostOffice.jpg"
}
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Sunday"
],
"opens": "09:00"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Monday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Tuesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Wednesday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Thursday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "21:30",
"dayOfWeek": [
"https://schema.org/Friday"
],
"opens": "06:30"
},
{
"@type": "OpeningHoursSpecification",
"closes": "17:30",
"dayOfWeek": [
"https://schema.org/Saturday"
],
"opens": "09:00"
}
],
"telephone": "01865 000001",
"url": "https://en.wikipedia.org/wiki/Post_Office_Limited"
},
"provider": {
"@type": "Organization",
"@id": "https://localhost:5001/api/identifiers/sellers/1",
"name": "Acme Fitness Ltd",
"isOpenBookingAllowed": true,
"sameAs": [
"https://socialmedia.com/AcmeFitnessLtd"
],
"taxMode": "https://openactive.io/TaxGross",
"telephone": "00569 554463",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "http://ross.org"
},
"url": "https://www.example.com/facilities/611"
}
},
"maximumUses": 1,
"offers": [
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/611/individual-facility-uses/5/slots/6106#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"latestCancellationBeforeStartDate": "P1DT16H",
"price": 0,
"priceCurrency": "GBP",
"validFromBeforeStartDate": "P12DT4H20M"
}
],
"remainingUses": 0,
"startDate": "2025-04-20T14:24:25+00:00",
"endDate": "2025-04-20T15:05:25+00:00"
}
}
description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.description is missing from IndividualFacilityUse.image is missing from IndividualFacilityUse.hoursAvailable is missing from IndividualFacilityUse.description is missing from FacilityUse.image is missing from FacilityUse.hoursAvailable is missing from FacilityUse.offers is missing from FacilityUse.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.name is missing from Offer.ageRestriction is missing from Offer.