# Hub ## Fields | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `title` | *Optional[str]* | :heavy_minus_sign: | A title for this grouping of content | | | `type` | *Optional[str]* | :heavy_minus_sign: | The type of the items contained in this hub, or possibly `mixed` if there are multiple types | track | | `context` | *Optional[str]* | :heavy_minus_sign: | N/A | hub.home.onDeck | | `hub_identifier` | *Optional[str]* | :heavy_minus_sign: | A unique identifier for the hub | home.onDeck | | `hub_key` | *Optional[str]* | :heavy_minus_sign: | A key at which the exact content currently displayed can be fetched again. This is particularly important when a hub is marked as random and requesting the `key` may get different results. It's otherwise optional.
| | | `key` | *Optional[str]* | :heavy_minus_sign: | The key at which all of the content for this hub can be retrieved | /hubs/sections/home/onDeck | | `metadata` | List[[components.Metadata](../../models/components/metadata.md)] | :heavy_minus_sign: | N/A | | | `more` | *Optional[bool]* | :heavy_minus_sign: | "A boolean indicating that the hub contains more than what's included in the current response."
| | | `promoted` | *Optional[bool]* | :heavy_minus_sign: | Indicating if the hub should be promoted to the user's homescreen | | | `random` | *Optional[bool]* | :heavy_minus_sign: | Indicating that the contents of the hub may change on each request | | | `size` | *Optional[int]* | :heavy_minus_sign: | N/A | 1 | | `style` | *Optional[str]* | :heavy_minus_sign: | A suggestion on how this hub's contents might be displayed by a client. Some examples include `hero`, `list`, `spotlight`, and `upsell` | | | `subtype` | *Optional[str]* | :heavy_minus_sign: | The subtype of the items contained in this hub, or possibly `mixed` if there are multiple types | podcast | | `total_size` | *Optional[int]* | :heavy_minus_sign: | N/A | 8 | | `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | |