{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Crave Cloud Documentation","description":"Developer documentation for Crave Cloud, Crave.js, Storefront APIs, and restaurant franchise integrations.","colors":{"primary":"#133B2F","light":"#1F5A49","dark":"#0B1F19"},"logo":{"light":"https://mintcdn.com/craveup-1493c4c7/P4icpH7dO6tjC3GV/logo/crave-wordmark.png?fit=max\u0026auto=format\u0026n=P4icpH7dO6tjC3GV\u0026q=85\u0026s=c6965caeaa3bfbd9e84cf5416bbf2576","dark":"https://mintcdn.com/craveup-1493c4c7/P4icpH7dO6tjC3GV/logo/crave-wordmark-dark.svg?fit=max\u0026auto=format\u0026n=P4icpH7dO6tjC3GV\u0026q=85\u0026s=d379668f5b2407f7092bbc4603c403bc","href":"https://developer.craveup.com"},"favicon":"https://mintcdn.com/craveup-1493c4c7/Nv2UkyJdWuAjqtql/favicon.svg?fit=max\u0026auto=format\u0026n=Nv2UkyJdWuAjqtql\u0026q=85\u0026s=7a4dc1dfa23901b208e854d9b64f0448","navbar":{"links":[{"href":"mailto:hello@craveup.com","label":"Support"},{"icon":"slack","href":"https://join.slack.com/t/cravejscommunity/shared_invite/zt-3hfr081io-aYuLC3n6gBFKQuho0HrTng","label":""}],"primary":{"type":"button","label":"Developer Console","href":"https://developer.craveup.com/console"}},"footer":{"socials":{"github":"https://github.com/crave-up","linkedin":"https://www.linkedin.com/company/craveup","x":"https://twitter.com/craveupcom"}},"search":{},"seo":{"metatags":{"canonical":"https://docs.craveup.com"}},"icons":{"library":"lucide"},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode",{"title":"Open in T3 Chat","description":"Open this page in T3 Chat","icon":"message-circle","href":"https://t3.chat/new?q=Read+this+documentation+page+and+help+me+implement+it:+$page"},{"title":"Open in Zed","description":"Open this page in Zed","icon":"terminal","href":"zed://docs?url=$page"}],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"craveup-1493c4c7","hasAudioNarration":false,"actualSubdomain":"craveup-1493c4c7","customDomains":["docs.craveup.com"],"gitSource":{"type":"github","owner":"craveup","repo":"craveup-turborepo","deployBranch":"main","contentDirectory":"apps/api-docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae427cf5917815ea7f4c717","collectionId":"d8545f6b-d64e-4d42-a6dc-f7ad2e3e4729","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae427cf5917815ea7f4c717"},"entitlements":{},"buildId":"6ae42ed740afc677620a1b02","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"default","tag":"API Reference","count":113},{"language":"default","tag":"API Endpoints","count":88},{"language":"default","tag":"Documentation","count":37},{"language":"default","tag":"Components","count":26},{"language":"default","tag":"Checkout","count":16},{"language":"default","tag":"Carts","count":15},{"language":"default","tag":"Catering","count":13},{"language":"default","tag":"Customers","count":12},{"language":"default","tag":"Staff Menu Manager authoring","count":8},{"language":"default","tag":"Loyalty","count":8}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":"#navbar a[aria-label=\"Join the Crave Slack community\"]{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;overflow:hidden;white-space:nowrap;gap:0}#navbar a[aria-label=\"Join the Crave Slack community\"] svg{width:1.125rem;height:1.125rem}.preview-device{width:100%}.preview-device-toggle{display:inline-flex;gap:.25rem;margin-bottom:.75rem;padding:.25rem;border:1px solid #d8ded9;border-radius:6px;background:#fff}.preview-device-toggle button{min-width:5.5rem;min-height:2rem;padding:.375rem .75rem;border:0;border-radius:4px;color:inherit;background:0 0;cursor:pointer}.preview-device-toggle button.is-active{color:#fff;background:#133b2f}.preview-device-stage{width:100%;overflow:hidden;border:1px solid var(--border-color);border-radius:6px;background:#f6f1e9}.preview-device-stage.is-mobile{max-width:430px;margin-inline:auto}.preview-device-stage.is-mobile.is-local-mobile{position:relative;aspect-ratio:var(--preview-mobile-ratio, 430 / 560);container-type:inline-size}.preview-device-stage iframe{display:block;width:100%;border:0}.preview-device-stage.is-mobile.is-local-mobile iframe{position:absolute;inset:0;width:430px;height:var(--preview-mobile-height, 560px);transform:scale(calc(100cqw/430));transform-origin:top left}"}],"page":{"pagePath":"api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version","slug":"/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version","pageMetadata":{"title":"Explicitly accept or decline the exact proposed catering version","description":null,"deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/catering/events/{eventId}/amendments/decision","href":"/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version","autogeneratedByOpenApi":true},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Explicitly accept or decline the exact proposed catering version","description":null,"deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/catering/events/{eventId}/amendments/decision","href":"/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"decideCateringAmendment","summary":"Explicitly accept or decline the exact proposed catering version","tags":["Catering"],"security":["3633cbdf-6f77-4b59-9e92-fa2a8d02259e"],"parameters":["9d27ec03-6bdc-404f-9520-9622adfb445a","8fbef5f1-ec1b-44a5-b587-7c52f046b12d","bd3870f6-0d03-4e30-adb6-3fd956fdf8c4"],"responses":{"200":"126a1860-ea0c-48ff-ae40-9e48920aa76f","400":"224ae66a-2545-453c-9298-47b6c3236825","401":"6955f2c2-5976-4c51-b101-377917762b4f","403":"9fa657f2-ed88-414d-9d6f-46c7e876818d","404":"644f5dcc-bbc3-4854-abbf-b4968f3581dc","409":"bd6da521-557a-4a40-a927-7161e8dba31e","429":"b70a2e56-0dc9-4a02-9871-f0fda4bdba78","500":"2aa5f07d-df8e-4caa-98f9-a604833dca71","503":"30e307ec-e659-401d-82a0-05788e21bfa4"},"x-crave-security-profile":"catering","x-crave-idempotency":{"required":true,"header":"Idempotency-Key"},"x-crave-revision":{"required":false,"resource":null,"header":"If-Match","preconditionStatus":null},"requestBody":"67983cea-cd43-4d7a-8aa0-2b523cecab07","method":"post","type":"path","servers":["f2c8b1fd-8244-4cbb-8817-e5dabe3abd85","72f5ebd2-aa84-4ab7-8f46-bd3af3b8476d"],"path":"/locations/{locationId}/catering/events/{eventId}/amendments/decision","baseUrlOptions":["https://api.craveup.com/api/v1/storefront","https://sandbox-api.craveup.com/api/v1/storefront"],"title":"Explicitly accept or decline the exact proposed catering version","description":"","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"9d27ec03-6bdc-404f-9520-9622adfb445a":{"name":"locationId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":128,"isRequired":true,"uniqueKey":"","typeLabel":"string"}},"8fbef5f1-ec1b-44a5-b587-7c52f046b12d":{"name":"eventId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":128,"isRequired":true,"uniqueKey":"","typeLabel":"string"}},"bd3870f6-0d03-4e30-adb6-3fd956fdf8c4":{"name":"Idempotency-Key","in":"header","required":true,"description":"Caller-stable key reused only for retries of this exact request.","schema":{"type":"string","minLength":16,"maxLength":128,"pattern":"^[A-Za-z0-9._:-]{16,128}$","isRequired":true,"description":"Caller-stable key reused only for retries of this exact request.","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"proposalId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposalId","typeLabel":"string\u003cuuid>"},"version":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991,"isRequired":true,"uniqueKey":"version","typeLabel":"integer"},"revision":{"type":"integer","minimum":0,"maximum":9007199254740991,"isRequired":true,"uniqueKey":"revision","typeLabel":"integer"},"offerFingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$","isRequired":true,"uniqueKey":"offerFingerprint","typeLabel":"string"},"decision":{"type":"string","enum":["accepted","declined"],"isRequired":true,"uniqueKey":"decision","typeLabel":"enum\u003cstring>"}},"required":["proposalId","version","revision","offerFingerprint","decision"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"proposalId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","version":4503599627370495,"revision":4503599627370495,"offerFingerprint":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"126a1860-ea0c-48ff-ae40-9e48920aa76f":{"description":"The permanent decision; no automatic charge or refund.","content":{"application/json":{"schema":{"type":"object","properties":{"proposals":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"originalQuoteId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].originalQuoteId","typeLabel":"string\u003cuuid>"},"revision":{"type":"integer","minimum":0,"maximum":9007199254740991,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].revision","typeLabel":"integer"},"version":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].version","typeLabel":"integer"},"offerFingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offerFingerprint","typeLabel":"string"},"currency":{"type":"string","pattern":"^[A-Z]{3}$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].currency","typeLabel":"string"},"offer":{"oneOf":[{"type":"object","properties":{"originalQuoteId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.originalQuoteId","typeLabel":"string\u003cuuid>"},"eventSnapshot":{"type":"object","properties":{"eventDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.eventDate","typeLabel":"string"},"serviceTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.serviceTime","typeLabel":"string"},"headcount":{"type":"object","properties":{"guests":{"type":"integer","minimum":1,"maximum":10000,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.headcount.guests","typeLabel":"integer"},"approximate":{"type":"boolean","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.headcount.approximate","typeLabel":"boolean"}},"required":["guests","approximate"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.headcount","typeLabel":"object"},"serviceStyle":{"type":"string","enum":["pickup","drop_off","drop_off_with_setup"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.serviceStyle","typeLabel":"enum\u003cstring>"},"serviceAddress":{"oneOf":[{"type":"string","minLength":1,"maxLength":800,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.serviceAddress.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"maxLength":800,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.serviceAddress.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.serviceAddress","typeLabel":"string | null"},"deliveryAddress":{"oneOf":[{"type":"object","properties":{"street":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.deliveryAddress.oneOf.0.street","typeLabel":"string"},"city":{"type":"string","minLength":1,"maxLength":120,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.deliveryAddress.oneOf.0.city","typeLabel":"string"},"state":{"type":"string","minLength":1,"maxLength":120,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.deliveryAddress.oneOf.0.state","typeLabel":"string"},"zipCode":{"type":"string","minLength":1,"maxLength":20,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.deliveryAddress.oneOf.0.zipCode","typeLabel":"string"},"country":{"type":"string","enum":["United States","United Arab Emirates","Australia","United Kingdom"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.deliveryAddress.oneOf.0.country","typeLabel":"enum\u003cstring>"},"streetOptional":{"default":"","type":"string","maxLength":200,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.deliveryAddress.oneOf.0.streetOptional","typeLabel":"string"}},"required":["street","city","state","zipCode","country"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.deliveryAddress.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"street":{"type":"string","minLength":1,"maxLength":200},"streetOptional":{"default":"","type":"string","maxLength":200},"city":{"type":"string","minLength":1,"maxLength":120},"state":{"type":"string","minLength":1,"maxLength":120},"zipCode":{"type":"string","minLength":1,"maxLength":20},"country":{"type":"string","enum":["United States","United Arab Emirates","Australia","United Kingdom"]}},"required":["street","city","state","zipCode","country"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.deliveryAddress.oneOf.1","typeLabel":"null"}],"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot.deliveryAddress","typeLabel":"object | null"}},"required":["eventDate","serviceTime","headcount","serviceStyle","serviceAddress"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.eventSnapshot","typeLabel":"object"},"lines":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"source":{"oneOf":[{"type":"object","properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].source.oneOf.0.menuId","typeLabel":"string\u003cuuid>"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].source.oneOf.0.locationId","typeLabel":"string\u003cuuid>"},"channel":{"type":"string","enum":["catering"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].source.oneOf.0.channel","typeLabel":"enum\u003cstring>"},"kind":{"type":"string","enum":["released"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].source.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].source.oneOf.0.menuReleaseId","typeLabel":"string\u003cuuid>"}},"required":["menuId","locationId","channel","kind","menuReleaseId"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].source.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["catering"]},"kind":{"type":"string","enum":["released"]},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["menuId","locationId","channel","kind","menuReleaseId"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].source.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].source","typeLabel":"object | null"},"kind":{"type":"string","enum":["menu","one_off"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"lineId":{"type":"string","minLength":1,"maxLength":255,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].lineId","typeLabel":"string"},"productId":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].productId.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].productId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].productId","typeLabel":"string | null"},"name":{"type":"string","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].name","typeLabel":"string"},"unitPrice":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].unitPrice","typeLabel":"string"},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].quantity","typeLabel":"string"},"unit":{"type":"string","enum":["person","item","dozen","tray","pack","lb","oz","kg","g","gallon","quart","liter","ml","fl_oz"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].unit","typeLabel":"enum\u003cstring>"},"note":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].note.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].note.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].note","typeLabel":"string | null"},"lineTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].lineTotal","typeLabel":"string"},"minimumSpendEligibility":{"type":"string","enum":["food_beverage","excluded","unreviewed"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].minimumSpendEligibility","typeLabel":"enum\u003cstring>"},"configuration":{"oneOf":[{"type":"object","properties":{"source":{"type":"object","properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.source.menuId","typeLabel":"string\u003cuuid>"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.source.locationId","typeLabel":"string\u003cuuid>"},"channel":{"type":"string","enum":["catering"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.source.channel","typeLabel":"enum\u003cstring>"},"kind":{"type":"string","enum":["released"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.source.kind","typeLabel":"enum\u003cstring>"},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.source.menuReleaseId","typeLabel":"string\u003cuuid>"}},"required":["menuId","locationId","channel","kind","menuReleaseId"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.source","typeLabel":"object"},"lineId":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.lineId","typeLabel":"string"},"productId":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.productId","typeLabel":"string"},"selections":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":128,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.selections.items.[INDEX].groupId","typeLabel":"string"},"selectedOptions":{"minItems":0,"maxItems":50,"type":"array","items":{"type":"object","properties":{"optionId":{"type":"string","minLength":1,"maxLength":128,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.selections.items.[INDEX].selectedOptions.items.[INDEX].optionId","typeLabel":"string"},"quantity":{"type":"integer","minimum":1,"maximum":99,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.selections.items.[INDEX].selectedOptions.items.[INDEX].quantity","typeLabel":"integer"},"children":{"maxItems":20,"type":"array","items":{"$circularRef":"aadd59d0-9290-47a0-80b0-019fd035dc32"},"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.selections.items.[INDEX].selectedOptions.items.[INDEX].children","typeLabel":"array"}},"required":["optionId","quantity"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.selections.items.[INDEX].selectedOptions.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.selections.items.[INDEX].selectedOptions","typeLabel":"object[]"}},"required":["groupId","selectedOptions"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.selections.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.selections","typeLabel":"object[]"},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.quantity","typeLabel":"string"},"allocation":{"oneOf":[{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.allocation.oneOf.0.groupId","typeLabel":"string"},"guests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.allocation.oneOf.0.guests","typeLabel":"integer"}},"required":["groupId","guests"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.allocation.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"groupId":{"type":"string","minLength":1,"maxLength":200},"guests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000}},"required":["groupId","guests"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.allocation.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.allocation","typeLabel":"object | null"},"requestedQuantity":{"oneOf":[{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.requestedQuantity.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.requestedQuantity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.requestedQuantity","typeLabel":"string | null"},"acceptedSelections":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":128,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections.items.[INDEX].groupId","typeLabel":"string"},"selectedOptions":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"optionId":{"type":"string","minLength":1,"maxLength":128,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections.items.[INDEX].selectedOptions.items.[INDEX].optionId","typeLabel":"string"},"quantity":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":99,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections.items.[INDEX].selectedOptions.items.[INDEX].quantity","typeLabel":"integer"},"selectionPath":{"minItems":3,"maxItems":41,"type":"array","items":{"type":"string","minLength":1,"maxLength":128,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections.items.[INDEX].selectedOptions.items.[INDEX].selectionPath.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections.items.[INDEX].selectedOptions.items.[INDEX].selectionPath","typeLabel":"string[]"},"provenance":{"type":"string","enum":["customer","default","fixed"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections.items.[INDEX].selectedOptions.items.[INDEX].provenance","typeLabel":"enum\u003cstring>"},"children":{"maxItems":50,"type":"array","items":{"$circularRef":"92d87812-0170-484a-b2da-4c889d4d8651"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections.items.[INDEX].selectedOptions.items.[INDEX].children","typeLabel":"array"}},"required":["optionId","quantity","selectionPath","provenance","children"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections.items.[INDEX].selectedOptions.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections.items.[INDEX].selectedOptions","typeLabel":"object[]"}},"required":["groupId","selectedOptions"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.acceptedSelections","typeLabel":"object[]"},"priceBasis":{"type":"string","enum":["per_person","per_item","per_dozen","per_tray","per_pack","per_lb","per_oz","per_kg","per_g","per_gallon","per_quart","per_liter","per_ml","per_fl_oz"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.priceBasis","typeLabel":"enum\u003cstring>"},"unit":{"type":"string","enum":["person","item","dozen","tray","pack","lb","oz","kg","g","gallon","quart","liter","ml","fl_oz"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.unit","typeLabel":"enum\u003cstring>"},"planningYield":{"oneOf":[{"type":"object","required":["guests","quantity","reviewNote"],"properties":{"guests":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.planningYield.oneOf.0.guests","typeLabel":"string"},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.planningYield.oneOf.0.quantity","typeLabel":"string"},"reviewNote":{"type":"string","minLength":1,"maxLength":2000,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.planningYield.oneOf.0.reviewNote","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.planningYield.oneOf.0","typeLabel":"object"},{"type":"string","enum":[null],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.planningYield.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","enum":[null],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.planningYield.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.planningYield","typeLabel":"object | enum\u003cstring> | null"},"unitPrice":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.unitPrice.minCents","typeLabel":"integer"},"maxCents":{"type":"integer","minimum":0,"maximum":99999999,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.unitPrice.maxCents","typeLabel":"integer"}},"required":["minCents","maxCents"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.unitPrice","typeLabel":"object"},"lineTotal":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.lineTotal.minCents","typeLabel":"integer"},"maxCents":{"type":"integer","minimum":0,"maximum":99999999,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.lineTotal.maxCents","typeLabel":"integer"}},"required":["minCents","maxCents"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.lineTotal","typeLabel":"object"},"charges":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"chargeId":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].chargeId","typeLabel":"string"},"scope":{"type":"string","enum":["sold_unit","affected_person","order"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].scope","typeLabel":"enum\u003cstring>"},"bucketId":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].bucketId","typeLabel":"string"},"selectionPath":{"maxItems":41,"type":"array","items":{"type":"string","minLength":1,"maxLength":200,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].selectionPath.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].selectionPath","typeLabel":"string[]"},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,5})(?:\\.\\d{1,6})?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].quantity","typeLabel":"string"},"unitPrice":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].unitPrice.minCents","typeLabel":"integer"},"maxCents":{"type":"integer","minimum":0,"maximum":99999999,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].unitPrice.maxCents","typeLabel":"integer"}},"required":["minCents","maxCents"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].unitPrice","typeLabel":"object"},"lineTotal":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].lineTotal.minCents","typeLabel":"integer"},"maxCents":{"type":"integer","minimum":0,"maximum":99999999,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].lineTotal.maxCents","typeLabel":"integer"}},"required":["minCents","maxCents"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].lineTotal","typeLabel":"object"},"minimumSpendEligibility":{"type":"string","enum":["food_beverage","excluded","unreviewed"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].minimumSpendEligibility","typeLabel":"enum\u003cstring>"},"coveredByBucket":{"type":"boolean","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX].coveredByBucket","typeLabel":"boolean"}},"required":["chargeId","scope","bucketId","selectionPath","quantity","unitPrice","lineTotal","minimumSpendEligibility","coveredByBucket"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.charges","typeLabel":"object[]"},"effectiveRules":{"type":"object","properties":{"values":{"type":"object","properties":{"minimumGuests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.values.minimumGuests","typeLabel":"integer"},"maximumGuests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.values.maximumGuests","typeLabel":"integer"},"minimumUnits":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$","uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.values.minimumUnits","typeLabel":"string"},"maximumUnits":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$","uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.values.maximumUnits","typeLabel":"string"},"minimumSpend":{"type":"object","properties":{"amountCents":{"type":"integer","minimum":0,"maximum":99999999,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.values.minimumSpend.amountCents","typeLabel":"integer"},"basis":{"type":"string","enum":["eligible_food_beverage_before_discounts"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.values.minimumSpend.basis","typeLabel":"enum\u003cstring>"}},"required":["amountCents","basis"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.values.minimumSpend","typeLabel":"object"},"leadTimeHours":{"type":"integer","minimum":0,"maximum":8760,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.values.leadTimeHours","typeLabel":"integer"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.values","typeLabel":"object"},"sources":{"type":"object","additionalProperties":{"type":"object","properties":{"scope":{"type":"string","enum":["location","menu","category","product"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.sources.additionalProperties.scope","typeLabel":"enum\u003cstring>"},"entityId":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.sources.additionalProperties.entityId","typeLabel":"string"},"serviceStyle":{"oneOf":[{"type":"string","enum":["pickup","drop_off","drop_off_with_setup"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.sources.additionalProperties.serviceStyle.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["pickup","drop_off","drop_off_with_setup"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.sources.additionalProperties.serviceStyle.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.sources.additionalProperties.serviceStyle","typeLabel":"enum\u003cstring> | null"}},"required":["scope","entityId","serviceStyle"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.sources.additionalProperties","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules.sources","typeLabel":"object"}},"required":["values","sources"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.effectiveRules","typeLabel":"object"},"food":{"type":"object","properties":{"source":{"oneOf":[{"type":"object","required":["menuId","locationId","channel","kind","menuReleaseId"],"properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.0.menuId","typeLabel":"string\u003cuuid>"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.0.locationId","typeLabel":"string\u003cuuid>"},"channel":{"type":"string","enum":["online","catering"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.0.channel","typeLabel":"enum\u003cstring>"},"kind":{"type":"string","enum":["released"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.0.menuReleaseId","typeLabel":"string\u003cuuid>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.0","typeLabel":"object"},{"type":"object","required":["menuId","locationId","channel","kind","draftRevision"],"properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.1.menuId","typeLabel":"string\u003cuuid>"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.1.locationId","typeLabel":"string\u003cuuid>"},"channel":{"type":"string","enum":["online","catering"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.1.channel","typeLabel":"enum\u003cstring>"},"kind":{"type":"string","enum":["draft"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"draftRevision":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.1.draftRevision","typeLabel":"integer"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source.oneOf.1","typeLabel":"object"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.source","typeLabel":"object"},"contributions":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].entityId","typeLabel":"string\u003cuuid>"},"selectionPath":{"maxItems":80,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].selectionPath.items.[INDEX]","typeLabel":"string\u003cuuid>"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].selectionPath","typeLabel":"string\u003cuuid>[]"},"fraction":{"type":"object","properties":{"numerator":{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].fraction.numerator","typeLabel":"number"},"denominator":{"type":"number","minimum":0,"exclusiveMinimum":true,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].fraction.denominator","typeLabel":"number"}},"required":["numerator","denominator"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].fraction","typeLabel":"object"},"provenance":{"oneOf":[{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["entered"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.0.kind","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.0","typeLabel":"object"},{"type":"object","required":["kind","provider","revision"],"properties":{"kind":{"type":"string","enum":["provider"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.1.kind","typeLabel":"enum\u003cstring>"},"provider":{"type":"string","enum":["square","clover","toast"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.1.provider","typeLabel":"enum\u003cstring>"},"revision":{"type":"string","minLength":1,"maxLength":128,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.1.revision","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.1","typeLabel":"object"},{"type":"object","required":["kind","servingsYield","components"],"properties":{"kind":{"type":"string","enum":["recipe"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.2.kind","typeLabel":"enum\u003cstring>"},"servingsYield":{"type":"number","minimum":0,"exclusiveMinimum":true,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.2.servingsYield","typeLabel":"number"},"components":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.2.components.items.[INDEX].entityId","typeLabel":"string\u003cuuid>"},"fraction":{"type":"object","properties":{"numerator":{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.2.components.items.[INDEX].fraction.numerator","typeLabel":"number"},"denominator":{"type":"number","minimum":0,"exclusiveMinimum":true,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.2.components.items.[INDEX].fraction.denominator","typeLabel":"number"}},"required":["numerator","denominator"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.2.components.items.[INDEX].fraction","typeLabel":"object"}},"required":["entityId","fraction"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.2.components.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.2.components","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.2","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance.oneOf.3","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].provenance","typeLabel":"object · object · object · null"},"nutrients":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.caloriesKcal.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.caloriesKcal.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.caloriesKcal","typeLabel":"number | null"},"proteinGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.proteinGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.proteinGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.proteinGrams","typeLabel":"number | null"},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.carbohydrateGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.carbohydrateGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.carbohydrateGrams","typeLabel":"number | null"},"fatGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.fatGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.fatGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.fatGrams","typeLabel":"number | null"},"fiberGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.fiberGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.fiberGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.fiberGrams","typeLabel":"number | null"},"sugarGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.sugarGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.sugarGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.sugarGrams","typeLabel":"number | null"},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.saturatedFatGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.saturatedFatGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.saturatedFatGrams","typeLabel":"number | null"},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.sodiumMilligrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.sodiumMilligrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients.sodiumMilligrams","typeLabel":"number | null"}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX].nutrients","typeLabel":"object"}},"required":["entityId","selectionPath","fraction","provenance","nutrients"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.contributions","typeLabel":"object[]"},"serving":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":255,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.serving.label","typeLabel":"string"},"grams":{"oneOf":[{"type":"number","minimum":0,"exclusiveMinimum":true,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.serving.grams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"exclusiveMinimum":true,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.serving.grams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.serving.grams","typeLabel":"number | null"}},"required":["label","grams"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.serving","typeLabel":"object"},"quantity":{"type":"object","properties":{"unit":{"type":"string","enum":["serving","person","item","dozen","tray","pack","lb","oz","kg","g","gallon","quart","liter","ml","fl_oz"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.quantity.unit","typeLabel":"enum\u003cstring>"},"count":{"type":"number","minimum":0,"exclusiveMinimum":true,"maximum":10000,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.quantity.count","typeLabel":"number"}},"required":["unit","count"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.quantity","typeLabel":"object"},"trayYield":{"oneOf":[{"type":"object","properties":{"servingsPerTray":{"type":"number","minimum":0,"exclusiveMinimum":true,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.trayYield.oneOf.0.servingsPerTray","typeLabel":"number"}},"required":["servingsPerTray"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.trayYield.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"servingsPerTray":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["servingsPerTray"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.trayYield.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.trayYield","typeLabel":"object | null"},"perServing":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.caloriesKcal.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.caloriesKcal.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.caloriesKcal","typeLabel":"number | null"},"proteinGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.proteinGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.proteinGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.proteinGrams","typeLabel":"number | null"},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.carbohydrateGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.carbohydrateGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.carbohydrateGrams","typeLabel":"number | null"},"fatGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.fatGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.fatGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.fatGrams","typeLabel":"number | null"},"fiberGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.fiberGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.fiberGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.fiberGrams","typeLabel":"number | null"},"sugarGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.sugarGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.sugarGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.sugarGrams","typeLabel":"number | null"},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.saturatedFatGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.saturatedFatGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.saturatedFatGrams","typeLabel":"number | null"},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.sodiumMilligrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.sodiumMilligrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing.sodiumMilligrams","typeLabel":"number | null"}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perServing","typeLabel":"object"},"perTray":{"oneOf":[{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.caloriesKcal.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.caloriesKcal.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.caloriesKcal","typeLabel":"number | null"},"proteinGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.proteinGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.proteinGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.proteinGrams","typeLabel":"number | null"},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.carbohydrateGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.carbohydrateGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.carbohydrateGrams","typeLabel":"number | null"},"fatGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.fatGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.fatGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.fatGrams","typeLabel":"number | null"},"fiberGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.fiberGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.fiberGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.fiberGrams","typeLabel":"number | null"},"sugarGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.sugarGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.sugarGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.sugarGrams","typeLabel":"number | null"},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.saturatedFatGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.saturatedFatGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.saturatedFatGrams","typeLabel":"number | null"},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.sodiumMilligrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.sodiumMilligrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0.sodiumMilligrams","typeLabel":"number | null"}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.perTray","typeLabel":"object | null"},"lineTotal":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.caloriesKcal.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.caloriesKcal.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.caloriesKcal","typeLabel":"number | null"},"proteinGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.proteinGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.proteinGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.proteinGrams","typeLabel":"number | null"},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.carbohydrateGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.carbohydrateGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.carbohydrateGrams","typeLabel":"number | null"},"fatGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.fatGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.fatGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.fatGrams","typeLabel":"number | null"},"fiberGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.fiberGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.fiberGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.fiberGrams","typeLabel":"number | null"},"sugarGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.sugarGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.sugarGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.sugarGrams","typeLabel":"number | null"},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.saturatedFatGrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.saturatedFatGrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.saturatedFatGrams","typeLabel":"number | null"},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.sodiumMilligrams.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.sodiumMilligrams.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal.sodiumMilligrams","typeLabel":"number | null"}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.lineTotal","typeLabel":"object"},"completeness":{"type":"string","enum":["complete","partial","unknown"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.completeness","typeLabel":"enum\u003cstring>"},"missing":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.missing.items.[INDEX].entityId","typeLabel":"string\u003cuuid>"},"nutrient":{"type":"string","enum":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.missing.items.[INDEX].nutrient","typeLabel":"enum\u003cstring>"}},"required":["entityId","nutrient"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.missing.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.missing","typeLabel":"object[]"},"warnings":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"code":{"type":"string","enum":["DIETARY_CONFLICT","ALLERGEN_PRESENT","ALLERGEN_POSSIBLE","DIETARY_INFORMATION_UNKNOWN"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.warnings.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.warnings.items.[INDEX].entityId","typeLabel":"string\u003cuuid>"},"preferenceId":{"oneOf":[{"type":"string","enum":["vegetarian","vegan"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.warnings.items.[INDEX].preferenceId.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","enum":["milk","egg","fish","crustacean_shellfish","tree_nuts","peanut","wheat","soy","sesame","celery","mustard","lupin","molluscs","sulphites"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.warnings.items.[INDEX].preferenceId.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.warnings.items.[INDEX].preferenceId","typeLabel":"enum\u003cstring>"},"selectionPath":{"maxItems":80,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.warnings.items.[INDEX].selectionPath.items.[INDEX]","typeLabel":"string\u003cuuid>"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.warnings.items.[INDEX].selectionPath","typeLabel":"string\u003cuuid>[]"}},"required":["code","entityId","preferenceId","selectionPath"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.warnings.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food.warnings","typeLabel":"object[]"}},"required":["source","contributions","serving","quantity","trayYield","perServing","perTray","lineTotal","completeness","missing","warnings"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.food","typeLabel":"object"},"explanation":{"type":"string","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.explanation","typeLabel":"string"},"dietaryPreferences":{"type":"object","required":["preferences","avoidAllergenIds"],"properties":{"preferences":{"maxItems":2,"type":"array","items":{"type":"string","enum":["vegetarian","vegan"],"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.dietaryPreferences.preferences.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.dietaryPreferences.preferences","typeLabel":"enum\u003cstring>[]"},"avoidAllergenIds":{"maxItems":14,"type":"array","items":{"type":"string","enum":["milk","egg","fish","crustacean_shellfish","tree_nuts","peanut","wheat","soy","sesame","celery","mustard","lupin","molluscs","sulphites"],"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.dietaryPreferences.avoidAllergenIds.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.dietaryPreferences.avoidAllergenIds","typeLabel":"enum\u003cstring>[]"}},"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0.dietaryPreferences","typeLabel":"object"}},"required":["source","lineId","productId","selections","quantity","allocation","requestedQuantity","acceptedSelections","priceBasis","unit","planningYield","unitPrice","lineTotal","charges","effectiveRules","food","explanation"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"source":{"type":"object","properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["catering"]},"kind":{"type":"string","enum":["released"]},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["menuId","locationId","channel","kind","menuReleaseId"],"additionalProperties":false},"lineId":{"type":"string","minLength":1,"maxLength":200},"productId":{"type":"string","minLength":1,"maxLength":200},"selections":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":128},"selectedOptions":{"minItems":0,"maxItems":50,"type":"array","items":{"type":"object","properties":{"optionId":{"type":"string","minLength":1,"maxLength":128},"quantity":{"type":"integer","minimum":1,"maximum":99},"children":{"maxItems":20,"type":"array","items":{"$circularRef":"aadd59d0-9290-47a0-80b0-019fd035dc32"}}},"required":["optionId","quantity"],"additionalProperties":false}}},"required":["groupId","selectedOptions"],"additionalProperties":false}},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"allocation":{"oneOf":[{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":200},"guests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000}},"required":["groupId","guests"],"additionalProperties":false},{"type":"null","properties":{"groupId":{"type":"string","minLength":1,"maxLength":200},"guests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000}},"required":["groupId","guests"],"additionalProperties":false}]},"dietaryPreferences":{"type":"object","required":["preferences","avoidAllergenIds"],"properties":{"preferences":{"maxItems":2,"type":"array","items":{"type":"string","enum":["vegetarian","vegan"]}},"avoidAllergenIds":{"maxItems":14,"type":"array","items":{"type":"string","enum":["milk","egg","fish","crustacean_shellfish","tree_nuts","peanut","wheat","soy","sesame","celery","mustard","lupin","molluscs","sulphites"]}}},"additionalProperties":false},"requestedQuantity":{"oneOf":[{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},{"type":"null","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"}]},"acceptedSelections":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":128},"selectedOptions":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"optionId":{"type":"string","minLength":1,"maxLength":128},"quantity":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":99},"selectionPath":{"minItems":3,"maxItems":41,"type":"array","items":{"type":"string","minLength":1,"maxLength":128}},"provenance":{"type":"string","enum":["customer","default","fixed"]},"children":{"maxItems":50,"type":"array","items":{"$circularRef":"92d87812-0170-484a-b2da-4c889d4d8651"}}},"required":["optionId","quantity","selectionPath","provenance","children"],"additionalProperties":false}}},"required":["groupId","selectedOptions"],"additionalProperties":false}},"priceBasis":{"type":"string","enum":["per_person","per_item","per_dozen","per_tray","per_pack","per_lb","per_oz","per_kg","per_g","per_gallon","per_quart","per_liter","per_ml","per_fl_oz"]},"unit":{"type":"string","enum":["person","item","dozen","tray","pack","lb","oz","kg","g","gallon","quart","liter","ml","fl_oz"]},"planningYield":{"oneOf":[{"type":"object","required":["guests","quantity","reviewNote"],"properties":{"guests":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"reviewNote":{"type":"string","minLength":1,"maxLength":2000}},"additionalProperties":false},{"type":"string","enum":[null]},{"type":"null","enum":[null]}]},"unitPrice":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"lineTotal":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"charges":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"chargeId":{"type":"string","minLength":1,"maxLength":200},"scope":{"type":"string","enum":["sold_unit","affected_person","order"]},"bucketId":{"type":"string","minLength":1,"maxLength":200},"selectionPath":{"maxItems":41,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,5})(?:\\.\\d{1,6})?$"},"unitPrice":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"lineTotal":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"minimumSpendEligibility":{"type":"string","enum":["food_beverage","excluded","unreviewed"]},"coveredByBucket":{"type":"boolean"}},"required":["chargeId","scope","bucketId","selectionPath","quantity","unitPrice","lineTotal","minimumSpendEligibility","coveredByBucket"],"additionalProperties":false}},"effectiveRules":{"type":"object","properties":{"values":{"type":"object","properties":{"minimumGuests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000},"maximumGuests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000},"minimumUnits":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"maximumUnits":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"minimumSpend":{"type":"object","properties":{"amountCents":{"type":"integer","minimum":0,"maximum":99999999},"basis":{"type":"string","enum":["eligible_food_beverage_before_discounts"]}},"required":["amountCents","basis"],"additionalProperties":false},"leadTimeHours":{"type":"integer","minimum":0,"maximum":8760}},"additionalProperties":false},"sources":{"type":"object","additionalProperties":{"type":"object","properties":{"scope":{"type":"string","enum":["location","menu","category","product"]},"entityId":{"type":"string","minLength":1,"maxLength":200},"serviceStyle":{"oneOf":[{"type":"string","enum":["pickup","drop_off","drop_off_with_setup"]},{"type":"null","enum":["pickup","drop_off","drop_off_with_setup"]}]}},"required":["scope","entityId","serviceStyle"],"additionalProperties":false}}},"required":["values","sources"],"additionalProperties":false},"food":{"type":"object","properties":{"source":{"oneOf":[{"type":"object","required":["menuId","locationId","channel","kind","menuReleaseId"],"properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["online","catering"]},"kind":{"type":"string","enum":["released"]},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"additionalProperties":false},{"type":"object","required":["menuId","locationId","channel","kind","draftRevision"],"properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["online","catering"]},"kind":{"type":"string","enum":["draft"]},"draftRevision":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991}},"additionalProperties":false}]},"contributions":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"selectionPath":{"maxItems":80,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"fraction":{"type":"object","properties":{"numerator":{"type":"number","minimum":0},"denominator":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["numerator","denominator"],"additionalProperties":false},"provenance":{"oneOf":[{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["entered"]}},"additionalProperties":false},{"type":"object","required":["kind","provider","revision"],"properties":{"kind":{"type":"string","enum":["provider"]},"provider":{"type":"string","enum":["square","clover","toast"]},"revision":{"type":"string","minLength":1,"maxLength":128}},"additionalProperties":false},{"type":"object","required":["kind","servingsYield","components"],"properties":{"kind":{"type":"string","enum":["recipe"]},"servingsYield":{"type":"number","minimum":0,"exclusiveMinimum":true},"components":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"fraction":{"type":"object","properties":{"numerator":{"type":"number","minimum":0},"denominator":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["numerator","denominator"],"additionalProperties":false}},"required":["entityId","fraction"],"additionalProperties":false}}},"additionalProperties":false},{"type":"null"}]},"nutrients":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false}},"required":["entityId","selectionPath","fraction","provenance","nutrients"],"additionalProperties":false}},"serving":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":255},"grams":{"oneOf":[{"type":"number","minimum":0,"exclusiveMinimum":true},{"type":"null","minimum":0,"exclusiveMinimum":true}]}},"required":["label","grams"],"additionalProperties":false},"quantity":{"type":"object","properties":{"unit":{"type":"string","enum":["serving","person","item","dozen","tray","pack","lb","oz","kg","g","gallon","quart","liter","ml","fl_oz"]},"count":{"type":"number","minimum":0,"exclusiveMinimum":true,"maximum":10000}},"required":["unit","count"],"additionalProperties":false},"trayYield":{"oneOf":[{"type":"object","properties":{"servingsPerTray":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["servingsPerTray"],"additionalProperties":false},{"type":"null","properties":{"servingsPerTray":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["servingsPerTray"],"additionalProperties":false}]},"perServing":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false},"perTray":{"oneOf":[{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false},{"type":"null","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false}]},"lineTotal":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false},"completeness":{"type":"string","enum":["complete","partial","unknown"]},"missing":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"nutrient":{"type":"string","enum":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"]}},"required":["entityId","nutrient"],"additionalProperties":false}},"warnings":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"code":{"type":"string","enum":["DIETARY_CONFLICT","ALLERGEN_PRESENT","ALLERGEN_POSSIBLE","DIETARY_INFORMATION_UNKNOWN"]},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"preferenceId":{"oneOf":[{"type":"string","enum":["vegetarian","vegan"]},{"type":"string","enum":["milk","egg","fish","crustacean_shellfish","tree_nuts","peanut","wheat","soy","sesame","celery","mustard","lupin","molluscs","sulphites"]}]},"selectionPath":{"maxItems":80,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["code","entityId","preferenceId","selectionPath"],"additionalProperties":false}}},"required":["source","contributions","serving","quantity","trayYield","perServing","perTray","lineTotal","completeness","missing","warnings"],"additionalProperties":false},"explanation":{"type":"string"}},"required":["source","lineId","productId","selections","quantity","allocation","requestedQuantity","acceptedSelections","priceBasis","unit","planningYield","unitPrice","lineTotal","charges","effectiveRules","food","explanation"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX].configuration","typeLabel":"object | null"}},"required":["source","kind","lineId","productId","name","unitPrice","quantity","unit","note","lineTotal","minimumSpendEligibility","configuration"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lines","typeLabel":"object[]"},"totals":{"type":"object","properties":{"subtotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.subtotal","typeLabel":"string"},"discount":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.discount","typeLabel":"string"},"taxRate":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.taxRate","typeLabel":"string"},"taxTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.taxTotal","typeLabel":"string"},"serviceFeeRate":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.serviceFeeRate","typeLabel":"string"},"serviceFeeTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.serviceFeeTotal","typeLabel":"string"},"total":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.total","typeLabel":"string"},"depositPercent":{"type":"integer","minimum":0,"maximum":100,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.depositPercent","typeLabel":"integer"},"depositAmount":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.depositAmount","typeLabel":"string"},"depositTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.depositTotal","typeLabel":"string"},"balanceAmount":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.balanceAmount","typeLabel":"string"},"balanceTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals.balanceTotal","typeLabel":"string"}},"required":["subtotal","discount","taxRate","taxTotal","serviceFeeRate","serviceFeeTotal","total","depositPercent","depositAmount","depositTotal","balanceAmount","balanceTotal"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.totals","typeLabel":"object"},"noteToCustomer":{"type":"string","maxLength":2000,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.noteToCustomer","typeLabel":"string"},"terms":{"type":"object","properties":{"changeCutoffHours":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.changeCutoffHours","typeLabel":"integer"},"balanceDue":{"oneOf":[{"type":"object","required":["rule"],"properties":{"rule":{"type":"string","enum":["at_cutoff"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.balanceDue.oneOf.0.rule","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.balanceDue.oneOf.0","typeLabel":"object"},{"type":"object","required":["rule"],"properties":{"rule":{"type":"string","enum":["event_day"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.balanceDue.oneOf.1.rule","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.balanceDue.oneOf.1","typeLabel":"object"},{"type":"object","required":["rule","days"],"properties":{"rule":{"type":"string","enum":["days_after_event"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.balanceDue.oneOf.2.rule","typeLabel":"enum\u003cstring>"},"days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.balanceDue.oneOf.2.days","typeLabel":"integer"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.balanceDue.oneOf.2","typeLabel":"object"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.balanceDue","typeLabel":"object"},"quoteValidityDays":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.quoteValidityDays","typeLabel":"integer"},"cancellationTerms":{"type":"string","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms.cancellationTerms","typeLabel":"string"}},"required":["changeCutoffHours","balanceDue","quoteValidityDays","cancellationTerms"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.terms","typeLabel":"object"},"timeZone":{"type":"string","minLength":1,"maxLength":100,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.timeZone","typeLabel":"string"},"lockAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0.lockAt","typeLabel":"string\u003cdate-time>"}},"required":["originalQuoteId","eventSnapshot","lines","totals","noteToCustomer","terms","timeZone","lockAt"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"originalQuoteId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"eventSnapshot":{"type":"object","properties":{"eventDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"serviceTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"headcount":{"type":"object","properties":{"guests":{"type":"integer","minimum":1,"maximum":10000},"approximate":{"type":"boolean"}},"required":["guests","approximate"],"additionalProperties":false},"serviceStyle":{"type":"string","enum":["pickup","drop_off","drop_off_with_setup"]},"serviceAddress":{"oneOf":[{"type":"string","minLength":1,"maxLength":800},{"type":"null","minLength":1,"maxLength":800}]},"deliveryAddress":{"oneOf":[{"type":"object","properties":{"street":{"type":"string","minLength":1,"maxLength":200},"streetOptional":{"default":"","type":"string","maxLength":200},"city":{"type":"string","minLength":1,"maxLength":120},"state":{"type":"string","minLength":1,"maxLength":120},"zipCode":{"type":"string","minLength":1,"maxLength":20},"country":{"type":"string","enum":["United States","United Arab Emirates","Australia","United Kingdom"]}},"required":["street","city","state","zipCode","country"],"additionalProperties":false},{"type":"null","properties":{"street":{"type":"string","minLength":1,"maxLength":200},"streetOptional":{"default":"","type":"string","maxLength":200},"city":{"type":"string","minLength":1,"maxLength":120},"state":{"type":"string","minLength":1,"maxLength":120},"zipCode":{"type":"string","minLength":1,"maxLength":20},"country":{"type":"string","enum":["United States","United Arab Emirates","Australia","United Kingdom"]}},"required":["street","city","state","zipCode","country"],"additionalProperties":false}]}},"required":["eventDate","serviceTime","headcount","serviceStyle","serviceAddress"],"additionalProperties":false},"lines":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"source":{"oneOf":[{"type":"object","properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["catering"]},"kind":{"type":"string","enum":["released"]},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["menuId","locationId","channel","kind","menuReleaseId"],"additionalProperties":false},{"type":"null","properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["catering"]},"kind":{"type":"string","enum":["released"]},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["menuId","locationId","channel","kind","menuReleaseId"],"additionalProperties":false}]},"kind":{"type":"string","enum":["menu","one_off"]},"lineId":{"type":"string","minLength":1,"maxLength":255},"productId":{"oneOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"unitPrice":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"unit":{"type":"string","enum":["person","item","dozen","tray","pack","lb","oz","kg","g","gallon","quart","liter","ml","fl_oz"]},"note":{"oneOf":[{"type":"string"},{"type":"null"}]},"lineTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"minimumSpendEligibility":{"type":"string","enum":["food_beverage","excluded","unreviewed"]},"configuration":{"oneOf":[{"type":"object","properties":{"source":{"type":"object","properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["catering"]},"kind":{"type":"string","enum":["released"]},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["menuId","locationId","channel","kind","menuReleaseId"],"additionalProperties":false},"lineId":{"type":"string","minLength":1,"maxLength":200},"productId":{"type":"string","minLength":1,"maxLength":200},"selections":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":128},"selectedOptions":{"minItems":0,"maxItems":50,"type":"array","items":{"type":"object","properties":{"optionId":{"type":"string","minLength":1,"maxLength":128},"quantity":{"type":"integer","minimum":1,"maximum":99},"children":{"maxItems":20,"type":"array","items":{"$circularRef":"aadd59d0-9290-47a0-80b0-019fd035dc32"}}},"required":["optionId","quantity"],"additionalProperties":false}}},"required":["groupId","selectedOptions"],"additionalProperties":false}},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"allocation":{"oneOf":[{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":200},"guests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000}},"required":["groupId","guests"],"additionalProperties":false},{"type":"null","properties":{"groupId":{"type":"string","minLength":1,"maxLength":200},"guests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000}},"required":["groupId","guests"],"additionalProperties":false}]},"dietaryPreferences":{"type":"object","required":["preferences","avoidAllergenIds"],"properties":{"preferences":{"maxItems":2,"type":"array","items":{"type":"string","enum":["vegetarian","vegan"]}},"avoidAllergenIds":{"maxItems":14,"type":"array","items":{"type":"string","enum":["milk","egg","fish","crustacean_shellfish","tree_nuts","peanut","wheat","soy","sesame","celery","mustard","lupin","molluscs","sulphites"]}}},"additionalProperties":false},"requestedQuantity":{"oneOf":[{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},{"type":"null","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"}]},"acceptedSelections":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":128},"selectedOptions":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"optionId":{"type":"string","minLength":1,"maxLength":128},"quantity":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":99},"selectionPath":{"minItems":3,"maxItems":41,"type":"array","items":{"type":"string","minLength":1,"maxLength":128}},"provenance":{"type":"string","enum":["customer","default","fixed"]},"children":{"maxItems":50,"type":"array","items":{"$circularRef":"92d87812-0170-484a-b2da-4c889d4d8651"}}},"required":["optionId","quantity","selectionPath","provenance","children"],"additionalProperties":false}}},"required":["groupId","selectedOptions"],"additionalProperties":false}},"priceBasis":{"type":"string","enum":["per_person","per_item","per_dozen","per_tray","per_pack","per_lb","per_oz","per_kg","per_g","per_gallon","per_quart","per_liter","per_ml","per_fl_oz"]},"unit":{"type":"string","enum":["person","item","dozen","tray","pack","lb","oz","kg","g","gallon","quart","liter","ml","fl_oz"]},"planningYield":{"oneOf":[{"type":"object","required":["guests","quantity","reviewNote"],"properties":{"guests":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"reviewNote":{"type":"string","minLength":1,"maxLength":2000}},"additionalProperties":false},{"type":"string","enum":[null]},{"type":"null","enum":[null]}]},"unitPrice":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"lineTotal":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"charges":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"chargeId":{"type":"string","minLength":1,"maxLength":200},"scope":{"type":"string","enum":["sold_unit","affected_person","order"]},"bucketId":{"type":"string","minLength":1,"maxLength":200},"selectionPath":{"maxItems":41,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,5})(?:\\.\\d{1,6})?$"},"unitPrice":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"lineTotal":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"minimumSpendEligibility":{"type":"string","enum":["food_beverage","excluded","unreviewed"]},"coveredByBucket":{"type":"boolean"}},"required":["chargeId","scope","bucketId","selectionPath","quantity","unitPrice","lineTotal","minimumSpendEligibility","coveredByBucket"],"additionalProperties":false}},"effectiveRules":{"type":"object","properties":{"values":{"type":"object","properties":{"minimumGuests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000},"maximumGuests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000},"minimumUnits":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"maximumUnits":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"minimumSpend":{"type":"object","properties":{"amountCents":{"type":"integer","minimum":0,"maximum":99999999},"basis":{"type":"string","enum":["eligible_food_beverage_before_discounts"]}},"required":["amountCents","basis"],"additionalProperties":false},"leadTimeHours":{"type":"integer","minimum":0,"maximum":8760}},"additionalProperties":false},"sources":{"type":"object","additionalProperties":{"type":"object","properties":{"scope":{"type":"string","enum":["location","menu","category","product"]},"entityId":{"type":"string","minLength":1,"maxLength":200},"serviceStyle":{"oneOf":[{"type":"string","enum":["pickup","drop_off","drop_off_with_setup"]},{"type":"null","enum":["pickup","drop_off","drop_off_with_setup"]}]}},"required":["scope","entityId","serviceStyle"],"additionalProperties":false}}},"required":["values","sources"],"additionalProperties":false},"food":{"type":"object","properties":{"source":{"oneOf":[{"type":"object","required":["menuId","locationId","channel","kind","menuReleaseId"],"properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["online","catering"]},"kind":{"type":"string","enum":["released"]},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"additionalProperties":false},{"type":"object","required":["menuId","locationId","channel","kind","draftRevision"],"properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["online","catering"]},"kind":{"type":"string","enum":["draft"]},"draftRevision":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991}},"additionalProperties":false}]},"contributions":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"selectionPath":{"maxItems":80,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"fraction":{"type":"object","properties":{"numerator":{"type":"number","minimum":0},"denominator":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["numerator","denominator"],"additionalProperties":false},"provenance":{"oneOf":[{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["entered"]}},"additionalProperties":false},{"type":"object","required":["kind","provider","revision"],"properties":{"kind":{"type":"string","enum":["provider"]},"provider":{"type":"string","enum":["square","clover","toast"]},"revision":{"type":"string","minLength":1,"maxLength":128}},"additionalProperties":false},{"type":"object","required":["kind","servingsYield","components"],"properties":{"kind":{"type":"string","enum":["recipe"]},"servingsYield":{"type":"number","minimum":0,"exclusiveMinimum":true},"components":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"fraction":{"type":"object","properties":{"numerator":{"type":"number","minimum":0},"denominator":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["numerator","denominator"],"additionalProperties":false}},"required":["entityId","fraction"],"additionalProperties":false}}},"additionalProperties":false},{"type":"null"}]},"nutrients":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false}},"required":["entityId","selectionPath","fraction","provenance","nutrients"],"additionalProperties":false}},"serving":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":255},"grams":{"oneOf":[{"type":"number","minimum":0,"exclusiveMinimum":true},{"type":"null","minimum":0,"exclusiveMinimum":true}]}},"required":["label","grams"],"additionalProperties":false},"quantity":{"type":"object","properties":{"unit":{"type":"string","enum":["serving","person","item","dozen","tray","pack","lb","oz","kg","g","gallon","quart","liter","ml","fl_oz"]},"count":{"type":"number","minimum":0,"exclusiveMinimum":true,"maximum":10000}},"required":["unit","count"],"additionalProperties":false},"trayYield":{"oneOf":[{"type":"object","properties":{"servingsPerTray":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["servingsPerTray"],"additionalProperties":false},{"type":"null","properties":{"servingsPerTray":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["servingsPerTray"],"additionalProperties":false}]},"perServing":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false},"perTray":{"oneOf":[{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false},{"type":"null","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false}]},"lineTotal":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false},"completeness":{"type":"string","enum":["complete","partial","unknown"]},"missing":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"nutrient":{"type":"string","enum":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"]}},"required":["entityId","nutrient"],"additionalProperties":false}},"warnings":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"code":{"type":"string","enum":["DIETARY_CONFLICT","ALLERGEN_PRESENT","ALLERGEN_POSSIBLE","DIETARY_INFORMATION_UNKNOWN"]},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"preferenceId":{"oneOf":[{"type":"string","enum":["vegetarian","vegan"]},{"type":"string","enum":["milk","egg","fish","crustacean_shellfish","tree_nuts","peanut","wheat","soy","sesame","celery","mustard","lupin","molluscs","sulphites"]}]},"selectionPath":{"maxItems":80,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["code","entityId","preferenceId","selectionPath"],"additionalProperties":false}}},"required":["source","contributions","serving","quantity","trayYield","perServing","perTray","lineTotal","completeness","missing","warnings"],"additionalProperties":false},"explanation":{"type":"string"}},"required":["source","lineId","productId","selections","quantity","allocation","requestedQuantity","acceptedSelections","priceBasis","unit","planningYield","unitPrice","lineTotal","charges","effectiveRules","food","explanation"],"additionalProperties":false},{"type":"null","properties":{"source":{"type":"object","properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["catering"]},"kind":{"type":"string","enum":["released"]},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["menuId","locationId","channel","kind","menuReleaseId"],"additionalProperties":false},"lineId":{"type":"string","minLength":1,"maxLength":200},"productId":{"type":"string","minLength":1,"maxLength":200},"selections":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":128},"selectedOptions":{"minItems":0,"maxItems":50,"type":"array","items":{"type":"object","properties":{"optionId":{"type":"string","minLength":1,"maxLength":128},"quantity":{"type":"integer","minimum":1,"maximum":99},"children":{"maxItems":20,"type":"array","items":{"$circularRef":"aadd59d0-9290-47a0-80b0-019fd035dc32"}}},"required":["optionId","quantity"],"additionalProperties":false}}},"required":["groupId","selectedOptions"],"additionalProperties":false}},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"allocation":{"oneOf":[{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":200},"guests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000}},"required":["groupId","guests"],"additionalProperties":false},{"type":"null","properties":{"groupId":{"type":"string","minLength":1,"maxLength":200},"guests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000}},"required":["groupId","guests"],"additionalProperties":false}]},"dietaryPreferences":{"type":"object","required":["preferences","avoidAllergenIds"],"properties":{"preferences":{"maxItems":2,"type":"array","items":{"type":"string","enum":["vegetarian","vegan"]}},"avoidAllergenIds":{"maxItems":14,"type":"array","items":{"type":"string","enum":["milk","egg","fish","crustacean_shellfish","tree_nuts","peanut","wheat","soy","sesame","celery","mustard","lupin","molluscs","sulphites"]}}},"additionalProperties":false},"requestedQuantity":{"oneOf":[{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},{"type":"null","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"}]},"acceptedSelections":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":128},"selectedOptions":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"optionId":{"type":"string","minLength":1,"maxLength":128},"quantity":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":99},"selectionPath":{"minItems":3,"maxItems":41,"type":"array","items":{"type":"string","minLength":1,"maxLength":128}},"provenance":{"type":"string","enum":["customer","default","fixed"]},"children":{"maxItems":50,"type":"array","items":{"$circularRef":"92d87812-0170-484a-b2da-4c889d4d8651"}}},"required":["optionId","quantity","selectionPath","provenance","children"],"additionalProperties":false}}},"required":["groupId","selectedOptions"],"additionalProperties":false}},"priceBasis":{"type":"string","enum":["per_person","per_item","per_dozen","per_tray","per_pack","per_lb","per_oz","per_kg","per_g","per_gallon","per_quart","per_liter","per_ml","per_fl_oz"]},"unit":{"type":"string","enum":["person","item","dozen","tray","pack","lb","oz","kg","g","gallon","quart","liter","ml","fl_oz"]},"planningYield":{"oneOf":[{"type":"object","required":["guests","quantity","reviewNote"],"properties":{"guests":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"reviewNote":{"type":"string","minLength":1,"maxLength":2000}},"additionalProperties":false},{"type":"string","enum":[null]},{"type":"null","enum":[null]}]},"unitPrice":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"lineTotal":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"charges":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"chargeId":{"type":"string","minLength":1,"maxLength":200},"scope":{"type":"string","enum":["sold_unit","affected_person","order"]},"bucketId":{"type":"string","minLength":1,"maxLength":200},"selectionPath":{"maxItems":41,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"quantity":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,5})(?:\\.\\d{1,6})?$"},"unitPrice":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"lineTotal":{"type":"object","properties":{"minCents":{"type":"integer","minimum":0,"maximum":99999999},"maxCents":{"type":"integer","minimum":0,"maximum":99999999}},"required":["minCents","maxCents"],"additionalProperties":false},"minimumSpendEligibility":{"type":"string","enum":["food_beverage","excluded","unreviewed"]},"coveredByBucket":{"type":"boolean"}},"required":["chargeId","scope","bucketId","selectionPath","quantity","unitPrice","lineTotal","minimumSpendEligibility","coveredByBucket"],"additionalProperties":false}},"effectiveRules":{"type":"object","properties":{"values":{"type":"object","properties":{"minimumGuests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000},"maximumGuests":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":10000},"minimumUnits":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"maximumUnits":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,4})(?:\\.\\d{1,6})?$"},"minimumSpend":{"type":"object","properties":{"amountCents":{"type":"integer","minimum":0,"maximum":99999999},"basis":{"type":"string","enum":["eligible_food_beverage_before_discounts"]}},"required":["amountCents","basis"],"additionalProperties":false},"leadTimeHours":{"type":"integer","minimum":0,"maximum":8760}},"additionalProperties":false},"sources":{"type":"object","additionalProperties":{"type":"object","properties":{"scope":{"type":"string","enum":["location","menu","category","product"]},"entityId":{"type":"string","minLength":1,"maxLength":200},"serviceStyle":{"oneOf":[{"type":"string","enum":["pickup","drop_off","drop_off_with_setup"]},{"type":"null","enum":["pickup","drop_off","drop_off_with_setup"]}]}},"required":["scope","entityId","serviceStyle"],"additionalProperties":false}}},"required":["values","sources"],"additionalProperties":false},"food":{"type":"object","properties":{"source":{"oneOf":[{"type":"object","required":["menuId","locationId","channel","kind","menuReleaseId"],"properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["online","catering"]},"kind":{"type":"string","enum":["released"]},"menuReleaseId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"additionalProperties":false},{"type":"object","required":["menuId","locationId","channel","kind","draftRevision"],"properties":{"menuId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"locationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"channel":{"type":"string","enum":["online","catering"]},"kind":{"type":"string","enum":["draft"]},"draftRevision":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":9007199254740991}},"additionalProperties":false}]},"contributions":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"selectionPath":{"maxItems":80,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"fraction":{"type":"object","properties":{"numerator":{"type":"number","minimum":0},"denominator":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["numerator","denominator"],"additionalProperties":false},"provenance":{"oneOf":[{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["entered"]}},"additionalProperties":false},{"type":"object","required":["kind","provider","revision"],"properties":{"kind":{"type":"string","enum":["provider"]},"provider":{"type":"string","enum":["square","clover","toast"]},"revision":{"type":"string","minLength":1,"maxLength":128}},"additionalProperties":false},{"type":"object","required":["kind","servingsYield","components"],"properties":{"kind":{"type":"string","enum":["recipe"]},"servingsYield":{"type":"number","minimum":0,"exclusiveMinimum":true},"components":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"fraction":{"type":"object","properties":{"numerator":{"type":"number","minimum":0},"denominator":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["numerator","denominator"],"additionalProperties":false}},"required":["entityId","fraction"],"additionalProperties":false}}},"additionalProperties":false},{"type":"null"}]},"nutrients":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false}},"required":["entityId","selectionPath","fraction","provenance","nutrients"],"additionalProperties":false}},"serving":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":255},"grams":{"oneOf":[{"type":"number","minimum":0,"exclusiveMinimum":true},{"type":"null","minimum":0,"exclusiveMinimum":true}]}},"required":["label","grams"],"additionalProperties":false},"quantity":{"type":"object","properties":{"unit":{"type":"string","enum":["serving","person","item","dozen","tray","pack","lb","oz","kg","g","gallon","quart","liter","ml","fl_oz"]},"count":{"type":"number","minimum":0,"exclusiveMinimum":true,"maximum":10000}},"required":["unit","count"],"additionalProperties":false},"trayYield":{"oneOf":[{"type":"object","properties":{"servingsPerTray":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["servingsPerTray"],"additionalProperties":false},{"type":"null","properties":{"servingsPerTray":{"type":"number","minimum":0,"exclusiveMinimum":true}},"required":["servingsPerTray"],"additionalProperties":false}]},"perServing":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false},"perTray":{"oneOf":[{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false},{"type":"null","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false}]},"lineTotal":{"type":"object","properties":{"caloriesKcal":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"proteinGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"carbohydrateGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"fiberGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sugarGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"saturatedFatGrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]},"sodiumMilligrams":{"oneOf":[{"type":"number","minimum":0},{"type":"null","minimum":0}]}},"required":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"],"additionalProperties":false},"completeness":{"type":"string","enum":["complete","partial","unknown"]},"missing":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"nutrient":{"type":"string","enum":["caloriesKcal","proteinGrams","carbohydrateGrams","fatGrams","fiberGrams","sugarGrams","saturatedFatGrams","sodiumMilligrams"]}},"required":["entityId","nutrient"],"additionalProperties":false}},"warnings":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"code":{"type":"string","enum":["DIETARY_CONFLICT","ALLERGEN_PRESENT","ALLERGEN_POSSIBLE","DIETARY_INFORMATION_UNKNOWN"]},"entityId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"preferenceId":{"oneOf":[{"type":"string","enum":["vegetarian","vegan"]},{"type":"string","enum":["milk","egg","fish","crustacean_shellfish","tree_nuts","peanut","wheat","soy","sesame","celery","mustard","lupin","molluscs","sulphites"]}]},"selectionPath":{"maxItems":80,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["code","entityId","preferenceId","selectionPath"],"additionalProperties":false}}},"required":["source","contributions","serving","quantity","trayYield","perServing","perTray","lineTotal","completeness","missing","warnings"],"additionalProperties":false},"explanation":{"type":"string"}},"required":["source","lineId","productId","selections","quantity","allocation","requestedQuantity","acceptedSelections","priceBasis","unit","planningYield","unitPrice","lineTotal","charges","effectiveRules","food","explanation"],"additionalProperties":false}]}},"required":["source","kind","lineId","productId","name","unitPrice","quantity","unit","note","lineTotal","minimumSpendEligibility","configuration"],"additionalProperties":false}},"totals":{"type":"object","properties":{"subtotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"discount":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"taxRate":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"taxTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"serviceFeeRate":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"serviceFeeTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"total":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"depositPercent":{"type":"integer","minimum":0,"maximum":100},"depositAmount":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"depositTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"balanceAmount":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"},"balanceTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}},"required":["subtotal","discount","taxRate","taxTotal","serviceFeeRate","serviceFeeTotal","total","depositPercent","depositAmount","depositTotal","balanceAmount","balanceTotal"],"additionalProperties":false},"noteToCustomer":{"type":"string","maxLength":2000},"terms":{"type":"object","properties":{"changeCutoffHours":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"balanceDue":{"oneOf":[{"type":"object","required":["rule"],"properties":{"rule":{"type":"string","enum":["at_cutoff"]}},"additionalProperties":false},{"type":"object","required":["rule"],"properties":{"rule":{"type":"string","enum":["event_day"]}},"additionalProperties":false},{"type":"object","required":["rule","days"],"properties":{"rule":{"type":"string","enum":["days_after_event"]},"days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"additionalProperties":false}]},"quoteValidityDays":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"cancellationTerms":{"type":"string"}},"required":["changeCutoffHours","balanceDue","quoteValidityDays","cancellationTerms"],"additionalProperties":false},"timeZone":{"type":"string","minLength":1,"maxLength":100},"lockAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},"required":["originalQuoteId","eventSnapshot","lines","totals","noteToCustomer","terms","timeZone","lockAt"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].offer","typeLabel":"object | null"},"totals":{"type":"object","properties":{"subtotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.subtotal","typeLabel":"string"},"discount":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.discount","typeLabel":"string"},"taxRate":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.taxRate","typeLabel":"string"},"taxTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.taxTotal","typeLabel":"string"},"serviceFeeRate":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.serviceFeeRate","typeLabel":"string"},"serviceFeeTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.serviceFeeTotal","typeLabel":"string"},"total":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.total","typeLabel":"string"},"depositPercent":{"type":"integer","minimum":0,"maximum":100,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.depositPercent","typeLabel":"integer"},"depositAmount":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.depositAmount","typeLabel":"string"},"depositTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.depositTotal","typeLabel":"string"},"balanceAmount":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.balanceAmount","typeLabel":"string"},"balanceTotal":{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals.balanceTotal","typeLabel":"string"}},"required":["subtotal","discount","taxRate","taxTotal","serviceFeeRate","serviceFeeTotal","total","depositPercent","depositAmount","depositTotal","balanceAmount","balanceTotal"],"additionalProperties":false,"isRequired":true,"uniqueKey":"proposals.items.[INDEX].totals","typeLabel":"object"},"state":{"type":"string","enum":["proposed","accepted","declined","superseded","expired","unavailable"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].state","typeLabel":"enum\u003cstring>"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].createdAt","typeLabel":"string\u003cdate-time>"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].expiresAt","typeLabel":"string\u003cdate-time>"},"decidedAt":{"oneOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].decidedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","isRequired":true,"uniqueKey":"proposals.items.[INDEX].decidedAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].decidedAt","typeLabel":"string\u003cdate-time> | null"},"noticeState":{"type":"string","enum":["pending","provider_accepted","not_sent","needs_attention","unavailable"],"isRequired":true,"uniqueKey":"proposals.items.[INDEX].noticeState","typeLabel":"enum\u003cstring>"}},"required":["id","originalQuoteId","revision","version","offerFingerprint","currency","offer","totals","state","createdAt","expiresAt","decidedAt","noticeState"],"additionalProperties":false,"uniqueKey":"proposals.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"proposals","typeLabel":"object[]"},"currentProposalId":{"oneOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"currentProposalId.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"currentProposalId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"currentProposalId","typeLabel":"string\u003cuuid> | null"},"effectiveProposalId":{"oneOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"effectiveProposalId.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","isRequired":true,"uniqueKey":"effectiveProposalId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"effectiveProposalId","typeLabel":"string\u003cuuid> | null"}},"required":["proposals","currentProposalId","effectiveProposalId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"proposals":[{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","originalQuoteId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","revision":4503599627370495,"version":4503599627370495,"offerFingerprint":"\u003cstring>","currency":"\u003cstring>","offer":{"originalQuoteId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","eventSnapshot":{"eventDate":"\u003cstring>","serviceTime":"\u003cstring>","headcount":{"guests":5000,"approximate":true},"serviceStyle":"pickup","serviceAddress":"\u003cstring>","deliveryAddress":{"street":"\u003cstring>","city":"\u003cstring>","state":"\u003cstring>","zipCode":"\u003cstring>","country":"United States","streetOptional":""}},"lines":[{"source":{"menuId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","locationId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","channel":"catering","kind":"released","menuReleaseId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"kind":"menu","lineId":"\u003cstring>","productId":"\u003cstring>","name":"\u003cstring>","unitPrice":"\u003cstring>","quantity":"\u003cstring>","unit":"person","note":"\u003cstring>","lineTotal":"\u003cstring>","minimumSpendEligibility":"food_beverage","configuration":{"source":{"menuId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","locationId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","channel":"catering","kind":"released","menuReleaseId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"lineId":"\u003cstring>","productId":"\u003cstring>","selections":[{"groupId":"\u003cstring>","selectedOptions":[{"optionId":"\u003cstring>","quantity":50,"children":"\u003carray>"}]}],"quantity":"\u003cstring>","allocation":{"groupId":"\u003cstring>","guests":5000},"requestedQuantity":"\u003cstring>","acceptedSelections":[{"groupId":"\u003cstring>","selectedOptions":[{"optionId":"\u003cstring>","quantity":49,"selectionPath":["\u003cstring>"],"provenance":"customer","children":"\u003carray>"}]}],"priceBasis":"per_person","unit":"person","planningYield":{"guests":"\u003cstring>","quantity":"\u003cstring>","reviewNote":"\u003cstring>"},"unitPrice":{"minCents":49999999,"maxCents":49999999},"lineTotal":{"minCents":49999999,"maxCents":49999999},"charges":[{"chargeId":"\u003cstring>","scope":"sold_unit","bucketId":"\u003cstring>","selectionPath":["\u003cstring>"],"quantity":"\u003cstring>","unitPrice":{"minCents":49999999,"maxCents":49999999},"lineTotal":{"minCents":49999999,"maxCents":49999999},"minimumSpendEligibility":"food_beverage","coveredByBucket":true}],"effectiveRules":{"values":{"minimumGuests":5000,"maximumGuests":5000,"minimumUnits":"\u003cstring>","maximumUnits":"\u003cstring>","minimumSpend":{"amountCents":49999999,"basis":"eligible_food_beverage_before_discounts"},"leadTimeHours":4380},"sources":{}},"food":{"source":{"menuId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","locationId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","channel":"online","kind":"released","menuReleaseId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"},"contributions":[{"entityId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","selectionPath":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"fraction":{"numerator":1,"denominator":1},"provenance":{"kind":"entered"},"nutrients":{"caloriesKcal":1,"proteinGrams":1,"carbohydrateGrams":1,"fatGrams":1,"fiberGrams":1,"sugarGrams":1,"saturatedFatGrams":1,"sodiumMilligrams":1}}],"serving":{"label":"\u003cstring>","grams":1},"quantity":{"unit":"serving","count":5000},"trayYield":{"servingsPerTray":1},"perServing":{"caloriesKcal":1,"proteinGrams":1,"carbohydrateGrams":1,"fatGrams":1,"fiberGrams":1,"sugarGrams":1,"saturatedFatGrams":1,"sodiumMilligrams":1},"perTray":{"caloriesKcal":1,"proteinGrams":1,"carbohydrateGrams":1,"fatGrams":1,"fiberGrams":1,"sugarGrams":1,"saturatedFatGrams":1,"sodiumMilligrams":1},"lineTotal":{"caloriesKcal":1,"proteinGrams":1,"carbohydrateGrams":1,"fatGrams":1,"fiberGrams":1,"sugarGrams":1,"saturatedFatGrams":1,"sodiumMilligrams":1},"completeness":"complete","missing":[{"entityId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","nutrient":"caloriesKcal"}],"warnings":[{"code":"DIETARY_CONFLICT","entityId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","preferenceId":"vegetarian","selectionPath":["3c90c3cc-0d44-4b50-8888-8dd25736052a"]}]},"explanation":"\u003cstring>","dietaryPreferences":{"preferences":["vegetarian"],"avoidAllergenIds":["milk"]}}}],"totals":{"subtotal":"\u003cstring>","discount":"\u003cstring>","taxRate":"\u003cstring>","taxTotal":"\u003cstring>","serviceFeeRate":"\u003cstring>","serviceFeeTotal":"\u003cstring>","total":"\u003cstring>","depositPercent":50,"depositAmount":"\u003cstring>","depositTotal":"\u003cstring>","balanceAmount":"\u003cstring>","balanceTotal":"\u003cstring>"},"noteToCustomer":"\u003cstring>","terms":{"changeCutoffHours":0,"balanceDue":{"rule":"at_cutoff"},"quoteValidityDays":0,"cancellationTerms":"\u003cstring>"},"timeZone":"\u003cstring>","lockAt":"2023-11-07T05:31:56Z"},"totals":{"subtotal":"\u003cstring>","discount":"\u003cstring>","taxRate":"\u003cstring>","taxTotal":"\u003cstring>","serviceFeeRate":"\u003cstring>","serviceFeeTotal":"\u003cstring>","total":"\u003cstring>","depositPercent":50,"depositAmount":"\u003cstring>","depositTotal":"\u003cstring>","balanceAmount":"\u003cstring>","balanceTotal":"\u003cstring>"},"state":"proposed","createdAt":"2023-11-07T05:31:56Z","expiresAt":"2023-11-07T05:31:56Z","decidedAt":"2023-11-07T05:31:56Z","noticeState":"pending"}],"currentProposalId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","effectiveProposalId":"3c90c3cc-0d44-4b50-8888-8dd25736052a"}}},"exampleType":"generated"}},"exampleType":"generated"},"224ae66a-2545-453c-9298-47b6c3236825":{"description":"The request is invalid.","headers":{"X-Request-Id":{"description":"Opaque request identifier for support and telemetry correlation.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","enum":["VALIDATION_ERROR","UNAUTHORIZED","CUSTOMER_AUTH_CODE_REJECTED","FORBIDDEN","NOT_FOUND","RATE_LIMITED","CART_CONFLICT","REQUOTE_REQUIRED","RESOURCE_CONFLICT","CART_IMMUTABLE","IDEMPOTENCY_KEY_REQUIRED","IDEMPOTENCY_KEY_REUSED","IDEMPOTENCY_IN_PROGRESS","DEPENDENCY_UNAVAILABLE","INTERNAL_ERROR"],"isRequired":true,"uniqueKey":"code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"code.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring> | string"},"message":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"message","typeLabel":"string"},"requestId":{"type":"string","minLength":8,"isRequired":true,"uniqueKey":"requestId","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"details.additionalProperties","typeLabel":"any"},"uniqueKey":"details","typeLabel":"object"}},"required":["code","message","requestId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"\u003cstring>","requestId":"\u003cstring>","details":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"6955f2c2-5976-4c51-b101-377917762b4f":{"description":"Authentication or capability authorization is required.","headers":{"X-Request-Id":{"description":"Opaque request identifier for support and telemetry correlation.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","enum":["VALIDATION_ERROR","UNAUTHORIZED","CUSTOMER_AUTH_CODE_REJECTED","FORBIDDEN","NOT_FOUND","RATE_LIMITED","CART_CONFLICT","REQUOTE_REQUIRED","RESOURCE_CONFLICT","CART_IMMUTABLE","IDEMPOTENCY_KEY_REQUIRED","IDEMPOTENCY_KEY_REUSED","IDEMPOTENCY_IN_PROGRESS","DEPENDENCY_UNAVAILABLE","INTERNAL_ERROR"],"isRequired":true,"uniqueKey":"code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"code.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring> | string"},"message":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"message","typeLabel":"string"},"requestId":{"type":"string","minLength":8,"isRequired":true,"uniqueKey":"requestId","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"details.additionalProperties","typeLabel":"any"},"uniqueKey":"details","typeLabel":"object"}},"required":["code","message","requestId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"\u003cstring>","requestId":"\u003cstring>","details":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"9fa657f2-ed88-414d-9d6f-46c7e876818d":{"description":"The authenticated principal does not own this resource.","headers":{"X-Request-Id":{"description":"Opaque request identifier for support and telemetry correlation.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","enum":["VALIDATION_ERROR","UNAUTHORIZED","CUSTOMER_AUTH_CODE_REJECTED","FORBIDDEN","NOT_FOUND","RATE_LIMITED","CART_CONFLICT","REQUOTE_REQUIRED","RESOURCE_CONFLICT","CART_IMMUTABLE","IDEMPOTENCY_KEY_REQUIRED","IDEMPOTENCY_KEY_REUSED","IDEMPOTENCY_IN_PROGRESS","DEPENDENCY_UNAVAILABLE","INTERNAL_ERROR"],"isRequired":true,"uniqueKey":"code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"code.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring> | string"},"message":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"message","typeLabel":"string"},"requestId":{"type":"string","minLength":8,"isRequired":true,"uniqueKey":"requestId","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"details.additionalProperties","typeLabel":"any"},"uniqueKey":"details","typeLabel":"object"}},"required":["code","message","requestId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"\u003cstring>","requestId":"\u003cstring>","details":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"644f5dcc-bbc3-4854-abbf-b4968f3581dc":{"description":"The requested resource was not found.","headers":{"X-Request-Id":{"description":"Opaque request identifier for support and telemetry correlation.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","enum":["VALIDATION_ERROR","UNAUTHORIZED","CUSTOMER_AUTH_CODE_REJECTED","FORBIDDEN","NOT_FOUND","RATE_LIMITED","CART_CONFLICT","REQUOTE_REQUIRED","RESOURCE_CONFLICT","CART_IMMUTABLE","IDEMPOTENCY_KEY_REQUIRED","IDEMPOTENCY_KEY_REUSED","IDEMPOTENCY_IN_PROGRESS","DEPENDENCY_UNAVAILABLE","INTERNAL_ERROR"],"isRequired":true,"uniqueKey":"code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"code.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring> | string"},"message":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"message","typeLabel":"string"},"requestId":{"type":"string","minLength":8,"isRequired":true,"uniqueKey":"requestId","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"details.additionalProperties","typeLabel":"any"},"uniqueKey":"details","typeLabel":"object"}},"required":["code","message","requestId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"\u003cstring>","requestId":"\u003cstring>","details":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"bd6da521-557a-4a40-a927-7161e8dba31e":{"description":"The idempotency key or resource revision conflicts.","headers":{"X-Request-Id":{"description":"Opaque request identifier for support and telemetry correlation.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","enum":["VALIDATION_ERROR","UNAUTHORIZED","CUSTOMER_AUTH_CODE_REJECTED","FORBIDDEN","NOT_FOUND","RATE_LIMITED","CART_CONFLICT","REQUOTE_REQUIRED","RESOURCE_CONFLICT","CART_IMMUTABLE","IDEMPOTENCY_KEY_REQUIRED","IDEMPOTENCY_KEY_REUSED","IDEMPOTENCY_IN_PROGRESS","DEPENDENCY_UNAVAILABLE","INTERNAL_ERROR"],"isRequired":true,"uniqueKey":"code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"code.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring> | string"},"message":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"message","typeLabel":"string"},"requestId":{"type":"string","minLength":8,"isRequired":true,"uniqueKey":"requestId","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"details.additionalProperties","typeLabel":"any"},"uniqueKey":"details","typeLabel":"object"}},"required":["code","message","requestId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"\u003cstring>","requestId":"\u003cstring>","details":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"b70a2e56-0dc9-4a02-9871-f0fda4bdba78":{"description":"The request was rate limited.","headers":{"X-Request-Id":{"description":"Opaque request identifier for support and telemetry correlation.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","enum":["VALIDATION_ERROR","UNAUTHORIZED","CUSTOMER_AUTH_CODE_REJECTED","FORBIDDEN","NOT_FOUND","RATE_LIMITED","CART_CONFLICT","REQUOTE_REQUIRED","RESOURCE_CONFLICT","CART_IMMUTABLE","IDEMPOTENCY_KEY_REQUIRED","IDEMPOTENCY_KEY_REUSED","IDEMPOTENCY_IN_PROGRESS","DEPENDENCY_UNAVAILABLE","INTERNAL_ERROR"],"isRequired":true,"uniqueKey":"code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"code.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring> | string"},"message":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"message","typeLabel":"string"},"requestId":{"type":"string","minLength":8,"isRequired":true,"uniqueKey":"requestId","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"details.additionalProperties","typeLabel":"any"},"uniqueKey":"details","typeLabel":"object"}},"required":["code","message","requestId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"\u003cstring>","requestId":"\u003cstring>","details":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"2aa5f07d-df8e-4caa-98f9-a604833dca71":{"description":"An unexpected error occurred.","headers":{"X-Request-Id":{"description":"Opaque request identifier for support and telemetry correlation.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","enum":["VALIDATION_ERROR","UNAUTHORIZED","CUSTOMER_AUTH_CODE_REJECTED","FORBIDDEN","NOT_FOUND","RATE_LIMITED","CART_CONFLICT","REQUOTE_REQUIRED","RESOURCE_CONFLICT","CART_IMMUTABLE","IDEMPOTENCY_KEY_REQUIRED","IDEMPOTENCY_KEY_REUSED","IDEMPOTENCY_IN_PROGRESS","DEPENDENCY_UNAVAILABLE","INTERNAL_ERROR"],"isRequired":true,"uniqueKey":"code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"code.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring> | string"},"message":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"message","typeLabel":"string"},"requestId":{"type":"string","minLength":8,"isRequired":true,"uniqueKey":"requestId","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"details.additionalProperties","typeLabel":"any"},"uniqueKey":"details","typeLabel":"object"}},"required":["code","message","requestId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"\u003cstring>","requestId":"\u003cstring>","details":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"30e307ec-e659-401d-82a0-05788e21bfa4":{"description":"A required dependency is temporarily unavailable.","headers":{"X-Request-Id":{"description":"Opaque request identifier for support and telemetry correlation.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"code":{"oneOf":[{"type":"string","enum":["VALIDATION_ERROR","UNAUTHORIZED","CUSTOMER_AUTH_CODE_REJECTED","FORBIDDEN","NOT_FOUND","RATE_LIMITED","CART_CONFLICT","REQUOTE_REQUIRED","RESOURCE_CONFLICT","CART_IMMUTABLE","IDEMPOTENCY_KEY_REQUIRED","IDEMPOTENCY_KEY_REUSED","IDEMPOTENCY_IN_PROGRESS","DEPENDENCY_UNAVAILABLE","INTERNAL_ERROR"],"isRequired":true,"uniqueKey":"code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"code.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring> | string"},"message":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"message","typeLabel":"string"},"requestId":{"type":"string","minLength":8,"isRequired":true,"uniqueKey":"requestId","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"details.additionalProperties","typeLabel":"any"},"uniqueKey":"details","typeLabel":"object"}},"required":["code","message","requestId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"VALIDATION_ERROR","message":"\u003cstring>","requestId":"\u003cstring>","details":{}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"3633cbdf-6f77-4b59-9e92-fa2a8d02259e":{"StorefrontCateringCapability":{"type":"apiKey","in":"header","name":"X-Catering-Token","description":"Event and location scoped customer catering capability. Never place in query parameters.","scopes":[],"schemeName":"StorefrontCateringCapability"}}},"servers":{"f2c8b1fd-8244-4cbb-8817-e5dabe3abd85":{"url":"https://api.craveup.com/api/v1/storefront","description":"Production Storefront API"},"72f5ebd2-aa84-4ab7-8f46-bd3af3b8476d":{"url":"https://sandbox-api.craveup.com/api/v1/storefront","description":"Sandbox Storefront API"}},"schemas":{"aadd59d0-9290-47a0-80b0-019fd035dc32":{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":128,"isRequired":true},"selectedOptions":{"minItems":0,"maxItems":50,"type":"array","items":{"type":"object","properties":{"optionId":{"type":"string","minLength":1,"maxLength":128,"isRequired":true},"quantity":{"type":"integer","minimum":1,"maximum":99,"isRequired":true},"children":{"maxItems":20,"type":"array","items":{"$circularRef":"aadd59d0-9290-47a0-80b0-019fd035dc32"}}},"required":["optionId","quantity"],"additionalProperties":false},"isRequired":true}},"required":["groupId","selectedOptions"],"additionalProperties":false},"92d87812-0170-484a-b2da-4c889d4d8651":{"type":"object","properties":{"groupId":{"type":"string","minLength":1,"maxLength":128,"isRequired":true},"selectedOptions":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"optionId":{"type":"string","minLength":1,"maxLength":128,"isRequired":true},"quantity":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":99,"isRequired":true},"selectionPath":{"minItems":3,"maxItems":41,"type":"array","items":{"type":"string","minLength":1,"maxLength":128},"isRequired":true},"provenance":{"type":"string","enum":["customer","default","fixed"],"isRequired":true},"children":{"maxItems":50,"type":"array","items":{"$circularRef":"92d87812-0170-484a-b2da-4c889d4d8651"},"isRequired":true}},"required":["optionId","quantity","selectionPath","provenance","children"],"additionalProperties":false},"isRequired":true}},"required":["groupId","selectedOptions"],"additionalProperties":false}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-Catering-Token","description":"Event and location scoped customer catering capability. Never place in query parameters.","scopes":[],"schemeName":"StorefrontCateringCapability"},"schema":{"title":"X-Catering-Token","type":"string","description":"Event and location scoped customer catering capability. Never place in query parameters.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"StorefrontCateringCapability","name":"X-Catering-Token"}],"title":"StorefrontCateringCapability"}]},"originalFileLocation":"generated/storefront.openapi.json"},"subdomain":"craveup-1493c4c7","siteName":"Crave Cloud Documentation","title":"Explicitly accept or decline the exact proposed catering version - Crave Cloud Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-30T05:45:07.023Z","originalFileLocation":"api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"Crave Cloud Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/craveup-1493c4c7/xHUpRIXxnvFKaY61/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/craveup-1493c4c7/xHUpRIXxnvFKaY61/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/craveup-1493c4c7/xHUpRIXxnvFKaY61/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/craveup-1493c4c7/xHUpRIXxnvFKaY61/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/craveup-1493c4c7/xHUpRIXxnvFKaY61/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/craveup-1493c4c7/xHUpRIXxnvFKaY61/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/craveup-1493c4c7/xHUpRIXxnvFKaY61/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/craveup-1493c4c7/xHUpRIXxnvFKaY61/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/craveup-1493c4c7/xHUpRIXxnvFKaY61/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Explicitly accept or decline the exact proposed catering version - Crave Cloud Documentation\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Crave Cloud Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.craveup.com/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://craveup-1493c4c7.mintlify.app/_mintlify/api/og/v2?division=Catering\u0026amp;title=Explicitly+accept+or+decline+the+exact+proposed+catering+version\u0026amp;theme=b98c5e909d3955315eca9dcf\u0026amp;signature=5ab3397298c54ba334e3e19a91432bc12e2b451bd4c382f81f169744b8f89816\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Explicitly accept or decline the exact proposed catering version - Crave Cloud Documentation\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://craveup-1493c4c7.mintlify.app/_mintlify/api/og/v2?division=Catering\u0026amp;title=Explicitly+accept+or+decline+the+exact+proposed+catering+version\u0026amp;theme=b98c5e909d3955315eca9dcf\u0026amp;signature=5ab3397298c54ba334e3e19a91432bc12e2b451bd4c382f81f169744b8f89816\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/craveup-1493c4c7/xHUpRIXxnvFKaY61/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Crave Cloud Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#133B2F\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.craveup.com/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.craveup.com/#organization\",\"name\":\"Crave Cloud Documentation\",\"url\":\"https://docs.craveup.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/craveup-1493c4c7/P4icpH7dO6tjC3GV/logo/crave-wordmark.png?fit=max\u0026auto=format\u0026n=P4icpH7dO6tjC3GV\u0026q=85\u0026s=c6965caeaa3bfbd9e84cf5416bbf2576\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.craveup.com#website\",\"name\":\"Crave Cloud Documentation\",\"url\":\"https://docs.craveup.com\",\"publisher\":{\"@id\":\"https://docs.craveup.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.craveup.com/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version#webpage\",\"url\":\"https://docs.craveup.com/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version\",\"name\":\"Explicitly accept or decline the exact proposed catering version\",\"dateModified\":\"2026-10-30T05:45:07.023Z\",\"isPartOf\":{\"@id\":\"https://docs.craveup.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.craveup.com/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.craveup.com/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"API Endpoints\",\"item\":\"https://docs.craveup.com/api-reference/customer-auth/read-eligible-customer-sign-in-channels\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Catering\",\"item\":\"https://docs.craveup.com/api-reference/catering/read-an-event-bound-catering-proposal\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Explicitly accept or decline the exact proposed catering version\",\"item\":\"https://docs.craveup.com/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.craveup.com/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version#apireference\",\"headline\":\"Explicitly accept or decline the exact proposed catering version\",\"name\":\"Explicitly accept or decline the exact proposed catering version\",\"url\":\"https://docs.craveup.com/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version\",\"mainEntityOfPage\":{\"@id\":\"https://docs.craveup.com/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version#webpage\"},\"dateModified\":\"2026-10-30T05:45:07.023Z\",\"publisher\":{\"@id\":\"https://docs.craveup.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.craveup.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Crave Cloud Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Crave Cloud Documentation","nav":{"global":null,"tabs":[{"tab":"Documentation","icon":"book-open","pages":[{"title":"Documentation","href":"/guides/crave-cloud-overview"}]},{"tab":"API Reference","icon":"square-terminal","groups":[{"group":"SDK Reference","icon":"book-open","pages":[{"title":"API Overview","href":"/api-reference/overview/api-overview"},{"title":"Core Concepts","href":"/api-reference/overview/core-concepts"}]},{"group":"API Endpoints","icon":"route","pages":[{"group":"Customer Auth","pages":[{"title":"Read eligible customer sign-in channels","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /merchant/{merchantSlug}/auth/config","href":"/api-reference/customer-auth/read-eligible-customer-sign-in-channels"},{"title":"Prepare a merchant-bound customer code challenge","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /merchant/{merchantSlug}/auth/challenges","href":"/api-reference/customer-auth/prepare-a-merchant-bound-customer-code-challenge"},{"title":"Replace an owned code challenge","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /merchant/{merchantSlug}/auth/challenges/{challengeId}/resend","href":"/api-reference/customer-auth/replace-an-owned-code-challenge"},{"title":"Consume a fresh code proof for a customer session","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /merchant/{merchantSlug}/auth/challenges/{challengeId}/verify","href":"/api-reference/customer-auth/consume-a-fresh-code-proof-for-a-customer-session"},{"title":"Rotate one customer session generation","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /merchant/{merchantSlug}/auth/session/refresh","href":"/api-reference/customer-auth/rotate-one-customer-session-generation"},{"title":"Read the current customer session identity","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /merchant/{merchantSlug}/auth/session","href":"/api-reference/customer-auth/read-the-current-customer-session-identity"},{"title":"Revoke the owned local customer session family","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json delete /merchant/{merchantSlug}/auth/session","href":"/api-reference/customer-auth/revoke-the-owned-local-customer-session-family"}]},{"group":"Catering","pages":[{"title":"Read an event-bound catering proposal","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/catering/events/{eventId}/live-cart","href":"/api-reference/catering/read-an-event-bound-catering-proposal"},{"title":"Suggest catering catalog quantities and preferences","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json put /locations/{locationId}/catering/events/{eventId}/live-cart","href":"/api-reference/catering/suggest-catering-catalog-quantities-and-preferences"},{"title":"View a customer catering event","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/catering/events/{eventId}","href":"/api-reference/catering/view-a-customer-catering-event"},{"title":"Accept the current catering offer","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/catering/events/{eventId}/accept","href":"/api-reference/catering/accept-the-current-catering-offer"},{"title":"Decline the current catering quote","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/catering/events/{eventId}/decline","href":"/api-reference/catering/decline-the-current-catering-quote"},{"title":"Review immutable proposed changes to an accepted catering booking","description":null,"deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/catering/events/{eventId}/amendments","href":"/api-reference/catering/review-immutable-proposed-changes-to-an-accepted-catering-booking"},{"title":"Explicitly accept or decline the exact proposed catering version","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/catering/events/{eventId}/amendments/decision","href":"/api-reference/catering/explicitly-accept-or-decline-the-exact-proposed-catering-version"},{"title":"Read a customer's cancellation request without changing the booking","description":null,"deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/catering/events/{eventId}/cancellation-request","href":"/api-reference/catering/read-a-customers-cancellation-request-without-changing-the-booking"},{"title":"Request restaurant review of cancellation; never cancels or refunds","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/catering/events/{eventId}/cancellation-request","href":"/api-reference/catering/request-restaurant-review-of-cancellation;-never-cancels-or-refunds"},{"title":"Pay the remaining balance of an accepted catering job","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/catering/events/{eventId}/balance-payment","href":"/api-reference/catering/pay-the-remaining-balance-of-an-accepted-catering-job"},{"title":"Show a location's public catering inquiry form","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/catering/inquiry-form","href":"/api-reference/catering/show-a-locations-public-catering-inquiry-form"},{"title":"Read a location's published catering menu","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/catering/menu","href":"/api-reference/catering/read-a-locations-published-catering-menu"},{"title":"Send a catering inquiry from a website","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/catering/inquiries","href":"/api-reference/catering/send-a-catering-inquiry-from-a-website"}]},{"group":"Loyalty","pages":[{"title":"Get the customer loyalty account, tier, membership, and wallet","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer/locations/{locationId}/loyalty/account","href":"/api-reference/loyalty/get-the-customer-loyalty-account-tier-membership-and-wallet"},{"title":"Get loyalty earning and reward options","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/carts/{cartId}/loyalty/quote","href":"/api-reference/loyalty/get-loyalty-earning-and-reward-options"},{"title":"Join the checkout's authoritative loyalty program","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/loyalty/enrollment","href":"/api-reference/loyalty/join-the-checkouts-authoritative-loyalty-program"},{"title":"Reserve and apply a loyalty reward","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/loyalty/redeem","href":"/api-reference/loyalty/reserve-and-apply-a-loyalty-reward"},{"title":"Remove the applied loyalty reward","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json delete /locations/{locationId}/carts/{cartId}/loyalty/redeem","href":"/api-reference/loyalty/remove-the-applied-loyalty-reward"},{"title":"Get customer loyalty balances and ledger","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer/locations/{locationId}/loyalty/ledger","href":"/api-reference/loyalty/get-customer-loyalty-balances-and-ledger"},{"title":"List customer loyalty claims","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer/loyalty/claims","href":"/api-reference/loyalty/list-customer-loyalty-claims"},{"title":"Submit a loyalty claim","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /customer/loyalty/claims","href":"/api-reference/loyalty/submit-a-loyalty-claim"}]},{"group":"Merchants","pages":[{"title":"Get a published merchant and its locations","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /merchant/{merchantSlug}","href":"/api-reference/merchants/get-a-published-merchant-and-its-locations"},{"title":"Resolve an exact active custom storefront hostname","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /domain-bootstrap/{hostname}","href":"/api-reference/merchants/resolve-an-exact-active-custom-storefront-hostname"}]},{"group":"Locations","pages":[{"title":"Get a published location","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationSlugOrId}","href":"/api-reference/locations/get-a-published-location"},{"title":"Calculate distance to a location","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/distance","href":"/api-reference/locations/calculate-distance-to-a-location"},{"title":"Get available order times","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/time-intervals","href":"/api-reference/locations/get-available-order-times"},{"title":"Read a location menu using an expiring merchant-issued preview capability","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/preview","href":"/api-reference/locations/read-a-location-menu-using-an-expiring-merchant-issued-preview-capability"},{"title":"Get gratuity configuration","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/gratuity","href":"/api-reference/locations/get-gratuity-configuration"},{"title":"Redirect to the hosted location storefront","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/redirect","href":"/api-reference/locations/redirect-to-the-hosted-location-storefront"}]},{"group":"Ordering Sessions","pages":[{"title":"Check ordering availability without creating a cart","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/ordering-readiness","href":"/api-reference/ordering-sessions/check-ordering-availability-without-creating-a-cart"},{"title":"Create or resume an ordering session","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/ordering-sessions","href":"/api-reference/ordering-sessions/create-or-resume-an-ordering-session"}]},{"group":"Menus","pages":[{"title":"List the published menu bundle","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/menus","href":"/api-reference/menus/list-the-published-menu-bundle"}]},{"group":"Products","pages":[{"title":"Get a published product","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/products/{productId}","href":"/api-reference/products/get-a-published-product"},{"title":"Preview an accepted configuration within a released menu","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/products/{productId}/configuration-preview","href":"/api-reference/products/preview-an-accepted-configuration-within-a-released-menu"}]},{"group":"Carts","pages":[{"title":"Persist session preferences and recalculate cart food advice","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json put /locations/{locationId}/carts/{cartId}/dietary-preferences","href":"/api-reference/carts/persist-session-preferences-and-recalculate-cart-food-advice"},{"title":"Get an authorized cart","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/carts/{cartId}","href":"/api-reference/carts/get-an-authorized-cart"},{"title":"Expire a cart","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json delete /locations/{locationId}/carts/{cartId}","href":"/api-reference/carts/expire-a-cart"},{"title":"Update cart fields","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json patch /locations/{locationId}/carts/{cartId}","href":"/api-reference/carts/update-cart-fields"},{"title":"Stream authorized cart revision events","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/carts/{cartId}/events","href":"/api-reference/carts/stream-authorized-cart-revision-events"},{"title":"Accept the current authoritative cart changes","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/catalog-revalidation/accept","href":"/api-reference/carts/accept-the-current-authoritative-cart-changes"},{"title":"Start a cart at another merchant location","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/location-switches","href":"/api-reference/carts/start-a-cart-at-another-merchant-location"},{"title":"List cart recommendations","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/carts/{cartId}/products","href":"/api-reference/carts/list-cart-recommendations"},{"title":"Update the DoorDash courier tip","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json put /locations/{locationId}/carts/{cartId}/courier-tip","href":"/api-reference/carts/update-the-doordash-courier-tip"},{"title":"Update cart gratuity","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json put /locations/{locationId}/carts/{cartId}/gratuity","href":"/api-reference/carts/update-cart-gratuity"},{"title":"Set cart delivery address","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json put /locations/{locationId}/carts/{cartId}/set-delivery","href":"/api-reference/carts/set-cart-delivery-address"},{"title":"Set table service details","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json put /locations/{locationId}/carts/{cartId}/set-table","href":"/api-reference/carts/set-table-service-details"},{"title":"Set room service details","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json put /locations/{locationId}/carts/{cartId}/set-room","href":"/api-reference/carts/set-room-service-details"},{"title":"Update cart order time","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json put /locations/{locationId}/carts/{cartId}/update-order-time","href":"/api-reference/carts/update-cart-order-time"},{"title":"Claim a guest cart for the signed-in customer","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/claim","href":"/api-reference/carts/claim-a-guest-cart-for-the-signed-in-customer"}]},{"group":"Analytics","pages":[{"title":"Record an allowlisted Storefront analytics event","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/analytics-events","href":"/api-reference/analytics/record-an-allowlisted-storefront-analytics-event"}]},{"group":"Checkout","pages":[{"title":"Validate checkout and update customer contact details","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json put /locations/{locationId}/carts/{cartId}/validate-and-update","href":"/api-reference/checkout/validate-checkout-and-update-customer-contact-details"},{"title":"Get server-evaluated checkout collection choices","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/carts/{cartId}/collection-options","href":"/api-reference/checkout/get-server-evaluated-checkout-collection-choices"},{"title":"Create a one-time checkout handoff","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/checkout-handoffs","href":"/api-reference/checkout/create-a-one-time-checkout-handoff"},{"title":"Exchange a one-time checkout handoff","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/checkout-handoffs/exchange","href":"/api-reference/checkout/exchange-a-one-time-checkout-handoff"},{"title":"Prepare hosted checkout with separate read-only return authority","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/checkout-observers","href":"/api-reference/checkout/prepare-hosted-checkout-with-separate-read-only-return-authority"},{"title":"Read persisted hosted checkout state without payment reconciliation","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/carts/{cartId}/checkout-result","href":"/api-reference/checkout/read-persisted-hosted-checkout-state-without-payment-reconciliation"},{"title":"Create or replay an order-first checkout submission","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/submissions","href":"/api-reference/checkout/create-or-replay-an-order-first-checkout-submission"},{"title":"Get a stable order-first submission outcome","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/carts/{cartId}/submissions/{attemptId}","href":"/api-reference/checkout/get-a-stable-order-first-submission-outcome"},{"title":"Resolve a submission by attempt, cart, or payment intent","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /locations/{locationId}/carts/{cartId}/submission-lookup","href":"/api-reference/checkout/resolve-a-submission-by-attempt-cart-or-payment-intent"},{"title":"Submit a rating after successful payment","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/rating","href":"/api-reference/checkout/submit-a-rating-after-successful-payment"}]},{"group":"Cart Items","pages":[{"title":"Add an item to a cart","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/items","href":"/api-reference/cart-items/add-an-item-to-a-cart"},{"title":"Remove an item from a cart","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json delete /locations/{locationId}/carts/{cartId}/items/{itemId}","href":"/api-reference/cart-items/remove-an-item-from-a-cart"},{"title":"Update a cart item quantity","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json patch /locations/{locationId}/carts/{cartId}/items/{itemId}","href":"/api-reference/cart-items/update-a-cart-item-quantity"}]},{"group":"Discounts","pages":[{"title":"Apply a discount code","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /locations/{locationId}/carts/{cartId}/discount","href":"/api-reference/discounts/apply-a-discount-code"},{"title":"Remove the applied discount","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json delete /locations/{locationId}/carts/{cartId}/discount","href":"/api-reference/discounts/remove-the-applied-discount"}]},{"group":"Customers","pages":[{"title":"Get the signed-in customer profile","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer","href":"/api-reference/customers/get-the-signed-in-customer-profile"},{"title":"Request deletion of the signed-in customer account","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json delete /customer","href":"/api-reference/customers/request-deletion-of-the-signed-in-customer-account"},{"title":"Export the signed-in customer's organization data","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer/data-export","href":"/api-reference/customers/export-the-signed-in-customers-organization-data"},{"title":"Get signed-in customer deletion progress","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer/privacy-operations/{operationId}","href":"/api-reference/customers/get-signed-in-customer-deletion-progress"},{"title":"List customer addresses","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer/addresses","href":"/api-reference/customers/list-customer-addresses"},{"title":"Create a customer address","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /customer/addresses","href":"/api-reference/customers/create-a-customer-address"},{"title":"Delete a customer address","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json delete /customer/addresses/{addressId}","href":"/api-reference/customers/delete-a-customer-address"},{"title":"Update a customer address","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json patch /customer/addresses/{addressId}","href":"/api-reference/customers/update-a-customer-address"},{"title":"List saved payment methods","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer/locations/{locationId}/saved-payments","href":"/api-reference/customers/list-saved-payment-methods"},{"title":"Delete a saved payment method","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json delete /customer/locations/{locationId}/saved-payments/{paymentId}","href":"/api-reference/customers/delete-a-saved-payment-method"},{"title":"Create a Stripe saved-card setup session","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /customer/locations/{locationId}/saved-payment-setups","href":"/api-reference/customers/create-a-stripe-saved-card-setup-session"},{"title":"Get an authoritative Stripe saved-card setup status","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer/locations/{locationId}/saved-payment-setups/{setupIntentId}","href":"/api-reference/customers/get-an-authoritative-stripe-saved-card-setup-status"}]},{"group":"Orders","pages":[{"title":"List customer orders","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer/orders","href":"/api-reference/orders/list-customer-orders"},{"title":"Claim an eligible guest order with verified customer contact","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json post /customer/order-claims","href":"/api-reference/orders/claim-an-eligible-guest-order-with-verified-customer-contact"},{"title":"Get customer order details","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /customer/orders/{orderId}","href":"/api-reference/orders/get-customer-order-details"},{"title":"Get an authorized public receipt","deprecated":null,"version":null,"openapi":"/generated/storefront.openapi.json get /receipts/{receiptId}","href":"/api-reference/orders/get-an-authorized-public-receipt"}]}]},{"group":"Staff Menu Manager authoring","icon":"utensils","pages":[{"group":"API Reference","pages":[{"title":"Review all structural and recipe uses of a shared record","deprecated":null,"version":null,"openapi":"/generated/catalog-workspace.openapi.json get /api/v1/catalog/workspace/entities/{canonicalId}/usage","href":"/api-reference/review-all-structural-and-recipe-uses-of-a-shared-record"},{"title":"Replace one ordered parent list without deleting library records","deprecated":null,"version":null,"openapi":"/generated/catalog-workspace.openapi.json put /api/v1/catalog/workspace/relationships","href":"/api-reference/replace-one-ordered-parent-list-without-deleting-library-records"},{"title":"Review explicit menu/location/channel targets and retained releases","deprecated":null,"version":null,"openapi":"/generated/catalog-workspace.openapi.json post /api/v1/catalog/workspace/publication-review","href":"/api-reference/review-explicit-menulocationchannel-targets-and-retained-releases"},{"title":"Preview one selected menu at one location/channel/time from its draft revision or an active release","deprecated":null,"version":null,"openapi":"/generated/catalog-workspace.openapi.json post /api/v1/catalog/workspace/preview","href":"/api-reference/preview-one-selected-menu-at-one-locationchanneltime-from-its-draft-revision-or-an-active-release"},{"title":"Evaluate a configured item's food from the same draft or released source as the menu preview","deprecated":null,"version":null,"openapi":"/generated/catalog-workspace.openapi.json post /api/v1/catalog/workspace/configuration-preview","href":"/api-reference/evaluate-a-configured-items-food-from-the-same-draft-or-released-source-as-the-menu-preview"},{"title":"Save or withdraw existing revisioned catering commercial facts","deprecated":null,"version":null,"openapi":"/generated/catalog-workspace.openapi.json put /api/v1/catalog/workspace/commercial-facts","href":"/api-reference/save-or-withdraw-existing-revisioned-catering-commercial-facts"},{"title":"Read draft commercial facts for a granted location","deprecated":null,"version":null,"openapi":"/generated/catalog-workspace.openapi.json get /api/v1/locations/{locationId}/catalog/commercial-facts","href":"/api-reference/read-draft-commercial-facts-for-a-granted-location"},{"title":"Change immediate location availability using the operational owner","deprecated":null,"version":null,"openapi":"/generated/catalog-workspace.openapi.json patch /api/v1/locations/{locationId}/catalog/products/{productId}/availability","href":"/api-reference/change-immediate-location-availability-using-the-operational-owner"}]}]},{"group":"Server-to-Server Integration API","icon":"server","pages":[{"group":"API Reference","pages":[{"title":"List the locations this key can read","deprecated":null,"version":null,"openapi":"/generated/integration.openapi.json get /locations","href":"/api-reference/list-the-locations-this-key-can-read"},{"title":"Read a location's identity, hours and current open state","deprecated":null,"version":null,"openapi":"/generated/integration.openapi.json get /locations/{locationId}/profile","href":"/api-reference/read-a-locations-identity-hours-and-current-open-state"},{"title":"Read the canonical order and payment projection for a cart","deprecated":null,"version":null,"openapi":"/generated/integration.openapi.json get /locations/{locationId}/carts/{cartId}/commerce-projection","href":"/api-reference/read-the-canonical-order-and-payment-projection-for-a-cart"}]}]},{"group":"Error Codes","icon":"triangle-alert","pages":[{"title":"Error Codes","href":"/guides/error-codes"}]}]},{"tab":"Components","icon":"puzzle","pages":[{"title":"Components","href":"/components/overview"}]},{"tab":"Changelog","icon":"clock","pages":[{"title":"Changelog","href":"/changelog"}]}]},"title":"Explicitly accept or decline the exact proposed catering version - Crave Cloud Documentation","buildId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","deploymentId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-26-lDe7V.js","utils-CWQmgYtH.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-4-Aw3rSD.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-C2zjXYA5.js","snippetPresets-DFmpFA7C.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-FJpQavWq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-D_GvPF7k.js","shallow-Bs2ZB0NO.js","getApiPlaygroundDisplay-DCcqJJk-.js","CodeSnippet-DzDxawVe.js","CodeSnippets-aUr7fU-7.js","Page-CT9uE8Ip.js","getPastedJson-Y1fKsj_I.js","icon-DI4zTsDr.js","MethodPill-C0nDlmSQ.js","DuplicateIcon-NUXbx2nQ.js","createIcon-BdTHrPAi.js","DynamicMarkdown-CtpgKJwj.js","SectionHeading-B3x35tOt.js","axios-vUo_bRtp.js","Markdown-3OmurJMP.js","clsx-DMKzROTp.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-1ms6tsT-.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Ke9xIMFx.js"]}