Tradecast Video API

If you have any technical questions or ideas about integrating Tradecast video technology into your website or project,
we’d love to hear from you!
Contact us to explore the possibilities—together, we can achieve endless potential.

Partner with Us
Become a partner and watch your company thrive with Tradecast Video technology!
Our partner program is designed to help your business grow.
Let’s work together and unlock new possibilities.

Join Our Team
If you’re passionate about being part of a team that’s shaping the future of innovative streaming video technology,
we’d love to hear from you!
Visit our vacancies page to explore current opportunities. We look forward to teaming up with you.

The Tradecast API Reference is only viewable on larger screens.

Tradecast API Reference

This documentation acts as your guide to accessing and leveraging the power of the Tradecast platform through our GraphQL API.

With this API, you can seamlessly interact with the user-facing aspects of Tradecast, enabling a wide range of functionalities. Both data retrieval and manipulation are designed around the flexibility and efficiency of GraphQL.

API Endpoints
# Production:
https://api.tradecast.eu/graphql
Headers
# Your foo from bar
Authorization: Bearer <YOUR_TOKEN_HERE>
# Your channel id
channelid: <YOUR_CHANNEL_ID>
Version

77.67.3

Queries

categorizedMedia

Deprecated in favor of the category query with the mediaList property
Description

🔐 You must have the following permissions to query this field:

  • category: read
Response

Returns [Categorization!]

Arguments
Name Description
filter - CategorizedFilter
sort - CategorizedSort
count - Int
categories - [Int]

Example

Query
query CategorizedMedia(
  $filter: CategorizedFilter,
  $sort: CategorizedSort,
  $count: Int,
  $categories: [Int]
) {
  categorizedMedia(
    filter: $filter,
    sort: $sort,
    count: $count,
    categories: $categories
  ) {
    id
    title
    showMainMenu
    slug
    children {
      id
      title
      showMainMenu
      slug
      automatedTrading
      description
      thumbnail
      parent {
        ...CategoryFragment
      }
      children {
        ...CategoryFragment
      }
      media {
        ...MediaFragment
      }
      mediaList {
        ...MediaListFragment
      }
      vlogList {
        ...VlogListFragment
      }
    }
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "filter": CategorizedFilter,
  "sort": CategorizedSort,
  "count": 987,
  "categories": [987]
}
Response
{
  "data": {
    "categorizedMedia": [
      {
        "id": 123,
        "title": "abc123",
        "showMainMenu": false,
        "slug": "xyz789",
        "children": [Category],
        "media": [Media],
        "limit": 987,
        "page": 123,
        "pageCount": 123,
        "resultCount": 123
      }
    ]
  }
}

category

Description

🔐 You must have the following permissions to query this field:

  • category: read
Response

Returns a Category

Arguments
Name Description
id - Int

Example

Query
query Category($id: Int) {
  category(id: $id) {
    id
    title
    showMainMenu
    slug
    automatedTrading
    description
    thumbnail
    parent {
      id
      title
      showMainMenu
      slug
      automatedTrading
      description
      thumbnail
      parent {
        ...CategoryFragment
      }
      children {
        ...CategoryFragment
      }
      media {
        ...MediaFragment
      }
      mediaList {
        ...MediaListFragment
      }
      vlogList {
        ...VlogListFragment
      }
    }
    children {
      id
      title
      showMainMenu
      slug
      automatedTrading
      description
      thumbnail
      parent {
        ...CategoryFragment
      }
      children {
        ...CategoryFragment
      }
      media {
        ...MediaFragment
      }
      mediaList {
        ...MediaListFragment
      }
      vlogList {
        ...VlogListFragment
      }
    }
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    mediaList {
      results {
        ...MediaFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    vlogList {
      results {
        ...VlogListItemFragment
      }
      limit
      page
      pageCount
      resultCount
    }
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "category": {
      "id": 987,
      "title": "abc123",
      "showMainMenu": false,
      "slug": "xyz789",
      "automatedTrading": "inherit",
      "description": "xyz789",
      "thumbnail": "abc123",
      "parent": Category,
      "children": [Category],
      "media": [Media],
      "mediaList": MediaList,
      "vlogList": VlogList
    }
  }
}

categoryList

Response

Returns a CategoryList

Arguments
Name Description
filter - CategoryFilter
sort - CategorySort
limit - Int Default = 50
page - Int Default = 1
parentID - Int

Example

Query
query CategoryList(
  $filter: CategoryFilter,
  $sort: CategorySort,
  $limit: Int,
  $page: Int,
  $parentID: Int
) {
  categoryList(
    filter: $filter,
    sort: $sort,
    limit: $limit,
    page: $page,
    parentID: $parentID
  ) {
    results {
      id
      title
      showMainMenu
      slug
      automatedTrading
      description
      thumbnail
      parent {
        ...CategoryFragment
      }
      children {
        ...CategoryFragment
      }
      media {
        ...MediaFragment
      }
      mediaList {
        ...MediaListFragment
      }
      vlogList {
        ...VlogListFragment
      }
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "filter": CategoryFilter,
  "sort": CategorySort,
  "limit": 50,
  "page": 1,
  "parentID": 987
}
Response
{
  "data": {
    "categoryList": {
      "results": [Category],
      "limit": 987,
      "page": 123,
      "pageCount": 123,
      "resultCount": 123
    }
  }
}

commentList

Use 'vlog.comments' instead
Description

Gets a list of comments for a vlog.

The channel must have the vlogs feature enabled to query this field.

Response

Returns a CommentList

Arguments
Name Description
filter - CommentFilter
sort - CommentSort
limit - Int Default = 50
page - Int Default = 1
slug - String!

Example

Query
query CommentList(
  $filter: CommentFilter,
  $sort: CommentSort,
  $limit: Int,
  $page: Int,
  $slug: String!
) {
  commentList(
    filter: $filter,
    sort: $sort,
    limit: $limit,
    page: $page,
    slug: $slug
  ) {
    results {
      parent
      user {
        ...UserInfoFragment
      }
      date {
        ...CommentDatesFragment
      }
      createdAt
      updatedAt
      childCount
      children {
        ...CommentTypeFragment
      }
      id
      body
      status
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "filter": CommentFilter,
  "sort": CommentSort,
  "limit": 50,
  "page": 1,
  "slug": "xyz789"
}
Response
{
  "data": {
    "commentList": {
      "results": [CommentType],
      "limit": 123,
      "page": 123,
      "pageCount": 123,
      "resultCount": 987
    }
  }
}

contentPageList

Description

Gets all content pages.

🔐 You must have the following permissions to query this field:

  • contentPage: read

The channel must have the contentPages feature enabled to query this field.

Response

Returns [ContentPageType]

Arguments
Name Description
device - DeviceEnum
permissions - ContentPermissionsEnum
urlPath - String
type - ContentPageEnum

Example

Query
query ContentPageList(
  $device: DeviceEnum,
  $permissions: ContentPermissionsEnum,
  $urlPath: String,
  $type: ContentPageEnum
) {
  contentPageList(
    device: $device,
    permissions: $permissions,
    urlPath: $urlPath,
    type: $type
  ) {
    id
    title
    body
    device
    displayLoggedin
    urlPath
    publishStart
    published
    showMainMenu
    type
  }
}
Variables
{
  "device": "standard",
  "permissions": "all",
  "urlPath": "abc123",
  "type": "standard"
}
Response
{
  "data": {
    "contentPageList": [
      {
        "id": 987,
        "title": "xyz789",
        "body": "abc123",
        "device": "standard",
        "displayLoggedin": "all",
        "urlPath": "abc123",
        "publishStart": "2007-12-03T10:15:30Z",
        "published": true,
        "showMainMenu": true,
        "type": "standard"
      }
    ]
  }
}

contentPages

Deprecated for consistency, use contentPageList
Description

Gets all content pages.

🔐 You must have the following permissions to query this field:

  • contentPage: read

The channel must have the contentPages feature enabled to query this field.

Response

Returns [ContentPageType]

Arguments
Name Description
device - DeviceEnum
permissions - ContentPermissionsEnum
urlPath - String
type - ContentPageEnum

Example

Query
query ContentPages(
  $device: DeviceEnum,
  $permissions: ContentPermissionsEnum,
  $urlPath: String,
  $type: ContentPageEnum
) {
  contentPages(
    device: $device,
    permissions: $permissions,
    urlPath: $urlPath,
    type: $type
  ) {
    id
    title
    body
    device
    displayLoggedin
    urlPath
    publishStart
    published
    showMainMenu
    type
  }
}
Variables
{
  "device": "standard",
  "permissions": "all",
  "urlPath": "xyz789",
  "type": "standard"
}
Response
{
  "data": {
    "contentPages": [
      {
        "id": 987,
        "title": "abc123",
        "body": "abc123",
        "device": "standard",
        "displayLoggedin": "all",
        "urlPath": "abc123",
        "publishStart": "2007-12-03T10:15:30Z",
        "published": true,
        "showMainMenu": false,
        "type": "standard"
      }
    ]
  }
}

contract

Description

The contract of the given ID when the contract belongs to the authenticated user

🔐 You must have the following permissions to query this field:

  • contract: read
Response

Returns a Contract

Arguments
Name Description
id - Int

Example

Query
query Contract($id: Int) {
  contract(id: $id) {
    id
    status
    plan {
      id
      product {
        ...ProductFragment
      }
      title
      description
      currency
      price
      termsOfUse
      renewable
      type
      interval
      intervalValue
      trialInterval
      trialIntervalValue
      trialMode
      trialPrice
      status
      createdAt
      updatedAt
      protectedReason
      usages
      maxUsages
      soldOut
    }
    currency
    priceInCents
    priceInCentsIncludingTax
    taxRate
    originalPriceInCents
    isTrial
    startDate
    endDate
    interval
    intervalValue
    billingInterval
    appliedDiscount {
      discountCode {
        ...DiscountCodeFragment
      }
      appliedDiscountInCents
      currency
    }
  }
}
Variables
{"id": 987}
Response
{
  "data": {
    "contract": {
      "id": 123,
      "status": "active",
      "plan": Plan,
      "currency": "USD",
      "priceInCents": 987,
      "priceInCentsIncludingTax": 123,
      "taxRate": 987,
      "originalPriceInCents": 987,
      "isTrial": true,
      "startDate": "2007-12-03T10:15:30Z",
      "endDate": "2007-12-03T10:15:30Z",
      "interval": "day",
      "intervalValue": 987,
      "billingInterval": "day",
      "appliedDiscount": AppliedDiscount
    }
  }
}

contractList

Description

Returns the list of the authenticated user's contracts

Response

Returns a ContractList

Arguments
Name Description
filter - ContractFilter
sort - ContractSort
limit - Int Default = 50
page - Int Default = 1
_locale - String

Example

Query
query ContractList(
  $filter: ContractFilter,
  $sort: ContractSort,
  $limit: Int,
  $page: Int,
  $_locale: String
) {
  contractList(
    filter: $filter,
    sort: $sort,
    limit: $limit,
    page: $page,
    _locale: $_locale
  ) {
    results {
      id
      status
      plan {
        ...PlanFragment
      }
      currency
      priceInCents
      priceInCentsIncludingTax
      taxRate
      originalPriceInCents
      isTrial
      startDate
      endDate
      interval
      intervalValue
      billingInterval
      appliedDiscount {
        ...AppliedDiscountFragment
      }
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "filter": ContractFilter,
  "sort": ContractSort,
  "limit": 50,
  "page": 1,
  "_locale": "xyz789"
}
Response
{
  "data": {
    "contractList": {
      "results": [Contract],
      "limit": 987,
      "page": 123,
      "pageCount": 987,
      "resultCount": 987
    }
  }
}

disqusSso

Disqus support has been dropped
Response

Returns a DisqusSso

Example

Query
query DisqusSso {
  disqusSso {
    publicKey
    auth
  }
}
Response
{
  "data": {
    "disqusSso": {
      "publicKey": "xyz789",
      "auth": "xyz789"
    }
  }
}

episode

Description

🔐 You must have the following permissions to query this field:

  • episode: read
Response

Returns an Episode

Arguments
Name Description
id - Int!

Example

Query
query Episode($id: Int!) {
  episode(id: $id) {
    id
    title
    description
    publishStart
    publishEnd
    releaseDate
    posterImage
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    trailer {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    season {
      id
      title
      description
      publishStart
      publishEnd
      releaseDate
      trailer {
        ...MediaFragment
      }
      posterImage
      extras {
        ...ExtraFragment
      }
      episodes {
        ...EpisodeFragment
      }
      series {
        ...SeriesFragment
      }
    }
    extras {
      id
      title
      media {
        ...MediaFragment
      }
    }
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "episode": {
      "id": 123,
      "title": "xyz789",
      "description": "xyz789",
      "publishStart": "2007-12-03T10:15:30Z",
      "publishEnd": "2007-12-03T10:15:30Z",
      "releaseDate": "2007-12-03T10:15:30Z",
      "posterImage": "abc123",
      "media": Media,
      "trailer": Media,
      "season": Season,
      "extras": [Extra]
    }
  }
}

extra

Description

🔐 You must have the following permissions to query this field:

  • extra: read
Response

Returns an Extra

Arguments
Name Description
id - Int!

Example

Query
query Extra($id: Int!) {
  extra(id: $id) {
    id
    title
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "extra": {
      "id": 123,
      "title": "abc123",
      "media": Media
    }
  }
}

feedOverlay

Response

Returns a FeedOverlayList

Arguments
Name Description
feedType - OverlayFeed!
id - Int!
source - OverlaySource

Example

Query
query FeedOverlay(
  $feedType: OverlayFeed!,
  $id: Int!,
  $source: OverlaySource
) {
  feedOverlay(
    feedType: $feedType,
    id: $id,
    source: $source
  ) {
    items
    title
  }
}
Variables
{"feedType": "rss", "id": 987, "source": "overlay"}
Response
{
  "data": {
    "feedOverlay": {
      "items": ["abc123"],
      "title": "abc123"
    }
  }
}

genre

Description

🔐 You must have the following permissions to query this field:

  • genre: read
Response

Returns a Genre

Arguments
Name Description
id - Int!

Example

Query
query Genre($id: Int!) {
  genre(id: $id) {
    id
    title
    description
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "genre": {
      "id": 123,
      "title": "xyz789",
      "description": "xyz789"
    }
  }
}

genreList

Response

Returns a GenreList

Arguments
Name Description
limit - Int Default = 50
page - Int Default = 1
filter - GenreFilter
sort - GenreListSort

Example

Query
query GenreList(
  $limit: Int,
  $page: Int,
  $filter: GenreFilter,
  $sort: GenreListSort
) {
  genreList(
    limit: $limit,
    page: $page,
    filter: $filter,
    sort: $sort
  ) {
    results {
      id
      title
      description
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "limit": 50,
  "page": 1,
  "filter": GenreFilter,
  "sort": GenreListSort
}
Response
{
  "data": {
    "genreList": {
      "results": [Genre],
      "limit": 987,
      "page": 987,
      "pageCount": 987,
      "resultCount": 987
    }
  }
}

interest

Description

🔐 You must have the following permissions to query this field:

  • interest: read
Response

Returns an Interest

Arguments
Name Description
id - Int

Example

Query
query Interest($id: Int) {
  interest(id: $id) {
    id
    slug
    name
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    mediaList {
      results {
        ...MediaFragment
      }
      limit
      page
      pageCount
      resultCount
    }
  }
}
Variables
{"id": 987}
Response
{
  "data": {
    "interest": {
      "id": 987,
      "slug": "xyz789",
      "name": "abc123",
      "media": [Media],
      "mediaList": MediaList
    }
  }
}

interestList

Response

Returns an InterestListType

Arguments
Name Description
filter - InterestFilter
sort - InterestSort
limit - Int Default = 50
page - Int Default = 1

Example

Query
query InterestList(
  $filter: InterestFilter,
  $sort: InterestSort,
  $limit: Int,
  $page: Int
) {
  interestList(
    filter: $filter,
    sort: $sort,
    limit: $limit,
    page: $page
  ) {
    results {
      id
      slug
      name
      media {
        ...MediaFragment
      }
      mediaList {
        ...MediaListFragment
      }
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "filter": InterestFilter,
  "sort": InterestSort,
  "limit": 50,
  "page": 1
}
Response
{
  "data": {
    "interestList": {
      "results": [Interest],
      "limit": 987,
      "page": 123,
      "pageCount": 987,
      "resultCount": 123
    }
  }
}

lesson

Elearning feature is dropped, therefore this is deprecated
Response

Returns a Lesson

Arguments
Name Description
id - Int

Example

Query
query Lesson($id: Int) {
  lesson(id: $id) {
    id
    name
    description
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
  }
}
Variables
{"id": 987}
Response
{
  "data": {
    "lesson": {
      "id": 987,
      "name": "abc123",
      "description": "xyz789",
      "media": Media
    }
  }
}

lessonList

Elearning feature is dropped, therefore this is deprecated
Response

Returns [LessonListItem!]

Example

Query
query LessonList {
  lessonList {
    lesson {
      id
      name
      description
      media {
        ...MediaFragment
      }
    }
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
  }
}
Response
{
  "data": {
    "lessonList": [
      {
        "lesson": Lesson,
        "media": Media
      }
    ]
  }
}

libraryCategories

Description

🔐 You must have the following permissions to query this field:

  • libraryCategory: read
Response

Returns [FrontendLibraryCategory!]

Example

Query
query LibraryCategories {
  libraryCategories {
    id
    title
  }
}
Response
{
  "data": {
    "libraryCategories": [
      {"id": 123, "title": "abc123"}
    ]
  }
}

live

Description

Represents the active livestream that is taking over the timeline. Note: the id argument is deprecated and will be ignored

The channel must have the timeline feature enabled to query this field.

Response

Returns a Live

Arguments
Name Description
id - Int

Example

Query
query Live($id: Int) {
  live(id: $id) {
    item {
      media {
        ...TimelineMediaItemFragment
      }
      overlay {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      timeline {
        ...MediaTimelineInfoFragment
      }
    }
    livestream {
      startTime
    }
  }
}
Variables
{"id": 987}
Response
{
  "data": {
    "live": {
      "item": TimelineItem,
      "livestream": Livestream
    }
  }
}

liveChatSso

Response

Returns a LiveChatSso

Arguments
Name Description
mediaId - Int!

Example

Query
query LiveChatSso($mediaId: Int!) {
  liveChatSso(mediaId: $mediaId) {
    collection {
      messages
      sentiments
    }
    userId
    writeAccess
    nickname
    accessToken
    firebaseConfig {
      apiKey
      applicationId
      projectId
    }
  }
}
Variables
{"mediaId": 123}
Response
{
  "data": {
    "liveChatSso": {
      "collection": LiveChatCollection,
      "userId": "xyz789",
      "writeAccess": false,
      "nickname": "abc123",
      "accessToken": "xyz789",
      "firebaseConfig": FirebaseConfig
    }
  }
}

media

Description

🔐 You must have the following permissions to query this field:

  • media: read
Response

Returns a Media

Arguments
Name Description
id - Int!

Example

Query
query Media($id: Int!) {
  media(id: $id) {
    id
    title
    description
    author
    categories {
      id
      title
      showMainMenu
      slug
      automatedTrading
      description
      thumbnail
      parent {
        ...CategoryFragment
      }
      children {
        ...CategoryFragment
      }
      media {
        ...MediaFragment
      }
      mediaList {
        ...MediaListFragment
      }
      vlogList {
        ...VlogListFragment
      }
    }
    products {
      results {
        ...ProductFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    date {
      published
      added
      modified
    }
    createdAt
    updatedAt
    publishStart
    views {
      week
      month
      year
      all
    }
    thumb
    socialThumb
    thumbs {
      small {
        ...ThumbTypeFragment
      }
      medium {
        ...ThumbTypeFragment
      }
      large {
        ...ThumbTypeFragment
      }
      hd720 {
        ...ThumbTypeFragment
      }
      social {
        ...ThumbTypeFragment
      }
    }
    interests {
      id
      slug
      name
      media {
        ...MediaFragment
      }
      mediaList {
        ...MediaListFragment
      }
    }
    embedURL
    keywords
    socialNotificationFlags {
      facebookLikes
      twitterFollows
    }
    socialNotifications
    contentType
    files {
      youtube {
        ...YoutubeFileTypeFragment
      }
      vimeo {
        ...VimeoFileTypeFragment
      }
      image {
        ...ImageFileTypeFragment
      }
      hls {
        ...HlsFileTypeFragment
      }
      dash {
        ...DashFileTypeFragment
      }
      progressive {
        ...ProgressiveFileTypeFragment
      }
      rtmp {
        ...RTMPFileTypeFragment
      }
    }
    filesProtectedReason
    duration
    endedPosition
    pinned
    private
    automatedTrading {
      enabled
      refID
      refAppID
      preroll
      postroll
    }
    overlays {
      ... on OverlayLivestreamActive {
        ...OverlayLivestreamActiveFragment
      }
      ... on OverlayMap {
        ...OverlayMapFragment
      }
      ... on OverlayBookBuy {
        ...OverlayBookBuyFragment
      }
      ... on OverlayTwitter {
        ...OverlayTwitterFragment
      }
      ... on OverlayInfo {
        ...OverlayInfoFragment
      }
      ... on OverlayRSS {
        ...OverlayRSSFragment
      }
      ... on OverlayAutomatedTrading {
        ...OverlayAutomatedTradingFragment
      }
      ... on OverlayReact {
        ...OverlayReactFragment
      }
      ... on OverlayLowerThird {
        ...OverlayLowerThirdFragment
      }
      ... on OverlayLink {
        ...OverlayLinkFragment
      }
      ... on OverlayArea {
        ...OverlayAreaFragment
      }
      ... on OverlaySeekTo {
        ...OverlaySeekToFragment
      }
      ... on OverlayECommerce {
        ...OverlayECommerceFragment
      }
    }
    vttTracks {
      ... on MetadataVttTrack {
        ...MetadataVttTrackFragment
      }
      ... on ChaptersVttTrack {
        ...ChaptersVttTrackFragment
      }
      ... on OverlaysVttTrack {
        ...OverlaysVttTrackFragment
      }
    }
    related {
      results {
        ...MediaFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    progress {
      mediaID
      media {
        ...MediaFragment
      }
      progress
      watched
      lastWatched
    }
    share {
      message
      enabled
      url
    }
    subtitles {
      results {
        ...MediaSubtitlesFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    spritesheets {
      results {
        ...MediaSpritesheetsFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    unlisted
    liveChat {
      enabled
    }
    livestreamStartTime
    livestreamEndTime
    liveTimeshifting
    parentMedia {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    childMediaList {
      results {
        ...MediaFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    drmProtected
    drmPolicy
    vmapUrl
    hasGeneratedVmap
    canonicalUrl
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "media": {
      "id": 987,
      "title": "xyz789",
      "description": "xyz789",
      "author": "abc123",
      "categories": [Category],
      "products": ProductList,
      "date": MediaDates,
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "publishStart": "2007-12-03T10:15:30Z",
      "views": MediaViews,
      "thumb": "abc123",
      "socialThumb": "xyz789",
      "thumbs": MediaThumbs,
      "interests": [Interest],
      "embedURL": "abc123",
      "keywords": ["xyz789"],
      "socialNotificationFlags": SocialNotificationFlags,
      "socialNotifications": 123,
      "contentType": "youtube",
      "files": FileType,
      "filesProtectedReason": "private",
      "duration": 987,
      "endedPosition": 123,
      "pinned": true,
      "private": true,
      "automatedTrading": AutomatedTradingType,
      "overlays": [OverlayLivestreamActive],
      "vttTracks": [MetadataVttTrack],
      "related": MediaList,
      "progress": MediaProgress,
      "share": MediaShare,
      "subtitles": MediaSubtitlesList,
      "spritesheets": MediaSpritesheetsList,
      "unlisted": true,
      "liveChat": MediaLiveChatSettings,
      "livestreamStartTime": "2007-12-03T10:15:30Z",
      "livestreamEndTime": "2007-12-03T10:15:30Z",
      "liveTimeshifting": false,
      "parentMedia": Media,
      "childMediaList": MediaList,
      "drmProtected": true,
      "drmPolicy": "xyz789",
      "vmapUrl": "xyz789",
      "hasGeneratedVmap": true,
      "canonicalUrl": "xyz789"
    }
  }
}

mediaByInterests

Deprecated in favor of using the interestList call with the mediaList property, no longer returns any data
Response

Returns [ByInterest]

Arguments
Name Description
filter - CategorizedFilter
sort - CategorizedSort
count - Int
interests - [Int]

Example

Query
query MediaByInterests(
  $filter: CategorizedFilter,
  $sort: CategorizedSort,
  $count: Int,
  $interests: [Int]
) {
  mediaByInterests(
    filter: $filter,
    sort: $sort,
    count: $count,
    interests: $interests
  ) {
    id
    slug
    name
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "filter": CategorizedFilter,
  "sort": CategorizedSort,
  "count": 123,
  "interests": [123]
}
Response
{
  "data": {
    "mediaByInterests": [
      {
        "id": 987,
        "slug": "xyz789",
        "name": "xyz789",
        "media": [Media],
        "limit": 987,
        "page": 123,
        "pageCount": 123,
        "resultCount": 123
      }
    ]
  }
}

mediaList

Response

Returns a MediaList

Arguments
Name Description
filter - MediaFilter
sort - MediaSort Sorts the media list, if you want to sort by multiple fields, use orderedSort instead. This field is ignored when orderedSort is set.
orderedSort - [MediaSort] Sorts the media list by multiple fields, in the order they are provided. When this field is set, the sort field is ignored.
limit - Int Default = 50
page - Int Default = 1
options - MediaListOptions

Example

Query
query MediaList(
  $filter: MediaFilter,
  $sort: MediaSort,
  $orderedSort: [MediaSort],
  $limit: Int,
  $page: Int,
  $options: MediaListOptions
) {
  mediaList(
    filter: $filter,
    sort: $sort,
    orderedSort: $orderedSort,
    limit: $limit,
    page: $page,
    options: $options
  ) {
    results {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "filter": MediaFilter,
  "sort": MediaSort,
  "orderedSort": [MediaSort],
  "limit": 50,
  "page": 1,
  "options": MediaListOptions
}
Response
{
  "data": {
    "mediaList": {
      "results": [Media],
      "limit": 987,
      "page": 987,
      "pageCount": 123,
      "resultCount": 123
    }
  }
}

mediaProgress

Response

Returns a MediaProgress

Arguments
Name Description
mediaID - Int!

Example

Query
query MediaProgress($mediaID: Int!) {
  mediaProgress(mediaID: $mediaID) {
    mediaID
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    progress
    watched
    lastWatched
  }
}
Variables
{"mediaID": 987}
Response
{
  "data": {
    "mediaProgress": {
      "mediaID": 987,
      "media": Media,
      "progress": 987,
      "watched": true,
      "lastWatched": "2007-12-03T10:15:30Z"
    }
  }
}

mediaProgressList

Response

Returns a MediaProgressList

Arguments
Name Description
cursor - String
limit - Int Default = 50
filter - MediaProgressFilter
options - MediaProgressOptions

Example

Query
query MediaProgressList(
  $cursor: String,
  $limit: Int,
  $filter: MediaProgressFilter,
  $options: MediaProgressOptions
) {
  mediaProgressList(
    cursor: $cursor,
    limit: $limit,
    filter: $filter,
    options: $options
  ) {
    results {
      mediaID
      media {
        ...MediaFragment
      }
      progress
      watched
      lastWatched
    }
    pageInfo {
      nextCursor
      hasNextPage
    }
  }
}
Variables
{
  "cursor": "xyz789",
  "limit": 50,
  "filter": MediaProgressFilter,
  "options": MediaProgressOptions
}
Response
{
  "data": {
    "mediaProgressList": {
      "results": [MediaProgress],
      "pageInfo": PageInfo
    }
  }
}

mediaRelated

Description

Media items related to the media item of the given ID

Response

Returns a MediaList!

Arguments
Name Description
id - Int!
filter - MediaFilter
sort - MediaSort Sorts the media list, if you want to sort by multiple fields, use orderedSort instead. This field is ignored when orderedSort is set.
orderedSort - [MediaSort] Sorts the media list by multiple fields, in the order they are provided. When this field is set, the sort field is ignored.
limit - Int Default = 50
page - Int Default = 1
options - MediaListOptions

Example

Query
query MediaRelated(
  $id: Int!,
  $filter: MediaFilter,
  $sort: MediaSort,
  $orderedSort: [MediaSort],
  $limit: Int,
  $page: Int,
  $options: MediaListOptions
) {
  mediaRelated(
    id: $id,
    filter: $filter,
    sort: $sort,
    orderedSort: $orderedSort,
    limit: $limit,
    page: $page,
    options: $options
  ) {
    results {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "id": 987,
  "filter": MediaFilter,
  "sort": MediaSort,
  "orderedSort": [MediaSort],
  "limit": 50,
  "page": 1,
  "options": MediaListOptions
}
Response
{
  "data": {
    "mediaRelated": {
      "results": [Media],
      "limit": 123,
      "page": 987,
      "pageCount": 123,
      "resultCount": 123
    }
  }
}

movie

Description

🔐 You must have the following permissions to query this field:

  • movie: read
Response

Returns a Movie

Arguments
Name Description
id - Int!

Example

Query
query Movie($id: Int!) {
  movie(id: $id) {
    id
    title
    description
    publishStart
    publishEnd
    releaseDate
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    trailer {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    posterImage
    genres {
      id
      title
      description
    }
    extras {
      id
      title
      media {
        ...MediaFragment
      }
    }
  }
}
Variables
{"id": 987}
Response
{
  "data": {
    "movie": {
      "id": 987,
      "title": "xyz789",
      "description": "abc123",
      "publishStart": "2007-12-03T10:15:30Z",
      "publishEnd": "2007-12-03T10:15:30Z",
      "releaseDate": "2007-12-03T10:15:30Z",
      "media": Media,
      "trailer": Media,
      "posterImage": "xyz789",
      "genres": [Genre],
      "extras": [Extra]
    }
  }
}

moviesAndSeriesList

Response

Returns a MoviesAndSeriesList

Arguments
Name Description
limit - Int Default = 50
page - Int Default = 1
filter - MoviesAndSeriesFilter
sort - MoviesAndSeriesListSort

Example

Query
query MoviesAndSeriesList(
  $limit: Int,
  $page: Int,
  $filter: MoviesAndSeriesFilter,
  $sort: MoviesAndSeriesListSort
) {
  moviesAndSeriesList(
    limit: $limit,
    page: $page,
    filter: $filter,
    sort: $sort
  ) {
    results {
      ... on Movie {
        ...MovieFragment
      }
      ... on Series {
        ...SeriesFragment
      }
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "limit": 50,
  "page": 1,
  "filter": MoviesAndSeriesFilter,
  "sort": MoviesAndSeriesListSort
}
Response
{
  "data": {
    "moviesAndSeriesList": {
      "results": [Movie],
      "limit": 987,
      "page": 123,
      "pageCount": 123,
      "resultCount": 987
    }
  }
}

paymentServiceProviderList

Response

Returns [PaymentServiceProvider]

Example

Query
query PaymentServiceProviderList {
  paymentServiceProviderList {
    id
    name
    publicApiKey
    methods {
      id
      name
      type
      supportedPlanTypes
      options {
        ...IssuerArrayFragment
      }
    }
  }
}
Response
{
  "data": {
    "paymentServiceProviderList": [
      {
        "id": 987,
        "name": "xyz789",
        "publicApiKey": "xyz789",
        "methods": [PaymentMethod]
      }
    ]
  }
}

permissions

Description

The list of permissions the querying user has

Response

Returns an AclPermissions

Example

Query
query Permissions {
  permissions {
    category {
      create
      read
      update
      delete
    }
    comment {
      create
      read
      update
      delete
    }
    contentPage {
      create
      read
      update
      delete
    }
    contract {
      create
      read
      update
      delete
    }
    discountCode {
      create
      read
      update
      delete
    }
    episode {
      create
      read
      update
      delete
    }
    extra {
      create
      read
      update
      delete
    }
    genre {
      create
      read
      update
      delete
    }
    interest {
      create
      read
      update
      delete
    }
    libraryCategory {
      create
      read
      update
      delete
    }
    media {
      create
      read
      update
      delete
    }
    movie {
      create
      read
      update
      delete
    }
    overlay {
      create
      read
      update
      delete
    }
    plan {
      create
      read
      update
      delete
    }
    product {
      create
      read
      update
      delete
    }
    season {
      create
      read
      update
      delete
    }
    series {
      create
      read
      update
      delete
    }
    slide {
      create
      read
      update
      delete
    }
    slider {
      create
      read
      update
      delete
    }
    transaction {
      create
      read
      update
      delete
    }
    userMedia {
      create
      read
      update
      delete
    }
    vlog {
      create
      read
      update
      delete
    }
    watchLater {
      create
      read
      update
      delete
    }
    analytics {
      create
      read
      update
      delete
    }
    anyComment {
      create
      read
      update
      delete
    }
    chatModeration {
      create
      read
      update
      delete
    }
    file {
      create
      read
      update
      delete
    }
    mediaSpritesheets {
      create
      read
      update
      delete
    }
    mediaSubtitles {
      create
      read
      update
      delete
    }
    purchase {
      create
      read
      update
      delete
    }
    uiBuilder {
      create
      read
      update
      delete
    }
    usageReport {
      create
      read
      update
      delete
    }
    user {
      create
      read
      update
      delete
    }
    userDisplayName {
      create
      read
      update
      delete
    }
    settings {
      create
      read
      update
      delete
    }
    subscription {
      create
      read
      update
      delete
    }
    timeline {
      create
      read
      update
      delete
    }
    transition {
      create
      read
      update
      delete
    }
  }
}
Response
{
  "data": {
    "permissions": {
      "category": AclCrudPermissions,
      "comment": AclCrudPermissions,
      "contentPage": AclCrudPermissions,
      "contract": AclCrudPermissions,
      "discountCode": AclCrudPermissions,
      "episode": AclCrudPermissions,
      "extra": AclCrudPermissions,
      "genre": AclCrudPermissions,
      "interest": AclCrudPermissions,
      "libraryCategory": AclCrudPermissions,
      "media": AclCrudPermissions,
      "movie": AclCrudPermissions,
      "overlay": AclCrudPermissions,
      "plan": AclCrudPermissions,
      "product": AclCrudPermissions,
      "season": AclCrudPermissions,
      "series": AclCrudPermissions,
      "slide": AclCrudPermissions,
      "slider": AclCrudPermissions,
      "transaction": AclCrudPermissions,
      "userMedia": AclCrudPermissions,
      "vlog": AclCrudPermissions,
      "watchLater": AclCrudPermissions,
      "analytics": AclCrudPermissions,
      "anyComment": AclCrudPermissions,
      "chatModeration": AclCrudPermissions,
      "file": AclCrudPermissions,
      "mediaSpritesheets": AclCrudPermissions,
      "mediaSubtitles": AclCrudPermissions,
      "purchase": AclCrudPermissions,
      "uiBuilder": AclCrudPermissions,
      "usageReport": AclCrudPermissions,
      "user": AclCrudPermissions,
      "userDisplayName": AclCrudPermissions,
      "settings": AclCrudPermissions,
      "subscription": AclCrudPermissions,
      "timeline": AclCrudPermissions,
      "transition": AclCrudPermissions
    }
  }
}

product

Description

🔐 You must have the following permissions to query this field:

  • product: read

The channel must have the premiumContent feature enabled to query this field.

Response

Returns a Product

Arguments
Name Description
id - Int!

Example

Query
query Product($id: Int!) {
  product(id: $id) {
    id
    title
    description
    type
    termsOfUse
    allowSubmitMedia
    allowDisqus
    preventAds
    createdAt
    updatedAt
    plans {
      results {
        ...PlanFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    media {
      results {
        ...MediaFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    interests {
      results {
        ...InterestFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    categories {
      results {
        ...CategoryFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    includedMedia {
      results {
        ...MediaFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    trailer {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "product": {
      "id": 123,
      "title": "abc123",
      "description": "xyz789",
      "type": "singularMedia",
      "termsOfUse": "xyz789",
      "allowSubmitMedia": true,
      "allowDisqus": false,
      "preventAds": true,
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "plans": PlanList,
      "media": MediaList,
      "interests": InterestListType,
      "categories": CategoryList,
      "includedMedia": MediaList,
      "trailer": Media
    }
  }
}

productList

Description

The channel must have the premiumContent feature enabled to query this field.

Response

Returns a ProductList

Arguments
Name Description
page - Int Default = 1
limit - Int Default = 50
filter - ProductFilter
sort - ProductListSort

Example

Query
query ProductList(
  $page: Int,
  $limit: Int,
  $filter: ProductFilter,
  $sort: ProductListSort
) {
  productList(
    page: $page,
    limit: $limit,
    filter: $filter,
    sort: $sort
  ) {
    results {
      id
      title
      description
      type
      termsOfUse
      allowSubmitMedia
      allowDisqus
      preventAds
      createdAt
      updatedAt
      plans {
        ...PlanListFragment
      }
      media {
        ...MediaListFragment
      }
      interests {
        ...InterestListTypeFragment
      }
      categories {
        ...CategoryListFragment
      }
      includedMedia {
        ...MediaListFragment
      }
      trailer {
        ...MediaFragment
      }
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "page": 1,
  "limit": 50,
  "filter": ProductFilter,
  "sort": ProductListSort
}
Response
{
  "data": {
    "productList": {
      "results": [Product],
      "limit": 987,
      "page": 123,
      "pageCount": 123,
      "resultCount": 123
    }
  }
}

profile

Response

Returns a ProfileType!

Example

Query
query Profile {
  profile {
    id
    username
    uuid
    firstName
    lastName
    displayName
    email
    country
    registerType
    verified
    language
    subscriptions
    interests {
      id
      slug
      name
      media {
        ...MediaFragment
      }
      mediaList {
        ...MediaListFragment
      }
    }
    roles
    userNotificationPreferences {
      notificationNewMedia
      notificationLivestreamScheduled
      notificationInvoice
      newsletterSubscribed
    }
    canSubmitMedia
    canDisqus
  }
}
Response
{
  "data": {
    "profile": {
      "id": 123,
      "username": "abc123",
      "uuid": "xyz789",
      "firstName": "abc123",
      "lastName": "xyz789",
      "displayName": "abc123",
      "email": "xyz789",
      "country": "AF",
      "registerType": 987,
      "verified": true,
      "language": "xyz789",
      "subscriptions": [123],
      "interests": [Interest],
      "roles": ["elearningLessonReports"],
      "userNotificationPreferences": NotificationInputs,
      "canSubmitMedia": false,
      "canDisqus": false
    }
  }
}

pspInfo

Deprecated: Replaced with paymentServiceProviders to support multi psp implementations
Response

Returns a PSPInfo

Example

Query
query PspInfo {
  pspInfo {
    id
    name
    currency
    publicApiKey
  }
}
Response
{
  "data": {
    "pspInfo": {
      "id": 123,
      "name": "xyz789",
      "currency": "abc123",
      "publicApiKey": "xyz789"
    }
  }
}

pspMethods

Deprecated: Replaced with paymentServiceProviders.methods to support multi psp implementations
Response

Returns [PSPMethod]

Example

Query
query PspMethods {
  pspMethods {
    name
    value
    valueType
    options {
      issuerID {
        ...IssuerFragment
      }
    }
  }
}
Response
{
  "data": {
    "pspMethods": [
      {
        "name": "xyz789",
        "value": 987,
        "valueType": "Bancontact",
        "options": IssuerArray
      }
    ]
  }
}

requestDetails

Response

Returns a RequestDetails

Example

Query
query RequestDetails {
  requestDetails {
    country
  }
}
Response
{
  "data": {
    "requestDetails": {"country": "xyz789"}
  }
}

route

Description

🔐 You must have the following permissions to query this field:

  • uiBuilder: read

The channel must have the uiBuilder feature enabled to query this field.

Response

Returns a Route

Arguments
Name Description
type - UIBuilderTypeEnum!
routeName - String!

Example

Query
query Route(
  $type: UIBuilderTypeEnum!,
  $routeName: String!
) {
  route(
    type: $type,
    routeName: $routeName
  ) {
    type
    routeName
    context
    status
    ui {
      ... on UIComponentAccountView {
        ...UIComponentAccountViewFragment
      }
      ... on AppUIComponentBlock {
        ...AppUIComponentBlockFragment
      }
      ... on AppUIComponentCategoryMediaCollection {
        ...AppUIComponentCategoryMediaCollectionFragment
      }
      ... on AppUIComponentCategoryThumbCollection {
        ...AppUIComponentCategoryThumbCollectionFragment
      }
      ... on AppUIComponentContinueWatching {
        ...AppUIComponentContinueWatchingFragment
      }
      ... on AppUIComponentImage {
        ...AppUIComponentImageFragment
      }
      ... on AppUIComponentMarketingSlider {
        ...AppUIComponentMarketingSliderFragment
      }
      ... on AppUIComponentMediaCollection {
        ...AppUIComponentMediaCollectionFragment
      }
      ... on AppUIComponentOndemandCollection {
        ...AppUIComponentOndemandCollectionFragment
      }
      ... on AppUIComponentText {
        ...AppUIComponentTextFragment
      }
      ... on AppUIComponentTimelinePlayButton {
        ...AppUIComponentTimelinePlayButtonFragment
      }
      ... on AppUIComponentTimelineSchedule {
        ...AppUIComponentTimelineScheduleFragment
      }
      ... on UIComponentApp {
        ...UIComponentAppFragment
      }
      ... on UIComponentBlock {
        ...UIComponentBlockFragment
      }
      ... on UIComponentBlurredItem {
        ...UIComponentBlurredItemFragment
      }
      ... on UIComponentBreadcrumb {
        ...UIComponentBreadcrumbFragment
      }
      ... on UIComponentCategoryTags {
        ...UIComponentCategoryTagsFragment
      }
      ... on UIComponentContentPagesList {
        ...UIComponentContentPagesListFragment
      }
      ... on UIComponentCurrentlyPlaying {
        ...UIComponentCurrentlyPlayingFragment
      }
      ... on UIComponentGridItem {
        ...UIComponentGridItemFragment
      }
      ... on UIComponentGrid {
        ...UIComponentGridFragment
      }
      ... on UIComponentHeading {
        ...UIComponentHeadingFragment
      }
      ... on UIComponentHr {
        ...UIComponentHrFragment
      }
      ... on UIComponentHtml {
        ...UIComponentHtmlFragment
      }
      ... on UIComponentIcon {
        ...UIComponentIconFragment
      }
      ... on UIComponentImage {
        ...UIComponentImageFragment
      }
      ... on UIComponentItemComments {
        ...UIComponentItemCommentsFragment
      }
      ... on UIComponentItemInterests {
        ...UIComponentItemInterestsFragment
      }
      ... on UIComponentItemShare {
        ...UIComponentItemShareFragment
      }
      ... on UIComponentLastWatchedOrNewMedia {
        ...UIComponentLastWatchedOrNewMediaFragment
      }
      ... on UIComponentLink {
        ...UIComponentLinkFragment
      }
      ... on UIComponentMediaItemsCategory {
        ...UIComponentMediaItemsCategoryFragment
      }
      ... on UIComponentMediaItems {
        ...UIComponentMediaItemsFragment
      }
      ... on UIComponentOndemandComponent {
        ...UIComponentOndemandComponentFragment
      }
      ... on UIComponentOndemand {
        ...UIComponentOndemandFragment
      }
      ... on UIComponentPageMeta {
        ...UIComponentPageMetaFragment
      }
      ... on UIComponentRelatedVlogItems {
        ...UIComponentRelatedVlogItemsFragment
      }
      ... on UIComponentRequestPlayer {
        ...UIComponentRequestPlayerFragment
      }
      ... on UIComponentSearchView {
        ...UIComponentSearchViewFragment
      }
      ... on UIComponentSettingsContent {
        ...UIComponentSettingsContentFragment
      }
      ... on UIComponentSocialMediaButtons {
        ...UIComponentSocialMediaButtonsFragment
      }
      ... on UIComponentText {
        ...UIComponentTextFragment
      }
      ... on UIComponentThumbBackdrop {
        ...UIComponentThumbBackdropFragment
      }
      ... on UIComponentVlogCategoriesList {
        ...UIComponentVlogCategoriesListFragment
      }
      ... on UIComponentVlogCategoryCollection {
        ...UIComponentVlogCategoryCollectionFragment
      }
      ... on UIComponentVlogItemContent {
        ...UIComponentVlogItemContentFragment
      }
      ... on UIComponentVlogItemHeader {
        ...UIComponentVlogItemHeaderFragment
      }
      ... on UIComponentVlogItemsCategory {
        ...UIComponentVlogItemsCategoryFragment
      }
      ... on UIComponentVlogItems {
        ...UIComponentVlogItemsFragment
      }
      ... on WebUIComponentMarketingSlider {
        ...WebUIComponentMarketingSliderFragment
      }
    }
    rootIDs
    style
    created
  }
}
Variables
{"type": "web", "routeName": "abc123"}
Response
{
  "data": {
    "route": {
      "type": "web",
      "routeName": "xyz789",
      "context": "xyz789",
      "status": "published",
      "ui": [UIComponentAccountView],
      "rootIDs": ["4"],
      "style": "xyz789",
      "created": "2007-12-03T10:15:30Z"
    }
  }
}

routeList

Description

The channel must have the uiBuilder feature enabled to query this field.

Response

Returns a RouteList

Arguments
Name Description
type - UIBuilderTypeEnum!
cursor - String
limit - Int Default = 50

Example

Query
query RouteList(
  $type: UIBuilderTypeEnum!,
  $cursor: String,
  $limit: Int
) {
  routeList(
    type: $type,
    cursor: $cursor,
    limit: $limit
  ) {
    results {
      type
      routeName
      context
      status
      ui {
        ... on UIComponentAccountView {
          ...UIComponentAccountViewFragment
        }
        ... on AppUIComponentBlock {
          ...AppUIComponentBlockFragment
        }
        ... on AppUIComponentCategoryMediaCollection {
          ...AppUIComponentCategoryMediaCollectionFragment
        }
        ... on AppUIComponentCategoryThumbCollection {
          ...AppUIComponentCategoryThumbCollectionFragment
        }
        ... on AppUIComponentContinueWatching {
          ...AppUIComponentContinueWatchingFragment
        }
        ... on AppUIComponentImage {
          ...AppUIComponentImageFragment
        }
        ... on AppUIComponentMarketingSlider {
          ...AppUIComponentMarketingSliderFragment
        }
        ... on AppUIComponentMediaCollection {
          ...AppUIComponentMediaCollectionFragment
        }
        ... on AppUIComponentOndemandCollection {
          ...AppUIComponentOndemandCollectionFragment
        }
        ... on AppUIComponentText {
          ...AppUIComponentTextFragment
        }
        ... on AppUIComponentTimelinePlayButton {
          ...AppUIComponentTimelinePlayButtonFragment
        }
        ... on AppUIComponentTimelineSchedule {
          ...AppUIComponentTimelineScheduleFragment
        }
        ... on UIComponentApp {
          ...UIComponentAppFragment
        }
        ... on UIComponentBlock {
          ...UIComponentBlockFragment
        }
        ... on UIComponentBlurredItem {
          ...UIComponentBlurredItemFragment
        }
        ... on UIComponentBreadcrumb {
          ...UIComponentBreadcrumbFragment
        }
        ... on UIComponentCategoryTags {
          ...UIComponentCategoryTagsFragment
        }
        ... on UIComponentContentPagesList {
          ...UIComponentContentPagesListFragment
        }
        ... on UIComponentCurrentlyPlaying {
          ...UIComponentCurrentlyPlayingFragment
        }
        ... on UIComponentGridItem {
          ...UIComponentGridItemFragment
        }
        ... on UIComponentGrid {
          ...UIComponentGridFragment
        }
        ... on UIComponentHeading {
          ...UIComponentHeadingFragment
        }
        ... on UIComponentHr {
          ...UIComponentHrFragment
        }
        ... on UIComponentHtml {
          ...UIComponentHtmlFragment
        }
        ... on UIComponentIcon {
          ...UIComponentIconFragment
        }
        ... on UIComponentImage {
          ...UIComponentImageFragment
        }
        ... on UIComponentItemComments {
          ...UIComponentItemCommentsFragment
        }
        ... on UIComponentItemInterests {
          ...UIComponentItemInterestsFragment
        }
        ... on UIComponentItemShare {
          ...UIComponentItemShareFragment
        }
        ... on UIComponentLastWatchedOrNewMedia {
          ...UIComponentLastWatchedOrNewMediaFragment
        }
        ... on UIComponentLink {
          ...UIComponentLinkFragment
        }
        ... on UIComponentMediaItemsCategory {
          ...UIComponentMediaItemsCategoryFragment
        }
        ... on UIComponentMediaItems {
          ...UIComponentMediaItemsFragment
        }
        ... on UIComponentOndemandComponent {
          ...UIComponentOndemandComponentFragment
        }
        ... on UIComponentOndemand {
          ...UIComponentOndemandFragment
        }
        ... on UIComponentPageMeta {
          ...UIComponentPageMetaFragment
        }
        ... on UIComponentRelatedVlogItems {
          ...UIComponentRelatedVlogItemsFragment
        }
        ... on UIComponentRequestPlayer {
          ...UIComponentRequestPlayerFragment
        }
        ... on UIComponentSearchView {
          ...UIComponentSearchViewFragment
        }
        ... on UIComponentSettingsContent {
          ...UIComponentSettingsContentFragment
        }
        ... on UIComponentSocialMediaButtons {
          ...UIComponentSocialMediaButtonsFragment
        }
        ... on UIComponentText {
          ...UIComponentTextFragment
        }
        ... on UIComponentThumbBackdrop {
          ...UIComponentThumbBackdropFragment
        }
        ... on UIComponentVlogCategoriesList {
          ...UIComponentVlogCategoriesListFragment
        }
        ... on UIComponentVlogCategoryCollection {
          ...UIComponentVlogCategoryCollectionFragment
        }
        ... on UIComponentVlogItemContent {
          ...UIComponentVlogItemContentFragment
        }
        ... on UIComponentVlogItemHeader {
          ...UIComponentVlogItemHeaderFragment
        }
        ... on UIComponentVlogItemsCategory {
          ...UIComponentVlogItemsCategoryFragment
        }
        ... on UIComponentVlogItems {
          ...UIComponentVlogItemsFragment
        }
        ... on WebUIComponentMarketingSlider {
          ...WebUIComponentMarketingSliderFragment
        }
      }
      rootIDs
      style
      created
    }
    pageInfo {
      nextCursor
      hasNextPage
    }
  }
}
Variables
{
  "type": "web",
  "cursor": "xyz789",
  "limit": 50
}
Response
{
  "data": {
    "routeList": {
      "results": [Route],
      "pageInfo": PageInfo
    }
  }
}

season

Description

🔐 You must have the following permissions to query this field:

  • season: read
Response

Returns a Season

Arguments
Name Description
id - Int!

Example

Query
query Season($id: Int!) {
  season(id: $id) {
    id
    title
    description
    publishStart
    publishEnd
    releaseDate
    trailer {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    posterImage
    extras {
      id
      title
      media {
        ...MediaFragment
      }
    }
    episodes {
      id
      title
      description
      publishStart
      publishEnd
      releaseDate
      posterImage
      media {
        ...MediaFragment
      }
      trailer {
        ...MediaFragment
      }
      season {
        ...SeasonFragment
      }
      extras {
        ...ExtraFragment
      }
    }
    series {
      id
      title
      description
      publishStart
      publishEnd
      releaseDate
      trailer {
        ...MediaFragment
      }
      posterImage
      genres {
        ...GenreFragment
      }
      seasons {
        ...SeasonFragment
      }
    }
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "season": {
      "id": 987,
      "title": "abc123",
      "description": "abc123",
      "publishStart": "2007-12-03T10:15:30Z",
      "publishEnd": "2007-12-03T10:15:30Z",
      "releaseDate": "2007-12-03T10:15:30Z",
      "trailer": Media,
      "posterImage": "abc123",
      "extras": [Extra],
      "episodes": [Episode],
      "series": Series
    }
  }
}

series

Description

🔐 You must have the following permissions to query this field:

  • series: read
Response

Returns a Series

Arguments
Name Description
id - Int!

Example

Query
query Series($id: Int!) {
  series(id: $id) {
    id
    title
    description
    publishStart
    publishEnd
    releaseDate
    trailer {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    posterImage
    genres {
      id
      title
      description
    }
    seasons {
      id
      title
      description
      publishStart
      publishEnd
      releaseDate
      trailer {
        ...MediaFragment
      }
      posterImage
      extras {
        ...ExtraFragment
      }
      episodes {
        ...EpisodeFragment
      }
      series {
        ...SeriesFragment
      }
    }
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "series": {
      "id": 987,
      "title": "xyz789",
      "description": "xyz789",
      "publishStart": "2007-12-03T10:15:30Z",
      "publishEnd": "2007-12-03T10:15:30Z",
      "releaseDate": "2007-12-03T10:15:30Z",
      "trailer": Media,
      "posterImage": "abc123",
      "genres": [Genre],
      "seasons": [Season]
    }
  }
}

settings

Description

🔐 You must have the following permissions to query this field:

  • settings: read
Response

Returns a Settings!

Example

Query
query Settings {
  settings {
    channel {
      name
      description
      channelType
    }
    defaultLanguage
    languages
    analyticsApiUrl
    analytics
    appState
    featuredMedia
    googleApiMapsKey
    analyticsTrackingIDs {
      trackingID
    }
    googleTagManagerCode
    hasHls
    store {
      ios {
        ...StoreDetailsFragment
      }
      android {
        ...StoreDetailsFragment
      }
    }
    social {
      facebook {
        ...FacebookDetailsFragment
      }
      twitter {
        ...SocialDetailsFragment
      }
      linkedin {
        ...SocialDetailsFragment
      }
      googleplus {
        ...SocialDetailsFragment
      }
      instagram {
        ...SocialDetailsFragment
      }
      tiktok {
        ...SocialDetailsFragment
      }
      spotify {
        ...SocialDetailsFragment
      }
      youtube {
        ...SocialDetailsFragment
      }
      snapchat {
        ...SocialDetailsFragment
      }
      pinterest {
        ...SocialDetailsFragment
      }
    }
    newsletter
    enableUserCountryInput
    enableQualitySelector
    enableCookieConsentNotice
    enablePremiumContentIndicator
    showOndemandViews
    launchScreen {
      new
      loggedIn
    }
    notifications {
      flags {
        ...NotificationFlagsFragment
      }
      inputs {
        ...NotificationInputsFragment
      }
    }
    mobileApps
    versions {
      minAPI {
        ...VersionNumberTypeFragment
      }
    }
    ui {
      media {
        ...MediaSettingsFragment
      }
      restrictions {
        ...RestrictionSettingsFragment
      }
      ondemandCategorizationType
      web {
        ...UITypeFragment
      }
      mobile {
        ...UITypeFragment
      }
      tv {
        ...UITypeFragment
      }
    }
    hostname
    features {
      premiumContent {
        ...PremiumContentFeatureSettingsFragment
      }
      svod {
        ...SvodFeatureSettingsFragment
      }
      elearning {
        ...ElearningFeatureSettingsFragment
      }
      b2btv {
        ...B2btvFeatureSettingsFragment
      }
      automatedTrading {
        ...AutomatedTradingFeatureSettingsFragment
      }
      subtitles {
        ...SubtitlesFeatureSettingsFragment
      }
      chapters {
        ...ChaptersFeatureSettingsFragment
      }
      metadata {
        ...MetadataFeatureSettingsFragment
      }
      geoblocking {
        ...GeoblockingFeatureSettingsFragment
      }
      ticketCode {
        ...TicketCodeFeatureSettingsFragment
      }
      discountCode {
        ...DiscountCodeFeatureSettingsFragment
      }
      submitMedia {
        ...SubmitMediaSettingsFragment
      }
      disqus {
        ...DisqusSettingsFragment
      }
      activeDirectoryLogin {
        ...ActiveDirectoryLoginSettingsFragment
      }
      allowEmbedMediaType {
        ...AllowEmbedMediaTypeSettingsFragment
      }
      uiBuilder {
        ...UIBuilderFeatureSettingsFragment
      }
      liveChat {
        ...LiveChatFeatureSettingsFragment
      }
      marketingSliders {
        ...MarketingSlidersFeatureSettingsFragment
      }
      drm {
        ...DrmFeatureSettingsFragment
      }
      liveTimeshifting {
        ...LiveTimeshiftingFeatureSettingsFragment
      }
      sentry {
        ...SentryFeatureSettingsFragment
      }
      tvApp {
        ...TvAppFeatureSettingsFragment
      }
      vlogs {
        ...VlogsFeatureSettingsFragment
      }
      contentPages {
        ...ContentPagesFeatureSettingsFragment
      }
      timeline {
        ...TimelineFeatureSettingsFragment
      }
      frontendUser {
        ...FrontendUserFeatureSettingsFragment
      }
      broadcast {
        ...BroadcastFeatureSettingsTypeFragment
      }
    }
    channelProtectedReason
    allowMediaInMainCategory
    apple {
      teamID
      appleBundleID
      appBundleID
      signIn {
        ...SignInWithAppleSettingsFragment
      }
    }
    player {
      airplay
      autoSelectSubtitles
      chromeCast
      contextMenu
      doubleTapControl
      mediaSession
      pip
      playProgressTracking
      vr360
      playNextStrategy
      streamLogoUrl
      timelinePage
    }
    googleCastApplicationId
    drmApiEndpoint
    producedContentUrlSigning
    interestCount
  }
}
Response
{
  "data": {
    "settings": {
      "channel": ChannelInfo,
      "defaultLanguage": "abc123",
      "languages": ["abc123"],
      "analyticsApiUrl": "xyz789",
      "analytics": "xyz789",
      "appState": "ok",
      "featuredMedia": 123,
      "googleApiMapsKey": "xyz789",
      "analyticsTrackingIDs": [AnalyticsSettings],
      "googleTagManagerCode": "abc123",
      "hasHls": false,
      "store": StoreType,
      "social": SocialType,
      "newsletter": false,
      "enableUserCountryInput": false,
      "enableQualitySelector": true,
      "enableCookieConsentNotice": false,
      "enablePremiumContentIndicator": true,
      "showOndemandViews": false,
      "launchScreen": LaunchScreenSettings,
      "notifications": NotificationSettings,
      "mobileApps": false,
      "versions": VersionType,
      "ui": UISettings,
      "hostname": "xyz789",
      "features": FeaturesSettings,
      "channelProtectedReason": "geoblocked",
      "allowMediaInMainCategory": true,
      "apple": AppleSettings,
      "player": PlayerSettings,
      "googleCastApplicationId": "xyz789",
      "drmApiEndpoint": "abc123",
      "producedContentUrlSigning": true,
      "interestCount": 987
    }
  }
}

slide

Description

🔐 You must have the following permissions to query this field:

  • slide: read
Response

Returns a Slide

Arguments
Name Description
id - Int!

Example

Query
query Slide($id: Int!) {
  slide(id: $id) {
    id
    title
    hideTitle
    description
    hideDescription
    image
    showDuration
    order
    cta {
      id
      title
      type
      url
      media {
        ...MediaFragment
      }
      product {
        ...ProductFragment
      }
      plan {
        ...PlanFragment
      }
      openExternally
    }
    availableOn
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "slide": {
      "id": 987,
      "title": "abc123",
      "hideTitle": false,
      "description": "xyz789",
      "hideDescription": false,
      "image": "abc123",
      "showDuration": 987,
      "order": 987,
      "cta": [SlideCta],
      "availableOn": ["None"]
    }
  }
}

slideList

Response

Returns a SlideList

Arguments
Name Description
page - Int Default = 1
limit - Int Default = 10
sliderId - Int!
filter - SlideFilter

Example

Query
query SlideList(
  $page: Int,
  $limit: Int,
  $sliderId: Int!,
  $filter: SlideFilter
) {
  slideList(
    page: $page,
    limit: $limit,
    sliderId: $sliderId,
    filter: $filter
  ) {
    results {
      id
      title
      hideTitle
      description
      hideDescription
      image
      showDuration
      order
      cta {
        ...SlideCtaFragment
      }
      availableOn
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "page": 1,
  "limit": 10,
  "sliderId": 987,
  "filter": SlideFilter
}
Response
{
  "data": {
    "slideList": {
      "results": [Slide],
      "limit": 987,
      "page": 987,
      "pageCount": 123,
      "resultCount": 987
    }
  }
}

slider

Description

A marketing slider that can hold 10 slides

🔐 You must have the following permissions to query this field:

  • slider: read
Response

Returns a Slider

Arguments
Name Description
id - Int!

Example

Query
query Slider($id: Int!) {
  slider(id: $id) {
    id
    showDuration
    title
    slides {
      id
      title
      hideTitle
      description
      hideDescription
      image
      showDuration
      order
      cta {
        ...SlideCtaFragment
      }
      availableOn
    }
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "slider": {
      "id": 987,
      "showDuration": 987,
      "title": "abc123",
      "slides": [Slide]
    }
  }
}

sliderList

Response

Returns a SliderList

Arguments
Name Description
page - Int Default = 1
limit - Int Default = 50
filter - SliderFilter

Example

Query
query SliderList(
  $page: Int,
  $limit: Int,
  $filter: SliderFilter
) {
  sliderList(
    page: $page,
    limit: $limit,
    filter: $filter
  ) {
    results {
      id
      showDuration
      title
      slides {
        ...SlideFragment
      }
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{"page": 1, "limit": 50, "filter": SliderFilter}
Response
{
  "data": {
    "sliderList": {
      "results": [Slider],
      "limit": 123,
      "page": 987,
      "pageCount": 123,
      "resultCount": 123
    }
  }
}

socialNotifications

SocialNotifications are not used anymore
Response

Returns a SocialNotifications

Arguments
Name Description
socialMedia - Int!
serverTime - Int

Example

Query
query SocialNotifications(
  $socialMedia: Int!,
  $serverTime: Int
) {
  socialNotifications(
    socialMedia: $socialMedia,
    serverTime: $serverTime
  ) {
    items {
      id
      type
      socialMediaID
      name
      thumb
      thumbNormal
      thumbBigger
      socialMediaUrl
      timestamp
    }
    serverTime
  }
}
Variables
{"socialMedia": 987, "serverTime": 987}
Response
{
  "data": {
    "socialNotifications": {
      "items": [Notification],
      "serverTime": 123
    }
  }
}

style

Description

🔐 You must have the following permissions to query this field:

  • uiBuilder: read

The channel must have the uiBuilder feature enabled to query this field.

Response

Returns a Style

Arguments
Name Description
type - UIBuilderTypeEnum!

Example

Query
query Style($type: UIBuilderTypeEnum!) {
  style(type: $type) {
    type
    style
  }
}
Variables
{"type": "web"}
Response
{
  "data": {
    "style": {
      "type": "web",
      "style": "xyz789"
    }
  }
}

subscriptionList

Deprecated in favor of SVOD products
Response

Returns a SubscriptionList

Arguments
Name Description
filter - SubscriptionFilter
sort - SubscriptionSort
limit - Int Default = 50
page - Int Default = 1

Example

Query
query SubscriptionList(
  $filter: SubscriptionFilter,
  $sort: SubscriptionSort,
  $limit: Int,
  $page: Int
) {
  subscriptionList(
    filter: $filter,
    sort: $sort,
    limit: $limit,
    page: $page
  ) {
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "filter": SubscriptionFilter,
  "sort": SubscriptionSort,
  "limit": 50,
  "page": 1
}
Response
{
  "data": {
    "subscriptionList": {
      "limit": 123,
      "page": 987,
      "pageCount": 123,
      "resultCount": 987
    }
  }
}

timeline

Description

Note: the id argument is deprecated and will be ignored

🔐 You must have the following permissions to query this field:

  • timeline: read

The channel must have the timeline feature enabled to query this field.

Response

Returns a TimelineType

Arguments
Name Description
id - Int

Example

Query
query Timeline($id: Int) {
  timeline(id: $id) {
    items {
      media {
        ...TimelineMediaItemFragment
      }
      overlay {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      timeline {
        ...MediaTimelineInfoFragment
      }
    }
    overlay {
      ... on OverlayLivestreamActive {
        ...OverlayLivestreamActiveFragment
      }
      ... on OverlayMap {
        ...OverlayMapFragment
      }
      ... on OverlayBookBuy {
        ...OverlayBookBuyFragment
      }
      ... on OverlayTwitter {
        ...OverlayTwitterFragment
      }
      ... on OverlayInfo {
        ...OverlayInfoFragment
      }
      ... on OverlayRSS {
        ...OverlayRSSFragment
      }
      ... on OverlayAutomatedTrading {
        ...OverlayAutomatedTradingFragment
      }
      ... on OverlayReact {
        ...OverlayReactFragment
      }
      ... on OverlayLowerThird {
        ...OverlayLowerThirdFragment
      }
      ... on OverlayLink {
        ...OverlayLinkFragment
      }
      ... on OverlayArea {
        ...OverlayAreaFragment
      }
      ... on OverlaySeekTo {
        ...OverlaySeekToFragment
      }
      ... on OverlayECommerce {
        ...OverlayECommerceFragment
      }
    }
    timeline {
      startTime
      totalDuration
      lastUpdate
    }
    transitions {
      id
      userSelectable
      name
      frames
      still
      fps
      url
      thumbnail
      preview
      frameUrls
    }
    share {
      message
      url
      enabled
    }
    automated_trading {
      refID
      refAppID
    }
    automatedTrading {
      refID
      refAppID
    }
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "timeline": {
      "items": [TimelineItem],
      "overlay": [OverlayLivestreamActive],
      "timeline": TimelineInfo,
      "transitions": [Transition],
      "share": Share,
      "automated_trading": TimelineAutomatedTradingType,
      "automatedTrading": TimelineAutomatedTradingType
    }
  }
}

transaction

Description

The authenticated user's transaction of the given ID

🔐 You must have the following permissions to query this field:

  • transaction: read
Response

Returns a Transaction

Arguments
Name Description
id - Int!

Example

Query
query Transaction($id: Int!) {
  transaction(id: $id) {
    id
    amountInCents
    currency
    provider
    method
    status
    reason
    contracts {
      results {
        ...ContractFragment
      }
      limit
      page
      pageCount
      resultCount
    }
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "transaction": {
      "id": 123,
      "amountInCents": 123,
      "currency": "USD",
      "provider": "cardGate",
      "method": "Bancontact",
      "status": "pending",
      "reason": "authSuccess",
      "contracts": ContractList
    }
  }
}

transition

Timeline transitions have been dropped
Response

Returns a DynamoTransition

Arguments
Name Description
id - String!

Example

Query
query Transition($id: String!) {
  transition(id: $id) {
    id
    userSelectable
    name
    folder
    frames
    still
    fps
  }
}
Variables
{"id": "abc123"}
Response
{
  "data": {
    "transition": {
      "id": "xyz789",
      "userSelectable": true,
      "name": "abc123",
      "folder": "xyz789",
      "frames": 987,
      "still": 987,
      "fps": 987
    }
  }
}

transitionList

Timeline transitions have been dropped
Response

Returns a DynamoTransitionList

Arguments
Name Description
limit - Int
startAfterID - String

Example

Query
query TransitionList(
  $limit: Int,
  $startAfterID: String
) {
  transitionList(
    limit: $limit,
    startAfterID: $startAfterID
  ) {
    Items {
      id
      userSelectable
      name
      folder
      frames
      still
      fps
    }
    Count
    ScannedCount
    LastEvaluatedID
  }
}
Variables
{"limit": 987, "startAfterID": "xyz789"}
Response
{
  "data": {
    "transitionList": {
      "Items": [DynamoTransition],
      "Count": 123,
      "ScannedCount": 123,
      "LastEvaluatedID": "abc123"
    }
  }
}

tvLive

B2b tv support is dropped
Response

Returns a Live

Example

Query
query TvLive {
  tvLive {
    item {
      media {
        ...TimelineMediaItemFragment
      }
      overlay {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      timeline {
        ...MediaTimelineInfoFragment
      }
    }
    livestream {
      startTime
    }
  }
}
Response
{
  "data": {
    "tvLive": {
      "item": TimelineItem,
      "livestream": Livestream
    }
  }
}

tvTimeline

B2b tv support is dropped
Response

Returns a TvTimelineType!

Arguments
Name Description
mac - String!

Example

Query
query TvTimeline($mac: String!) {
  tvTimeline(mac: $mac) {
    items {
      media {
        ...TimelineMediaItemFragment
      }
      overlay {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      timeline {
        ...MediaTimelineInfoFragment
      }
    }
    mergeMethod
    transitions {
      id
      userSelectable
      name
      frames
      still
      fps
      url
      thumbnail
      preview
      frameUrls
    }
  }
}
Variables
{"mac": "abc123"}
Response
{
  "data": {
    "tvTimeline": {
      "items": [TimelineItem],
      "mergeMethod": "before",
      "transitions": [Transition]
    }
  }
}

userInterests

Description

The interests of the authenticated user

🔐 You must have the following permissions to query this field:

  • interest: read
Response

Returns [Interest]

Example

Query
query UserInterests {
  userInterests {
    id
    slug
    name
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    mediaList {
      results {
        ...MediaFragment
      }
      limit
      page
      pageCount
      resultCount
    }
  }
}
Response
{
  "data": {
    "userInterests": [
      {
        "id": 123,
        "slug": "abc123",
        "name": "xyz789",
        "media": [Media],
        "mediaList": MediaList
      }
    ]
  }
}

userMediaGetUploadUrl

Description

Gets credentials to upload user media to S3.

The channel must have the submitMedia feature enabled to query this field.

Response

Returns an UploadUserMediaUploadUrl

Example

Query
query UserMediaGetUploadUrl {
  userMediaGetUploadUrl {
    Credentials {
      AccessKeyID
      SecretAccessKey
      SessionToken
      Expiration
    }
    Region
    S3 {
      Bucket
      Key
    }
  }
}
Response
{
  "data": {
    "userMediaGetUploadUrl": {
      "Credentials": Credentials,
      "Region": "abc123",
      "S3": S3
    }
  }
}

userMediaSubmissionAllowed

Description

Whether or not uploading user generated content is allowed, based on the rate limits set for the current channel.

The channel must have the submitMedia feature enabled to query this field.

Response

Returns a UserMediaSubmissionAllowStatus

Example

Query
query UserMediaSubmissionAllowed {
  userMediaSubmissionAllowed {
    allowed
    reason
  }
}
Response
{
  "data": {
    "userMediaSubmissionAllowed": {
      "allowed": true,
      "reason": "xyz789"
    }
  }
}

userNotificationPreferences

Description

Gets the authenticated user's notification preferences. Note: the userID argument is deprecated and will be ignored.

Response

Returns a NotificationInputs

Arguments
Name Description
userID - Int

Example

Query
query UserNotificationPreferences($userID: Int) {
  userNotificationPreferences(userID: $userID) {
    notificationNewMedia
    notificationLivestreamScheduled
    notificationInvoice
    newsletterSubscribed
  }
}
Variables
{"userID": 987}
Response
{
  "data": {
    "userNotificationPreferences": {
      "notificationNewMedia": NotificationBitmaskType,
      "notificationLivestreamScheduled": NotificationBitmaskType,
      "notificationInvoice": NotificationBitmaskType,
      "newsletterSubscribed": NotificationBitmaskType
    }
  }
}

vlog

Description

Gets the vlog.

🔐 You must have the following permissions to query this field:

  • vlog: read

The channel must have the vlogs feature enabled to query this field.

Response

Returns a VlogType

Arguments
Name Description
slug - String!

Example

Query
query Vlog($slug: String!) {
  vlog(slug: $slug) {
    commentCount
    date {
      published
      added
      modified
    }
    createdAt
    updatedAt
    publishStart
    id
    media {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    contentText
    description
    allowComments
    slug
    comments {
      parent
      user {
        ...UserInfoFragment
      }
      date {
        ...CommentDatesFragment
      }
      createdAt
      updatedAt
      childCount
      children {
        ...CommentTypeFragment
      }
      id
      body
      status
    }
    commentList {
      results {
        ...CommentTypeFragment
      }
      limit
      page
      pageCount
      resultCount
    }
    related {
      results {
        ...VlogListItemFragment
      }
      limit
      page
      pageCount
      resultCount
    }
  }
}
Variables
{"slug": "abc123"}
Response
{
  "data": {
    "vlog": {
      "commentCount": 987,
      "date": VlogDates,
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "publishStart": "2007-12-03T10:15:30Z",
      "id": 987,
      "media": Media,
      "contentText": "xyz789",
      "description": "xyz789",
      "allowComments": true,
      "slug": "xyz789",
      "comments": [CommentType],
      "commentList": CommentList,
      "related": VlogList
    }
  }
}

vlogList

Description

Gets the list of vlogs.

The channel must have the vlogs feature enabled to query this field.

Response

Returns a VlogList

Arguments
Name Description
filter - VlogFilter
sort - VlogSort
limit - Int
page - Int

Example

Query
query VlogList(
  $filter: VlogFilter,
  $sort: VlogSort,
  $limit: Int,
  $page: Int
) {
  vlogList(
    filter: $filter,
    sort: $sort,
    limit: $limit,
    page: $page
  ) {
    results {
      title
      categories {
        ...CategoryFragment
      }
      thumb
      socialThumb
      thumbs {
        ...VlogThumbsFragment
      }
      commentCount
      date {
        ...VlogDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      id
      media {
        ...MediaFragment
      }
      contentText
      description
      allowComments
      slug
      comments {
        ...CommentTypeFragment
      }
      commentList {
        ...CommentListFragment
      }
      related {
        ...VlogListFragment
      }
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "filter": VlogFilter,
  "sort": VlogSort,
  "limit": 987,
  "page": 123
}
Response
{
  "data": {
    "vlogList": {
      "results": [VlogListItem],
      "limit": 123,
      "page": 123,
      "pageCount": 123,
      "resultCount": 987
    }
  }
}

vlogRelated

Description

Gets vlogs related to the given vlog.

The channel must have the vlogs feature enabled to query this field.

Response

Returns a VlogList

Arguments
Name Description
slug - String!
filter - VlogFilter
sort - VlogSort
limit - Int
page - Int

Example

Query
query VlogRelated(
  $slug: String!,
  $filter: VlogFilter,
  $sort: VlogSort,
  $limit: Int,
  $page: Int
) {
  vlogRelated(
    slug: $slug,
    filter: $filter,
    sort: $sort,
    limit: $limit,
    page: $page
  ) {
    results {
      title
      categories {
        ...CategoryFragment
      }
      thumb
      socialThumb
      thumbs {
        ...VlogThumbsFragment
      }
      commentCount
      date {
        ...VlogDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      id
      media {
        ...MediaFragment
      }
      contentText
      description
      allowComments
      slug
      comments {
        ...CommentTypeFragment
      }
      commentList {
        ...CommentListFragment
      }
      related {
        ...VlogListFragment
      }
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "slug": "abc123",
  "filter": VlogFilter,
  "sort": VlogSort,
  "limit": 987,
  "page": 987
}
Response
{
  "data": {
    "vlogRelated": {
      "results": [VlogListItem],
      "limit": 123,
      "page": 123,
      "pageCount": 987,
      "resultCount": 123
    }
  }
}

watchLaterList

Response

Returns a WatchLaterMediaList

Arguments
Name Description
filter - MediaFilter
sort - MediaSort Sorts the media list, if you want to sort by multiple fields, use orderedSort instead. This field is ignored when orderedSort is set.
orderedSort - [MediaSort] Sorts the media list by multiple fields, in the order they are provided. When this field is set, the sort field is ignored.
limit - Int Default = 50
page - Int Default = 1
options - MediaListOptions

Example

Query
query WatchLaterList(
  $filter: MediaFilter,
  $sort: MediaSort,
  $orderedSort: [MediaSort],
  $limit: Int,
  $page: Int,
  $options: MediaListOptions
) {
  watchLaterList(
    filter: $filter,
    sort: $sort,
    orderedSort: $orderedSort,
    limit: $limit,
    page: $page,
    options: $options
  ) {
    results {
      id
      title
      description
      author
      categories {
        ...CategoryFragment
      }
      products {
        ...ProductListFragment
      }
      date {
        ...MediaDatesFragment
      }
      createdAt
      updatedAt
      publishStart
      views {
        ...MediaViewsFragment
      }
      thumb
      socialThumb
      thumbs {
        ...MediaThumbsFragment
      }
      interests {
        ...InterestFragment
      }
      embedURL
      keywords
      socialNotificationFlags {
        ...SocialNotificationFlagsFragment
      }
      socialNotifications
      contentType
      files {
        ...FileTypeFragment
      }
      filesProtectedReason
      duration
      endedPosition
      pinned
      private
      automatedTrading {
        ...AutomatedTradingTypeFragment
      }
      overlays {
        ... on OverlayLivestreamActive {
          ...OverlayLivestreamActiveFragment
        }
        ... on OverlayMap {
          ...OverlayMapFragment
        }
        ... on OverlayBookBuy {
          ...OverlayBookBuyFragment
        }
        ... on OverlayTwitter {
          ...OverlayTwitterFragment
        }
        ... on OverlayInfo {
          ...OverlayInfoFragment
        }
        ... on OverlayRSS {
          ...OverlayRSSFragment
        }
        ... on OverlayAutomatedTrading {
          ...OverlayAutomatedTradingFragment
        }
        ... on OverlayReact {
          ...OverlayReactFragment
        }
        ... on OverlayLowerThird {
          ...OverlayLowerThirdFragment
        }
        ... on OverlayLink {
          ...OverlayLinkFragment
        }
        ... on OverlayArea {
          ...OverlayAreaFragment
        }
        ... on OverlaySeekTo {
          ...OverlaySeekToFragment
        }
        ... on OverlayECommerce {
          ...OverlayECommerceFragment
        }
      }
      vttTracks {
        ... on MetadataVttTrack {
          ...MetadataVttTrackFragment
        }
        ... on ChaptersVttTrack {
          ...ChaptersVttTrackFragment
        }
        ... on OverlaysVttTrack {
          ...OverlaysVttTrackFragment
        }
      }
      related {
        ...MediaListFragment
      }
      progress {
        ...MediaProgressFragment
      }
      share {
        ...MediaShareFragment
      }
      subtitles {
        ...MediaSubtitlesListFragment
      }
      spritesheets {
        ...MediaSpritesheetsListFragment
      }
      unlisted
      liveChat {
        ...MediaLiveChatSettingsFragment
      }
      livestreamStartTime
      livestreamEndTime
      liveTimeshifting
      parentMedia {
        ...MediaFragment
      }
      childMediaList {
        ...MediaListFragment
      }
      drmProtected
      drmPolicy
      vmapUrl
      hasGeneratedVmap
      canonicalUrl
    }
    limit
    page
    pageCount
    resultCount
  }
}
Variables
{
  "filter": MediaFilter,
  "sort": MediaSort,
  "orderedSort": [MediaSort],
  "limit": 50,
  "page": 1,
  "options": MediaListOptions
}
Response
{
  "data": {
    "watchLaterList": {
      "results": [Media],
      "limit": 987,
      "page": 987,
      "pageCount": 987,
      "resultCount": 123
    }
  }
}

Mutations

activateAccount

Response

Returns an ActivateAccount

Arguments
Name Description
email - String!
token - String!

Example

Query
mutation ActivateAccount(
  $email: String!,
  $token: String!
) {
  activateAccount(
    email: $email,
    token: $token
  ) {
    id
    authToken
    uuid
    permissions {
      livestream
      livestreamTakeover
    }
  }
}
Variables
{
  "email": "abc123",
  "token": "abc123"
}
Response
{
  "data": {
    "activateAccount": {
      "id": 987,
      "authToken": "abc123",
      "uuid": "xyz789",
      "permissions": Permissions
    }
  }
}

addToWatchLater

Description

🔐 You must have the following permissions to query this field:

  • watchLater: update
Response

Returns a Boolean!

Arguments
Name Description
mediaID - Int
movieID - Int
seriesID - Int

Example

Query
mutation AddToWatchLater(
  $mediaID: Int,
  $movieID: Int,
  $seriesID: Int
) {
  addToWatchLater(
    mediaID: $mediaID,
    movieID: $movieID,
    seriesID: $seriesID
  )
}
Variables
{"mediaID": 123, "movieID": 987, "seriesID": 123}
Response
{"data": {"addToWatchLater": true}}

answerQuestion

Elearning feature is dropped, therefore this is deprecated
Response

Returns a LessonFeedback!

Arguments
Name Description
lessonID - Int!
lessonResultID - String!
question - Int!
answer - [Int]
answerDuration - Float

Example

Query
mutation AnswerQuestion(
  $lessonID: Int!,
  $lessonResultID: String!,
  $question: Int!,
  $answer: [Int],
  $answerDuration: Float
) {
  answerQuestion(
    lessonID: $lessonID,
    lessonResultID: $lessonResultID,
    question: $question,
    answer: $answer,
    answerDuration: $answerDuration
  ) {
    lessonResult {
      id
    }
    questionGroup {
      id
      startTime
      stopTime
      question {
        ...QuestionFragment
      }
    }
  }
}
Variables
{
  "lessonID": 123,
  "lessonResultID": "xyz789",
  "question": 123,
  "answer": [987],
  "answerDuration": 123.45
}
Response
{
  "data": {
    "answerQuestion": {
      "lessonResult": LessonResult,
      "questionGroup": QuestionGroup
    }
  }
}

appleLogin

Response

Returns a Login

Arguments
Name Description
token - String! The token given by Apple's login process
device - AppleLoginDevice
register - AppleLoginRegisterInput

Example

Query
mutation AppleLogin(
  $token: String!,
  $device: AppleLoginDevice,
  $register: AppleLoginRegisterInput
) {
  appleLogin(
    token: $token,
    device: $device,
    register: $register
  ) {
    authToken
    id
    uuid
    verified
    registerType
    permissions {
      livestream
      livestreamTakeover
    }
  }
}
Variables
{
  "token": "xyz789",
  "device": "web",
  "register": AppleLoginRegisterInput
}
Response
{
  "data": {
    "appleLogin": {
      "authToken": "xyz789",
      "id": "xyz789",
      "uuid": "xyz789",
      "verified": false,
      "registerType": 123,
      "permissions": Permissions
    }
  }
}

cancelContract

Description

Cancels the given contract of the authenticated user

Response

Returns a CancelContract

Arguments
Name Description
contractID - Int!
remarkMessage - String The (optional) reason the user can give on why the contract has been cancelled

Example

Query
mutation CancelContract(
  $contractID: Int!,
  $remarkMessage: String
) {
  cancelContract(
    contractID: $contractID,
    remarkMessage: $remarkMessage
  ) {
    success
    succes
  }
}
Variables
{
  "contractID": 987,
  "remarkMessage": "abc123"
}
Response
{"data": {"cancelContract": {"success": false, "succes": true}}}

changePassword

Response

Returns a changePassword

Arguments
Name Description
email - String! The user's email
password - String! The new password
passwordToken - String! The reset token given in the password reset email

Example

Query
mutation ChangePassword(
  $email: String!,
  $password: String!,
  $passwordToken: String!
) {
  changePassword(
    email: $email,
    password: $password,
    passwordToken: $passwordToken
  ) {
    success
    succes
  }
}
Variables
{
  "email": "xyz789",
  "password": "xyz789",
  "passwordToken": "xyz789"
}
Response
{"data": {"changePassword": {"success": false, "succes": true}}}

checkDiscountCode

Description

Checks whether the logged in user can apply the specified discount code to the specified plan.

🔐 You must have the following permissions to query this field:

  • discountCode: read

The channel must have the discountCode feature enabled to query this field.

Response

Returns a DiscountCodeCheckResult

Arguments
Name Description
discountCode - String!
planID - Int!

Example

Query
mutation CheckDiscountCode(
  $discountCode: String!,
  $planID: Int!
) {
  checkDiscountCode(
    discountCode: $discountCode,
    planID: $planID
  ) {
    status
    appliedDiscount {
      discountCode {
        ...DiscountCodeFragment
      }
      plan {
        ...PlanFragment
      }
      discountedPlanPrice
    }
  }
}
Variables
{"discountCode": "xyz789", "planID": 123}
Response
{
  "data": {
    "checkDiscountCode": {
      "status": "ok",
      "appliedDiscount": AppliedDiscountInfo
    }
  }
}

createComment

Description

Creates a comment.

🔐 You must have the following permissions to query this field:

  • comment: create

The channel must have the vlogs feature enabled to query this field.

Response

Returns a CreateCommentType

Arguments
Name Description
vlogSlug - String!
body - String!
parent - Int

Example

Query
mutation CreateComment(
  $vlogSlug: String!,
  $body: String!,
  $parent: Int
) {
  createComment(
    vlogSlug: $vlogSlug,
    body: $body,
    parent: $parent
  ) {
    type
    id
    success
    succes
  }
}
Variables
{
  "vlogSlug": "xyz789",
  "body": "xyz789",
  "parent": 123
}
Response
{
  "data": {
    "createComment": {
      "type": "abc123",
      "id": 123,
      "success": true,
      "succes": true
    }
  }
}

createPurchaseTransaction

Description

Creates contract/transaction entities in the database to prepare for a payment by the requested PSP

Response

Returns a PurchasePlan

Arguments
Name Description
plans - [Int]!
paymentServiceProvider - ProviderEnumType!
paymentMethod - PSPMethodValueType!
options - PurchaseOptions

Example

Query
mutation CreatePurchaseTransaction(
  $plans: [Int]!,
  $paymentServiceProvider: ProviderEnumType!,
  $paymentMethod: PSPMethodValueType!,
  $options: PurchaseOptions
) {
  createPurchaseTransaction(
    plans: $plans,
    paymentServiceProvider: $paymentServiceProvider,
    paymentMethod: $paymentMethod,
    options: $options
  ) {
    action
    url
    transaction {
      id
      amountInCents
      currency
      provider
      method
      status
      reason
      contracts {
        ...ContractListFragment
      }
    }
    detail {
      ... on PaymentIntentDetail {
        ...PaymentIntentDetailFragment
      }
      ... on SetupIntentDetail {
        ...SetupIntentDetailFragment
      }
    }
  }
}
Variables
{
  "plans": [123],
  "paymentServiceProvider": "cardGate",
  "paymentMethod": "Bancontact",
  "options": PurchaseOptions
}
Response
{
  "data": {
    "createPurchaseTransaction": {
      "action": "xyz789",
      "url": "abc123",
      "transaction": Transaction,
      "detail": PaymentIntentDetail
    }
  }
}

deleteComment

Description

Deletes a comment. Requires anyComment.delete permission when deleting a comment of another user.

🔐 You must have the following permissions to query this field:

  • comment: delete

The channel must have the vlogs feature enabled to query this field.

Response

Returns a DeleteCommentType

Arguments
Name Description
vlogSlug - String Deprecated: this argument will be ignored
id - Int!

Example

Query
mutation DeleteComment(
  $vlogSlug: String,
  $id: Int!
) {
  deleteComment(
    vlogSlug: $vlogSlug,
    id: $id
  ) {
    success
    succes
  }
}
Variables
{"vlogSlug": "abc123", "id": 987}
Response
{"data": {"deleteComment": {"success": true, "succes": true}}}

deleteTransition

Timeline transitions have been dropped
Response

Returns a Boolean

Arguments
Name Description
id - String!

Example

Query
mutation DeleteTransition($id: String!) {
  deleteTransition(id: $id)
}
Variables
{"id": "xyz789"}
Response
{"data": {"deleteTransition": false}}

deleteUser

Response

Returns a Boolean

Arguments
Name Description
token - String!

Example

Query
mutation DeleteUser($token: String!) {
  deleteUser(token: $token)
}
Variables
{"token": "xyz789"}
Response
{"data": {"deleteUser": false}}

facebookRegister

Response

Returns a Login!

Arguments
Name Description
accessToken - String! An access token gained from Facebook to authenticate a user with our Facebook app
place - Place
newsletterSubscribed - Boolean
deviceType - DeviceEnum
resendActivation - Boolean Whether the activation mail should be sent if the user's email is not validated yet

Example

Query
mutation FacebookRegister(
  $accessToken: String!,
  $place: Place,
  $newsletterSubscribed: Boolean,
  $deviceType: DeviceEnum,
  $resendActivation: Boolean
) {
  facebookRegister(
    accessToken: $accessToken,
    place: $place,
    newsletterSubscribed: $newsletterSubscribed,
    deviceType: $deviceType,
    resendActivation: $resendActivation
  ) {
    authToken
    id
    uuid
    verified
    registerType
    permissions {
      livestream
      livestreamTakeover
    }
  }
}
Variables
{
  "accessToken": "xyz789",
  "place": Place,
  "newsletterSubscribed": true,
  "deviceType": "standard",
  "resendActivation": false
}
Response
{
  "data": {
    "facebookRegister": {
      "authToken": "xyz789",
      "id": "abc123",
      "uuid": "abc123",
      "verified": false,
      "registerType": 987,
      "permissions": Permissions
    }
  }
}

forgotPassword

Response

Returns a ForgotPassword

Arguments
Name Description
email - String!

Example

Query
mutation ForgotPassword($email: String!) {
  forgotPassword(email: $email) {
    success
  }
}
Variables
{"email": "xyz789"}
Response
{"data": {"forgotPassword": {"success": false}}}

livestreamCallback

User livestreaming is not available anymore
Response

Returns a Boolean!

Arguments
Name Description
token - String!
streamname - String!
event - LivestreamCallbackEvent!

Example

Query
mutation LivestreamCallback(
  $token: String!,
  $streamname: String!,
  $event: LivestreamCallbackEvent!
) {
  livestreamCallback(
    token: $token,
    streamname: $streamname,
    event: $event
  )
}
Variables
{
  "token": "abc123",
  "streamname": "xyz789",
  "event": "publishStart"
}
Response
{"data": {"livestreamCallback": true}}

logAdPlayout

Response

Returns a LogAdPlayout

Arguments
Name Description
info - AdPlayoutInfoInput!

Example

Query
mutation LogAdPlayout($info: AdPlayoutInfoInput!) {
  logAdPlayout(info: $info) {
    success
  }
}
Variables
{"info": AdPlayoutInfoInput}
Response
{"data": {"logAdPlayout": {"success": true}}}

login

Response

Returns a Login

Arguments
Name Description
username - String!
password - String!
resendActivation - Boolean

Example

Query
mutation Login(
  $username: String!,
  $password: String!,
  $resendActivation: Boolean
) {
  login(
    username: $username,
    password: $password,
    resendActivation: $resendActivation
  ) {
    authToken
    id
    uuid
    verified
    registerType
    permissions {
      livestream
      livestreamTakeover
    }
  }
}
Variables
{
  "username": "abc123",
  "password": "abc123",
  "resendActivation": false
}
Response
{
  "data": {
    "login": {
      "authToken": "xyz789",
      "id": "abc123",
      "uuid": "abc123",
      "verified": true,
      "registerType": 987,
      "permissions": Permissions
    }
  }
}

logout

Response

Returns a Logout!

Arguments
Name Description
authToken - String Deprecated. Auth token is already given in header

Example

Query
mutation Logout($authToken: String) {
  logout(authToken: $authToken) {
    success
  }
}
Variables
{"authToken": "xyz789"}
Response
{"data": {"logout": {"success": true}}}

purchaseSubscription

Deprecated in favor of SVOD products
Response

Returns a PurchaseSubscription

Arguments
Name Description
subscriptionID - Int!
paymentMethod - Int!
successRedirect - String!
failureRedirect - String!
pendingRedirect - String
cancelRedirect - String
issuerID - String
locale - Languages

Example

Query
mutation PurchaseSubscription(
  $subscriptionID: Int!,
  $paymentMethod: Int!,
  $successRedirect: String!,
  $failureRedirect: String!,
  $pendingRedirect: String,
  $cancelRedirect: String,
  $issuerID: String,
  $locale: Languages
) {
  purchaseSubscription(
    subscriptionID: $subscriptionID,
    paymentMethod: $paymentMethod,
    successRedirect: $successRedirect,
    failureRedirect: $failureRedirect,
    pendingRedirect: $pendingRedirect,
    cancelRedirect: $cancelRedirect,
    issuerID: $issuerID,
    locale: $locale
  ) {
    action
    url
    transactionID
    providerTransactionID
    providerSubscriptionID
    contracts {
      id
      status
      plan {
        ...PlanFragment
      }
      currency
      priceInCents
      priceInCentsIncludingTax
      taxRate
      originalPriceInCents
      isTrial
      startDate
      endDate
      interval
      intervalValue
      billingInterval
      appliedDiscount {
        ...AppliedDiscountFragment
      }
    }
  }
}
Variables
{
  "subscriptionID": 987,
  "paymentMethod": 987,
  "successRedirect": "xyz789",
  "failureRedirect": "abc123",
  "pendingRedirect": "abc123",
  "cancelRedirect": "abc123",
  "issuerID": "xyz789",
  "locale": "en"
}
Response
{
  "data": {
    "purchaseSubscription": {
      "action": "xyz789",
      "url": "xyz789",
      "transactionID": 123,
      "providerTransactionID": "abc123",
      "providerSubscriptionID": "abc123",
      "contracts": [Contract]
    }
  }
}

register

Response

Returns a Register

Arguments
Name Description
email - String!
firstName - String!
lastName - String!
password - String!
newsletterSubscribed - Boolean!
acceptedTerms - Boolean!
countryCode - Countries
language - Languages
place - Place
deviceType - DeviceEnum

Example

Query
mutation Register(
  $email: String!,
  $firstName: String!,
  $lastName: String!,
  $password: String!,
  $newsletterSubscribed: Boolean!,
  $acceptedTerms: Boolean!,
  $countryCode: Countries,
  $language: Languages,
  $place: Place,
  $deviceType: DeviceEnum
) {
  register(
    email: $email,
    firstName: $firstName,
    lastName: $lastName,
    password: $password,
    newsletterSubscribed: $newsletterSubscribed,
    acceptedTerms: $acceptedTerms,
    countryCode: $countryCode,
    language: $language,
    place: $place,
    deviceType: $deviceType
  ) {
    authToken
    id
    uuid
    verified
  }
}
Variables
{
  "email": "xyz789",
  "firstName": "abc123",
  "lastName": "abc123",
  "password": "abc123",
  "newsletterSubscribed": true,
  "acceptedTerms": true,
  "countryCode": "AF",
  "language": "en",
  "place": Place,
  "deviceType": "standard"
}
Response
{
  "data": {
    "register": {
      "authToken": "xyz789",
      "id": 123,
      "uuid": "abc123",
      "verified": false
    }
  }
}

registerDevice

Description

Registers the authenticated user's device so that it may receive notifcations

Response

Returns a RegisterDevice!

Arguments
Name Description
token - String!
deviceType - DeviceEnum!

Example

Query
mutation RegisterDevice(
  $token: String!,
  $deviceType: DeviceEnum!
) {
  registerDevice(
    token: $token,
    deviceType: $deviceType
  ) {
    success
  }
}
Variables
{
  "token": "xyz789",
  "deviceType": "standard"
}
Response
{"data": {"registerDevice": {"success": false}}}

registerLivestream

User livestreaming is not available anymore
Response

Returns a RegisterLivestreamFeedback!

Arguments
Name Description
title - String!
description - String!

Example

Query
mutation RegisterLivestream(
  $title: String!,
  $description: String!
) {
  registerLivestream(
    title: $title,
    description: $description
  ) {
    id
    name
    stream
    url
    valid
    publish {
      name
      stream
      url
      valid
    }
    preview {
      name
      stream
      url
      valid
    }
  }
}
Variables
{
  "title": "abc123",
  "description": "xyz789"
}
Response
{
  "data": {
    "registerLivestream": {
      "id": 987,
      "name": "xyz789",
      "stream": "xyz789",
      "url": "abc123",
      "valid": 123,
      "publish": RegisterLivestreamData,
      "preview": RegisterLivestreamData
    }
  }
}

registerTv

B2b tv support is dropped
Response

Returns a Boolean!

Arguments
Name Description
mac - String!
duid - String!
firmware - String!
time - String

Example

Query
mutation RegisterTv(
  $mac: String!,
  $duid: String!,
  $firmware: String!,
  $time: String
) {
  registerTv(
    mac: $mac,
    duid: $duid,
    firmware: $firmware,
    time: $time
  )
}
Variables
{
  "mac": "xyz789",
  "duid": "abc123",
  "firmware": "abc123",
  "time": "xyz789"
}
Response
{"data": {"registerTv": false}}

removeFromWatchLater

Description

🔐 You must have the following permissions to query this field:

  • watchLater: update
Response

Returns a Boolean!

Arguments
Name Description
mediaID - Int
movieID - Int
seriesID - Int

Example

Query
mutation RemoveFromWatchLater(
  $mediaID: Int,
  $movieID: Int,
  $seriesID: Int
) {
  removeFromWatchLater(
    mediaID: $mediaID,
    movieID: $movieID,
    seriesID: $seriesID
  )
}
Variables
{"mediaID": 123, "movieID": 987, "seriesID": 987}
Response
{"data": {"removeFromWatchLater": true}}

requestUserDeletion

Response

Returns a Boolean

Example

Query
mutation RequestUserDeletion {
  requestUserDeletion
}
Response
{"data": {"requestUserDeletion": true}}

startLesson

Elearning feature is dropped, therefore this is deprecated
Response

Returns a LessonFeedback!

Arguments
Name Description
id - Int!

Example

Query
mutation StartLesson($id: Int!) {
  startLesson(id: $id) {
    lessonResult {
      id
    }
    questionGroup {
      id
      startTime
      stopTime
      question {
        ...QuestionFragment
      }
    }
  }
}
Variables
{"id": 987}
Response
{
  "data": {
    "startLesson": {
      "lessonResult": LessonResult,
      "questionGroup": QuestionGroup
    }
  }
}

startLivestream

User livestreaming is not available anymore
Response

Returns a Boolean!

Arguments
Name Description
id - Int!
sendPushNotifications - Boolean Default = false
takeover - Boolean Default = false

Example

Query
mutation StartLivestream(
  $id: Int!,
  $sendPushNotifications: Boolean,
  $takeover: Boolean
) {
  startLivestream(
    id: $id,
    sendPushNotifications: $sendPushNotifications,
    takeover: $takeover
  )
}
Variables
{"id": 123, "sendPushNotifications": false, "takeover": false}
Response
{"data": {"startLivestream": true}}

stopLesson

Elearning feature is dropped, therefore this is deprecated
Response

Returns a StopLessonFeedback!

Arguments
Name Description
id - Int!
lessonResultID - String!

Example

Query
mutation StopLesson(
  $id: Int!,
  $lessonResultID: String!
) {
  stopLesson(
    id: $id,
    lessonResultID: $lessonResultID
  ) {
    lesson {
      id
      name
      description
      media {
        ...MediaFragment
      }
    }
    user {
      firstName
      lastName
      displayName
    }
    lessonResult {
      id
      startTime
      stopTime
    }
    lessonReport {
      type
      score {
        ...LessonReportScoreFragment
      }
      question {
        ...LessonReportQuestionFragment
      }
    }
  }
}
Variables
{"id": 123, "lessonResultID": "abc123"}
Response
{
  "data": {
    "stopLesson": {
      "lesson": Lesson,
      "user": LessonUserData,
      "lessonResult": LessonFinalResult,
      "lessonReport": LessonReport
    }
  }
}

stopLivestream

User livestreaming is not available anymore
Response

Returns a Boolean!

Arguments
Name Description
id - Int!

Example

Query
mutation StopLivestream($id: Int!) {
  stopLivestream(id: $id)
}
Variables
{"id": 987}
Response
{"data": {"stopLivestream": false}}

storeMediaProgress

Response

Returns a Boolean

Arguments
Name Description
mediaID - Int!
progress - Int!
watched - Boolean!

Example

Query
mutation StoreMediaProgress(
  $mediaID: Int!,
  $progress: Int!,
  $watched: Boolean!
) {
  storeMediaProgress(
    mediaID: $mediaID,
    progress: $progress,
    watched: $watched
  )
}
Variables
{"mediaID": 987, "progress": 123, "watched": false}
Response
{"data": {"storeMediaProgress": false}}

storeTransition

Timeline transitions have been dropped
Response

Returns a Boolean

Arguments
Name Description
id - String
userSelectable - Boolean!
name - String!
folder - String!
frames - Int!
still - Int!
fps - Int!

Example

Query
mutation StoreTransition(
  $id: String,
  $userSelectable: Boolean!,
  $name: String!,
  $folder: String!,
  $frames: Int!,
  $still: Int!,
  $fps: Int!
) {
  storeTransition(
    id: $id,
    userSelectable: $userSelectable,
    name: $name,
    folder: $folder,
    frames: $frames,
    still: $still,
    fps: $fps
  )
}
Variables
{
  "id": "xyz789",
  "userSelectable": false,
  "name": "xyz789",
  "folder": "abc123",
  "frames": 123,
  "still": 123,
  "fps": 123
}
Response
{"data": {"storeTransition": true}}

submitUserMedia

Description

🔐 You must have the following permissions to query this field:

  • userMedia: create
Response

Returns a SubmitUserMedia

Arguments
Name Description
title - String!
description - String
key - String Key to the uploaded media in S3 as given by the 'userMediaGetUploadUrl' query
libraryCategory - Int!
duration - Int!
deviceType - DeviceEnum!

Example

Query
mutation SubmitUserMedia(
  $title: String!,
  $description: String,
  $key: String,
  $libraryCategory: Int!,
  $duration: Int!,
  $deviceType: DeviceEnum!
) {
  submitUserMedia(
    title: $title,
    description: $description,
    key: $key,
    libraryCategory: $libraryCategory,
    duration: $duration,
    deviceType: $deviceType
  ) {
    success
  }
}
Variables
{
  "title": "xyz789",
  "description": "abc123",
  "key": "xyz789",
  "libraryCategory": 123,
  "duration": 123,
  "deviceType": "standard"
}
Response
{"data": {"submitUserMedia": {"success": false}}}

tokenLogin

Description

Token login for external login methods

Response

Returns a Login

Arguments
Name Description
token - String!

Example

Query
mutation TokenLogin($token: String!) {
  tokenLogin(token: $token) {
    authToken
    id
    uuid
    verified
    registerType
    permissions {
      livestream
      livestreamTakeover
    }
  }
}
Variables
{"token": "abc123"}
Response
{
  "data": {
    "tokenLogin": {
      "authToken": "abc123",
      "id": "abc123",
      "uuid": "abc123",
      "verified": true,
      "registerType": 987,
      "permissions": Permissions
    }
  }
}

unregisterDevice

Description

Unregisters the authenticated user's device so that it won't receive notifcations anymore

Response

Returns an UnregisterDevice!

Arguments
Name Description
token - String!
deviceType - DeviceEnum!

Example

Query
mutation UnregisterDevice(
  $token: String!,
  $deviceType: DeviceEnum!
) {
  unregisterDevice(
    token: $token,
    deviceType: $deviceType
  ) {
    success
  }
}
Variables
{
  "token": "abc123",
  "deviceType": "standard"
}
Response
{"data": {"unregisterDevice": {"success": false}}}

updateComment

Description

Updates a comment. Requires anyComment.update permission when updating a comment of another user.

🔐 You must have the following permissions to query this field:

  • comment: update

The channel must have the vlogs feature enabled to query this field.

Response

Returns an UpdateCommentType

Arguments
Name Description
vlogSlug - String!
body - String!
id - Int!

Example

Query
mutation UpdateComment(
  $vlogSlug: String!,
  $body: String!,
  $id: Int!
) {
  updateComment(
    vlogSlug: $vlogSlug,
    body: $body,
    id: $id
  ) {
    success
    succes
  }
}
Variables
{
  "vlogSlug": "xyz789",
  "body": "abc123",
  "id": 987
}
Response
{"data": {"updateComment": {"success": false, "succes": true}}}

updateUser

Response

Returns an UpdateUser

Arguments
Name Description
email - String
firstName - String!
lastName - String!
displayName - String
password - String
oldPassword - String
interests - [String] Deprecated. Please update to interestIDs
interestIDs - [Int]
country - Countries
language - Languages
locale - Languages Deprecated. Locale not used anymore

Example

Query
mutation UpdateUser(
  $email: String,
  $firstName: String!,
  $lastName: String!,
  $displayName: String,
  $password: String,
  $oldPassword: String,
  $interests: [String],
  $interestIDs: [Int],
  $country: Countries,
  $language: Languages,
  $locale: Languages
) {
  updateUser(
    email: $email,
    firstName: $firstName,
    lastName: $lastName,
    displayName: $displayName,
    password: $password,
    oldPassword: $oldPassword,
    interests: $interests,
    interestIDs: $interestIDs,
    country: $country,
    language: $language,
    locale: $locale
  ) {
    user {
      id
      username
      uuid
      firstName
      lastName
      displayName
      email
      country
      registerType
      verified
      language
      subscriptions
      interests {
        ...InterestFragment
      }
      roles
      userNotificationPreferences {
        ...NotificationInputsFragment
      }
      canSubmitMedia
      canDisqus
    }
    success
    succes
  }
}
Variables
{
  "email": "xyz789",
  "firstName": "abc123",
  "lastName": "abc123",
  "displayName": "xyz789",
  "password": "xyz789",
  "oldPassword": "abc123",
  "interests": ["abc123"],
  "interestIDs": [987],
  "country": "AF",
  "language": "en",
  "locale": "en"
}
Response
{
  "data": {
    "updateUser": {
      "user": ProfileType,
      "success": false,
      "succes": false
    }
  }
}

updateUserNotificationPreferences

Description

Updates the authenticated user's notification preferences. Note: the userID argument is deprecated and will be ignored.

Response

Returns an UpdateNotificationsType

Arguments
Name Description
userID - Int
newsletterSubscribed - NotificationBitmaskType
notificationNewMedia - NotificationBitmaskType
notificationLivestreamScheduled - NotificationBitmaskType
notificationInvoice - NotificationBitmaskType

Example

Query
mutation UpdateUserNotificationPreferences(
  $userID: Int,
  $newsletterSubscribed: NotificationBitmaskType,
  $notificationNewMedia: NotificationBitmaskType,
  $notificationLivestreamScheduled: NotificationBitmaskType,
  $notificationInvoice: NotificationBitmaskType
) {
  updateUserNotificationPreferences(
    userID: $userID,
    newsletterSubscribed: $newsletterSubscribed,
    notificationNewMedia: $notificationNewMedia,
    notificationLivestreamScheduled: $notificationLivestreamScheduled,
    notificationInvoice: $notificationInvoice
  ) {
    success
    succes
  }
}
Variables
{
  "userID": 987,
  "newsletterSubscribed": NotificationBitmaskType,
  "notificationNewMedia": NotificationBitmaskType,
  "notificationLivestreamScheduled": NotificationBitmaskType,
  "notificationInvoice": NotificationBitmaskType
}
Response
{
  "data": {
    "updateUserNotificationPreferences": {"success": true, "succes": true}
  }
}

verifyTransaction

Description

Verifies the transactionID of the payment service provider and returns if the payment was successful

🔐 You must have the following permissions to query this field:

  • transaction: read
Response

Returns a Transaction

Arguments
Name Description
transactionID - Int!
providerPaymentSourceID - String The payment source ID. Differs per PSP

Example

Query
mutation VerifyTransaction(
  $transactionID: Int!,
  $providerPaymentSourceID: String
) {
  verifyTransaction(
    transactionID: $transactionID,
    providerPaymentSourceID: $providerPaymentSourceID
  ) {
    id
    amountInCents
    currency
    provider
    method
    status
    reason
    contracts {
      results {
        ...ContractFragment
      }
      limit
      page
      pageCount
      resultCount
    }
  }
}
Variables
{
  "transactionID": 123,
  "providerPaymentSourceID": "abc123"
}
Response
{
  "data": {
    "verifyTransaction": {
      "id": 987,
      "amountInCents": 123,
      "currency": "USD",
      "provider": "cardGate",
      "method": "Bancontact",
      "status": "pending",
      "reason": "authSuccess",
      "contracts": ContractList
    }
  }
}

Types

AclCrudPermissions

Fields
Field Name Description
create - Boolean!
read - Boolean!
update - Boolean!
delete - Boolean!
Example
{"create": false, "read": true, "update": false, "delete": true}

AclPermissions

Description

ACL permissions of various resource types

Fields
Field Name Description
category - AclCrudPermissions!
comment - AclCrudPermissions!
contentPage - AclCrudPermissions!
contract - AclCrudPermissions!
discountCode - AclCrudPermissions!
episode - AclCrudPermissions!
extra - AclCrudPermissions!
genre - AclCrudPermissions!
interest - AclCrudPermissions!
libraryCategory - AclCrudPermissions!
media - AclCrudPermissions!
movie - AclCrudPermissions!
overlay - AclCrudPermissions!
plan - AclCrudPermissions!
product - AclCrudPermissions!
season - AclCrudPermissions!
series - AclCrudPermissions!
slide - AclCrudPermissions!
slider - AclCrudPermissions!
transaction - AclCrudPermissions!
userMedia - AclCrudPermissions!
vlog - AclCrudPermissions!
watchLater - AclCrudPermissions!
analytics - AclCrudPermissions!
anyComment - AclCrudPermissions!
chatModeration - AclCrudPermissions!
file - AclCrudPermissions!
mediaSpritesheets - AclCrudPermissions!
mediaSubtitles - AclCrudPermissions!
purchase - AclCrudPermissions!
uiBuilder - AclCrudPermissions!
usageReport - AclCrudPermissions!
user - AclCrudPermissions!
userDisplayName - AclCrudPermissions!
settings - AclCrudPermissions!
subscription - AclCrudPermissions!
timeline - AclCrudPermissions!
transition - AclCrudPermissions! This permission has been dropped
Example
{
  "category": AclCrudPermissions,
  "comment": AclCrudPermissions,
  "contentPage": AclCrudPermissions,
  "contract": AclCrudPermissions,
  "discountCode": AclCrudPermissions,
  "episode": AclCrudPermissions,
  "extra": AclCrudPermissions,
  "genre": AclCrudPermissions,
  "interest": AclCrudPermissions,
  "libraryCategory": AclCrudPermissions,
  "media": AclCrudPermissions,
  "movie": AclCrudPermissions,
  "overlay": AclCrudPermissions,
  "plan": AclCrudPermissions,
  "product": AclCrudPermissions,
  "season": AclCrudPermissions,
  "series": AclCrudPermissions,
  "slide": AclCrudPermissions,
  "slider": AclCrudPermissions,
  "transaction": AclCrudPermissions,
  "userMedia": AclCrudPermissions,
  "vlog": AclCrudPermissions,
  "watchLater": AclCrudPermissions,
  "analytics": AclCrudPermissions,
  "anyComment": AclCrudPermissions,
  "chatModeration": AclCrudPermissions,
  "file": AclCrudPermissions,
  "mediaSpritesheets": AclCrudPermissions,
  "mediaSubtitles": AclCrudPermissions,
  "purchase": AclCrudPermissions,
  "uiBuilder": AclCrudPermissions,
  "usageReport": AclCrudPermissions,
  "user": AclCrudPermissions,
  "userDisplayName": AclCrudPermissions,
  "settings": AclCrudPermissions,
  "subscription": AclCrudPermissions,
  "timeline": AclCrudPermissions,
  "transition": AclCrudPermissions
}

ActivateAccount

Description

Feedback after activating a user

Fields
Field Name Description
id - Int!
authToken - String!
uuid - String!
permissions - Permissions! Permissions are no longer used
Example
{
  "id": 123,
  "authToken": "abc123",
  "uuid": "xyz789",
  "permissions": Permissions
}

ActiveDirectoryLoginSettings

Description

Settings for the ActiveDirectoryLogin feature

Fields
Field Name Description
enabled - Boolean! Whether AAD login is enabled
tenant - String The active directory tenant ID to use
clientID - String Active directory app/client ID
clientSecret - String Client secret to use
Example
{
  "enabled": true,
  "tenant": "xyz789",
  "clientID": "xyz789",
  "clientSecret": "xyz789"
}

AdErrorInput

Fields
Input Field Description
errorCode - Int
errorMessage - String
errorType - AdErrorTypeEnum
Example