< Return to Summary | File Generated: Fri Jan 31 2025 11:16:42 GMT+0000 (Coordinated Universal Time)
Booking Flow: OpenBookingApprovalFlow
Opportunity Type: IndividualFacilityUseSlot
Feature: Core / Common error conditions (Implemented)
Test: Test for IncompleteOrderItemError with missing acceptedOffer
Test for IncompleteOrderItemError (at C1, C2 and B). If there is a missing acceptedOffer
property on the OrderItem.
npm start -- --runInBand test/features/core/common-error-conditions/implemented/incomplete-order-item-no-offer-test.js
The OpenActive Reference Implementation test result for this test can be used as a reference to help with debugging.
⚠️ 14 passed with 0 failures, 16 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.eyJuYmYiOjE3MzgzMjE0MjEsImV4cCI6MTczODMyNTAyMSwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiN2YxMWYwMGQtYzk2OC00ZjQzLWExNmUtYzkwYjBkZDJjOGQ4IiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiN2YxMWYwMGQtYzk2OC00ZjQzLWExNmUtYzkwYjBkZDJjOGQ4Iiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzM4MzIxNDIxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6Ijg3RkRCMDc2RDMyNjcxQjA3NzgzMjE3QTVGRTRBQTE5Iiwic2lkIjoiQzkxQkMyQUM3MzQyNDkzRkI3NzgwMzg1N0IzRTYyNTgiLCJpYXQiOjE3MzgzMjE0MjEsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.hlNK9s6r1uLy48egBIWYvXW7tpi6svfs04-iNEL1ZiLGtrgqyBYqLJku4pKH66S7WhNDBevEuGY_58FhFIX0iOXE0yCjX6NoSrqUuVQM9wU_m5BCxGspHQOWEZ79v4v4KlFQRN8oxMpM2UJ2zj8g4sgRmYl1dS5E_ulJTiq3L4iCd3GAfsKGCEBwBRh_xgpjI6SiinMkGKVv6i8r4kkc1AKi3rxNyNSajaT9yOpnTnIhBwMRlL9YQsyuTQbADiRAyn6h8n2-H7VhROyvOdm86HSOS8v9f9PhmVWQuzRGqdpgWpvu5XKEXAri12um8krYbE56_Xf9pimguZpTf30fbw"
{
"@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#OpenBookingApprovalFlow"
}
Response status code: 200 OK. Responded in 11.99362ms.
{
"@context": "https://openactive.io/",
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275"
}
GET http://localhost:3000/opportunity/https%3A%2F%2Flocalhost%3A5001%2Fapi%2Fidentifiers%2Ffacility-uses%2F2275%2Findividual-facility-uses%2F1%2Fslots%2F20275?useCacheIfAvailable=true
Response status code: 200 OK. Responded in 1097.035972ms.
{
"state": "updated",
"id": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275",
"modified": "1738322215571",
"data": {
"@context": [
"https://openactive.io/"
],
"@type": "Slot",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275",
"identifier": 20275,
"duration": "PT1H",
"facilityUse": {
"@type": "IndividualFacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1",
"name": "Court 1 on [OPEN BOOKING API TEST INTERFACE] Bookable Facility",
"aggregateFacilityUse": {
"@type": "FacilityUse",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2275",
"identifier": 2275,
"name": "[OPEN BOOKING API TEST INTERFACE] Bookable Facility",
"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/3",
"identifier": 3,
"name": "Stroll & Stretch",
"description": "Casual Calisthenics in the Heart of Commerce. 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 1UU",
"streetAddress": "Norfolk Street"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 51.749826,
"longitude": -1.261492
},
"image": [
{
"@type": "ImageObject",
"url": "https://upload.wikimedia.org/wikipedia/commons/2/28/Westfield_Garden_State_Plaza_-_panoramio.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 000003",
"url": "https://en.wikipedia.org/wiki/Shopping_center"
},
"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": "03627 413550",
"termsOfService": [
{
"@type": "PrivacyPolicy",
"name": "Privacy Policy",
"requiresExplicitConsent": false,
"url": "https://example.com/privacy.html"
}
],
"url": "http://virgil.com"
},
"url": "https://www.example.com/facilities/2275"
}
},
"maximumUses": 10,
"offers": [
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"openBookingFlowRequirement": [
"https://openactive.io/OpenBookingApproval"
],
"price": 14.99,
"priceCurrency": "GBP"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"openBookingFlowRequirement": [
"https://openactive.io/OpenBookingApproval"
],
"price": 14.99,
"priceCurrency": "GBP"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"openBookingFlowRequirement": [
"https://openactive.io/OpenBookingApproval"
],
"price": 14.99,
"priceCurrency": "GBP"
},
{
"@type": "Offer",
"@id": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275#/offers/0",
"acceptedPaymentMethod": [
"http://purl.org/goodrelations/v1#Cash",
"http://purl.org/goodrelations/v1#PaymentMethodCreditCard"
],
"allowCustomerCancellationFullRefund": true,
"openBookingFlowRequirement": [
"https://openactive.io/OpenBookingApproval"
],
"price": 14.99,
"priceCurrency": "GBP"
}
],
"remainingUses": 10,
"startDate": "2025-02-01T11:16:53+00:00",
"endDate": "2025-02-01T12:16:53+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
.amenityFeature
is missing from Place
.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
.name
is missing from Offer
.ageRestriction
is missing from Offer
.PUT https://localhost:5001/api/openbooking/order-quote-templates/b38072e1-c186-4207-882c-da10a227b64d
"application/vnd.openactive.booking+json; version=1"
"Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3MzgzMjE0MjEsImV4cCI6MTczODMyNTAyMSwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiN2YxMWYwMGQtYzk2OC00ZjQzLWExNmUtYzkwYjBkZDJjOGQ4IiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiN2YxMWYwMGQtYzk2OC00ZjQzLWExNmUtYzkwYjBkZDJjOGQ4Iiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzM4MzIxNDIxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6Ijg3RkRCMDc2RDMyNjcxQjA3NzgzMjE3QTVGRTRBQTE5Iiwic2lkIjoiQzkxQkMyQUM3MzQyNDkzRkI3NzgwMzg1N0IzRTYyNTgiLCJpYXQiOjE3MzgzMjE0MjEsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.hlNK9s6r1uLy48egBIWYvXW7tpi6svfs04-iNEL1ZiLGtrgqyBYqLJku4pKH66S7WhNDBevEuGY_58FhFIX0iOXE0yCjX6NoSrqUuVQM9wU_m5BCxGspHQOWEZ79v4v4KlFQRN8oxMpM2UJ2zj8g4sgRmYl1dS5E_ulJTiq3L4iCd3GAfsKGCEBwBRh_xgpjI6SiinMkGKVv6i8r4kkc1AKi3rxNyNSajaT9yOpnTnIhBwMRlL9YQsyuTQbADiRAyn6h8n2-H7VhROyvOdm86HSOS8v9f9PhmVWQuzRGqdpgWpvu5XKEXAri12um8krYbE56_Xf9pimguZpTf30fbw"
{
"@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,
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275"
}
],
"payment": {
"@type": "Payment",
"name": "AcmeBroker Points",
"accountId": "SN1593",
"paymentProviderId": "STRIPE"
}
}
Response status code: 409 Conflict. Responded in 23.162575ms.
{
"@context": "https://openactive.io/",
"@type": "OrderQuote",
"@id": "https://localhost:5001/api/openbooking/order-quotes/b38072e1-c186-4207-882c-da10a227b64d",
"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",
"error": [
{
"@type": "IncompleteOrderItemError",
"name": "There is a missing 'acceptedOffer' or 'orderedItem' property on the 'OrderItem'.",
"statusCode": 409,
"description": "acceptedOffer @id was not provided"
}
],
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275",
"position": 0
}
],
"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
}
}
PUT https://localhost:5001/api/openbooking/order-quotes/b38072e1-c186-4207-882c-da10a227b64d
"application/vnd.openactive.booking+json; version=1"
"Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3MzgzMjE0MjEsImV4cCI6MTczODMyNTAyMSwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiN2YxMWYwMGQtYzk2OC00ZjQzLWExNmUtYzkwYjBkZDJjOGQ4IiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiN2YxMWYwMGQtYzk2OC00ZjQzLWExNmUtYzkwYjBkZDJjOGQ4Iiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzM4MzIxNDIxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6Ijg3RkRCMDc2RDMyNjcxQjA3NzgzMjE3QTVGRTRBQTE5Iiwic2lkIjoiQzkxQkMyQUM3MzQyNDkzRkI3NzgwMzg1N0IzRTYyNTgiLCJpYXQiOjE3MzgzMjE0MjEsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.hlNK9s6r1uLy48egBIWYvXW7tpi6svfs04-iNEL1ZiLGtrgqyBYqLJku4pKH66S7WhNDBevEuGY_58FhFIX0iOXE0yCjX6NoSrqUuVQM9wU_m5BCxGspHQOWEZ79v4v4KlFQRN8oxMpM2UJ2zj8g4sgRmYl1dS5E_ulJTiq3L4iCd3GAfsKGCEBwBRh_xgpjI6SiinMkGKVv6i8r4kkc1AKi3rxNyNSajaT9yOpnTnIhBwMRlL9YQsyuTQbADiRAyn6h8n2-H7VhROyvOdm86HSOS8v9f9PhmVWQuzRGqdpgWpvu5XKEXAri12um8krYbE56_Xf9pimguZpTf30fbw"
{
"@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": "663.945.2013 x307",
"familyName": "Reta",
"identifier": "bcc8783b-82c5-4ec1-a4bd-25988952dad7"
},
"orderedItem": [
{
"@type": "OrderItem",
"position": 0,
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275"
}
],
"payment": {
"@type": "Payment",
"name": "AcmeBroker Points",
"accountId": "SN1593",
"paymentProviderId": "STRIPE"
}
}
Response status code: 409 Conflict. Responded in 24.163824ms.
{
"@context": "https://openactive.io/",
"@type": "OrderQuote",
"@id": "https://localhost:5001/api/openbooking/order-quotes/b38072e1-c186-4207-882c-da10a227b64d",
"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": "bcc8783b-82c5-4ec1-a4bd-25988952dad7",
"email": "[email protected]",
"familyName": "Reta",
"telephone": "663.945.2013 x307"
},
"orderedItem": [
{
"@type": "OrderItem",
"error": [
{
"@type": "IncompleteOrderItemError",
"name": "There is a missing 'acceptedOffer' or 'orderedItem' property on the 'OrderItem'.",
"statusCode": 409,
"description": "acceptedOffer @id was not provided"
}
],
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275",
"position": 0
}
],
"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
}
}
PUT https://localhost:5001/api/openbooking/order-proposals/b38072e1-c186-4207-882c-da10a227b64d
"application/vnd.openactive.booking+json; version=1"
"Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkIwNEY3QjkxREUzQjk0NzhDNjE4MzNGQjI0QUE1Q0RCIiwidHlwIjoiYXQrand0In0.eyJuYmYiOjE3MzgzMjE0MjEsImV4cCI6MTczODMyNTAyMSwiaXNzIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMyIsImF1ZCI6Im9wZW5ib29raW5nIiwiY2xpZW50X2lkIjoiN2YxMWYwMGQtYzk2OC00ZjQzLWExNmUtYzkwYjBkZDJjOGQ4IiwiaHR0cHM6Ly9vcGVuYWN0aXZlLmlvL2NsaWVudElkIjoiN2YxMWYwMGQtYzk2OC00ZjQzLWExNmUtYzkwYjBkZDJjOGQ4Iiwic3ViIjoiMTAwIiwiYXV0aF90aW1lIjoxNzM4MzIxNDIxLCJpZHAiOiJsb2NhbCIsImh0dHBzOi8vb3BlbmFjdGl2ZS5pby9zZWxsZXJJZCI6Imh0dHBzOi8vbG9jYWxob3N0OjUwMDEvYXBpL2lkZW50aWZpZXJzL3NlbGxlcnMvMSIsImp0aSI6Ijg3RkRCMDc2RDMyNjcxQjA3NzgzMjE3QTVGRTRBQTE5Iiwic2lkIjoiQzkxQkMyQUM3MzQyNDkzRkI3NzgwMzg1N0IzRTYyNTgiLCJpYXQiOjE3MzgzMjE0MjEsInNjb3BlIjpbIm9wZW5pZCIsIm9wZW5hY3RpdmUtb3BlbmJvb2tpbmciLCJvcGVuYWN0aXZlLWlkZW50aXR5Iiwib2ZmbGluZV9hY2Nlc3MiXSwiYW1yIjpbInB3ZCJdfQ.hlNK9s6r1uLy48egBIWYvXW7tpi6svfs04-iNEL1ZiLGtrgqyBYqLJku4pKH66S7WhNDBevEuGY_58FhFIX0iOXE0yCjX6NoSrqUuVQM9wU_m5BCxGspHQOWEZ79v4v4KlFQRN8oxMpM2UJ2zj8g4sgRmYl1dS5E_ulJTiq3L4iCd3GAfsKGCEBwBRh_xgpjI6SiinMkGKVv6i8r4kkc1AKi3rxNyNSajaT9yOpnTnIhBwMRlL9YQsyuTQbADiRAyn6h8n2-H7VhROyvOdm86HSOS8v9f9PhmVWQuzRGqdpgWpvu5XKEXAri12um8krYbE56_Xf9pimguZpTf30fbw"
{
"@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": "663.945.2013 x307",
"familyName": "Reta",
"identifier": "bcc8783b-82c5-4ec1-a4bd-25988952dad7"
},
"orderedItem": [
{
"@type": "OrderItem",
"position": 0,
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275"
}
],
"totalPaymentDue": {
"@type": "PriceSpecification",
"price": 0,
"priceCurrency": "GBP"
}
}
Response status code: 409 Conflict. Responded in 11.905415ms.
{
"@context": "https://openactive.io/",
"@type": "OrderProposal",
"@id": "https://localhost:5001/api/openbooking/order-proposals/b38072e1-c186-4207-882c-da10a227b64d",
"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": "bcc8783b-82c5-4ec1-a4bd-25988952dad7",
"email": "[email protected]",
"familyName": "Reta",
"telephone": "663.945.2013 x307"
},
"orderedItem": [
{
"@type": "OrderItem",
"error": [
{
"@type": "IncompleteOrderItemError",
"name": "There is a missing 'acceptedOffer' or 'orderedItem' property on the 'OrderItem'.",
"statusCode": 409,
"description": "acceptedOffer @id was not provided"
}
],
"orderedItem": "https://localhost:5001/api/identifiers/facility-uses/2275/individual-facility-uses/1/slots/20275",
"position": 0
}
],
"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
}
}