< Return to Summary | File Generated: Thu Apr 17 2025 12:13:33 GMT+0000 (Coordinated Universal Time)
Booking Flow: OpenBookingApprovalFlow
Opportunity Type: IndividualFacilityUseSlot
Feature: Details Capture / Additional Details capture (Implemented)
Test: Booking opportunity with additional details required but not supplied
Should error
npm start -- --runInBand test/features/details-capture/additional-details-capture/implemented/additional-details-required-but-not-supplied-test.js
The OpenActive Reference Implementation test result for this test can be used as a reference to help with debugging.
⚠️ 10 passed with 0 failures, 75 warnings and 0 suggestions
POST https://localhost:5001/api/openbooking/test-interface/datasets/uat-ci/opportunities
"application/vnd.openactive.booking+json; version=1""Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3NDQ4OTEyMjIsImV4cCI6MTc0NDg5NDgyMiwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiNDI0NzRiMzUtZGI3Ni00N2MzLWI4NTMtMzI0NzFhYjhhZjk1IiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiNDI0NzRiMzUtZGI3Ni00N2MzLWI4NTMtMzI0NzFhYjhhZjk1Iiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzQ0ODkxMjIxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6IkUyMEU5NzhENzY5RjYyQTVDOTQzNTc1NDlFNTY1OTA2Iiwic2lkIjoiMEI3MkQyMUE5OENBMkQyRTRCMzkyN0I2Q0FEQUI3MkUiLCJpYXQiOjE3NDQ4OTEyMjIsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.YotCR76yalzTKWneRbkrMSc5vo-bv0J0lVHTprT5jn8vJP68Rr7jOMswm_k_w4zUBsZoelxJ35ZwJ7uQ1UFSniKDj4eJvEV5MjCFuZnaAONS43e0ZuvqAkGFi7wKQUMT4yjEg5j4bzHAUqg9LktGzy0su61R7APsD8vhw2G0hlnePUpI1ORJ9PBKd1Cp79qllaqunRTLsxgbRAA0-PAGUVm7eWBv7F-bt75UPvsAc-ZPHyLEJE2uaeUmpozr8-ZR1e-jMkoljo7g3GUJp34xy1aOhY5FM6hHOEcJuPX_7-4hfbCUgBppqFAQcevnkYjSnrLHBIE10slDcCQ5CYdwoQ"{
"@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#TestOpportunityBookableAdditionalDetails",
"test:testOpenBookingFlow": "https://openactive.io/test-interface#OpenBookingApprovalFlow"
}
Response status code: 200 OK. Responded in 13.393858ms.
{
"@context": "https://openactive.io/",
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314"
}
GET http://localhost:3000/opportunity/https%3A%2F%2Flocalhost%3A5001%2Fapi%2Fidentifiers%2Ffacility-uses%2F2314%2Findividual-facility-uses%2F1%2Fslots%2F20314?useCacheIfAvailable=true
Response status code: 200 OK. Responded in 403.948978ms.
{
"state": "updated",
"id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314",
"modified": "1744892038107",
"data": {
"@context": [
"https://openactive.io/"
],
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314",
"identifier": 20314,
"duration": "PT1H",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1",
"name": "Court 1 on [OPEN BOOKING API TEST INTERFACE] Bookable Paid Facility That Requires Additional Details",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314",
"identifier": 2314,
"name": "GOLDEN: [OPEN BOOKING API TEST INTERFACE] Bookable Paid Facility That Requires Additional Details",
"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/2",
"identifier": 2,
"name": "Premier Lifters",
"description": "Where your Fitness Goals are Always Inn-Sight. 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 1BB",
"streetAddress": "Greyfriars Court, Paradise Square"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": false
},
{
"@type": "Showers",
"name": "Showers",
"value": false
},
{
"@type": "Lockers",
"name": "Lockers",
"value": false
},
{
"@type": "Towels",
"name": "Towels",
"value": true
},
{
"@type": "Creche",
"name": "Creche",
"value": true
},
{
"@type": "Parking",
"name": "Parking",
"value": true
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7504933,
"longitude": -1.2620685
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/5/53/Cambridge_Orchard_Park_Premier_Inn.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 000002",
"url": "https://en.wikipedia.org/wiki/Premier_Inn"
},
"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": "09773 250033",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "https://daniela.info"
},
"url": "https://www.example.com/facilities/2314"
}
},
"maximumUses": 10,
"offers": [
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"openBookingFlowRequirement": [
"https://openactive.io/OpenBookingApproval",
"https://openactive.io/OpenBookingIntakeForm"
],
"price": 10,
"priceCurrency": "GBP"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"openBookingFlowRequirement": [
"https://openactive.io/OpenBookingApproval",
"https://openactive.io/OpenBookingIntakeForm"
],
"price": 10,
"priceCurrency": "GBP"
}
],
"remainingUses": 10,
"startDate": "2025-04-18T12:13:56+00:00",
"endDate": "2025-04-18T13:13:56+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.PUT https://localhost:5001/api/openbooking/order-quote-templates/0254b35d-578f-4462-88c6-6bf2b3fcc6ba
"application/vnd.openactive.booking+json; version=1""Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3NDQ4OTEyMjIsImV4cCI6MTc0NDg5NDgyMiwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiNDI0NzRiMzUtZGI3Ni00N2MzLWI4NTMtMzI0NzFhYjhhZjk1IiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiNDI0NzRiMzUtZGI3Ni00N2MzLWI4NTMtMzI0NzFhYjhhZjk1Iiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzQ0ODkxMjIxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6IkUyMEU5NzhENzY5RjYyQTVDOTQzNTc1NDlFNTY1OTA2Iiwic2lkIjoiMEI3MkQyMUE5OENBMkQyRTRCMzkyN0I2Q0FEQUI3MkUiLCJpYXQiOjE3NDQ4OTEyMjIsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.YotCR76yalzTKWneRbkrMSc5vo-bv0J0lVHTprT5jn8vJP68Rr7jOMswm_k_w4zUBsZoelxJ35ZwJ7uQ1UFSniKDj4eJvEV5MjCFuZnaAONS43e0ZuvqAkGFi7wKQUMT4yjEg5j4bzHAUqg9LktGzy0su61R7APsD8vhw2G0hlnePUpI1ORJ9PBKd1Cp79qllaqunRTLsxgbRAA0-PAGUVm7eWBv7F-bt75UPvsAc-ZPHyLEJE2uaeUmpozr8-ZR1e-jMkoljo7g3GUJp34xy1aOhY5FM6hHOEcJuPX_7-4hfbCUgBppqFAQcevnkYjSnrLHBIE10slDcCQ5CYdwoQ"{
"@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/2314/individual-facility-uses/1/slots/20314#/offers/0",
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314"
}
],
"payment": {
"@type": "Payment",
"name": "AcmeBroker Points",
"accountId": "SN1593",
"paymentProviderId": "STRIPE"
}
}
Response status code: 200 OK. Responded in 79.918012ms.
{
"@context": "https://openactive.io/",
"@type": "OrderQuote",
"@id": "https://localhost:5001/api/openbooking/order-quotes/0254b35d-578f-4462-88c6-6bf2b3fcc6ba",
"lease": {
"@type": "Lease",
"leaseExpires": "2025-04-17T12:18:57+00:00"
},
"orderRequiresApproval": true,
"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/2314/individual-facility-uses/1/slots/20314#/offers/0",
"allowCustomerCancellationFullRefund": true,
"price": 10,
"priceCurrency": "GBP"
},
"orderedItem": {
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314",
"name": "[OPEN BOOKING API TEST INTERFACE] Bookable Paid Facility That Requires Additional Details",
"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/2",
"identifier": 2,
"name": "Premier Lifters",
"description": "Where your Fitness Goals are Always Inn-Sight. 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 1BB",
"streetAddress": "Greyfriars Court, Paradise Square"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": false
},
{
"@type": "Showers",
"name": "Showers",
"value": false
},
{
"@type": "Lockers",
"name": "Lockers",
"value": false
},
{
"@type": "Towels",
"name": "Towels",
"value": true
},
{
"@type": "Creche",
"name": "Creche",
"value": true
},
{
"@type": "Parking",
"name": "Parking",
"value": true
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7504933,
"longitude": -1.2620685
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/5/53/Cambridge_Orchard_Park_Premier_Inn.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 000002",
"url": "https://en.wikipedia.org/wiki/Premier_Inn"
},
"url": "https://example.com/events/2314"
},
"name": "Court 1 on [OPEN BOOKING API TEST INTERFACE] Bookable Paid Facility That Requires Additional Details"
},
"maximumUses": 10,
"remainingUses": 10,
"startDate": "2025-04-18T12:13:56+00:00",
"endDate": "2025-04-18T13:13:56+00:00"
},
"orderItemIntakeForm": [
{
"@type": "ShortAnswerFormFieldSpecification",
"@id": "https://example.com/experience",
"name": "Experience",
"description": "Have you played before? Are you a complete beginner or seasoned pro?",
"valueRequired": true
},
{
"@type": "DropdownFormFieldSpecification",
"@id": "https://example.com/age",
"valueOption": [
"0-18",
"18-30",
"30+"
],
"name": "Age",
"description": "Your age is useful for us to place you in the correct group on the day",
"valueRequired": true
}
],
"position": 0,
"unitTaxSpecification": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 2,
"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": 10,
"priceCurrency": "GBP"
},
"totalPaymentTax": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 2,
"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%2F2314%2Findividual-facility-uses%2F1%2Fslots%2F20314?useCacheIfAvailable=true&expectedCapacity=9
Response status code: 200 OK. Responded in 437.506155ms.
{
"state": "updated",
"id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314",
"modified": "1744892038914",
"data": {
"@context": [
"https://openactive.io/"
],
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314",
"identifier": 20314,
"duration": "PT1H",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1",
"name": "Court 1 on [OPEN BOOKING API TEST INTERFACE] Bookable Paid Facility That Requires Additional Details",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314",
"identifier": 2314,
"name": "GOLDEN: [OPEN BOOKING API TEST INTERFACE] Bookable Paid Facility That Requires Additional Details",
"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/2",
"identifier": 2,
"name": "Premier Lifters",
"description": "Where your Fitness Goals are Always Inn-Sight. 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 1BB",
"streetAddress": "Greyfriars Court, Paradise Square"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": false
},
{
"@type": "Showers",
"name": "Showers",
"value": false
},
{
"@type": "Lockers",
"name": "Lockers",
"value": false
},
{
"@type": "Towels",
"name": "Towels",
"value": true
},
{
"@type": "Creche",
"name": "Creche",
"value": true
},
{
"@type": "Parking",
"name": "Parking",
"value": true
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7504933,
"longitude": -1.2620685
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/5/53/Cambridge_Orchard_Park_Premier_Inn.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 000002",
"url": "https://en.wikipedia.org/wiki/Premier_Inn"
},
"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": "09773 250033",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "https://daniela.info"
},
"url": "https://www.example.com/facilities/2314"
}
},
"maximumUses": 10,
"offers": [
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"openBookingFlowRequirement": [
"https://openactive.io/OpenBookingApproval",
"https://openactive.io/OpenBookingIntakeForm"
],
"price": 10,
"priceCurrency": "GBP"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"openBookingFlowRequirement": [
"https://openactive.io/OpenBookingApproval",
"https://openactive.io/OpenBookingIntakeForm"
],
"price": 10,
"priceCurrency": "GBP"
}
],
"remainingUses": 9,
"startDate": "2025-04-18T12:13:56+00:00",
"endDate": "2025-04-18T13:13:56+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.PUT https://localhost:5001/api/openbooking/order-quotes/0254b35d-578f-4462-88c6-6bf2b3fcc6ba
"application/vnd.openactive.booking+json; version=1""Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3NDQ4OTEyMjIsImV4cCI6MTc0NDg5NDgyMiwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiNDI0NzRiMzUtZGI3Ni00N2MzLWI4NTMtMzI0NzFhYjhhZjk1IiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiNDI0NzRiMzUtZGI3Ni00N2MzLWI4NTMtMzI0NzFhYjhhZjk1Iiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzQ0ODkxMjIxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6IkUyMEU5NzhENzY5RjYyQTVDOTQzNTc1NDlFNTY1OTA2Iiwic2lkIjoiMEI3MkQyMUE5OENBMkQyRTRCMzkyN0I2Q0FEQUI3MkUiLCJpYXQiOjE3NDQ4OTEyMjIsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.YotCR76yalzTKWneRbkrMSc5vo-bv0J0lVHTprT5jn8vJP68Rr7jOMswm_k_w4zUBsZoelxJ35ZwJ7uQ1UFSniKDj4eJvEV5MjCFuZnaAONS43e0ZuvqAkGFi7wKQUMT4yjEg5j4bzHAUqg9LktGzy0su61R7APsD8vhw2G0hlnePUpI1ORJ9PBKd1Cp79qllaqunRTLsxgbRAA0-PAGUVm7eWBv7F-bt75UPvsAc-ZPHyLEJE2uaeUmpozr8-ZR1e-jMkoljo7g3GUJp34xy1aOhY5FM6hHOEcJuPX_7-4hfbCUgBppqFAQcevnkYjSnrLHBIE10slDcCQ5CYdwoQ"{
"@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": "226.473.0008 x793",
"givenName": "Braun",
"familyName": "Michel"
},
"orderedItem": [
{
"@type": "OrderItem",
"position": 0,
"acceptedOffer": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314#/offers/0",
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314"
}
],
"payment": {
"@type": "Payment",
"name": "AcmeBroker Points",
"accountId": "SN1593",
"paymentProviderId": "STRIPE"
}
}
Response status code: 409 Conflict. Responded in 23.410555ms.
{
"@context": "https://openactive.io/",
"@type": "OrderQuote",
"@id": "https://localhost:5001/api/openbooking/order-quotes/0254b35d-578f-4462-88c6-6bf2b3fcc6ba",
"orderRequiresApproval": true,
"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",
"email": "[email protected]",
"familyName": "Michel",
"givenName": "Braun",
"telephone": "226.473.0008 x793"
},
"orderedItem": [
{
"@type": "OrderItem",
"acceptedOffer": {
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314#/offers/0",
"allowCustomerCancellationFullRefund": true,
"price": 10,
"priceCurrency": "GBP"
},
"error": [
{
"@type": "IncompleteIntakeFormError",
"name": "The 'orderItemIntakeFormResponse' is missing fields that are specified as 'valueRequired' within the 'orderItemIntakeForm'.",
"statusCode": 409,
"description": "Incomplete additional details supplied",
"instance": "https://example.com/experience"
},
{
"@type": "IncompleteIntakeFormError",
"name": "The 'orderItemIntakeFormResponse' is missing fields that are specified as 'valueRequired' within the 'orderItemIntakeForm'.",
"statusCode": 409,
"description": "Incomplete additional details supplied",
"instance": "https://example.com/age"
}
],
"orderedItem": {
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314",
"name": "[OPEN BOOKING API TEST INTERFACE] Bookable Paid Facility That Requires Additional Details",
"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/2",
"identifier": 2,
"name": "Premier Lifters",
"description": "Where your Fitness Goals are Always Inn-Sight. 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 1BB",
"streetAddress": "Greyfriars Court, Paradise Square"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": false
},
{
"@type": "Showers",
"name": "Showers",
"value": false
},
{
"@type": "Lockers",
"name": "Lockers",
"value": false
},
{
"@type": "Towels",
"name": "Towels",
"value": true
},
{
"@type": "Creche",
"name": "Creche",
"value": true
},
{
"@type": "Parking",
"name": "Parking",
"value": true
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7504933,
"longitude": -1.2620685
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/5/53/Cambridge_Orchard_Park_Premier_Inn.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 000002",
"url": "https://en.wikipedia.org/wiki/Premier_Inn"
},
"url": "https://example.com/events/2314"
},
"name": "Court 1 on [OPEN BOOKING API TEST INTERFACE] Bookable Paid Facility That Requires Additional Details"
},
"maximumUses": 10,
"remainingUses": 10,
"startDate": "2025-04-18T12:13:56+00:00",
"endDate": "2025-04-18T13:13:56+00:00"
},
"orderItemIntakeForm": [
{
"@type": "ShortAnswerFormFieldSpecification",
"@id": "https://example.com/experience",
"name": "Experience",
"description": "Have you played before? Are you a complete beginner or seasoned pro?",
"valueRequired": true
},
{
"@type": "DropdownFormFieldSpecification",
"@id": "https://example.com/age",
"valueOption": [
"0-18",
"18-30",
"30+"
],
"name": "Age",
"description": "Your age is useful for us to place you in the correct group on the day",
"valueRequired": true
}
],
"position": 0,
"unitTaxSpecification": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 2,
"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": 0
}
}
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.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.PUT https://localhost:5001/api/openbooking/order-proposals/0254b35d-578f-4462-88c6-6bf2b3fcc6ba
"application/vnd.openactive.booking+json; version=1""Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3NDQ4OTEyMjIsImV4cCI6MTc0NDg5NDgyMiwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiNDI0NzRiMzUtZGI3Ni00N2MzLWI4NTMtMzI0NzFhYjhhZjk1IiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiNDI0NzRiMzUtZGI3Ni00N2MzLWI4NTMtMzI0NzFhYjhhZjk1Iiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzQ0ODkxMjIxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6IkUyMEU5NzhENzY5RjYyQTVDOTQzNTc1NDlFNTY1OTA2Iiwic2lkIjoiMEI3MkQyMUE5OENBMkQyRTRCMzkyN0I2Q0FEQUI3MkUiLCJpYXQiOjE3NDQ4OTEyMjIsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.YotCR76yalzTKWneRbkrMSc5vo-bv0J0lVHTprT5jn8vJP68Rr7jOMswm_k_w4zUBsZoelxJ35ZwJ7uQ1UFSniKDj4eJvEV5MjCFuZnaAONS43e0ZuvqAkGFi7wKQUMT4yjEg5j4bzHAUqg9LktGzy0su61R7APsD8vhw2G0hlnePUpI1ORJ9PBKd1Cp79qllaqunRTLsxgbRAA0-PAGUVm7eWBv7F-bt75UPvsAc-ZPHyLEJE2uaeUmpozr8-ZR1e-jMkoljo7g3GUJp34xy1aOhY5FM6hHOEcJuPX_7-4hfbCUgBppqFAQcevnkYjSnrLHBIE10slDcCQ5CYdwoQ"{
"@context": "https://openactive.io/",
"@type": "OrderProposal",
"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": "226.473.0008 x793",
"givenName": "Braun",
"familyName": "Michel"
},
"orderedItem": [
{
"@type": "OrderItem",
"position": 0,
"acceptedOffer": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314#/offers/0",
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314"
}
],
"totalPaymentDue": {
"@type": "PriceSpecification",
"price": 0,
"priceCurrency": "GBP"
}
}
Response status code: 409 Conflict. Responded in 29.924068ms.
{
"@context": "https://openactive.io/",
"@type": "OrderProposal",
"@id": "https://localhost:5001/api/openbooking/order-proposals/0254b35d-578f-4462-88c6-6bf2b3fcc6ba",
"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",
"email": "[email protected]",
"familyName": "Michel",
"givenName": "Braun",
"telephone": "226.473.0008 x793"
},
"orderedItem": [
{
"@type": "OrderItem",
"acceptedOffer": {
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314#/offers/0",
"allowCustomerCancellationFullRefund": true,
"price": 10,
"priceCurrency": "GBP"
},
"error": [
{
"@type": "IncompleteIntakeFormError",
"name": "The 'orderItemIntakeFormResponse' is missing fields that are specified as 'valueRequired' within the 'orderItemIntakeForm'.",
"statusCode": 409,
"description": "Incomplete additional details supplied",
"instance": "https://example.com/experience"
},
{
"@type": "IncompleteIntakeFormError",
"name": "The 'orderItemIntakeFormResponse' is missing fields that are specified as 'valueRequired' within the 'orderItemIntakeForm'.",
"statusCode": 409,
"description": "Incomplete additional details supplied",
"instance": "https://example.com/age"
}
],
"orderedItem": {
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1/slots/20314",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314/individual-facility-uses/1",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2314",
"name": "[OPEN BOOKING API TEST INTERFACE] Bookable Paid Facility That Requires Additional Details",
"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/2",
"identifier": 2,
"name": "Premier Lifters",
"description": "Where your Fitness Goals are Always Inn-Sight. 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 1BB",
"streetAddress": "Greyfriars Court, Paradise Square"
},
"amenityFeature": [
{
"@type": "ChangingFacilities",
"name": "Changing Facilities",
"value": false
},
{
"@type": "Showers",
"name": "Showers",
"value": false
},
{
"@type": "Lockers",
"name": "Lockers",
"value": false
},
{
"@type": "Towels",
"name": "Towels",
"value": true
},
{
"@type": "Creche",
"name": "Creche",
"value": true
},
{
"@type": "Parking",
"name": "Parking",
"value": true
}
],
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.7504933,
"longitude": -1.2620685
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/5/53/Cambridge_Orchard_Park_Premier_Inn.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 000002",
"url": "https://en.wikipedia.org/wiki/Premier_Inn"
},
"url": "https://example.com/events/2314"
},
"name": "Court 1 on [OPEN BOOKING API TEST INTERFACE] Bookable Paid Facility That Requires Additional Details"
},
"maximumUses": 10,
"remainingUses": 10,
"startDate": "2025-04-18T12:13:56+00:00",
"endDate": "2025-04-18T13:13:56+00:00"
},
"orderItemIntakeForm": [
{
"@type": "ShortAnswerFormFieldSpecification",
"@id": "https://example.com/experience",
"name": "Experience",
"description": "Have you played before? Are you a complete beginner or seasoned pro?",
"valueRequired": true
},
{
"@type": "DropdownFormFieldSpecification",
"@id": "https://example.com/age",
"valueOption": [
"0-18",
"18-30",
"30+"
],
"name": "Age",
"description": "Your age is useful for us to place you in the correct group on the day",
"valueRequired": true
}
],
"position": 0,
"unitTaxSpecification": [
{
"@type": "TaxChargeSpecification",
"name": "VAT at 20%",
"price": 2,
"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/Required",
"price": 0
}
}
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.