--- title: "Industry Separation" slug: "industry-separation" updated: 2024-02-22T23:45:14Z published: 2024-02-22T23:45:14Z canonical: "help.tritondigital.com/industry-separation" --- > ## Documentation Index > Fetch the complete documentation index at: https://help.tritondigital.com/llms.txt > Use this file to discover all available pages before exploring further. # Industry Separation You can apply industry separation in advertising breaks on a per-break basis. To enable industry separation, each on-demand call must include: - a **break ID** (**[break-id](/v1/docs/ad-request-parameters#break-id)**) to identify the break; - a **break context** string (**[Break-Context](/v1/docs/ad-request-parameters#break-context)**) provided by Triton Digital. ### *How Industry Separation Works* The first on-demand ad request must include the **break ID** to identify the ad break. The response from Triton Digital includes categories and advertisers that provide the **break context** in the form of IAB information in the response headers. Subsequent on-demand requests for the same break *must also include the break ID plus the last break context that was returned in the response header*. The IAB categories and advertisers identified in that response header will be excluded from the any further responses directed towards the identified break. There is capping logic embedded in **ad pods**, but you can use the **break-id** and **Break-Context** parameters to apply industry separation *between ad pods*. For more information, see [Ad Pod Usage Notes](/v1/docs/ad-request-parameters#ad-pod-usage-notes). ### *Passing the Break ID and Break Context* The information below describes how the break ID and break context are passed. **The break ID you provide in the request:** - Must be a universally unique identifier ([UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier)). - Must be unique per listener. - Is mandatory if you want to use industry separation. - Is **automatically reset** by Triton Digital when a request is received that does not contain a break context. (I.e., after a series of requests containing a break context, if the next request does not contain a break context, then the break ID is assumed to be different and is reset.) **The break context from Triton Digital:** - Is *reset* by Triton Digital when we receive a different break ID. - Is encoded as a **character string** to to be sent back, as-is, with your next ad request. - Includes the break ID, IAB category, and advertiser ID for responses that have been returned within the same break. - Requires no special development effort on your side. - Is **ignored** by Triton Digital if it is invalid. The **preferred way** to return the break context is via the **[Break-Context](/v1/docs/ad-request-parameters#break-context)** **header parameter**, although it can also be passed via the **break-context** query parameter. #### Sequence Example The example below shows the sequence using *query parameters*, as this is easier to illustrate. **Triton Digital strongly recommends using header parameters instead.** **Call 1: break-id = test803** `https://xxx.live.streamtheworld.com/ondemand/ars?stn=CTH_DEMO_04&type=midroll&lsid=12365465&break-id=test803` **Result:** Break context is returned, encoded with category by advertiser. - Break-Context header: `eyJicmVha0lkIjoidGVzdDgwMyIsImluZHVzdHJ5Ijp7IklBQjgtMyI6MTExMX19` **Call 2: break-id = test803 + previous break-context (returned for call 1)** `https://xxx.live.streamtheworld.com/ondemand/ars?stn=CTH_DEMO_04&type=midroll&lsid=12365465&break-id=test803&break-context=eyJicmVha0lkIjoidGVzdDgwMyIsImluZHVzdHJ5Ijp7IklBQjgtMyI6MTExMX19` **Result:** Break context returned with accumulated categories and advertisers. - Break-Context header: `eyJicmVha0lkIjoidGVzdDgwMyIsImluZHVzdHJ5Ijp7IklBQjgtMyI6MTExMSwiSUFCOC00IjoxMTExfX0=` **Call 3: break-id = test803 + previous break-context (returned for call 2)** `https://xxx.live.streamtheworld.com/ondemand/ars?stn=CTH_DEMO_04&type=midroll&lsid=12365465&break-id=test803&break-context=eyJicmVha0lkIjoidGVzdDgwMyIsImluZHVzdHJ5Ijp7IklBQjgtMyI6MTExMSwiSUFCOC00IjoxMTExfX0=` **Result:** Break context returned with accumulated categories and advertisers.