{"componentChunkName":"component---src-templates-simple-markdown-js","path":"/api/booking-flow/product/quantities/","matchPath":"","result":{"data":{"markdownRemark":{"html":"<h1 style=\"position:relative;\"><a href=\"#quantities\" aria-label=\"quantities permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"quantities\"></div>Quantities</h1>\n<p>When customers select a <a href=\"/api/booking-flow/product/ticket-holders/\">ticket holder</a>, there may be limits on bookable quantities. These limits may exist for both the timeslot and the ticket holder (formally known as the <em>product</em>). Both sets of limits should be observed in order to provide a smooth customer experience.</p>\n<h2 style=\"position:relative;\"><a href=\"#timeslot\" aria-label=\"timeslot permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"timeslot\"></div>Timeslot</h2>\n<p>At the timeslot level, quantity limits restrict the total number of products which can be added to cart for that specific date/time. There are three properties which describe a timeslot's quantity limits.</p>\n<h3 style=\"position:relative;\"><a href=\"#max_buy\" aria-label=\"max_buy permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"max_buy\"></div><code class=\"language-text\">max_buy</code></h3>\n<p>This property is the maximum quantity you are allowed to add to cart for the timeslot. Its value is based on sales restrictions (if any) and remaining seats from the <code class=\"language-text\">availability</code> property.</p>\n<p>When the value is zero, the timeslot is no longer available and its products cannot be added to cart.</p>\n<p>When the value is greater than zero, the total quantity for products added to cart must be less than or equal to this value.</p>\n<p>A value of <code class=\"language-text\">-1</code> means the timeslot has no maximum quantity requirement.</p>\n<h3 style=\"position:relative;\"><a href=\"#min_buy\" aria-label=\"min_buy permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"min_buy\"></div><code class=\"language-text\">min_buy</code></h3>\n<p>This property is the minimum quantity a timeslot <em>must</em> have if you want to add to cart. The total quantity for products added to cart must be greater than or equal to this value.</p>\n<h3 style=\"position:relative;\"><a href=\"#availability\" aria-label=\"availability permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"availability\"></div><code class=\"language-text\">availability</code></h3>\n<p>While <code class=\"language-text\">min_buy</code> and <code class=\"language-text\">max_buy</code> impose quantity limits for the timeslot, the <code class=\"language-text\">availability</code> property displays the total number of remaining seats for the timeslot.</p>\n<p>A value of <code class=\"language-text\">-1</code> means the number of remaining seats has not been specified for the timeslot.</p>\n<h2 style=\"position:relative;\"><a href=\"#ticket-holder-product\" aria-label=\"ticket holder product permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"ticket-holder-product\"></div>Ticket holder (product)</h2>\n<p>At the ticket holder level (formally known as the <em>product</em>), quantity limits apply to the specific product you want to add to cart. These may differ from the timeslot restrictions. There are three properties which describe a product's quantity limits.</p>\n<h3 style=\"position:relative;\"><a href=\"#max_buy-1\" aria-label=\"max_buy 1 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"max_buy-1\"></div><code class=\"language-text\">max_buy</code></h3>\n<p>This property refers to the maximum quantity of a product you are allowed to add to cart. Its value is based on sales restrictions (if any) and remaining seats from the <code class=\"language-text\">availability</code> property.</p>\n<p>When the value is zero, then the product is no longer available and cannot be added to cart.</p>\n<p>When the value is greater than zero, the total quantity for products added to cart must be less than or equal to this value.</p>\n<h3 style=\"position:relative;\"><a href=\"#min_buy-1\" aria-label=\"min_buy 1 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"min_buy-1\"></div><code class=\"language-text\">min_buy</code></h3>\n<p>This property refers to the minimum quantity a product <em>must</em> have if you want to add it to cart.</p>\n<h3 style=\"position:relative;\"><a href=\"#availability-1\" aria-label=\"availability 1 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"availability-1\"></div><code class=\"language-text\">availability</code></h3>\n<p>While <code class=\"language-text\">min_buy</code> and <code class=\"language-text\">max_buy</code> impose quantity limits, the <code class=\"language-text\">availability</code> property refers to the number of remaining seats for an individual product.</p>\n<p>A value of <code class=\"language-text\">-1</code> means the number of remaining seats has not been specified for the product.</p>\n<h2 style=\"position:relative;\"><a href=\"#examples\" aria-label=\"examples permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"examples\"></div>Examples</h2>\n<h3 style=\"position:relative;\"><a href=\"#timeslot-with-limits\" aria-label=\"timeslot with limits permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"timeslot-with-limits\"></div>Timeslot with limits</h3>\n<p>In the example response below, the timeslot has no specified minimum and permits a maximum of 20 seats:</p>\n<div class=\"code-wrapper\">\n        <div class=\"gatsby-code-button-container\"\n             data-toaster-id=\"60061196159012450000\"\n             data-toaster-duration=\"1500\"\n             onClick=\"copyCodeToClipboard(`{\n\t&quot;groups&quot;: [\n\t\t{\n\t\t\t[...]\n\t\t\t&quot;slots&quot;: [\n\t\t\t\t{\n\t\t\t\t\t[...]\n\t\t\t\t\t&quot;min_buy&quot;: 1,\n\t\t\t\t\t&quot;max_buy&quot;: 20,\n\t\t\t\t\t&quot;availability&quot;: 20,\n\t\t\t\t\t&quot;products&quot;: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[...]\n\t\t\t\t\t\t\t&quot;name&quot;: &quot;Adult (8+)&quot;,\n\t\t\t\t\t\t\t&quot;min_buy&quot;: 1,\n\t\t\t\t\t\t\t&quot;max_buy&quot;: 15,\n\t\t\t\t\t\t\t&quot;availability&quot;: -1,\n\t\t\t\t\t\t\t[...]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[...]\n\t\t\t\t\t\t\t&quot;name&quot;: &quot;Child (3-7)&quot;,\n\t\t\t\t\t\t\t&quot;min_buy&quot;: 1,\n\t\t\t\t\t\t\t&quot;max_buy&quot;: 15,\n\t\t\t\t\t\t\t&quot;availability&quot;: -1,\n\t\t\t\t\t\t\t[...]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n}`, `60061196159012450000`)\"\n        >\n          <div class=\"gatsby-code-button\" title=\"Copy the code snippet\">Copy</div>\n          <div class=\"done-indicator done-indicator-60061196159012450000\">Copied</div>\n        </div>\n        <div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\"><span class=\"token punctuation\">{</span>\n\t<span class=\"token property\">\"groups\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n\t\t<span class=\"token punctuation\">{</span>\n\t\t\t<span class=\"token punctuation\">[</span>...<span class=\"token punctuation\">]</span>\n\t\t\t<span class=\"token property\">\"slots\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n\t\t\t\t<span class=\"token punctuation\">{</span>\n\t\t\t\t\t<span class=\"token punctuation\">[</span>...<span class=\"token punctuation\">]</span>\n\t\t\t\t\t<span class=\"token property\">\"min_buy\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t<span class=\"token property\">\"max_buy\"</span><span class=\"token operator\">:</span> <span class=\"token number\">20</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t<span class=\"token property\">\"availability\"</span><span class=\"token operator\">:</span> <span class=\"token number\">20</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t<span class=\"token property\">\"products\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n\t\t\t\t\t\t<span class=\"token punctuation\">{</span>\n\t\t\t\t\t\t\t<span class=\"token punctuation\">[</span>...<span class=\"token punctuation\">]</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"name\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"Adult (8+)\"</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"min_buy\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"max_buy\"</span><span class=\"token operator\">:</span> <span class=\"token number\">15</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"availability\"</span><span class=\"token operator\">:</span> <span class=\"token number\">-1</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token punctuation\">[</span>...<span class=\"token punctuation\">]</span>\n\t\t\t\t\t\t<span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t<span class=\"token punctuation\">{</span>\n\t\t\t\t\t\t\t<span class=\"token punctuation\">[</span>...<span class=\"token punctuation\">]</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"name\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"Child (3-7)\"</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"min_buy\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"max_buy\"</span><span class=\"token operator\">:</span> <span class=\"token number\">15</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"availability\"</span><span class=\"token operator\">:</span> <span class=\"token number\">-1</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token punctuation\">[</span>...<span class=\"token punctuation\">]</span>\n\t\t\t\t\t\t<span class=\"token punctuation\">}</span>\n\t\t\t\t\t<span class=\"token punctuation\">]</span>\n\t\t\t\t<span class=\"token punctuation\">}</span>\n\t\t\t<span class=\"token punctuation\">]</span>\n\t\t<span class=\"token punctuation\">}</span>\n\t<span class=\"token punctuation\">]</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n      </div>\n<p>In the same example, the number of remaining seats per product is not specified. Customers can add any combination of the product quantities, provided their total quantity is not more than 20 and their individual quantities are not more than 15.</p>\n<h3 style=\"position:relative;\"><a href=\"#timeslot-with-no-limits\" aria-label=\"timeslot with no limits permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><div class=\"hidden-anchor\" id=\"timeslot-with-no-limits\"></div>Timeslot with no limits</h3>\n<p>In the example response below, there are no timeslot limits and the one available product requires a quantity of at least two in order to be added to cart:</p>\n<div class=\"code-wrapper\">\n        <div class=\"gatsby-code-button-container\"\n             data-toaster-id=\"55424700054132695000\"\n             data-toaster-duration=\"1500\"\n             onClick=\"copyCodeToClipboard(`{\n\t&quot;groups&quot;: [\n\t\t{\n\t\t\t[...]\n\t\t\t&quot;slots&quot;: [\n\t\t\t\t{\n\t\t\t\t\t[...]\n\t\t\t\t\t&quot;min_buy&quot;: 1,\n\t\t\t\t\t&quot;max_buy&quot;: -1,\n\t\t\t\t\t&quot;availability&quot;: -1,\n\t\t\t\t\t&quot;products&quot;: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[...]\n\t\t\t\t\t\t\t&quot;min_buy&quot;: 2,\n\t\t\t\t\t\t\t&quot;max_buy&quot;: 12,\n\t\t\t\t\t\t\t&quot;availability&quot;: 12,\n\t\t\t\t\t\t\t[...]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n}`, `55424700054132695000`)\"\n        >\n          <div class=\"gatsby-code-button\" title=\"Copy the code snippet\">Copy</div>\n          <div class=\"done-indicator done-indicator-55424700054132695000\">Copied</div>\n        </div>\n        <div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\"><span class=\"token punctuation\">{</span>\n\t<span class=\"token property\">\"groups\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n\t\t<span class=\"token punctuation\">{</span>\n\t\t\t<span class=\"token punctuation\">[</span>...<span class=\"token punctuation\">]</span>\n\t\t\t<span class=\"token property\">\"slots\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n\t\t\t\t<span class=\"token punctuation\">{</span>\n\t\t\t\t\t<span class=\"token punctuation\">[</span>...<span class=\"token punctuation\">]</span>\n\t\t\t\t\t<span class=\"token property\">\"min_buy\"</span><span class=\"token operator\">:</span> <span class=\"token number\">1</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t<span class=\"token property\">\"max_buy\"</span><span class=\"token operator\">:</span> <span class=\"token number\">-1</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t<span class=\"token property\">\"availability\"</span><span class=\"token operator\">:</span> <span class=\"token number\">-1</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t<span class=\"token property\">\"products\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n\t\t\t\t\t\t<span class=\"token punctuation\">{</span>\n\t\t\t\t\t\t\t<span class=\"token punctuation\">[</span>...<span class=\"token punctuation\">]</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"min_buy\"</span><span class=\"token operator\">:</span> <span class=\"token number\">2</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"max_buy\"</span><span class=\"token operator\">:</span> <span class=\"token number\">12</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token property\">\"availability\"</span><span class=\"token operator\">:</span> <span class=\"token number\">12</span><span class=\"token punctuation\">,</span>\n\t\t\t\t\t\t\t<span class=\"token punctuation\">[</span>...<span class=\"token punctuation\">]</span>\n\t\t\t\t\t\t<span class=\"token punctuation\">}</span>\n\t\t\t\t\t<span class=\"token punctuation\">]</span>\n\t\t\t\t<span class=\"token punctuation\">}</span>\n\t\t\t<span class=\"token punctuation\">]</span>\n\t\t<span class=\"token punctuation\">}</span>\n\t<span class=\"token punctuation\">]</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n      </div>\n<p>In the same example, while there is no maximum for the timeslot, the product imposes a maximum of 12. Any attempt to add a quantity greater than 12 will fail.</p>","headings":[{"value":"Quantities","depth":1},{"value":"Timeslot","depth":2},{"value":"<code class=\"language-text\">max_buy</code>","depth":3},{"value":"<code class=\"language-text\">min_buy</code>","depth":3},{"value":"<code class=\"language-text\">availability</code>","depth":3},{"value":"Ticket holder (product)","depth":2},{"value":"<code class=\"language-text\">max_buy</code>","depth":3},{"value":"<code class=\"language-text\">min_buy</code>","depth":3},{"value":"<code class=\"language-text\">availability</code>","depth":3},{"value":"Examples","depth":2},{"value":"Timeslot with limits","depth":3},{"value":"Timeslot with no limits","depth":3}]},"contentItem":{"data":{"lastModified":"2025-12-18T16:31:42.000Z","enableToc":null,"disableLastModified":null,"tocMaxDepth":null,"requestLogin":false}},"siteConfig":{"enableToc":false,"disableLastModified":false,"tocMaxDepth":4}},"pageContext":{"matchPath":"","id":"68280de3-6a7c-5efb-aa07-b93f005013d1__redocly content/api/booking-flow/product/quantities/","seo":{"title":"Quantities","description":"Customers must select a quantity within specified bounds as part of the Musement API booking flow.","image":"","keywords":null,"jsonLd":null,"lang":null,"siteUrl":null},"pageId":"api/booking-flow/product/quantities.md","pageBaseUrl":"/api/booking-flow/product/quantities","type":"markdown","toc":{"enable":true,"maxDepth":2,"headings":[{"depth":1,"value":"Quantities","id":"quantities"},{"depth":2,"value":"Timeslot","id":"timeslot"},{"depth":3,"value":"<code class=\"language-text\">max_buy</code>","id":"max_buy"},{"depth":3,"value":"<code class=\"language-text\">min_buy</code>","id":"min_buy"},{"depth":3,"value":"<code class=\"language-text\">availability</code>","id":"availability"},{"depth":2,"value":"Ticket holder (product)","id":"ticket-holder-product"},{"depth":3,"value":"<code class=\"language-text\">max_buy</code>","id":"max_buy-1"},{"depth":3,"value":"<code class=\"language-text\">min_buy</code>","id":"min_buy-1"},{"depth":3,"value":"<code class=\"language-text\">availability</code>","id":"availability-1"},{"depth":2,"value":"Examples","id":"examples"},{"depth":3,"value":"Timeslot with limits","id":"timeslot-with-limits"},{"depth":3,"value":"Timeslot with no limits","id":"timeslot-with-no-limits"}]},"data":{"title":"","redirectFrom":["/guide/availability/quantity-limits/","/api/partner/booking-flow/product/quantity-limits/","/api/partner/booking-flow/product/quantities/"],"seo":{"description":"Customers must select a quantity within specified bounds as part of the Musement API booking flow."},"toc":{"maxDepth":2}},"catalogInfo":null,"link":"/api/booking-flow/product/quantities/","sidebarName":"__alternative-sidebar__-data-24763-api-sidebars.yaml","isLanding":false,"showPrevButton":null,"showNextButton":null,"apiVersions":null,"apiVersionId":null,"isDefaultApiVersion":null}},"staticQueryHashes":["1123603147","1302185487","1344209882","1398840060","1520077861","1975142765","2667623876","2950305614","3240152602","3743992808","561138138"]}