Gets a collection, for the heading of a match or show screen. Add include=experiences to get its experiences too, in its order, so one request builds the screen. An offline collection answers 404, like one that doesn’t exist.
GET
/
collections
/
{collection_id}
Get a collection
curl --request GET \ --url https://api.dizplai.com/v1/collections/{collection_id} \ --header 'x-api-key: <api-key>'
Your organisation's API key, supplied by Dizplai. Send it on every request. It isn't a secret, so it can ship in your app: what a fan does is protected by the fan's token.
Path Parameters
collection_id
string<uuid>
required
The collection's ID, from GET /collections.
A collection's ID, a UUID.
Example:
"0192fa7b-8b48-768f-90d1-d3ed6f427962"
Query Parameters
include
enum<string>
experiences adds the collection's experiences, in its order: every one that's scheduled, live or closed, in the same shape as List experiences. Leave it out for just the collection.
Available options:
experiences
Response
The collection, and its experiences in its order if you asked for them. Read it when the screen opens and every 30 seconds after, and read an open poll every 10 seconds.
A collection, as Get a collection returns it, with its experiences when asked for.
id
string<uuid>
required
A collection's ID, a UUID.
Example:
"0192fa7b-8b48-768f-90d1-d3ed6f427962"
name
string
required
The collection's name, such as the match, for a screen's heading.
status
string
required
Whether fans can see the collection. offline: not listed, and getting it answers 404. live: listed and shown. Its experiences keep their own status. More statuses may be added: treat one you don't know as offline.
starts_at
string<date-time> | null
required
The match or show's start time, for display. It doesn't open any experience.
ends_at
string<date-time> | null
required
The match or show's end time, for display. It doesn't close any experience.
metadata
object
required
Tags for finding and grouping things, such as the match or show they're about. Filter lists by them with metadata[key]=value. Up to 50 keys of up to 40 characters, values up to 500. One key is reserved, event_id, set by your producers; every other key is yours, and never interpreted.
Show child attributes
locale
string
required
The language the collection's text is written in, such as en-GB.
Maximum string length: 35
Pattern: ^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$
Example:
"en-GB"
created_at
string<date-time>
required
When the collection was created.
updated_at
string<date-time>
required
When the collection last changed.
experiences
(Poll · object | Fan Voice · object)[]
Only with include=experiences. The collection's experiences, in its order: every one that's scheduled, live or closed, each with its type and in the same shape as List experiences. Draw the types your app knows, and skip any type it doesn't. A collection holds at most 200.
Maximum array length: 200
One experience, shaped by its type: skip a type you don't know. Polls and Fan Voices today; more types are added, never removed.
Poll
Fan Voice
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Dizplai API","colors":{"primary":"#A00066","light":"#FF10A8","dark":"#DC008C"},"logo":{"light":"https://mintcdn.com/dizplai-77024896/lmZzH95OOSORiYIT/logo/light.png?fit=max\u0026auto=format\u0026n=lmZzH95OOSORiYIT\u0026q=85\u0026s=7ba40c5f8a08a90459fbaced5737c13c","dark":"https://mintcdn.com/dizplai-77024896/lmZzH95OOSORiYIT/logo/dark.png?fit=max\u0026auto=format\u0026n=lmZzH95OOSORiYIT\u0026q=85\u0026s=8286d2098664f6af36a26a60667c4e0a"},"favicon":{"light":"https://mintcdn.com/dizplai-77024896/lmZzH95OOSORiYIT/favicon/light.png?fit=max\u0026auto=format\u0026n=lmZzH95OOSORiYIT\u0026q=85\u0026s=8f0db8c7cd1f3902780d7961ec3d1f13","dark":"https://mintcdn.com/dizplai-77024896/lmZzH95OOSORiYIT/favicon/dark.png?fit=max\u0026auto=format\u0026n=lmZzH95OOSORiYIT\u0026q=85\u0026s=5a704a691408bfbcc241ceb17472db24"},"appearance":{"default":"dark"},"background":{"decoration":"gradient","color":{"light":"#FAF4FF","dark":"#11061B"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/dizplai"}},"fonts":{"heading":{"family":"Outfit"},"body":{"family":"Outfit"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"dizplai-77024896","hasAudioNarration":false,"actualSubdomain":"dizplai-77024896","customDomains":["developer.dizplai.com"],"gitSource":{"type":"github","owner":"dizplai","repo":"dizplai-platform","deployBranch":"api-docs-site","contentDirectory":"api-docs","isPrivate":true,"mountPath":"","label":"","_id":"6adb4bbb93b56c4f04aae929"},"feedback":{"thumbs":false},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"DISABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6af588fa55c1ebcca521ce1b","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"API reference","count":15},{"language":"default","tag":"Experiences API","count":12},{"language":"default","tag":"Guides","count":6},{"language":"default","tag":"Experiences","count":5},{"language":"default","tag":"Fan Voices","count":5},{"language":"default","tag":"Polls","count":4},{"language":"default","tag":"Using the API","count":3},{"language":"default","tag":"Introduction","count":2},{"language":"default","tag":"Collections","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","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":"rbac-expansion","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":"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":"full-page-search","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":"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":"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":"turbopuffer-dual-write","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},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","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}],"privacy":{"consentBanner":{"enabled":true}},"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"api-reference/collections/get-a-collection","slug":"/api-reference/collections/get-a-collection","pageMetadata":{"title":"Get a collection","description":"Gets a collection, for the heading of a match or show screen. Add include=experiences to get its experiences too, in its order, so one request builds the screen. An offline collection answers 404, like one that doesn't exist.","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /collections/{collection_id}","href":"/api-reference/collections/get-a-collection","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Gets a collection, for the heading of a match or show screen. Add include=experiences to get its experiences too, in its order, so one request builds the screen. An offline collection answers 404, like one that doesn’t exist.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"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":"Get a collection","description":"Gets a collection, for the heading of a match or show screen. Add include=experiences to get its experiences too, in its order, so one request builds the screen. An offline collection answers 404, like one that doesn't exist.","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /collections/{collection_id}","href":"/api-reference/collections/get-a-collection","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Collections"],"operationId":"getCollection","summary":"Get a collection","description":"Gets a collection, for the heading of a match or show screen. Add include=experiences to get its experiences too, in its order, so one request builds the screen. An offline collection answers 404, like one that doesn't exist.","parameters":["f76d357d-1468-4b7d-a559-572775f48c5f"],"responses":{"200":"a42c64ee-1241-445d-aeb5-b11ed883828f","400":"3d42ed44-fb1e-42f6-a76b-9349a365808e","401":"c99bc26f-5d1f-44c3-a5be-7bb8fd4abf31","403":"fea214a0-747a-4788-8b1d-73541926a5c2","404":"2188d79c-00a9-46ae-83f0-b0eb0ed0f944","429":"3a59357c-854a-4b46-aec3-4477517ec240","503":"4f41a4e2-7137-4f13-991c-9e567ed6b403"},"method":"get","type":"path","servers":["8f572995-de18-42e6-9b79-a8b6680b8360"],"security":["cedc2567-5c5e-4b8e-8b1a-ed404edd7bf8"],"path":"/collections/{collection_id}","baseUrlOptions":["https://api.dizplai.com/v1"],"title":"Get a collection","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"f76d357d-1468-4b7d-a559-572775f48c5f":{"name":"include","in":"query","required":false,"schema":{"type":"string","enum":["experiences"],"isRequired":false,"description":"experiences adds the collection's experiences, in its order: every one that's scheduled, live or closed, in the same shape as List experiences. Leave it out for just the collection.","uniqueKey":"","typeLabel":"enum\u003cstring>"},"description":"experiences adds the collection's experiences, in its order: every one that's scheduled, live or closed, in the same shape as List experiences. Leave it out for just the collection."},"c5453fb6-35f5-48dd-adb3-e4f890b0c45d":{"name":"collection_id","in":"path","required":true,"description":"The collection's ID, from GET /collections.","schema":{"type":"string","description":"The collection's ID, from GET /collections.\nA collection's ID, a UUID.","format":"uuid","examples":["0192fa7b-8b48-768f-90d1-d3ed6f427962"],"isRequired":true,"uniqueKey":"","typeLabel":"string\u003cuuid>"}}},"responses":{"a42c64ee-1241-445d-aeb5-b11ed883828f":{"description":"The collection, and its experiences in its order if you asked for them. Read it when the screen opens and every 30 seconds after, and read an open poll every 10 seconds.","headers":{"x-request-id":{"description":"The request's ID. Quote it to support.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","description":"A collection, as Get a collection returns it, with its experiences when asked for.","required":["id","name","status","starts_at","ends_at","metadata","locale","created_at","updated_at"],"properties":{"id":{"type":"string","description":"A collection's ID, a UUID.","format":"uuid","examples":["0192fa7b-8b48-768f-90d1-d3ed6f427962"],"isRequired":true,"uniqueKey":"id","typeLabel":"string\u003cuuid>"},"name":{"type":"string","description":"The collection's name, such as the match, for a screen's heading.","isRequired":true,"uniqueKey":"name","typeLabel":"string"},"status":{"type":"string","x-extensible-enum":["offline","live"],"description":"Whether fans can see the collection. offline: not listed, and getting it answers 404. live: listed and shown. Its experiences keep their own status. More statuses may be added: treat one you don't know as offline.","isRequired":true,"uniqueKey":"status","typeLabel":"string"},"starts_at":{"oneOf":[{"type":"string","format":"date-time","description":"The match or show's start time, for display. It doesn't open any experience.","isRequired":true,"uniqueKey":"starts_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"The match or show's start time, for display. It doesn't open any experience.","isRequired":true,"uniqueKey":"starts_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"starts_at","typeLabel":"string\u003cdate-time> | null"},"ends_at":{"oneOf":[{"type":"string","format":"date-time","description":"The match or show's end time, for display. It doesn't close any experience.","isRequired":true,"uniqueKey":"ends_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"The match or show's end time, for display. It doesn't close any experience.","isRequired":true,"uniqueKey":"ends_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"ends_at","typeLabel":"string\u003cdate-time> | null"},"metadata":{"type":"object","maxProperties":50,"propertyNames":{"maxLength":40},"additionalProperties":{"type":"string","maxLength":500,"uniqueKey":"metadata.additionalProperties","typeLabel":"string"},"description":"Tags for finding and grouping things, such as the match or show they're about. Filter lists by them with `metadata[key]=value`. Up to 50 keys of up to 40 characters, values up to 500. One key is reserved, event_id, set by your producers; every other key is yours, and never interpreted.","properties":{"event_id":{"type":"string","maxLength":64,"description":"An ID for the match or show this is about, set by your producers. Reserved.","uniqueKey":"metadata.event_id","typeLabel":"string"}},"isRequired":true,"uniqueKey":"metadata","typeLabel":"object"},"locale":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","examples":["en-GB"],"description":"The language the collection's text is written in, such as en-GB.","x-extensible-enum":["en-GB"],"isRequired":true,"uniqueKey":"locale","typeLabel":"string"},"created_at":{"type":"string","format":"date-time","description":"When the collection was created.","isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","description":"When the collection last changed.","isRequired":true,"uniqueKey":"updated_at","typeLabel":"string\u003cdate-time>"},"experiences":{"type":"array","maxItems":200,"description":"Only with include=experiences. The collection's experiences, in its order: every one that's scheduled, live or closed, each with its type and in the same shape as List experiences. Draw the types your app knows, and skip any type it doesn't. A collection holds at most 200.","items":{"oneOf":[{"type":"object","title":"Poll","description":"One experience, shaped by its type: skip a type you don't know. Polls and Fan Voices today; more types are added, never removed.","required":["id","type","status","starts_at","ends_at","metadata","locale","created_at","updated_at","results_visibility","results","requires_sign_in","question","options"],"properties":{"id":{"type":"string","description":"A poll's ID, a UUID.","format":"uuid","examples":["0192fa7b-8d41-7bbc-9b58-02311fc6ef8e"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.id","typeLabel":"string\u003cuuid>"},"type":{"type":"string","enum":["poll"],"description":"Tells polls apart from other experiences in a list.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.type","typeLabel":"enum\u003cstring>"},"status":{"type":"string","description":"Whether fans can take part now. scheduled: coming up, and goes live at starts_at. live: taking votes or messages. closed: taking part has stopped; it can reopen. An experience your producers take down or delete drops out of lists, and getting it answers 404. More statuses may be added: treat one you don't know as closed to taking part.","x-extensible-enum":["scheduled","live","closed"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.status","typeLabel":"string"},"starts_at":{"oneOf":[{"type":"string","format":"date-time","description":"When it's due to open. Null if your producers open it by hand.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.starts_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"When it's due to open. Null if your producers open it by hand.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.starts_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.starts_at","typeLabel":"string\u003cdate-time> | null"},"ends_at":{"oneOf":[{"type":"string","format":"date-time","description":"When it's due to close. Null if no closing time is set.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.ends_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"When it's due to close. Null if no closing time is set.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.ends_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.ends_at","typeLabel":"string\u003cdate-time> | null"},"metadata":{"type":"object","maxProperties":50,"propertyNames":{"maxLength":40},"additionalProperties":{"type":"string","maxLength":500,"uniqueKey":"experiences.items.[INDEX].oneOf.0.metadata.additionalProperties","typeLabel":"string"},"description":"Tags for finding and grouping things, such as the match or show they're about. Filter lists by them with `metadata[key]=value`. Up to 50 keys of up to 40 characters, values up to 500. One key is reserved, event_id, set by your producers; every other key is yours, and never interpreted.","properties":{"event_id":{"type":"string","maxLength":64,"description":"An ID for the match or show this is about, set by your producers. Reserved.","uniqueKey":"experiences.items.[INDEX].oneOf.0.metadata.event_id","typeLabel":"string"}},"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.metadata","typeLabel":"object"},"locale":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","examples":["en-GB"],"description":"The language the experience's text is written in, such as en-GB.","x-extensible-enum":["en-GB"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.locale","typeLabel":"string"},"created_at":{"type":"string","format":"date-time","description":"When the poll was created.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","description":"Changes when anything a fan can see changes, including visible results, but not when only withheld results change.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.updated_at","typeLabel":"string\u003cdate-time>"},"results_visibility":{"type":"string","x-extensible-enum":["live","after_vote","after_close","hidden"],"description":"When fans may see results. live: always. after_vote: once they've voted, or once voting has stopped; the results are in every read, so your app hides them until then. after_close: once voting has stopped; until then results are withheld. hidden: never; results are always withheld, for on air or your own team only. Results that mustn't be seen early use after_close or hidden. More values may be added: whatever the value, results.state says what to show now.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results_visibility","typeLabel":"string"},"results":{"oneOf":[{"type":"object","title":"Withheld","description":"What to show for the poll's results, by state. withheld: fans may not see them yet, as results_visibility says, and nothing else is sent. live: the current counts. final: voting has stopped and these are the confirmed totals, which can differ from the last live numbers, and go back to live if the poll opens again. Counts are never null: 0 means no votes. More states may be added: treat a state you don't know as withheld: show no counts.","required":["state"],"properties":{"state":{"type":"string","description":"What to show now. Treat a state you don't know as withheld: show no counts.","enum":["withheld"],"x-extensible-enum":["withheld","live","final"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.0.state","typeLabel":"enum\u003cstring>"}},"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.0","typeLabel":"Withheld · object"},{"type":"object","title":"Counted","description":"What to show for the poll's results, by state. withheld: fans may not see them yet, as results_visibility says, and nothing else is sent. live: the current counts. final: voting has stopped and these are the confirmed totals, which can differ from the last live numbers, and go back to live if the poll opens again. Counts are never null: 0 means no votes. More states may be added: treat a state you don't know as withheld: show no counts.","required":["state","total_votes","options"],"properties":{"state":{"type":"string","description":"What to show now. Treat a state you don't know as withheld: show no counts.","enum":["live","final"],"x-extensible-enum":["withheld","live","final"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.1.state","typeLabel":"enum\u003cstring>"},"total_votes":{"type":"integer","minimum":0,"description":"Fans who voted. Never null: 0 means no votes.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.1.total_votes","typeLabel":"integer"},"options":{"type":"array","description":"Every option, in the poll's order. Match option_id to the poll's options[].id for its label.","items":{"type":"object","required":["option_id","votes","percent"],"properties":{"option_id":{"type":"string","description":"An option's ID, what a fan's vote sends. Created with the option, opaque, and never reused, even if the option is removed before the poll goes live. Correcting an option's label keeps its ID.","format":"uuid","examples":["01a1f97a-b538-778f-bad7-0c1c35ff701c"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.1.options.items.[INDEX].option_id","typeLabel":"string\u003cuuid>"},"votes":{"type":"integer","minimum":0,"description":"Votes counted. Never null: 0 means no votes.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.1.options.items.[INDEX].votes","typeLabel":"integer"},"percent":{"type":"number","minimum":0,"maximum":100,"description":"Of total_votes, 0 to 100, rounded to one decimal place, so they may not add up to exactly 100.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.1.options.items.[INDEX].percent","typeLabel":"number"}},"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.1.options.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.1.options","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.1","typeLabel":"Counted · object"},{"type":"object","title":"Another state","description":"What to show for the poll's results, by state. withheld: fans may not see them yet, as results_visibility says, and nothing else is sent. live: the current counts. final: voting has stopped and these are the confirmed totals, which can differ from the last live numbers, and go back to live if the poll opens again. Counts are never null: 0 means no votes. More states may be added: treat a state you don't know as withheld: show no counts.","required":["state"],"properties":{"state":{"type":"string","description":"What to show now. Treat a state you don't know as withheld: show no counts.","x-extensible-enum":["withheld","live","final"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.2.state","typeLabel":"string"}},"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results.oneOf.2","typeLabel":"Another state · object"}],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.results","typeLabel":"Withheld · object | Counted · object | Another state · object"},"requires_sign_in":{"type":"boolean","description":"True if only signed-in fans may take part: show a guest your sign-in prompt instead. A guest's vote or message here answers 403 (sign_in_required). Voice notes and photos are always for signed-in fans.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.requires_sign_in","typeLabel":"boolean"},"question":{"type":"string","minLength":1,"maxLength":300,"description":"The question fans answer.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.question","typeLabel":"string"},"options":{"type":"array","minItems":2,"maxItems":10,"description":"Every option, 2 to 10, in the poll's order. Once the poll has gone live, its number of options is fixed: your producers can correct an option's label, such as a typo, but can't add or remove options.","items":{"type":"object","required":["id","label"],"properties":{"id":{"type":"string","description":"An option's ID, what a fan's vote sends. Created with the option, opaque, and never reused, even if the option is removed before the poll goes live. Correcting an option's label keeps its ID.","format":"uuid","examples":["01a1f97a-b538-778f-bad7-0c1c35ff701c"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.options.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"label":{"type":"string","description":"The answer, as fans see it.","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.options.items.[INDEX].label","typeLabel":"string"}},"uniqueKey":"experiences.items.[INDEX].oneOf.0.options.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.0.options","typeLabel":"object[]"},"subtitle":{"type":"string","maxLength":300,"description":"Supporting text under the question.","uniqueKey":"experiences.items.[INDEX].oneOf.0.subtitle","typeLabel":"string"}},"uniqueKey":"experiences.items.[INDEX].oneOf.0","typeLabel":"Poll · object"},{"type":"object","title":"Fan Voice","description":"One experience, shaped by its type: skip a type you don't know. Polls and Fan Voices today; more types are added, never removed.","required":["id","type","status","starts_at","ends_at","metadata","locale","created_at","updated_at","requires_sign_in","prompt","limits","kinds"],"properties":{"id":{"type":"string","description":"A Fan Voice's ID, a UUID.","format":"uuid","examples":["0192fa7b-a1a5-7ae6-8820-782ce84e0f49"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.id","typeLabel":"string\u003cuuid>"},"type":{"type":"string","enum":["fan_voice"],"description":"Tells Fan Voices apart from other experiences in a list.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.type","typeLabel":"enum\u003cstring>"},"status":{"type":"string","description":"Whether fans can take part now. scheduled: coming up, and goes live at starts_at. live: taking votes or messages. closed: taking part has stopped; it can reopen. An experience your producers take down or delete drops out of lists, and getting it answers 404. More statuses may be added: treat one you don't know as closed to taking part.","x-extensible-enum":["scheduled","live","closed"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.status","typeLabel":"string"},"starts_at":{"oneOf":[{"type":"string","format":"date-time","description":"When it's due to open. Null if your producers open it by hand.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.starts_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"When it's due to open. Null if your producers open it by hand.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.starts_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.starts_at","typeLabel":"string\u003cdate-time> | null"},"ends_at":{"oneOf":[{"type":"string","format":"date-time","description":"When it's due to close. Null if no closing time is set.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.ends_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"When it's due to close. Null if no closing time is set.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.ends_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.ends_at","typeLabel":"string\u003cdate-time> | null"},"metadata":{"type":"object","maxProperties":50,"propertyNames":{"maxLength":40},"additionalProperties":{"type":"string","maxLength":500,"uniqueKey":"experiences.items.[INDEX].oneOf.1.metadata.additionalProperties","typeLabel":"string"},"description":"Tags for finding and grouping things, such as the match or show they're about. Filter lists by them with `metadata[key]=value`. Up to 50 keys of up to 40 characters, values up to 500. One key is reserved, event_id, set by your producers; every other key is yours, and never interpreted.","properties":{"event_id":{"type":"string","maxLength":64,"description":"An ID for the match or show this is about, set by your producers. Reserved.","uniqueKey":"experiences.items.[INDEX].oneOf.1.metadata.event_id","typeLabel":"string"}},"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.metadata","typeLabel":"object"},"locale":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","examples":["en-GB"],"description":"The language the experience's text is written in, such as en-GB.","x-extensible-enum":["en-GB"],"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.locale","typeLabel":"string"},"created_at":{"type":"string","format":"date-time","description":"When the Fan Voice was created.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","description":"Changes when anything a fan can see changes.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.updated_at","typeLabel":"string\u003cdate-time>"},"requires_sign_in":{"type":"boolean","description":"True if only signed-in fans may take part: show a guest your sign-in prompt instead. A guest's vote or message here answers 403 (sign_in_required). Voice notes and photos are always for signed-in fans.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.requires_sign_in","typeLabel":"boolean"},"prompt":{"type":"string","minLength":1,"maxLength":500,"description":"What fans are asked to reply to.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.prompt","typeLabel":"string"},"kinds":{"type":"array","uniqueItems":true,"items":{"type":"string","x-extensible-enum":["text","voice","image"],"uniqueKey":"experiences.items.[INDEX].oneOf.1.kinds.items.[INDEX]","typeLabel":"string"},"description":"What fans may send: text, voice (voice notes) or image (photos). More kinds may be added: offer only the ones your app knows. Voice notes and photos are for signed-in fans only, with fixed limits: a voice note is audio/mp4 or audio/webm, up to 5 MB and 60 seconds; a photo is image/jpeg, image/png, image/heic or image/webp, up to 10 MB.","isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.kinds","typeLabel":"string[]"},"limits":{"type":"object","required":["max_text_length","per_fan"],"description":"`max_text_length`, 1 to 500, and `per_fan`, how many messages of each kind one fan may send, 1 to 100.","properties":{"max_text_length":{"type":"integer","description":"The longest text message, in characters.","minimum":1,"maximum":500,"default":500,"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.limits.max_text_length","typeLabel":"integer"},"per_fan":{"type":"object","additionalProperties":{"type":"integer","minimum":1,"maximum":100,"uniqueKey":"experiences.items.[INDEX].oneOf.1.limits.per_fan.additionalProperties","typeLabel":"integer"},"description":"How many messages of each kind one fan may send to this Fan Voice, keyed by kind. Every message the fan sends counts, approved or not, and the count never resets, even if the Fan Voice reopens. To show what's left, count the fan's messages from `GET /fan-voices/{fan_voice_id}/messages/me`. More kinds may be added: ignore one you don't know.","properties":{"text":{"type":"integer","description":"Text messages each fan may send.","minimum":1,"maximum":100,"default":3,"uniqueKey":"experiences.items.[INDEX].oneOf.1.limits.per_fan.text","typeLabel":"integer"},"voice":{"type":"integer","description":"Voice notes each fan may send.","minimum":1,"maximum":100,"default":1,"uniqueKey":"experiences.items.[INDEX].oneOf.1.limits.per_fan.voice","typeLabel":"integer"},"image":{"type":"integer","description":"Photos each fan may send.","minimum":1,"maximum":100,"default":1,"uniqueKey":"experiences.items.[INDEX].oneOf.1.limits.per_fan.image","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.limits.per_fan","typeLabel":"object"}},"isRequired":true,"uniqueKey":"experiences.items.[INDEX].oneOf.1.limits","typeLabel":"object"},"placeholder":{"type":"string","description":"Hint text for the message box, such as Your message.","maxLength":500,"uniqueKey":"experiences.items.[INDEX].oneOf.1.placeholder","typeLabel":"string"},"confirmation_message":{"type":"string","maxLength":500,"description":"What to show the fan once their message is sent.","uniqueKey":"experiences.items.[INDEX].oneOf.1.confirmation_message","typeLabel":"string"}},"uniqueKey":"experiences.items.[INDEX].oneOf.1","typeLabel":"Fan Voice · object"}],"uniqueKey":"experiences.items.[INDEX]","typeLabel":"Poll · object | Fan Voice · object"},"uniqueKey":"experiences","typeLabel":"(Poll · object | Fan Voice · object)[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"collection":{"title":"collection","value":{"id":"0192fa7b-8b48-768f-90d1-d3ed6f427962","name":"Hartley Town v Riverside","status":"live","starts_at":"2026-11-21T19:45:00Z","ends_at":null,"metadata":{"event_id":"ev_2041","round":"QF"},"locale":"en-GB","created_at":"2026-11-20T15:02:11Z","updated_at":"2026-11-21T20:41:07Z"}},"with-experiences":{"title":"with-experiences","summary":"With include=experiences","value":{"id":"0192fa7b-8b48-768f-90d1-d3ed6f427962","name":"Hartley Town v Riverside","status":"live","starts_at":"2026-11-21T19:45:00Z","ends_at":null,"metadata":{"event_id":"ev_2041","round":"QF"},"locale":"en-GB","created_at":"2026-11-20T15:02:11Z","updated_at":"2026-11-21T20:41:07Z","experiences":[{"id":"0192fa7b-a1a5-7ae6-8820-782ce84e0f49","type":"fan_voice","status":"live","starts_at":null,"ends_at":null,"metadata":{"event_id":"ev_2041"},"locale":"en-GB","created_at":"2026-11-20T15:02:11Z","updated_at":"2026-11-21T20:41:07Z","requires_sign_in":false,"prompt":"What's your message for the team?","placeholder":"Type your message","confirmation_message":"Thanks! Your message is with the team.","kinds":["text","voice","image"],"limits":{"max_text_length":280,"per_fan":{"text":3,"voice":1,"image":1}}},{"id":"0192fa7b-8d41-7bbc-9b58-02311fc6ef8e","type":"poll","status":"live","starts_at":null,"ends_at":null,"metadata":{"event_id":"ev_2041"},"locale":"en-GB","created_at":"2026-11-20T15:02:11Z","updated_at":"2026-11-21T20:41:07Z","results_visibility":"after_vote","requires_sign_in":false,"question":"Who was your player of the match?","options":[{"id":"01a1f97a-b538-778f-bad7-0c1c35ff701c","label":"Jordan Mensah"},{"id":"01a1f97a-b5a7-7b5b-9458-203a658c1e8d","label":"Kai Brennan"},{"id":"01a1f97a-b5cc-7fcf-989c-56ebe53808c5","label":"Amara Osei"}],"results":{"state":"live","total_votes":4210,"options":[{"option_id":"01a1f97a-b538-778f-bad7-0c1c35ff701c","votes":2105,"percent":50},{"option_id":"01a1f97a-b5a7-7b5b-9458-203a658c1e8d","votes":1263,"percent":30},{"option_id":"01a1f97a-b5cc-7fcf-989c-56ebe53808c5","votes":842,"percent":20}]}}]}}},"exampleType":"examples"}},"exampleType":"examples"},"3d42ed44-fb1e-42f6-a76b-9349a365808e":{"description":"A parameter is invalid (invalid_request).","headers":{"x-request-id":{"description":"The request's ID. Quote it to support.","schema":{"type":"string"}}},"content":{"application/problem+json":{"schema":{"type":"object","required":["type","code","title","status","request_id"],"description":"What went wrong, in the same shape for every error: an RFC 9457 problem with a stable code. Act on code, which never changes meaning within a version, and on the HTTP status for a code you don't know. Quote request_id to support.","properties":{"type":{"type":"string","format":"uri-reference","description":"One URL per code: https://api.dizplai.com/problems/ followed by the code with hyphens, such as https://api.dizplai.com/problems/unknown-option for unknown_option.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"code":{"type":"string","x-extensible-enum":["invalid_request","unknown_option","not_open","media_not_accepted","invalid_upload","invalid_api_key","invalid_fan_token","forbidden","fan_blocked","sign_in_required","message_limit_reached","not_found","idempotency_conflict","rate_limited","unavailable"],"description":"More codes may be added: for one you don't know, act on the HTTP status.\n\n| code | Status | Retry? | Meaning |\n|---|---|---|---|\n| invalid_request | 400 | No | The body or a parameter is invalid, or a required header such as Idempotency-Key is missing. |\n| unknown_option | 400 | No; read the poll again | An option ID the poll doesn't have. |\n| not_open | 400 | No; read the experience again | The experience isn't taking votes or messages: it isn't live yet, or votes have stopped. |\n| media_not_accepted | 400 | No | The Fan Voice doesn't take this kind of message, or the file's type or size is outside the limits. |\n| invalid_upload | 400 | No; upload again | The upload_id is unknown, already used or another fan's, or the file was never uploaded or its type or size differs from what you asked for. |\n| invalid_api_key | 401 | No | A missing or invalid x-api-key. |\n| invalid_fan_token | 401 | Once, with a fresh token | A missing, invalid or expired fan token, or one from another organisation's login. It carries WWW-Authenticate. |\n| forbidden | 403 | No | Your API key isn't allowed to make this request. |\n| fan_blocked | 403 | No | The fan is blocked from this Fan Voice. |\n| sign_in_required | 403 | No; ask the fan to sign in | A guest on an experience that needs a signed-in fan, or a guest's voice note or photo. |\n| message_limit_reached | 403 | No | The fan has used up this Fan Voice's messages of this kind. |\n| not_found | 404 | No | Not found, or not yours. |\n| idempotency_conflict | 409 | No | An Idempotency-Key reused with a different body while it's kept: 24 hours, or 5 minutes for an upload. |\n| rate_limited | 429 | After Retry-After | Too many requests. |\n| unavailable | 503 | After Retry-After | Votes or messages can't be taken right now. |\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"title":{"type":"string","description":"A short title for the code, such as Not open. It doesn't change.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code.","minimum":400,"maximum":599,"isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"request_id":{"type":"string","description":"Matches the x-request-id response header.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"detail":{"type":"string","description":"What went wrong, in plain English. It can change, so don't act on it.","uniqueKey":"detail","typeLabel":"string"},"errors":{"type":"array","description":"Field-level validation errors, with invalid_request.","items":{"type":"object","required":["pointer","message"],"properties":{"pointer":{"type":"string","description":"A JSON Pointer to the field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].pointer","typeLabel":"string"},"message":{"type":"string","description":"What's wrong with that field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"invalid_request":{"title":"invalid_request","summary":"invalid_request","value":{"type":"https://api.dizplai.com/problems/invalid-request","code":"invalid_request","title":"Invalid request","status":400,"detail":"options must have at least 1 item.","request_id":"01JBX8P2R4T6V8X0Z2B4D6F8H0"}}},"exampleType":"examples"}},"exampleType":"examples"},"c99bc26f-5d1f-44c3-a5be-7bb8fd4abf31":{"description":"A missing or invalid x-api-key (invalid_api_key). Don't retry: check the key.","headers":{"x-request-id":{"description":"The request's ID. Quote it to support.","schema":{"type":"string"}}},"content":{"application/problem+json":{"schema":{"type":"object","required":["type","code","title","status","request_id"],"description":"What went wrong, in the same shape for every error: an RFC 9457 problem with a stable code. Act on code, which never changes meaning within a version, and on the HTTP status for a code you don't know. Quote request_id to support.","properties":{"type":{"type":"string","format":"uri-reference","description":"One URL per code: https://api.dizplai.com/problems/ followed by the code with hyphens, such as https://api.dizplai.com/problems/unknown-option for unknown_option.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"code":{"type":"string","x-extensible-enum":["invalid_request","unknown_option","not_open","media_not_accepted","invalid_upload","invalid_api_key","invalid_fan_token","forbidden","fan_blocked","sign_in_required","message_limit_reached","not_found","idempotency_conflict","rate_limited","unavailable"],"description":"More codes may be added: for one you don't know, act on the HTTP status.\n\n| code | Status | Retry? | Meaning |\n|---|---|---|---|\n| invalid_request | 400 | No | The body or a parameter is invalid, or a required header such as Idempotency-Key is missing. |\n| unknown_option | 400 | No; read the poll again | An option ID the poll doesn't have. |\n| not_open | 400 | No; read the experience again | The experience isn't taking votes or messages: it isn't live yet, or votes have stopped. |\n| media_not_accepted | 400 | No | The Fan Voice doesn't take this kind of message, or the file's type or size is outside the limits. |\n| invalid_upload | 400 | No; upload again | The upload_id is unknown, already used or another fan's, or the file was never uploaded or its type or size differs from what you asked for. |\n| invalid_api_key | 401 | No | A missing or invalid x-api-key. |\n| invalid_fan_token | 401 | Once, with a fresh token | A missing, invalid or expired fan token, or one from another organisation's login. It carries WWW-Authenticate. |\n| forbidden | 403 | No | Your API key isn't allowed to make this request. |\n| fan_blocked | 403 | No | The fan is blocked from this Fan Voice. |\n| sign_in_required | 403 | No; ask the fan to sign in | A guest on an experience that needs a signed-in fan, or a guest's voice note or photo. |\n| message_limit_reached | 403 | No | The fan has used up this Fan Voice's messages of this kind. |\n| not_found | 404 | No | Not found, or not yours. |\n| idempotency_conflict | 409 | No | An Idempotency-Key reused with a different body while it's kept: 24 hours, or 5 minutes for an upload. |\n| rate_limited | 429 | After Retry-After | Too many requests. |\n| unavailable | 503 | After Retry-After | Votes or messages can't be taken right now. |\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"title":{"type":"string","description":"A short title for the code, such as Not open. It doesn't change.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code.","minimum":400,"maximum":599,"isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"request_id":{"type":"string","description":"Matches the x-request-id response header.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"detail":{"type":"string","description":"What went wrong, in plain English. It can change, so don't act on it.","uniqueKey":"detail","typeLabel":"string"},"errors":{"type":"array","description":"Field-level validation errors, with invalid_request.","items":{"type":"object","required":["pointer","message"],"properties":{"pointer":{"type":"string","description":"A JSON Pointer to the field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].pointer","typeLabel":"string"},"message":{"type":"string","description":"What's wrong with that field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"invalid_api_key":{"title":"invalid_api_key","summary":"invalid_api_key","value":{"type":"https://api.dizplai.com/problems/invalid-api-key","code":"invalid_api_key","title":"Invalid API key","status":401,"detail":"The x-api-key isn't recognised.","request_id":"01JBX8P2R4T6V8X0Z2B4D6F8H0"}}},"exampleType":"examples"}},"exampleType":"examples"},"fea214a0-747a-4788-8b1d-73541926a5c2":{"description":"Not allowed for this caller or origin (forbidden), such as a browser Origin your organisation hasn't registered, or a platform key sent from a browser. Retrying won't help: check the key and your registered origins.","headers":{"x-request-id":{"description":"The request's ID. Quote it to support.","schema":{"type":"string"}}},"content":{"application/problem+json":{"schema":{"type":"object","required":["type","code","title","status","request_id"],"description":"What went wrong, in the same shape for every error: an RFC 9457 problem with a stable code. Act on code, which never changes meaning within a version, and on the HTTP status for a code you don't know. Quote request_id to support.","properties":{"type":{"type":"string","format":"uri-reference","description":"One URL per code: https://api.dizplai.com/problems/ followed by the code with hyphens, such as https://api.dizplai.com/problems/unknown-option for unknown_option.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"code":{"type":"string","x-extensible-enum":["invalid_request","unknown_option","not_open","media_not_accepted","invalid_upload","invalid_api_key","invalid_fan_token","forbidden","fan_blocked","sign_in_required","message_limit_reached","not_found","idempotency_conflict","rate_limited","unavailable"],"description":"More codes may be added: for one you don't know, act on the HTTP status.\n\n| code | Status | Retry? | Meaning |\n|---|---|---|---|\n| invalid_request | 400 | No | The body or a parameter is invalid, or a required header such as Idempotency-Key is missing. |\n| unknown_option | 400 | No; read the poll again | An option ID the poll doesn't have. |\n| not_open | 400 | No; read the experience again | The experience isn't taking votes or messages: it isn't live yet, or votes have stopped. |\n| media_not_accepted | 400 | No | The Fan Voice doesn't take this kind of message, or the file's type or size is outside the limits. |\n| invalid_upload | 400 | No; upload again | The upload_id is unknown, already used or another fan's, or the file was never uploaded or its type or size differs from what you asked for. |\n| invalid_api_key | 401 | No | A missing or invalid x-api-key. |\n| invalid_fan_token | 401 | Once, with a fresh token | A missing, invalid or expired fan token, or one from another organisation's login. It carries WWW-Authenticate. |\n| forbidden | 403 | No | Your API key isn't allowed to make this request. |\n| fan_blocked | 403 | No | The fan is blocked from this Fan Voice. |\n| sign_in_required | 403 | No; ask the fan to sign in | A guest on an experience that needs a signed-in fan, or a guest's voice note or photo. |\n| message_limit_reached | 403 | No | The fan has used up this Fan Voice's messages of this kind. |\n| not_found | 404 | No | Not found, or not yours. |\n| idempotency_conflict | 409 | No | An Idempotency-Key reused with a different body while it's kept: 24 hours, or 5 minutes for an upload. |\n| rate_limited | 429 | After Retry-After | Too many requests. |\n| unavailable | 503 | After Retry-After | Votes or messages can't be taken right now. |\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"title":{"type":"string","description":"A short title for the code, such as Not open. It doesn't change.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code.","minimum":400,"maximum":599,"isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"request_id":{"type":"string","description":"Matches the x-request-id response header.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"detail":{"type":"string","description":"What went wrong, in plain English. It can change, so don't act on it.","uniqueKey":"detail","typeLabel":"string"},"errors":{"type":"array","description":"Field-level validation errors, with invalid_request.","items":{"type":"object","required":["pointer","message"],"properties":{"pointer":{"type":"string","description":"A JSON Pointer to the field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].pointer","typeLabel":"string"},"message":{"type":"string","description":"What's wrong with that field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"forbidden":{"title":"forbidden","summary":"forbidden","value":{"type":"https://api.dizplai.com/problems/forbidden","code":"forbidden","title":"Forbidden","status":403,"detail":"This origin isn't registered for this organisation.","request_id":"01JBX8P2R4T6V8X0Z2B4D6F8H0"}}},"exampleType":"examples"}},"exampleType":"examples"},"2188d79c-00a9-46ae-83f0-b0eb0ed0f944":{"description":"The collection doesn't exist, or isn't yours (not_found).","headers":{"x-request-id":{"description":"The request's ID. Quote it to support.","schema":{"type":"string"}}},"content":{"application/problem+json":{"schema":{"type":"object","required":["type","code","title","status","request_id"],"description":"What went wrong, in the same shape for every error: an RFC 9457 problem with a stable code. Act on code, which never changes meaning within a version, and on the HTTP status for a code you don't know. Quote request_id to support.","properties":{"type":{"type":"string","format":"uri-reference","description":"One URL per code: https://api.dizplai.com/problems/ followed by the code with hyphens, such as https://api.dizplai.com/problems/unknown-option for unknown_option.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"code":{"type":"string","x-extensible-enum":["invalid_request","unknown_option","not_open","media_not_accepted","invalid_upload","invalid_api_key","invalid_fan_token","forbidden","fan_blocked","sign_in_required","message_limit_reached","not_found","idempotency_conflict","rate_limited","unavailable"],"description":"More codes may be added: for one you don't know, act on the HTTP status.\n\n| code | Status | Retry? | Meaning |\n|---|---|---|---|\n| invalid_request | 400 | No | The body or a parameter is invalid, or a required header such as Idempotency-Key is missing. |\n| unknown_option | 400 | No; read the poll again | An option ID the poll doesn't have. |\n| not_open | 400 | No; read the experience again | The experience isn't taking votes or messages: it isn't live yet, or votes have stopped. |\n| media_not_accepted | 400 | No | The Fan Voice doesn't take this kind of message, or the file's type or size is outside the limits. |\n| invalid_upload | 400 | No; upload again | The upload_id is unknown, already used or another fan's, or the file was never uploaded or its type or size differs from what you asked for. |\n| invalid_api_key | 401 | No | A missing or invalid x-api-key. |\n| invalid_fan_token | 401 | Once, with a fresh token | A missing, invalid or expired fan token, or one from another organisation's login. It carries WWW-Authenticate. |\n| forbidden | 403 | No | Your API key isn't allowed to make this request. |\n| fan_blocked | 403 | No | The fan is blocked from this Fan Voice. |\n| sign_in_required | 403 | No; ask the fan to sign in | A guest on an experience that needs a signed-in fan, or a guest's voice note or photo. |\n| message_limit_reached | 403 | No | The fan has used up this Fan Voice's messages of this kind. |\n| not_found | 404 | No | Not found, or not yours. |\n| idempotency_conflict | 409 | No | An Idempotency-Key reused with a different body while it's kept: 24 hours, or 5 minutes for an upload. |\n| rate_limited | 429 | After Retry-After | Too many requests. |\n| unavailable | 503 | After Retry-After | Votes or messages can't be taken right now. |\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"title":{"type":"string","description":"A short title for the code, such as Not open. It doesn't change.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code.","minimum":400,"maximum":599,"isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"request_id":{"type":"string","description":"Matches the x-request-id response header.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"detail":{"type":"string","description":"What went wrong, in plain English. It can change, so don't act on it.","uniqueKey":"detail","typeLabel":"string"},"errors":{"type":"array","description":"Field-level validation errors, with invalid_request.","items":{"type":"object","required":["pointer","message"],"properties":{"pointer":{"type":"string","description":"A JSON Pointer to the field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].pointer","typeLabel":"string"},"message":{"type":"string","description":"What's wrong with that field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"not_found":{"title":"not_found","summary":"not_found","value":{"type":"https://api.dizplai.com/problems/not-found","code":"not_found","title":"Not found","status":404,"detail":"No such collection.","request_id":"01JBX8P2R4T6V8X0Z2B4D6F8H0"}}},"exampleType":"examples"}},"exampleType":"examples"},"3a59357c-854a-4b46-aec3-4477517ec240":{"description":"Too many requests (rate_limited). Wait the number of seconds in Retry-After, then retry.","headers":{"x-request-id":{"description":"The request's ID. Quote it to support.","schema":{"type":"string"}},"Retry-After":{"description":"How long to wait before retrying, as a whole number of seconds. Sent with every 429 and 503.","schema":{"type":"integer","minimum":0}}},"content":{"application/problem+json":{"schema":{"type":"object","required":["type","code","title","status","request_id"],"description":"What went wrong, in the same shape for every error: an RFC 9457 problem with a stable code. Act on code, which never changes meaning within a version, and on the HTTP status for a code you don't know. Quote request_id to support.","properties":{"type":{"type":"string","format":"uri-reference","description":"One URL per code: https://api.dizplai.com/problems/ followed by the code with hyphens, such as https://api.dizplai.com/problems/unknown-option for unknown_option.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"code":{"type":"string","x-extensible-enum":["invalid_request","unknown_option","not_open","media_not_accepted","invalid_upload","invalid_api_key","invalid_fan_token","forbidden","fan_blocked","sign_in_required","message_limit_reached","not_found","idempotency_conflict","rate_limited","unavailable"],"description":"More codes may be added: for one you don't know, act on the HTTP status.\n\n| code | Status | Retry? | Meaning |\n|---|---|---|---|\n| invalid_request | 400 | No | The body or a parameter is invalid, or a required header such as Idempotency-Key is missing. |\n| unknown_option | 400 | No; read the poll again | An option ID the poll doesn't have. |\n| not_open | 400 | No; read the experience again | The experience isn't taking votes or messages: it isn't live yet, or votes have stopped. |\n| media_not_accepted | 400 | No | The Fan Voice doesn't take this kind of message, or the file's type or size is outside the limits. |\n| invalid_upload | 400 | No; upload again | The upload_id is unknown, already used or another fan's, or the file was never uploaded or its type or size differs from what you asked for. |\n| invalid_api_key | 401 | No | A missing or invalid x-api-key. |\n| invalid_fan_token | 401 | Once, with a fresh token | A missing, invalid or expired fan token, or one from another organisation's login. It carries WWW-Authenticate. |\n| forbidden | 403 | No | Your API key isn't allowed to make this request. |\n| fan_blocked | 403 | No | The fan is blocked from this Fan Voice. |\n| sign_in_required | 403 | No; ask the fan to sign in | A guest on an experience that needs a signed-in fan, or a guest's voice note or photo. |\n| message_limit_reached | 403 | No | The fan has used up this Fan Voice's messages of this kind. |\n| not_found | 404 | No | Not found, or not yours. |\n| idempotency_conflict | 409 | No | An Idempotency-Key reused with a different body while it's kept: 24 hours, or 5 minutes for an upload. |\n| rate_limited | 429 | After Retry-After | Too many requests. |\n| unavailable | 503 | After Retry-After | Votes or messages can't be taken right now. |\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"title":{"type":"string","description":"A short title for the code, such as Not open. It doesn't change.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code.","minimum":400,"maximum":599,"isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"request_id":{"type":"string","description":"Matches the x-request-id response header.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"detail":{"type":"string","description":"What went wrong, in plain English. It can change, so don't act on it.","uniqueKey":"detail","typeLabel":"string"},"errors":{"type":"array","description":"Field-level validation errors, with invalid_request.","items":{"type":"object","required":["pointer","message"],"properties":{"pointer":{"type":"string","description":"A JSON Pointer to the field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].pointer","typeLabel":"string"},"message":{"type":"string","description":"What's wrong with that field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"rate_limited":{"title":"rate_limited","summary":"rate_limited","value":{"type":"https://api.dizplai.com/problems/rate-limited","code":"rate_limited","title":"Rate limited","status":429,"detail":"Too many requests. Retry after 2 seconds.","request_id":"01JBX8P2R4T6V8X0Z2B4D6F8H0"}}},"exampleType":"examples"}},"exampleType":"examples"},"4f41a4e2-7137-4f13-991c-9e567ed6b403":{"description":"This can't be read right now (unavailable). Wait the number of seconds in Retry-After, then retry, and keep showing what you last read.","headers":{"x-request-id":{"description":"The request's ID. Quote it to support.","schema":{"type":"string"}},"Retry-After":{"description":"How long to wait before retrying, as a whole number of seconds. Sent with every 429 and 503.","schema":{"type":"integer","minimum":0}}},"content":{"application/problem+json":{"schema":{"type":"object","required":["type","code","title","status","request_id"],"description":"What went wrong, in the same shape for every error: an RFC 9457 problem with a stable code. Act on code, which never changes meaning within a version, and on the HTTP status for a code you don't know. Quote request_id to support.","properties":{"type":{"type":"string","format":"uri-reference","description":"One URL per code: https://api.dizplai.com/problems/ followed by the code with hyphens, such as https://api.dizplai.com/problems/unknown-option for unknown_option.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"code":{"type":"string","x-extensible-enum":["invalid_request","unknown_option","not_open","media_not_accepted","invalid_upload","invalid_api_key","invalid_fan_token","forbidden","fan_blocked","sign_in_required","message_limit_reached","not_found","idempotency_conflict","rate_limited","unavailable"],"description":"More codes may be added: for one you don't know, act on the HTTP status.\n\n| code | Status | Retry? | Meaning |\n|---|---|---|---|\n| invalid_request | 400 | No | The body or a parameter is invalid, or a required header such as Idempotency-Key is missing. |\n| unknown_option | 400 | No; read the poll again | An option ID the poll doesn't have. |\n| not_open | 400 | No; read the experience again | The experience isn't taking votes or messages: it isn't live yet, or votes have stopped. |\n| media_not_accepted | 400 | No | The Fan Voice doesn't take this kind of message, or the file's type or size is outside the limits. |\n| invalid_upload | 400 | No; upload again | The upload_id is unknown, already used or another fan's, or the file was never uploaded or its type or size differs from what you asked for. |\n| invalid_api_key | 401 | No | A missing or invalid x-api-key. |\n| invalid_fan_token | 401 | Once, with a fresh token | A missing, invalid or expired fan token, or one from another organisation's login. It carries WWW-Authenticate. |\n| forbidden | 403 | No | Your API key isn't allowed to make this request. |\n| fan_blocked | 403 | No | The fan is blocked from this Fan Voice. |\n| sign_in_required | 403 | No; ask the fan to sign in | A guest on an experience that needs a signed-in fan, or a guest's voice note or photo. |\n| message_limit_reached | 403 | No | The fan has used up this Fan Voice's messages of this kind. |\n| not_found | 404 | No | Not found, or not yours. |\n| idempotency_conflict | 409 | No | An Idempotency-Key reused with a different body while it's kept: 24 hours, or 5 minutes for an upload. |\n| rate_limited | 429 | After Retry-After | Too many requests. |\n| unavailable | 503 | After Retry-After | Votes or messages can't be taken right now. |\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"title":{"type":"string","description":"A short title for the code, such as Not open. It doesn't change.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code.","minimum":400,"maximum":599,"isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"request_id":{"type":"string","description":"Matches the x-request-id response header.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"detail":{"type":"string","description":"What went wrong, in plain English. It can change, so don't act on it.","uniqueKey":"detail","typeLabel":"string"},"errors":{"type":"array","description":"Field-level validation errors, with invalid_request.","items":{"type":"object","required":["pointer","message"],"properties":{"pointer":{"type":"string","description":"A JSON Pointer to the field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].pointer","typeLabel":"string"},"message":{"type":"string","description":"What's wrong with that field.","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"unavailable":{"title":"unavailable","summary":"unavailable","value":{"type":"https://api.dizplai.com/problems/unavailable","code":"unavailable","title":"Unavailable","status":503,"detail":"This can't be read right now. Retry after 5 seconds.","request_id":"01JBX8P2R4T6V8X0Z2B4D6F8H0"}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"cedc2567-5c5e-4b8e-8b1a-ed404edd7bf8":{"apiKey":{"type":"apiKey","in":"header","name":"x-api-key","description":"Your organisation's API key, supplied by Dizplai. Send it on every request. It isn't a secret, so it can ship in your app: what a fan does is protected by the fan's token.","scopes":[],"schemeName":"apiKey"}}},"servers":{"8f572995-de18-42e6-9b79-a8b6680b8360":{"url":"https://api.dizplai.com/v1","description":"The Dizplai API."}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","description":"Your organisation's API key, supplied by Dizplai. Send it on every request. It isn't a secret, so it can ship in your app: what a fan does is protected by the fan's token.","scopes":[],"schemeName":"apiKey"},"schema":{"title":"x-api-key","type":"string","description":"Your organisation's API key, supplied by Dizplai. Send it on every request. It isn't a secret, so it can ship in your app: what a fan does is protected by the fan's token.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKey","name":"x-api-key"}],"title":"apiKey"}]},"originalFileLocation":"experiences/api-reference/experiences.openapi.yaml"},"subdomain":"dizplai-77024896","siteName":"Dizplai API","title":"Get a collection - Dizplai API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-10T11:05:01.801Z","originalFileLocation":"api-reference/collections/get-a-collection.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=\"dark\"}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=\"description\" content=\"Gets a collection, for the heading of a match or show screen. Add include=experiences to get its experiences too, in its order, so one request builds the screen. An offline collection answers 404, like one that doesn\u0026#x27;t exist.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Dizplai API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/dizplai-77024896/3nLUV7FzqdT27bAO/_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/dizplai-77024896/3nLUV7FzqdT27bAO/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/dizplai-77024896/3nLUV7FzqdT27bAO/_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/dizplai-77024896/3nLUV7FzqdT27bAO/_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/dizplai-77024896/3nLUV7FzqdT27bAO/_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/dizplai-77024896/3nLUV7FzqdT27bAO/_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/dizplai-77024896/3nLUV7FzqdT27bAO/_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/dizplai-77024896/3nLUV7FzqdT27bAO/_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/dizplai-77024896/3nLUV7FzqdT27bAO/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get a collection - Dizplai API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Gets a collection, for the heading of a match or show screen. Add include=experiences to get its experiences too, in its order, so one request builds the screen. An offline collection answers 404, like one that doesn\u0026#x27;t exist.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Dizplai API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developer.dizplai.com/api-reference/collections/get-a-collection\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://dizplai-77024896.mintlify.site/_mintlify/api/og/v2?division=Collections\u0026amp;title=Get+a+collection\u0026amp;description=Gets+a+collection%2C+for+the+heading+of+a+match+or+show+screen.+Add+include%3Dexperiences+to+get+its+experiences+too%2C+in+its+order%2C+so+one+request+builds+the+screen\u0026amp;theme=4cfd1fb4fbf3ee8fe3fa75b7\u0026amp;signature=aa2db0e1ab1fe9ba4a895c420fc2fbc9e924f6a2342779ad959f30d59fd5014a\">\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=\"Get a collection - Dizplai API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Gets a collection, for the heading of a match or show screen. Add include=experiences to get its experiences too, in its order, so one request builds the screen. An offline collection answers 404, like one that doesn\u0026#x27;t exist.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://dizplai-77024896.mintlify.site/_mintlify/api/og/v2?division=Collections\u0026amp;title=Get+a+collection\u0026amp;description=Gets+a+collection%2C+for+the+heading+of+a+match+or+show+screen.+Add+include%3Dexperiences+to+get+its+experiences+too%2C+in+its+order%2C+so+one+request+builds+the+screen\u0026amp;theme=4cfd1fb4fbf3ee8fe3fa75b7\u0026amp;signature=aa2db0e1ab1fe9ba4a895c420fc2fbc9e924f6a2342779ad959f30d59fd5014a\">\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/dizplai-77024896/3nLUV7FzqdT27bAO/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Dizplai API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#A00066\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developer.dizplai.com/api-reference/collections/get-a-collection\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/collections/get-a-collection.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developer.dizplai.com/#organization\",\"name\":\"Dizplai API\",\"url\":\"https://developer.dizplai.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/dizplai-77024896/lmZzH95OOSORiYIT/logo/light.png?fit=max\u0026auto=format\u0026n=lmZzH95OOSORiYIT\u0026q=85\u0026s=7ba40c5f8a08a90459fbaced5737c13c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://developer.dizplai.com#website\",\"name\":\"Dizplai API\",\"url\":\"https://developer.dizplai.com\",\"publisher\":{\"@id\":\"https://developer.dizplai.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developer.dizplai.com/api-reference/collections/get-a-collection#webpage\",\"url\":\"https://developer.dizplai.com/api-reference/collections/get-a-collection\",\"name\":\"Get a collection\",\"description\":\"Gets a collection, for the heading of a match or show screen. Add include=experiences to get its experiences too, in its order, so one request builds the screen. An offline collection answers 404, like one that doesn't exist.\",\"dateModified\":\"2026-11-10T11:05:01.801Z\",\"isPartOf\":{\"@id\":\"https://developer.dizplai.com#website\"},\"breadcrumb\":{\"@id\":\"https://developer.dizplai.com/api-reference/collections/get-a-collection#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developer.dizplai.com/api-reference/collections/get-a-collection#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Experiences API\",\"item\":\"https://developer.dizplai.com/api-reference/experiences/list-experiences\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Collections\",\"item\":\"https://developer.dizplai.com/api-reference/collections/list-collections\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Get a collection\",\"item\":\"https://developer.dizplai.com/api-reference/collections/get-a-collection\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://developer.dizplai.com/api-reference/collections/get-a-collection#apireference\",\"headline\":\"Get a collection\",\"name\":\"Get a collection\",\"description\":\"Gets a collection, for the heading of a match or show screen. Add include=experiences to get its experiences too, in its order, so one request builds the screen. An offline collection answers 404, like one that doesn't exist.\",\"url\":\"https://developer.dizplai.com/api-reference/collections/get-a-collection\",\"mainEntityOfPage\":{\"@id\":\"https://developer.dizplai.com/api-reference/collections/get-a-collection#webpage\"},\"dateModified\":\"2026-11-10T11:05:01.801Z\",\"publisher\":{\"@id\":\"https://developer.dizplai.com/#organization\"},\"isPartOf\":{\"@id\":\"https://developer.dizplai.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Dizplai API\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Dizplai API\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/collections/get-a-collection.md","siteName":"Dizplai API","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API reference","groups":[{"group":"Using the API","pages":[{"title":"Authentication","href":"/authentication"},{"title":"Errors and retries","href":"/errors"},{"title":"Versions and changes","href":"/versioning"}]},{"group":"Experiences API","pages":[{"group":"Experiences","pages":[{"title":"List experiences","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /experiences","href":"/api-reference/experiences/list-experiences"}]},{"group":"Collections","pages":[{"title":"List collections","description":"Lists your live collections, such as one for each match or show, to build your screens from. An offline collection isn't listed.","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /collections","href":"/api-reference/collections/list-collections"},{"title":"Get a collection","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /collections/{collection_id}","href":"/api-reference/collections/get-a-collection"}]},{"group":"Polls","pages":[{"title":"List polls","description":"Lists polls only, for a screen that shows nothing else. To list polls and Fan Voices together, use List experiences.","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /polls","href":"/api-reference/polls/list-polls"},{"title":"Get a poll","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /polls/{poll_id}","href":"/api-reference/polls/get-a-poll"},{"title":"Cast a vote","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml post /polls/{poll_id}/votes","href":"/api-reference/polls/cast-a-vote"},{"title":"Get the fan's vote","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /polls/{poll_id}/votes/me","href":"/api-reference/polls/get-the-fans-vote"}]},{"group":"Fan Voices","pages":[{"title":"List Fan Voices","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /fan-voices","href":"/api-reference/fan-voices/list-fan-voices"},{"title":"Get a Fan Voice","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /fan-voices/{fan_voice_id}","href":"/api-reference/fan-voices/get-a-fan-voice"},{"title":"Create an upload","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml post /fan-voices/{fan_voice_id}/uploads","href":"/api-reference/fan-voices/create-an-upload"},{"title":"Send a message","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml post /fan-voices/{fan_voice_id}/messages","href":"/api-reference/fan-voices/send-a-message"},{"title":"List the fan's messages","deprecated":null,"version":null,"openapi":"/experiences/api-reference/experiences.openapi.yaml get /fan-voices/{fan_voice_id}/messages/me","href":"/api-reference/fan-voices/list-the-fans-messages"}]}]}]}]},"basePath":"","title":"Get a collection - Dizplai API","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DdEMm2kG.js","utils-BMo572L7.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C-4m9KAx.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DPLK2Oq9.js","snippetPresets-BKjfJMC9.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-DTsgtCEj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C8vmhyQM.js","shallow-r9w8LQGS.js","getApiPlaygroundDisplay-DjPI64HQ.js","CodeSnippet-C8Bvhl16.js","CodeSnippets-BtWUwcMy.js","Page-BIYvYBgk.js","getPastedJson-Dcm_3Pgl.js","icon-BXwrTpjc.js","MethodPill-CcjfVmmy.js","DuplicateIcon-BuKIbXAQ.js","createIcon-DaL9yXsO.js","DynamicMarkdown-Co5nikxh.js","SectionHeading-P4UNTsMZ.js","axios-vUo_bRtp.js","Markdown-CEfymfIH.js","clsx-Dq9TQuNi.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-D2J8knkn.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BgZ2ThuU.js"]}