User Metadata Attributes
The following table lists some of the user metadata attributes that are made available to Programmers:
Key | Type | Sample | Requires encryption | Description | Details |
---|---|---|---|---|---|
userID | String | “1o7241p” | No | Account identifier. | The attribute value can be a household identifier or a sub-account identifier. The userID value will differ from the householdID if the MVPD supports sub-accounts and the current user is not the primary account holder. |
upstreamUserID | String | “1o7241p” | No | Account identifier for concurrency monitoring. | The attribute value can be used to enforce concurrency limits across MVPD and Programmer sites and apps. The upstreamUserID value is the same as the userID value for most MVPDs. |
householdID | String | “1o7241p” | No | Account identifier for parental control. | The attribute value can be used to differentiate between household and sub-account usage. Sometimes it can be used as a parental control substitute if true ratings are not available, if the user was logged in with the household account, they can watch, otherwise, rated content would not be displayed. There is a lot of variation across MVPDs for how this is represented (e.g., household user ID, head of household ID, head of household flag, etc.), if the MVPD does not support sub-accounts, this will be identical to userID . |
primaryOID | String | “uuidd1e19ec9-012c-124f-b520-acaf118d16a0” | No | Account identifier. | The attribute is specific to AT&T. The primaryOID value is the same as the userID value when the typeID value is set to “Primary”. |
typeID | String | “Primary” | No | Attribute that indicates if current user is a primary or secondary account holder. | The attribute is specific to AT&T. The primaryOID value is the same as the userID value when the typeID value is set to “Primary”. |
is_hoh | String | “1” | No | Attribute that indicates if current user is head of household or not. | The attribute is specific to Synacor. |
hba_status | Boolean | “true” | No | Attribute that indicates if current user authenticated through HBA or not. | |
allowMirroring | Boolean | “true” | No | Attribute that indicates if current device can mirror screen or not. | The attribute is specific to Spectrum. |
zip | Array | [“77754”, “12345”] | Yes | User’s zip code. | The attribute value can be used to deliver localized news, weather updates or sporting events. The zip value represents sensitive data that needs legal agreements with the MVPD. When encrypted, the representation of the zip key will be a String instead of an Array . |
encryptedZip | String | “” | Yes | User’s encrypted zip code. | The attribute is specific to Comcast. |
channelID | Array | [“channel-1”, “channel-2”] | No | List of channels the user is entitled to view. | The attribute value can be used to filter various channels from portals that aggregate multiple networks. Our recommendation is to use the Preauthorize API instead of this user metadata attribute to filter out channels that are not available to the user. |
maxRating | Object | No | Maximum parental rating for the current user. | The attribute value can be used to filter content that is not suited for current user based on “MPAA” or “VCHIP” ratings. | |
language | String | “English” | No | Language settings. | The attribute value can be used to display messages in accordance to the user’s language preferences. |
The user metadata attributes made available to a Programmer depend on what an MVPD provides. The following table lists the attributes made available by various MVPDs:
Legal Agreement Signed (zip only) | User ID on AuthN | Upstream User ID on AuthN | Household ID on AuthN/Z | Primary OID on AuthN | Type ID on AuthN | Head of Household on AuthN | HBA Status | Allow Mirroring on AuthZ | Zip code on AuthN/Z | Channel ID on AuthN | Rating on AuthN/Z | Language | onNet | inHome | Notes | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Formal Name | n/a | userID | upstreamUserID | householdID | primaryOID | typeID | is_hoh | hba_status | allowMirroring | zip | channelID | maxRating | language | onNet | inHome | |
Requires Encryption | n/a | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | |
Sensitive | n/a | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | |
Adobe IdP | Yes | Yes | Yes | Yes (AuthN only) | Yes | Yes | Yes | No | No | Yes (AuthN only) | Yes | Yes (AuthN only) | No | No | No | Legal agreement not needed. |
Synacor | Yes | Yes | Yes | Yes (AuthN only) | No | No | Yes | No | No | Yes (AuthN only) | Yes | Yes (AuthN only) | No | No | No | Legal agreement not covering all the proxied MVPDs. This is generic support for Synacor and possibly not rolled-up to all of their MVPDs. |
Dish | No | Yes | Yes | Yes (AuthN only) | No | No | No | No | No | Yes (AuthN only) | Yes | Yes (AuthN only) | No | No | No | It shares the same list as all Synacor MVPDs, plus upstreamUserID . |
Comcast | No | Yes | Yes | Yes (AuthZ only) | No | No | No | Yes | No | No | No | Yes (AuthZ only) | No | No | No | |
AT&T | Yes | Yes | Yes | Yes (AuthN only) | Yes | Yes | No | No | No | Yes (AuthN only) | No | No | No | No | No | Legal agreement signed. |
DTV | Yes | Yes | Yes | No | No | No | No | No | No | Yes (AuthN only) | No | No | No | No | No | |
COX | No | Yes | Yes | No | No | No | No | No | No | Yes (AuthN only) | No | No | No | No | No | |
Cablevision | Yes | Yes | Yes | No | No | No | No | No | No | Yes (AuthN only) | Yes | No | No | No | No | Legal agreement signed. |
Spectrum | Yes | Yes | Yes | Yes (AuthN only) | No | No | No | Yes | Yes | Yes (AuthN only) | No | Yes (AuthN only) | No | No | No | |
Charter | Yes | Yes | Yes | Yes (AuthN only) | No | No | No | No | No | Yes (AuthN only) | No | Yes (AuthN only) | No | No | No | |
Verizon | No | Yes | Yes | No | No | No | No | Yes | No | Yes (AuthN only) | No | No | No | No | No | |
HTC | No | Yes | Yes | No | No | No | No | No | No | No | Yes | No | No | No | No | |
Rogers | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | |
RCN | Yes | Yes | Yes | Yes (AuthN only) | No | No | No | No | No | Yes (AuthN only) | No | Yes (AuthN only) | No | No | No | |
Eastlink | No | Yes | Yes | Yes (AuthN only) | No | No | No | No | No | Yes (AuthN only) | Yes | Yes (AuthN only) | No | No | No | |
Cogeco | No | Yes | Yes | Yes (AuthN only) | No | No | No | No | No | Yes (AuthN only) | No | No | No | No | No | |
Videotron | No | Yes | Yes | Yes* | No | No | No | No | No | Yes (AuthN only) | No | No | No | No | No | It exposes householdID with the same value as userID . |
Proxy Massilon | Yes | Yes | Yes | Yes (AuthN only) | No | No | No | No | No | Yes (AuthN only) | No | No | No | No | No | Legal agreement signed. |
Proxy Clearleap | Yes | Yes | Yes | No | No | No | No | No | No | Yes (AuthN only) | No | Yes (AuthZ only) | Yes | No | No | Legal agreement signed. |
Proxy GLDS | No | Yes | Yes | No | No | No | No | No | No | Yes (AuthN only) | No | No | No | No | No | |
Other MVPDs | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No legal agreement yet, sensitive metadata not available for Production. For all MVPDs the userID is available with no extra work. |
Legal agreements must be signed with MVPDs before sensitive user metadata (e.g., zip code) is made available.