AudiencePlayer API Documentation

ADMIN SCHEMA

You are currently viewing the documentation for the AudiencePlayer GraphQL API USER SCHEMA, version 35.17.0, 2026-11-06 18:14:53 UTC.

☞ View the documentation for the USER SCHEMA

Queries

ActivityLogList

Description

List ActivityLogs for a Project

Arguments
Name Description
limit - Int The maximum number of ActivityLogs to return
offset - Int The number of ActivityLogs to skip before returning results
sort_by - [SortByInput] Sort and order by field(s): "id", "user_id", "created_at", "log_name", "log_level"
project_id - Int The Project id that owns the ActivityLogs
search - String Search text matched against ActivityLog names and descriptions

Example

Query
query ActivityLogList(
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $project_id: Int,
  $search: String
) {
  ActivityLogList(
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    project_id: $project_id,
    search: $search
  ) {
    items {
      ...AdminActivityLogFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "project_id": 42,
  "search": "string"
}
Response
{
  "data": {
    "ActivityLogList": {
      "items": [AdminActivityLog],
      "pagination": Pagination
    }
  }
}

Article

Description

Fetch a single Article.

Response

Returns an AdminArticle

Arguments
Name Description
id - Int The id of the Article to fetch.
locale - String The locale to resolve this Article's translatable fields in.

Example

Query
query Article(
  $id: Int,
  $locale: String
) {
  Article(
    id: $id,
    locale: $locale
  ) {
    id
    project_id
    parent_id
    name
    url_slug
    full_url_slug
    canonical_url
    canonical_title
    episode_list_display_type
    upsell_product_call_to_action_tag
    ribbon_title
    ribbon_settings
    type
    metas {
      ...AdminArticleMetaFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    assets {
      ...AdminAssetFragment
    }
    categories {
      ...AdminCategoryFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    locale_regions {
      ...LocaleRegionFragment
    }
    products {
      ...AdminProductFragment
    }
    upsell_products {
      ...AdminProductFragment
    }
    created_at
    updated_at
    popularity_index
    visibility
    discoverability
    is_downloadable
    is_auth_required
    published_at
    linked_asset_playable_from
    status
    is_auto_generate_recommendations
    is_show_in_all_geo_regions
    generic_url
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    canonical_title_translations {
      ...TranslationFragment
    }
    upsell_product_call_to_action_tag_translations {
      ...TranslationFragment
    }
    ribbon_title_translations {
      ...TranslationFragment
    }
    children {
      ...AdminArticleFragment
    }
    recommended_articles {
      ...AdminArticleFragment
    }
    featured_on_categories {
      ...AdminCategoryFragment
    }
    files {
      ...FileFragment
    }
    entitling_subscriptions {
      ...AdminSubscriptionFragment
    }
    published_from
    published_until
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "Article": {
      "id": 42,
      "project_id": 42,
      "parent_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "canonical_title": "string",
      "episode_list_display_type": "string",
      "upsell_product_call_to_action_tag": "string",
      "ribbon_title": "string",
      "ribbon_settings": "string",
      "type": "episode",
      "metas": [AdminArticleMeta],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "assets": [AdminAsset],
      "categories": [AdminCategory],
      "geo_regions": [GeoRegion],
      "locale_regions": [LocaleRegion],
      "products": [AdminProduct],
      "upsell_products": [AdminProduct],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "popularity_index": 42,
      "visibility": "everyone",
      "discoverability": "hidden",
      "is_downloadable": false,
      "is_auth_required": true,
      "published_at": "2000-12-31T12:34:56.000Z",
      "linked_asset_playable_from": "string",
      "status": "string",
      "is_auto_generate_recommendations": false,
      "is_show_in_all_geo_regions": true,
      "generic_url": "https://url.example.com",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "canonical_title_translations": [Translation],
      "upsell_product_call_to_action_tag_translations": [
        Translation
      ],
      "ribbon_title_translations": [Translation],
      "children": [AdminArticle],
      "recommended_articles": [AdminArticle],
      "featured_on_categories": [AdminCategory],
      "files": [File],
      "entitling_subscriptions": [AdminSubscription],
      "published_from": "string",
      "published_until": "string"
    }
  }
}

ArticleList

Description

Fetch a paginated list of Articles.

Response

Returns an AdminArticlesListedWithPagination

Arguments
Name Description
search - String Full-text search string across Article fields.
locale - String The locale to resolve these Articles' translatable fields in.
limit - Int The pagination limit.
offset - Int The pagination offset.
parent_id - Int Filter to direct children of the Article with this id. Pass null/0 to filter to top-level Articles (no parent).
parent_ids - [Int] Filter to direct children of any of these Article ids.
ancestor_id - Int Filter to every descendant (at any depth) of the Article with this id, not just direct children.
category_id - Int The id of the Category the Article belongs to.
category_ids - [Int] The ids of the Categories (XOR) the Article belongs to.
article_ids - [Int] The exact Article ids to fetch.
type - ArticleTypeEnum Filter by Article type.
types - [ArticleTypeEnum] Filter by Article type (matches any of the given types).
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "type", "published_at", "published_from", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s).
list_filter - ArticleListFilterTypeEnum A preconfigured list filter/ordering (e.g. newest, most popular), as an alternative to sort_by/filter_by.
project_id - Int The Project id to list Articles for.

Example

Query
query ArticleList(
  $search: String,
  $locale: String,
  $limit: Int,
  $offset: Int,
  $parent_id: Int,
  $parent_ids: [Int],
  $ancestor_id: Int,
  $category_id: Int,
  $category_ids: [Int],
  $article_ids: [Int],
  $type: ArticleTypeEnum,
  $types: [ArticleTypeEnum],
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $list_filter: ArticleListFilterTypeEnum,
  $project_id: Int
) {
  ArticleList(
    search: $search,
    locale: $locale,
    limit: $limit,
    offset: $offset,
    parent_id: $parent_id,
    parent_ids: $parent_ids,
    ancestor_id: $ancestor_id,
    category_id: $category_id,
    category_ids: $category_ids,
    article_ids: $article_ids,
    type: $type,
    types: $types,
    sort_by: $sort_by,
    filter_by: $filter_by,
    list_filter: $list_filter,
    project_id: $project_id
  ) {
    items {
      ...AdminArticleFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "parent_id": 42,
  "parent_ids": [42],
  "ancestor_id": 42,
  "category_id": 42,
  "category_ids": [42],
  "article_ids": [42],
  "type": "episode",
  "types": ["episode"],
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "list_filter": "trending",
  "project_id": 42
}
Response
{
  "data": {
    "ArticleList": {
      "items": [AdminArticle],
      "pagination": Pagination
    }
  }
}

Asset

Description

Fetch a single Asset's full Admin details by id.

Response

Returns an AdminAsset

Arguments
Name Description
project_id - Int The Project id that owns the Asset.
id - Int The id of the Asset to fetch.

Example

Query
query Asset(
  $project_id: Int,
  $id: Int
) {
  Asset(
    project_id: $project_id,
    id: $id
  ) {
    id
    project_id
    source_blob_name
    thumbnail_asset_id
    is_live
    type
    linked_type
    accessibility
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    subtitles {
      ...FileFragment
    }
    screenshots {
      ...FileFragment
    }
    playable_from
    playable_until
    published_from
    published_until
    created_at
    updated_at
    project {
      ...AdminProjectFragment
    }
    media_provider
    encoding_profile_name
    encryption_profile_name
    source_blob_md5
    source_asset_id
    encoded_asset_name
    encoded_asset_id
    streaming_unit_id
    origin
    streaming_endpoint
    asset_status_id
    asset_status
    ingestion_status
    ingestion_status_description
    external_asset_id
    stored_bytes
    stored_giga_bytes
    files {
      ...FileFragment
    }
    download_urls {
      ...StructureKeyValueStringPairFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    player_embed_code_iframe
    ingestion_endpoints
    streaming_credentials {
      ...StructureKeyValueStringPairFragment
    }
    last_event_message
    active_asset_recording_id
    active_recording {
      ...AdminAssetRecordingFragment
    }
    recordings {
      ...AdminAssetRecordingFragment
    }
  }
}
Variables
{"project_id": 42, "id": 42}
Response
{
  "data": {
    "Asset": {
      "id": 42,
      "project_id": 42,
      "source_blob_name": "string",
      "thumbnail_asset_id": "string",
      "is_live": false,
      "type": "audio",
      "linked_type": "film",
      "accessibility": "everyone",
      "time_marker_intro_start": 123.45,
      "time_marker_intro_end": 123.45,
      "time_marker_end": 123.45,
      "duration": 987.65,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "subtitles": [File],
      "screenshots": [File],
      "playable_from": "string",
      "playable_until": "string",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "project": AdminProject,
      "media_provider": "string",
      "encoding_profile_name": "sd_540p_16x9",
      "encryption_profile_name": "none",
      "source_blob_md5": "string",
      "source_asset_id": "string",
      "encoded_asset_name": "string",
      "encoded_asset_id": "string",
      "streaming_unit_id": "string",
      "origin": "string",
      "streaming_endpoint": "string",
      "asset_status_id": "string",
      "asset_status": "string",
      "ingestion_status": "string",
      "ingestion_status_description": "string",
      "external_asset_id": "string",
      "stored_bytes": 987.65,
      "stored_giga_bytes": 123.45,
      "files": [File],
      "download_urls": ["https://url.example.com"],
      "activity_logs": [AdminActivityLog],
      "player_embed_code_iframe": "string",
      "ingestion_endpoints": ["string"],
      "streaming_credentials": [
        StructureKeyValueStringPair
      ],
      "last_event_message": "string",
      "active_asset_recording_id": 42,
      "active_recording": AdminAssetRecording,
      "recordings": [AdminAssetRecording]
    }
  }
}

AssetList

Description

Fetch a paginated, filterable/searchable list of Assets for a Project.

Response

Returns an AdminAssetsListedWithPagination

Arguments
Name Description
search - String Full-text search string across Asset fields.
limit - Int The pagination limit.
offset - Int The pagination offset.
project_id - Int The Project id to list Assets for.
asset_status_id - Int Filter by lifecycle status. Mutually exclusive with asset_status.
asset_status - AssetStatusEnum Filter by lifecycle status, as the enum equivalent of asset_status_id. Mutually exclusive with asset_status_id.
source_asset_id - String Filter by exact source asset id. Currently ignored on the Admin schema. On the MediaService schema, when given, at most one Asset is returned and the asset_status_id and streaming_unit_id filters are ignored.
streaming_unit_id - String Filter by exact streaming unit id.
source_blob_name - String Filter by exact uploaded source file name. Currently ignored on the MediaService schema.
source_blob_md5 - String Filter by exact uploaded source file md5 checksum. Currently ignored on the MediaService schema.
is_published - Boolean Convenience filter for published Assets only. Mutually exclusive with asset_status_id/asset_status. Currently ignored on the MediaService schema.
type - AssetTypeEnum Filter by Asset type (e.g. video, audio, live_video).
sort_by - [SortByInput] Sort and order by field(s): "id", "source_blob_name", "asset_status_id", "asset_status", "type", "streaming_unit_id", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s)

Example

Query
query AssetList(
  $search: String,
  $limit: Int,
  $offset: Int,
  $project_id: Int,
  $asset_status_id: Int,
  $asset_status: AssetStatusEnum,
  $source_asset_id: String,
  $streaming_unit_id: String,
  $source_blob_name: String,
  $source_blob_md5: String,
  $is_published: Boolean,
  $type: AssetTypeEnum,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput]
) {
  AssetList(
    search: $search,
    limit: $limit,
    offset: $offset,
    project_id: $project_id,
    asset_status_id: $asset_status_id,
    asset_status: $asset_status,
    source_asset_id: $source_asset_id,
    streaming_unit_id: $streaming_unit_id,
    source_blob_name: $source_blob_name,
    source_blob_md5: $source_blob_md5,
    is_published: $is_published,
    type: $type,
    sort_by: $sort_by,
    filter_by: $filter_by
  ) {
    items {
      ...AdminAssetListedFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "limit": 42,
  "offset": 42,
  "project_id": 42,
  "asset_status_id": 42,
  "asset_status": "source_asset_created",
  "source_asset_id": "string",
  "streaming_unit_id": "string",
  "source_blob_name": "string",
  "source_blob_md5": "string",
  "is_published": false,
  "type": "audio",
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput]
}
Response
{
  "data": {
    "AssetList": {
      "items": [AdminAssetListed],
      "pagination": Pagination
    }
  }
}

AssetLiveRecording

Description

Fetch a recording belonging to a live-video Asset: a specific one by id, or the Asset's current active recording if id is omitted.

Response

Returns an AdminAssetRecording

Arguments
Name Description
project_id - Int The Project id that owns the Asset.
asset_id - Int The id of the live-video Asset to fetch a recording for.
id - Int A specific recording id to fetch. Omit to fetch the Asset's current active recording instead.

Example

Query
query AssetLiveRecording(
  $project_id: Int,
  $asset_id: Int,
  $id: Int
) {
  AssetLiveRecording(
    project_id: $project_id,
    asset_id: $asset_id,
    id: $id
  ) {
    id
    asset_id
    project_id
    remote_recording_id
    time_delta
    status
    file_path
    started_at
    completed_at
    created_at
    updated_at
    download_url
  }
}
Variables
{"project_id": 42, "asset_id": 42, "id": 42}
Response
{
  "data": {
    "AssetLiveRecording": {
      "id": 42,
      "asset_id": 42,
      "project_id": 42,
      "remote_recording_id": "string",
      "time_delta": 987.65,
      "status": "string",
      "file_path": "string",
      "started_at": "2000-12-31T12:34:56.000Z",
      "completed_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "download_url": "https://url.example.com"
    }
  }
}

AssetState

Description

Fetch an Asset's current media-provider processing/publication state (e.g. encoding progress, publish status), queried live from the configured media provider. Not available for mock-type Assets.

Response

Returns an AssetState

Arguments
Name Description
project_id - Int The Project id that owns the Asset.
asset_id - Int The id of the Asset to fetch state for.

Example

Query
query AssetState(
  $project_id: Int,
  $asset_id: Int
) {
  AssetState(
    project_id: $project_id,
    asset_id: $asset_id
  ) {
    current_asset_status_id
    current_asset_status_name
    calculated_asset_status_id
    calculated_asset_status_name
    live_remote_asset_id
    live_remote_asset_status_name
    live_remote_asset_status_description
    is_live_remote_asset_source_video_encoding
    is_live_remote_asset_encoded_video_packaging
    is_asset_policies_configured
  }
}
Variables
{"project_id": 42, "asset_id": 42}
Response
{
  "data": {
    "AssetState": {
      "current_asset_status_id": "string",
      "current_asset_status_name": "string",
      "calculated_asset_status_id": "string",
      "calculated_asset_status_name": "string",
      "live_remote_asset_id": "string",
      "live_remote_asset_status_name": "string",
      "live_remote_asset_status_description": "string",
      "is_live_remote_asset_source_video_encoding": true,
      "is_live_remote_asset_encoded_video_packaging": false,
      "is_asset_policies_configured": true
    }
  }
}

AuthenticationStatus

Description

Query authentication status

Response

Returns a Boolean

Example

Query
query AuthenticationStatus {
  AuthenticationStatus
}
Response
{"data": {"AuthenticationStatus": true}}

Category

Description

Fetch a single Category.

Response

Returns an AdminCategory

Arguments
Name Description
id - Int The id of the Category to fetch.
locale - String The locale to resolve this Category's translatable fields in.

Example

Query
query Category(
  $id: Int,
  $locale: String
) {
  Category(
    id: $id,
    locale: $locale
  ) {
    id
    project_id
    name
    url_slug
    full_url_slug
    canonical_url
    type
    metas {
      ...AdminCategoryMetaFragment
    }
    articles {
      ...AdminArticleFragment
    }
    products {
      ...AdminProductFragment
    }
    featured_articles {
      ...AdminArticleFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    parent_id
    child_metas
    created_at
    updated_at
    generic_url
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    posters {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    visibility
    status
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "Category": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "type": "article_label",
      "metas": [AdminCategoryMeta],
      "articles": [AdminArticle],
      "products": [AdminProduct],
      "featured_articles": [AdminArticle],
      "icons": [File],
      "images": [File],
      "videos": [File],
      "parent_id": 42,
      "child_metas": ["string"],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "generic_url": "https://url.example.com",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "posters": [File],
      "files": [File],
      "visibility": "everyone",
      "status": "string"
    }
  }
}

CategoryList

Description

Fetch a paginated list of Categories.

Arguments
Name Description
search - String A search string to filter Categories by.
locale - String The locale to resolve each Category's translatable fields in.
limit - Int The maximum number of Categories to return.
offset - Int The number of Categories to skip.
parent_id - Int The id of the parent Category to list children for (omit to list root Categories).
parent_ids - [Int] The ids of the parent Categories to list children for.
category_ids - [Int] The Category ids to fetch.
type - CategoryTypeEnum Filter by the Category's type.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s).
list_filter - CategoryListFilterTypeEnum A preconfigured Category list filter, used in place of an explicit type argument.
project_id - Int The Project id to list Categories for.

Example

Query
query CategoryList(
  $search: String,
  $locale: String,
  $limit: Int,
  $offset: Int,
  $parent_id: Int,
  $parent_ids: [Int],
  $category_ids: [Int],
  $type: CategoryTypeEnum,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $list_filter: CategoryListFilterTypeEnum,
  $project_id: Int
) {
  CategoryList(
    search: $search,
    locale: $locale,
    limit: $limit,
    offset: $offset,
    parent_id: $parent_id,
    parent_ids: $parent_ids,
    category_ids: $category_ids,
    type: $type,
    sort_by: $sort_by,
    filter_by: $filter_by,
    list_filter: $list_filter,
    project_id: $project_id
  ) {
    items {
      ...AdminCategoryFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "parent_id": 42,
  "parent_ids": [42],
  "category_ids": [42],
  "type": "article_label",
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "list_filter": "article_taggable",
  "project_id": 42
}
Response
{
  "data": {
    "CategoryList": {
      "items": [AdminCategory],
      "pagination": Pagination
    }
  }
}

Client

Description

Query details for a configurable OAuth client.

Response

Returns an AdminClient

Arguments
Name Description
project_id - Int The Project id that owns the OAuth client.
id - Int The id of the OAuth client to query.
password_current - String The current password of the authenticated admin User querying the OAuth client.

Example

Query
query Client(
  $project_id: Int,
  $id: Int,
  $password_current: String
) {
  Client(
    project_id: $project_id,
    id: $id,
    password_current: $password_current
  ) {
    id
    project_id
    name
    remote_callback_url
    remote_callback_crm_contexts
    redirect_uris
    service_type
    is_configurable
    authorization_url
    token_url
    refresh_token_url
    user_info_url
    scope
    client_id
    client_secret
  }
}
Variables
{
  "project_id": 42,
  "id": 42,
  "password_current": "string"
}
Response
{
  "data": {
    "Client": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "remote_callback_url": "https://url.example.com",
      "remote_callback_crm_contexts": ["user_article"],
      "redirect_uris": ["string"],
      "service_type": "external_admin",
      "is_configurable": false,
      "authorization_url": "https://url.example.com",
      "token_url": "https://url.example.com",
      "refresh_token_url": "https://url.example.com",
      "user_info_url": "https://url.example.com",
      "scope": "string",
      "client_id": "string",
      "client_secret": "string"
    }
  }
}

ClientList

Description

List configurable OAuth clients for a Project.

Response

Returns an AdminClientsListedWithPagination

Arguments
Name Description
project_id - Int The Project id that owns the OAuth clients.
limit - Int The maximum number of OAuth clients to return.
offset - Int The number of OAuth clients to skip before returning results.
sort_by - [SortByInput] Sort the OAuth clients by one or more of these fields: "id", "key", "platform_context", "created_at", "updated_at".
filter_by - [FilterByInput] Filter the OAuth clients by supported fields.

Example

Query
query ClientList(
  $project_id: Int,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput]
) {
  ClientList(
    project_id: $project_id,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by
  ) {
    items {
      ...AdminClientListedFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput]
}
Response
{
  "data": {
    "ClientList": {
      "items": [AdminClientListed],
      "pagination": Pagination
    }
  }
}

Config

Description

Query admin Project configuration

Response

Returns an AdminConfig

Arguments
Name Description
project_id - Int The Project id to build admin Config for

Example

Query
query Config($project_id: Int) {
  Config(project_id: $project_id) {
    system_language_tags {
      ...SystemLanguageTagFragment
    }
    language_tag_contexts {
      ...LanguageTagContextFragment
    }
    locales {
      ...StructureKeyValueStringPairFragment
    }
    project {
      ...AdminConfigProjectFragment
    }
    roles {
      ...RoleFragment
    }
    platform_style_font_families
    platform_style_font_allowed_families
    resource_map {
      ...AdminResourceMapFragment
    }
    type_descendants {
      ...StructureKeyValueStringArrayPairFragment
    }
    type_children {
      ...StructureKeyValueStringArrayPairFragment
    }
    telemetry_platforms
    article_asset_linked_types
    article_types
    article_discoverability_types
    article_metadata_keys
    asset_status_types
    asset_source_extensions {
      ...StructureKeyValueStringArrayPairFragment
    }
    category_types
    category_article_taggable_types
    category_product_taggable_types
    logic_operators
    metric_types
    metric_action_types
    metric_condition_types
    notification_types
    notification_delivery_types
    notification_topic_types
    notification_channel_context_types
    page_types
    page_component_types
    page_component_element_types
    payment_syndicate_voucher_types
    payment_syndicate_voucher_discount_types
    payment_syndicate_voucher_installment_types
    payment_syndicate_voucher_user_subscription_status_actions
    payment_currency_types {
      ...StructureKeyValueStringPairFragment
    }
    product_types
    product_recurring_types
    product_non_recurring_types
    product_status_types
    product_discoverability_types
    analytics_search_tag_types
    subscription_types
    subscription_status_types
    subscription_entitlement_scope_types
    subscription_time_unit_types
    subscription_discoverability_types
    user_status_types
    user_gender_types
    user_consent_types
    user_notifiable_types
    user_phone_status_types
    user_subscription_status_types
    user_payment_credit_types
    role_types
    system_notification_message
    system_notification_message_ttl
  }
}
Variables
{"project_id": 42}
Response
{
  "data": {
    "Config": {
      "system_language_tags": [SystemLanguageTag],
      "language_tag_contexts": [LanguageTagContext],
      "locales": [StructureKeyValueStringPair],
      "project": AdminConfigProject,
      "roles": [Role],
      "platform_style_font_families": [
        "string"
      ],
      "platform_style_font_allowed_families": [
        "string"
      ],
      "resource_map": AdminResourceMap,
      "type_descendants": [
        StructureKeyValueStringArrayPair
      ],
      "type_children": [StructureKeyValueStringArrayPair],
      "telemetry_platforms": ["string"],
      "article_asset_linked_types": ["film"],
      "article_types": ["string"],
      "article_discoverability_types": [
        "string"
      ],
      "article_metadata_keys": ["string"],
      "asset_status_types": ["string"],
      "asset_source_extensions": [
        StructureKeyValueStringArrayPair
      ],
      "category_types": ["string"],
      "category_article_taggable_types": [
        "string"
      ],
      "category_product_taggable_types": [
        "string"
      ],
      "logic_operators": ["string"],
      "metric_types": ["string"],
      "metric_action_types": ["string"],
      "metric_condition_types": ["string"],
      "notification_types": ["string"],
      "notification_delivery_types": [
        "string"
      ],
      "notification_topic_types": [
        "string"
      ],
      "notification_channel_context_types": [
        "string"
      ],
      "page_types": ["string"],
      "page_component_types": ["string"],
      "page_component_element_types": [
        "string"
      ],
      "payment_syndicate_voucher_types": [
        "string"
      ],
      "payment_syndicate_voucher_discount_types": [
        "string"
      ],
      "payment_syndicate_voucher_installment_types": [
        "string"
      ],
      "payment_syndicate_voucher_user_subscription_status_actions": ["string"],
      "payment_currency_types": ["EUR"],
      "product_types": ["string"],
      "product_recurring_types": ["string"],
      "product_non_recurring_types": [
        "string"
      ],
      "product_status_types": ["string"],
      "product_discoverability_types": [
        "string"
      ],
      "analytics_search_tag_types": [
        "string"
      ],
      "subscription_types": ["string"],
      "subscription_status_types": ["string"],
      "subscription_entitlement_scope_types": [
        "string"
      ],
      "subscription_time_unit_types": [
        "string"
      ],
      "subscription_discoverability_types": [
        "string"
      ],
      "user_status_types": ["string"],
      "user_gender_types": ["string"],
      "user_consent_types": ["string"],
      "user_notifiable_types": ["string"],
      "user_phone_status_types": ["string"],
      "user_subscription_status_types": ["string"],
      "user_payment_credit_types": [
        "string"
      ],
      "role_types": ["string"],
      "system_notification_message": "string",
      "system_notification_message_ttl": 42
    }
  }
}

File

Description

Fetch a single File by id: a file such as an image or document that is attached to a resource like an Article, Category or Page. Pass locale to resolve its translated fields.

Response

Returns an AdminFile

Arguments
Name Description
id - Int The id of the File to query
locale - String The locale to use when resolving translated File fields

Example

Query
query File(
  $id: Int,
  $locale: String
) {
  File(
    id: $id,
    locale: $locale
  ) {
    id
    name
    title
    type
    size
    width
    height
    aspect_ratio_profile
    duration
    locale
    locale_label
    base_url
    base_path
    url
    proxy_file_path
    proxy_url
    file_name
    file_path
    title_translations {
      ...TranslationFragment
    }
    origin_url
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "File": {
      "id": 42,
      "name": "string",
      "title": "string",
      "type": "audio",
      "size": 42,
      "width": 42,
      "height": 42,
      "aspect_ratio_profile": "16x9",
      "duration": 42,
      "locale": "string",
      "locale_label": "string",
      "base_url": "https://url.example.com",
      "base_path": "string",
      "url": "https://url.example.com",
      "proxy_file_path": "string",
      "proxy_url": "https://url.example.com",
      "file_name": "string",
      "file_path": "string",
      "title_translations": [Translation],
      "origin_url": "https://url.example.com"
    }
  }
}

GeoRegionList

Description

List GeoRegions available for publication and filtering.

Response

Returns a GeoRegionsListedWithPagination

Arguments
Name Description
search - String Search text matched against GeoRegion codes and names.
locale - String The locale to activate before resolving translated GeoRegion names.
sort_by - [SortByInput] Sort GeoRegions by field(s): "id", "code", "is_country", "name"
filter_by - [FilterByInput] Filter GeoRegions by field(s).

Example

Query
query GeoRegionList(
  $search: String,
  $locale: String,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput]
) {
  GeoRegionList(
    search: $search,
    locale: $locale,
    sort_by: $sort_by,
    filter_by: $filter_by
  ) {
    items {
      ...GeoRegionListedFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "locale": "string",
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput]
}
Response
{
  "data": {
    "GeoRegionList": {
      "items": [GeoRegionListed],
      "pagination": Pagination
    }
  }
}

LanguageTagList

Description

List LanguageTags for a Project and platform context.

Arguments
Name Description
platform_context - PlatformContextEnum The platform context to list LanguageTags for.
language_tag_context - LanguageTagContextEnum Optional front-end flow context used to restrict the list to that context's LanguageTag keys.
search - String Search text matched against LanguageTag keys and translated values.
limit - Int The maximum number of LanguageTags to return.
offset - Int The number of LanguageTags to skip before returning results.
sort_by - [SortByInput] Sort LanguageTags by field(s): "id", "key", "platform_context", "created_at", "updated_at"
filter_by - [FilterByInput] Filter LanguageTags by field(s).
project_id - Int The Project id that owns the LanguageTags.

Example

Query
query LanguageTagList(
  $platform_context: PlatformContextEnum,
  $language_tag_context: LanguageTagContextEnum,
  $search: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int
) {
  LanguageTagList(
    platform_context: $platform_context,
    language_tag_context: $language_tag_context,
    search: $search,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id
  ) {
    items {
      ...AdminLanguageTagFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "platform_context": "web",
  "language_tag_context": "language_tag_context_login_create_account",
  "search": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42
}
Response
{
  "data": {
    "LanguageTagList": {
      "items": [AdminLanguageTag],
      "pagination": Pagination
    }
  }
}

LocaleRegionList

Description

List LocaleRegions

Arguments
Name Description
search - String Search LocaleRegions by code or name.
project_id - Int The Project id to list configured LocaleRegions for.

Example

Query
query LocaleRegionList(
  $search: String,
  $project_id: Int
) {
  LocaleRegionList(
    search: $search,
    project_id: $project_id
  ) {
    items {
      ...LocaleRegionListedFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{"search": "string", "project_id": 42}
Response
{
  "data": {
    "LocaleRegionList": {
      "items": [LocaleRegionListed],
      "pagination": Pagination
    }
  }
}

MailTemplate

Description

Query a MailTemplate.

Response

Returns an AdminMailTemplate

Arguments
Name Description
id - Int The id of the MailTemplate to query.
locale - String The locale to activate while resolving translated MailTemplate fields.

Example

Query
query MailTemplate(
  $id: Int,
  $locale: String
) {
  MailTemplate(
    id: $id,
    locale: $locale
  ) {
    id
    project_id
    name
    subject
    content
    subject_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    status
    created_at
    updated_at
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "MailTemplate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "subject": "string",
      "content": "string",
      "subject_translations": [Translation],
      "content_translations": [Translation],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "files": [File],
      "status": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

MailTemplateList

Description

List MailTemplates for a Project.

Arguments
Name Description
search - String Search text used to find MailTemplates.
limit - Int The maximum number of MailTemplates to return.
offset - Int The number of MailTemplates to skip before returning results.
sort_by - [SortByInput] Sort the MailTemplates by one or more of these fields: "id", "name", "subject", "created_at", "updated_at".
filter_by - [FilterByInput] Filter the MailTemplates by supported fields.
project_id - Int The Project id that owns the MailTemplates.

Example

Query
query MailTemplateList(
  $search: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int
) {
  MailTemplateList(
    search: $search,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id
  ) {
    items {
      ...AdminMailTemplateFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42
}
Response
{
  "data": {
    "MailTemplateList": {
      "items": [AdminMailTemplate],
      "pagination": Pagination
    }
  }
}

Menu

Description

Retrieve a Menu. This presentation resource configures navigation in a frontend app, including its MenuComponents.

Response

Returns an AdminMenu

Arguments
Name Description
id - Int The id of the Menu to fetch.
locale - String The locale to resolve this Menu's translatable fields in.

Example

Query
query Menu(
  $id: Int,
  $locale: String
) {
  Menu(
    id: $id,
    locale: $locale
  ) {
    id
    project_id
    name
    platform_contexts
    locale_regions {
      ...LocaleRegionFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    components {
      ...AdminMenuComponentFragment
    }
    visibility
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "Menu": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "platform_contexts": ["string"],
      "locale_regions": [LocaleRegion],
      "geo_regions": [GeoRegion],
      "components": [AdminMenuComponent],
      "visibility": "everyone",
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

MenuComponent

Description

Retrieve a MenuComponent. This presentation resource configures one navigation control in a frontend app.

Response

Returns an AdminMenuComponent

Arguments
Name Description
id - Int The id of the MenuComponent to fetch.
locale - String The locale to resolve this MenuComponent's translatable fields in.

Example

Query
query MenuComponent(
  $id: Int,
  $locale: String
) {
  MenuComponent(
    id: $id,
    locale: $locale
  ) {
    id
    parent_id
    menu_id
    page_id
    page_full_url_slug
    type
    title
    content
    url
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    visibility
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    page {
      ...AdminPageFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "MenuComponent": {
      "id": 42,
      "parent_id": 42,
      "menu_id": 42,
      "page_id": 42,
      "page_full_url_slug": "url-slug-string",
      "type": "button_url_link",
      "title": "string",
      "content": "string",
      "url": "https://url.example.com",
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "files": [File],
      "visibility": "everyone",
      "title_translations": [Translation],
      "content_translations": [Translation],
      "page": AdminPage,
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

MenuComponentList

Description

List a paginated set of MenuComponents belonging to a Menu. These presentation resources configure its frontend-app navigation controls.

Arguments
Name Description
locale - String The locale to resolve each MenuComponent's translatable fields in.
limit - Int The maximum number of MenuComponents to return.
offset - Int The number of MenuComponents to skip.
menu_id - Int The Menu id to list MenuComponents for.

Example

Query
query MenuComponentList(
  $locale: String,
  $limit: Int,
  $offset: Int,
  $menu_id: Int
) {
  MenuComponentList(
    locale: $locale,
    limit: $limit,
    offset: $offset,
    menu_id: $menu_id
  ) {
    items {
      ...AdminMenuComponentFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "menu_id": 42
}
Response
{
  "data": {
    "MenuComponentList": {
      "items": [AdminMenuComponent],
      "pagination": Pagination
    }
  }
}

MenuList

Description

List a paginated set of Menus for a Project and platform context. Menus are presentation resources that configure frontend-app navigation.

Response

Returns an AdminMenusListedWithPagination

Arguments
Name Description
locale - String The locale to resolve each Menu's translatable fields in.
limit - Int The maximum number of Menus to return.
offset - Int The number of Menus to skip.
project_id - Int The Project id to list Menus for.
platform_context - PlatformContextEnum The platform context to list Menus for. Menus without any platform context (applicable to all platforms) are listed as well.

Example

Query
query MenuList(
  $locale: String,
  $limit: Int,
  $offset: Int,
  $project_id: Int,
  $platform_context: PlatformContextEnum
) {
  MenuList(
    locale: $locale,
    limit: $limit,
    offset: $offset,
    project_id: $project_id,
    platform_context: $platform_context
  ) {
    items {
      ...AdminMenuFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "project_id": 42,
  "platform_context": "web"
}
Response
{
  "data": {
    "MenuList": {
      "items": [AdminMenu],
      "pagination": Pagination
    }
  }
}

Metric

Description

Fetch one Metric's complete stored eligibility and reward configuration: its time window, status, MetricConditions, configured Articles, Categories, Products, Subscriptions, eligible Users, and linked MetricActions.

Response

Returns an AdminMetric

Arguments
Name Description
id - Int The id of the Metric to fetch.

Example

Query
query Metric($id: Int) {
  Metric(id: $id) {
    id
    project_id
    name
    description
    time_window
    type
    published_from
    published_until
    created_at
    updated_at
    status
    conditions {
      ...AdminMetricConditionFragment
    }
    articles {
      ...AdminArticleFragment
    }
    categories {
      ...AdminCategoryFragment
    }
    products {
      ...AdminProductFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    eligible_users {
      ...AdminUserFragment
    }
    metric_actions {
      ...AdminMetricActionFragment
    }
  }
}
Variables
{"id": 42}
Response
{
  "data": {
    "Metric": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "description": "string",
      "time_window": 42,
      "type": "article",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "status": "string",
      "conditions": [AdminMetricCondition],
      "articles": [AdminArticle],
      "categories": [AdminCategory],
      "products": [AdminProduct],
      "subscriptions": [AdminSubscription],
      "eligible_users": [AdminUser],
      "metric_actions": [AdminMetricAction]
    }
  }
}

MetricAction

Description

Fetch one MetricAction's complete stored reward configuration: its fulfillment settings, Products, eligible Users, and the Metrics that can trigger it. A MetricAction can grant entitlements or invoke its configured webhook only when a Metric is evaluated.

Response

Returns an AdminMetricAction

Arguments
Name Description
id - Int The id of the MetricAction to fetch.

Example

Query
query MetricAction($id: Int) {
  MetricAction(id: $id) {
    id
    project_id
    name
    title
    content
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    type
    status
    webhook_url
    user_subscription_installment_num
    user_subscription_installment_time_unit
    created_at
    updated_at
    products {
      ...AdminProductListedAsRelationFragment
    }
    eligible_users {
      ...AdminUserFragment
    }
    metrics {
      ...AdminMetricFragment
    }
  }
}
Variables
{"id": 42}
Response
{
  "data": {
    "MetricAction": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "title": "string",
      "content": "string",
      "icons": [File],
      "images": [File],
      "files": [File],
      "title_translations": [Translation],
      "content_translations": [Translation],
      "type": "user_entitlement",
      "status": "string",
      "webhook_url": "https://url.example.com",
      "user_subscription_installment_num": 42,
      "user_subscription_installment_time_unit": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "products": [AdminProductListedAsRelation],
      "eligible_users": [AdminUser],
      "metrics": [AdminMetric]
    }
  }
}

MetricActionList

Description

List a Project's MetricActions with pagination. A MetricAction is a fulfillment configuration that a matching Metric can use to grant entitlements or invoke a configured webhook.

Arguments
Name Description
search - String A search string to filter MetricActions by.
limit - Int The maximum number of MetricActions to return.
offset - Int The number of MetricActions to skip.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "type", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s).
project_id - Int The Project id to list MetricActions for.

Example

Query
query MetricActionList(
  $search: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int
) {
  MetricActionList(
    search: $search,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id
  ) {
    items {
      ...AdminMetricActionFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42
}
Response
{
  "data": {
    "MetricActionList": {
      "items": [AdminMetricAction],
      "pagination": Pagination
    }
  }
}

MetricList

Description

List a Project's Metrics with pagination. A Metric is an eligibility rule that evaluates its MetricConditions and can trigger MetricActions for matching Users.

Response

Returns an AdminMetricsListedWithPagination

Arguments
Name Description
search - String A search string to filter Metrics by.
limit - Int The maximum number of Metrics to return.
offset - Int The number of Metrics to skip.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "type", "published_from", "published_until", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s).
project_id - Int The Project id to list Metrics for.

Example

Query
query MetricList(
  $search: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int
) {
  MetricList(
    search: $search,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id
  ) {
    items {
      ...AdminMetricFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42
}
Response
{
  "data": {
    "MetricList": {
      "items": [AdminMetric],
      "pagination": Pagination
    }
  }
}

Notification

Description

Query Notification details.

Response

Returns an AdminNotification

Arguments
Name Description
id - Int The id of the Notification to query.
locale - String The locale to activate while resolving translated Notification fields.

Example

Query
query Notification(
  $id: Int,
  $locale: String
) {
  Notification(
    id: $id,
    locale: $locale
  ) {
    id
    project_id
    parent_id
    name
    title
    content
    url
    delivery_type
    type
    notification_channel_contexts
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    children {
      ...AdminNotificationFragment
    }
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    articles {
      ...AdminArticleFragment
    }
    categories {
      ...AdminCategoryFragment
    }
    notification_topics {
      ...AdminNotificationTopicFragment
    }
    frequency
    time_unit
    status
    schedule_at
    delivered_at
    created_at
    updated_at
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "Notification": {
      "id": 42,
      "project_id": 42,
      "parent_id": 42,
      "name": "string",
      "title": "string",
      "content": "string",
      "url": "https://url.example.com",
      "delivery_type": "generic_users_on_topic",
      "type": "single",
      "notification_channel_contexts": [
        "string"
      ],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "files": [File],
      "children": [AdminNotification],
      "title_translations": [Translation],
      "content_translations": [Translation],
      "articles": [AdminArticle],
      "categories": [AdminCategory],
      "notification_topics": [AdminNotificationTopic],
      "frequency": 1,
      "time_unit": "day",
      "status": "string",
      "schedule_at": "2000-12-31T12:34:56.000Z",
      "delivered_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

NotificationList

Description

Query Notifications with pagination.

Arguments
Name Description
search - String Search Notifications by indexed text.
locale - String The locale to activate while resolving translated Notification fields.
limit - Int The maximum number of Notifications to return.
offset - Int The number of Notifications to skip before returning results.
parent_id - Int The id of the parent Notification whose direct children should be listed.
parent_ids - [Int] The ids of parent Notifications whose direct children should be listed.
ancestor_id - Int Currently ignored: this argument is accepted but has no effect. Use parent_id or parent_ids to list the children of a Notification.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "type", "schedule_at", "delivered_at", "created_at", "updated_at"
filter_by - [FilterByInput] Filter Notifications by field(s).
project_id - Int The Project id that owns the Notifications.

Example

Query
query NotificationList(
  $search: String,
  $locale: String,
  $limit: Int,
  $offset: Int,
  $parent_id: Int,
  $parent_ids: [Int],
  $ancestor_id: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int
) {
  NotificationList(
    search: $search,
    locale: $locale,
    limit: $limit,
    offset: $offset,
    parent_id: $parent_id,
    parent_ids: $parent_ids,
    ancestor_id: $ancestor_id,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id
  ) {
    items {
      ...AdminNotificationFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "parent_id": 42,
  "parent_ids": [42],
  "ancestor_id": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42
}
Response
{
  "data": {
    "NotificationList": {
      "items": [AdminNotification],
      "pagination": Pagination
    }
  }
}

NotificationTopic

Description

Query NotificationTopic details.

Response

Returns an AdminNotificationTopic

Arguments
Name Description
id - Int The id of the NotificationTopic to query.
locale - String The locale to activate while resolving translated NotificationTopic fields.

Example

Query
query NotificationTopic(
  $id: Int,
  $locale: String
) {
  NotificationTopic(
    id: $id,
    locale: $locale
  ) {
    id
    remote_notification_topic_id
    project_id
    name
    title
    description
    title_translations {
      ...TranslationFragment
    }
    description_translations {
      ...TranslationFragment
    }
    notifications {
      ...AdminNotificationFragment
    }
    type
    status
    created_at
    updated_at
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "NotificationTopic": {
      "id": 42,
      "remote_notification_topic_id": "string",
      "project_id": 42,
      "name": "string",
      "title": "string",
      "description": "string",
      "title_translations": [Translation],
      "description_translations": [Translation],
      "notifications": [AdminNotification],
      "type": "general",
      "status": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

NotificationTopicList

Description

Query NotificationTopics with pagination.

Arguments
Name Description
search - String Search NotificationTopics by indexed text.
locale - String The locale to activate while resolving translated NotificationTopic fields.
limit - Int The maximum number of NotificationTopics to return.
offset - Int The number of NotificationTopics to skip before returning results.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "type", "created_at", "updated_at"
filter_by - [FilterByInput] Filter NotificationTopics by field(s).
project_id - Int The Project id that owns the NotificationTopics.

Example

Query
query NotificationTopicList(
  $search: String,
  $locale: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int
) {
  NotificationTopicList(
    search: $search,
    locale: $locale,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id
  ) {
    items {
      ...AdminNotificationTopicFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42
}
Response
{
  "data": {
    "NotificationTopicList": {
      "items": [AdminNotificationTopic],
      "pagination": Pagination
    }
  }
}

OauthProvider

Description

Fetch an OAuth2 provider by id.

Response

Returns an AdminOauthProvider

Arguments
Name Description
id - Int The id of the OAuth2 provider to fetch.

Example

Query
query OauthProvider($id: Int) {
  OauthProvider(id: $id) {
    id
    project_id
    call_to_action_tag
    name
    call_to_action_tag_translations {
      ...TranslationFragment
    }
    is_auto_create_user
    allowed_origin_domains
    client_id
    client_secret
    redirect_url
    status
    type
    scopes
    scope_separator
    auth_url
    token_url
    user_info_url
    email_info_url
    user_map
    custom_data
    created_at
    updated_at
    files {
      ...FileFragment
    }
    icons {
      ...FileFragment
    }
  }
}
Variables
{"id": 42}
Response
{
  "data": {
    "OauthProvider": {
      "id": 42,
      "project_id": 42,
      "call_to_action_tag": "string",
      "name": "string",
      "call_to_action_tag_translations": [Translation],
      "is_auto_create_user": true,
      "allowed_origin_domains": ["string"],
      "client_id": "string",
      "client_secret": "string",
      "redirect_url": "https://url.example.com",
      "status": "string",
      "type": "google",
      "scopes": ["string"],
      "scope_separator": "string",
      "auth_url": "https://url.example.com",
      "token_url": "https://url.example.com",
      "user_info_url": "https://url.example.com",
      "email_info_url": "foo@example.com",
      "user_map": "string",
      "custom_data": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "files": [File],
      "icons": [File]
    }
  }
}

OauthProviderList

Description

List OAuth2 providers for a Project.

Arguments
Name Description
limit - Int The maximum number of OAuth2 providers to return.
offset - Int The number of OAuth2 providers to skip before returning results.
project_id - Int The Project id whose OAuth2 providers should be listed.

Example

Query
query OauthProviderList(
  $limit: Int,
  $offset: Int,
  $project_id: Int
) {
  OauthProviderList(
    limit: $limit,
    offset: $offset,
    project_id: $project_id
  ) {
    items {
      ...AdminOauthProviderFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{"limit": 42, "offset": 42, "project_id": 42}
Response
{
  "data": {
    "OauthProviderList": {
      "items": [AdminOauthProvider],
      "pagination": Pagination
    }
  }
}

Page

Description

Retrieve a Page. This presentation resource includes the PageComponents that define its frontend-app layout. Use this to inspect an existing layout before editing it.

Response

Returns an AdminPage

Arguments
Name Description
id - Int The id of the Page to fetch.
locale - String The locale to resolve this Page's translatable fields in.

Example

Query
query Page(
  $id: Int,
  $locale: String
) {
  Page(
    id: $id,
    locale: $locale
  ) {
    id
    project_id
    category_id
    parent_id
    name
    url_slug
    full_url_slug
    canonical_url
    title
    type
    is_in_sitemap
    platform_contexts
    locale_regions {
      ...LocaleRegionFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    metas {
      ...AdminPageMetaFragment
    }
    components {
      ...AdminPageComponentFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    visibility
    status
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    title_translations {
      ...TranslationFragment
    }
    category {
      ...AdminCategoryFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "Page": {
      "id": 42,
      "project_id": 42,
      "category_id": 42,
      "parent_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "title": "string",
      "type": "account_delete",
      "is_in_sitemap": false,
      "platform_contexts": ["string"],
      "locale_regions": [LocaleRegion],
      "geo_regions": [GeoRegion],
      "metas": [AdminPageMeta],
      "components": [AdminPageComponent],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "files": [File],
      "visibility": "everyone",
      "status": "string",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "title_translations": [Translation],
      "category": AdminCategory,
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

PageComponent

Description

Retrieve a PageComponent. This presentation resource includes the PageComponentElements that define one typed part of a Page's layout.

Response

Returns an AdminPageComponent

Arguments
Name Description
id - Int The id of the PageComponent to fetch.
locale - String The locale to resolve this PageComponent's translatable fields in.

Example

Query
query PageComponent(
  $id: Int,
  $locale: String
) {
  PageComponent(
    id: $id,
    locale: $locale
  ) {
    id
    page_id
    parent_id
    category_id
    title
    content
    url
    value
    style_type
    display_type
    type
    elements {
      ...AdminPageComponentElementFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    resource_articles {
      ...ArticleListedAsResourceFragment
    }
    resource_categories {
      ...CategoryListedAsResourceFragment
    }
    resource_pages {
      ...PageListedAsResourceFragment
    }
    resource_products {
      ...ProductListedAsResourceFragment
    }
    resource_subscriptions {
      ...SubscriptionListedAsResourceFragment
    }
    visibility
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    category {
      ...AdminCategoryFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "PageComponent": {
      "id": 42,
      "page_id": 42,
      "parent_id": 42,
      "category_id": 42,
      "title": "string",
      "content": "string",
      "url": "https://url.example.com",
      "value": "string",
      "style_type": "string",
      "display_type": "string",
      "type": "account_create",
      "elements": [AdminPageComponentElement],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "files": [File],
      "resource_articles": [ArticleListedAsResource],
      "resource_categories": [CategoryListedAsResource],
      "resource_pages": [PageListedAsResource],
      "resource_products": [ProductListedAsResource],
      "resource_subscriptions": [
        SubscriptionListedAsResource
      ],
      "visibility": "everyone",
      "title_translations": [Translation],
      "content_translations": [Translation],
      "category": AdminCategory,
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

PageComponentElement

Description

Retrieve a PageComponentElement. This presentation resource configures one renderable part of a PageComponent.

Response

Returns an AdminPageComponentElement

Arguments
Name Description
id - Int The id of the PageComponentElement to fetch.
locale - String The locale to resolve this PageComponentElement's translatable fields in.

Example

Query
query PageComponentElement(
  $id: Int,
  $locale: String
) {
  PageComponentElement(
    id: $id,
    locale: $locale
  ) {
    id
    page_component_id
    parent_id
    type
    title
    content
    label
    url
    value
    toggle
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    resource_articles {
      ...ArticleListedAsResourceFragment
    }
    resource_categories {
      ...CategoryListedAsResourceFragment
    }
    resource_pages {
      ...PageListedAsResourceFragment
    }
    resource_products {
      ...ProductListedAsResourceFragment
    }
    resource_subscriptions {
      ...SubscriptionListedAsResourceFragment
    }
    visibility
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    label_translations {
      ...TranslationFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "PageComponentElement": {
      "id": 42,
      "page_component_id": 42,
      "parent_id": 42,
      "type": "string",
      "title": "string",
      "content": "string",
      "label": "string",
      "url": "https://url.example.com",
      "value": "string",
      "toggle": false,
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "files": [File],
      "resource_articles": [ArticleListedAsResource],
      "resource_categories": [CategoryListedAsResource],
      "resource_pages": [PageListedAsResource],
      "resource_products": [ProductListedAsResource],
      "resource_subscriptions": [
        SubscriptionListedAsResource
      ],
      "visibility": "everyone",
      "title_translations": [Translation],
      "content_translations": [Translation],
      "label_translations": [Translation],
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

PageComponentElementList

Description

List the PageComponentElements belonging to a PageComponent. These presentation resources are the smallest configurable units within a component.

Arguments
Name Description
locale - String The locale to resolve each PageComponentElement's translatable fields in.
limit - Int The maximum number of PageComponentElements to return.
offset - Int The number of PageComponentElements to skip.
page_component_id - Int The PageComponent id to list PageComponentElements for.
sort_by - [SortByInput] Sort and order by field(s): "id", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s).

Example

Query
query PageComponentElementList(
  $locale: String,
  $limit: Int,
  $offset: Int,
  $page_component_id: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput]
) {
  PageComponentElementList(
    locale: $locale,
    limit: $limit,
    offset: $offset,
    page_component_id: $page_component_id,
    sort_by: $sort_by,
    filter_by: $filter_by
  ) {
    items {
      ...AdminPageComponentElementFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "page_component_id": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput]
}
Response
{
  "data": {
    "PageComponentElementList": {
      "items": [AdminPageComponentElement],
      "pagination": Pagination
    }
  }
}

PageComponentList

Description

List the PageComponents belonging to a Page. These presentation resources define a page's layout structure. Use this to inspect it before making changes.

Arguments
Name Description
locale - String The locale to resolve each PageComponent's translatable fields in.
limit - Int The maximum number of PageComponents to return.
offset - Int The number of PageComponents to skip.
page_id - Int The Page id to list PageComponents for.
sort_by - [SortByInput] Sort and order by field(s): "id", "created_at"
filter_by - [FilterByInput] Filter by field(s).

Example

Query
query PageComponentList(
  $locale: String,
  $limit: Int,
  $offset: Int,
  $page_id: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput]
) {
  PageComponentList(
    locale: $locale,
    limit: $limit,
    offset: $offset,
    page_id: $page_id,
    sort_by: $sort_by,
    filter_by: $filter_by
  ) {
    items {
      ...AdminPageComponentFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "page_id": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput]
}
Response
{
  "data": {
    "PageComponentList": {
      "items": [AdminPageComponent],
      "pagination": Pagination
    }
  }
}

PageList

Description

List Pages for a Project and platform context. Pages are presentation resources that define frontend-app layouts. Use this to browse existing layouts before creating or modifying them.

Response

Returns an AdminPagesListedWithPagination

Arguments
Name Description
search - String A search string to filter Pages by.
locale - String The locale to resolve each Page's translatable fields in.
parent_id - Int The id of the parent Page to list children for (omit to list root Pages).
limit - Int The maximum number of Pages to return.
offset - Int The number of Pages to skip.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "type", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s).
project_id - Int The Project id to list Pages for.
platform_context - PlatformContextEnum The platform context to list Pages for. Pages without any platform context (applicable to all platforms) are listed as well.

Example

Query
query PageList(
  $search: String,
  $locale: String,
  $parent_id: Int,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int,
  $platform_context: PlatformContextEnum
) {
  PageList(
    search: $search,
    locale: $locale,
    parent_id: $parent_id,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id,
    platform_context: $platform_context
  ) {
    items {
      ...AdminPageFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "locale": "string",
  "parent_id": 42,
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42,
  "platform_context": "web"
}
Response
{
  "data": {
    "PageList": {
      "items": [AdminPage],
      "pagination": Pagination
    }
  }
}

PaymentProvider

Description

Fetch a PaymentProvider by id.

Response

Returns an AdminPaymentProvider

Arguments
Name Description
id - Int The id of the PaymentProvider to fetch.

Example

Query
query PaymentProvider($id: Int) {
  PaymentProvider(id: $id) {
    id
    project_id
    name
    description
    type
    status
    device_capability
    order_description_template
    recurring_order_description_template
    collection_window_day_num
    amount_payment_method_change
    default_currency
    default_currency_symbol
    status_message
    connect_status
    connect_status_message
    remote_profile_status
    remote_profile_status_message
    is_configurable
    is_support_connect_flow
    remote_account {
      ...AdminPaymentProviderRemoteAccountFragment
    }
    remote_profile_id
    remote_organisation_id
  }
}
Variables
{"id": 42}
Response
{
  "data": {
    "PaymentProvider": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "description": "string",
      "type": "string",
      "status": "string",
      "device_capability": 42,
      "order_description_template": "string",
      "recurring_order_description_template": "string",
      "collection_window_day_num": 42,
      "amount_payment_method_change": 987.65,
      "default_currency": "EUR",
      "default_currency_symbol": "EUR",
      "status_message": "string",
      "connect_status": "string",
      "connect_status_message": "string",
      "remote_profile_status": "string",
      "remote_profile_status_message": "string",
      "is_configurable": false,
      "is_support_connect_flow": true,
      "remote_account": AdminPaymentProviderRemoteAccount,
      "remote_profile_id": "string",
      "remote_organisation_id": "string"
    }
  }
}

PaymentProviderList

Description

List PaymentProviders for a Project.

Arguments
Name Description
search - String Currently ignored: this argument is accepted but has no effect.
locale - String The locale used for translated PaymentProvider fields.
limit - Int The maximum number of PaymentProviders to return.
offset - Int The number of PaymentProviders to skip before returning results.
sort_by - [SortByInput] Currently ignored: this argument is accepted but has no effect. PaymentProviders are always returned in their default order.
filter_by - [FilterByInput] Currently ignored: this argument is accepted but has no effect.
project_id - Int The Project id whose PaymentProviders should be listed.

Example

Query
query PaymentProviderList(
  $search: String,
  $locale: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int
) {
  PaymentProviderList(
    search: $search,
    locale: $locale,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id
  ) {
    items {
      ...AdminPaymentProviderFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42
}
Response
{
  "data": {
    "PaymentProviderList": {
      "items": [AdminPaymentProvider],
      "pagination": Pagination
    }
  }
}

PaymentSyndicate

Description

Fetch one PaymentSyndicate, an administrative voucher-claim audit group used to categorise related Voucher claims for later tracing in logs.

Response

Returns an AdminPaymentSyndicate

Arguments
Name Description
id - Int The id of the PaymentSyndicate to fetch.
locale - String Currently ignored: this argument is accepted but has no effect; the locale is not activated for this query.

Example

Query
query PaymentSyndicate(
  $id: Int,
  $locale: String
) {
  PaymentSyndicate(
    id: $id,
    locale: $locale
  ) {
    id
    project_id
    name
    type
    created_at
    updated_at
    vouchers {
      ...AdminPaymentSyndicateVoucherFragment
    }
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "PaymentSyndicate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "type": "internal",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "vouchers": [AdminPaymentSyndicateVoucher]
    }
  }
}

PaymentSyndicateList

Description

Fetch a Project's paginated list of PaymentSyndicates, administrative voucher-claim audit groups that own and categorise related Voucher campaigns for tracing in logs.

Arguments
Name Description
search - String A search string to filter PaymentSyndicates by.
limit - Int The maximum number of PaymentSyndicates to return.
offset - Int The number of PaymentSyndicates to skip.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "type", "created_at", "updated_at"
project_id - Int The Project id that owns the PaymentSyndicates.

Example

Query
query PaymentSyndicateList(
  $search: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $project_id: Int
) {
  PaymentSyndicateList(
    search: $search,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    project_id: $project_id
  ) {
    items {
      ...AdminPaymentSyndicateFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "project_id": 42
}
Response
{
  "data": {
    "PaymentSyndicateList": {
      "items": [AdminPaymentSyndicate],
      "pagination": Pagination
    }
  }
}

PaymentSyndicateVoucher

Description

Fetch a single PaymentSyndicateVoucher.

Response

Returns an AdminPaymentSyndicateVoucher

Arguments
Name Description
id - Int The id of the PaymentSyndicateVoucher to fetch.
locale - String Currently ignored: this argument is accepted but has no effect; the locale is not activated for this query.

Example

Query
query PaymentSyndicateVoucher(
  $id: Int,
  $locale: String
) {
  PaymentSyndicateVoucher(
    id: $id,
    locale: $locale
  ) {
    id
    project_id
    description
    name
    payment_syndicate_id
    subscription_id
    description_translations {
      ...TranslationFragment
    }
    currency
    currency_symbol
    amount
    installment_num
    max_claimed_num
    max_claimed_per_user_num
    claimed_num
    is_allow_on_valid_subscription
    user_subscription_status_action
    newsletter_list_id
    time_unit
    discount_type
    installment_type
    type
    issue_installments_until
    installed_at
    expires_at
    created_at
    updated_at
    syndicate {
      ...AdminPaymentSyndicateFragment
    }
    batches {
      ...AdminPaymentSyndicateVoucherCodeBatchFragment
    }
    scoped_products {
      ...AdminProductFragment
    }
    products {
      ...AdminProductListedAsRelationFragment
    }
    subscription {
      ...AdminSubscriptionFragment
    }
    eligible_email_addresses
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "PaymentSyndicateVoucher": {
      "id": 42,
      "project_id": 42,
      "description": "string",
      "name": "string",
      "payment_syndicate_id": 42,
      "subscription_id": 42,
      "description_translations": [Translation],
      "currency": "EUR",
      "currency_symbol": "EUR",
      "amount": 123.45,
      "installment_num": 42,
      "max_claimed_num": 42,
      "max_claimed_per_user_num": 42,
      "claimed_num": 42,
      "is_allow_on_valid_subscription": false,
      "user_subscription_status_action": "string",
      "newsletter_list_id": "string",
      "time_unit": "day",
      "discount_type": "percentage",
      "installment_type": "fixed_date",
      "type": "generic",
      "issue_installments_until": "string",
      "installed_at": "2000-12-31T12:34:56.000Z",
      "expires_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "syndicate": AdminPaymentSyndicate,
      "batches": [AdminPaymentSyndicateVoucherCodeBatch],
      "scoped_products": [AdminProduct],
      "products": [AdminProductListedAsRelation],
      "subscription": AdminSubscription,
      "eligible_email_addresses": ["foo@example.com"]
    }
  }
}

PaymentSyndicateVoucherList

Description

Fetch a paginated list of PaymentSyndicateVouchers.

Arguments
Name Description
search - String A search string to filter PaymentSyndicateVouchers by, or an exact Voucher Code.
limit - Int The maximum number of PaymentSyndicateVouchers to return.
offset - Int The number of PaymentSyndicateVouchers to skip.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "type", "installed_at", "expires_at", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s).
project_id - Int The Project id that owns the PaymentSyndicateVouchers.

Example

Query
query PaymentSyndicateVoucherList(
  $search: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int
) {
  PaymentSyndicateVoucherList(
    search: $search,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id
  ) {
    items {
      ...AdminPaymentSyndicateVoucherFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42
}
Response
{
  "data": {
    "PaymentSyndicateVoucherList": {
      "items": [AdminPaymentSyndicateVoucher],
      "pagination": Pagination
    }
  }
}

Product

Description

Fetch a single Product.

Response

Returns an AdminProduct

Arguments
Name Description
id - Int The id of the Product to fetch.
locale - String The locale used to resolve the Product's translated fields.

Example

Query
query Product(
  $id: Int,
  $locale: String
) {
  Product(
    id: $id,
    locale: $locale
  ) {
    id
    project_id
    remote_product_id
    name
    title
    description
    description_short
    call_to_action_tag
    type
    credit_type
    currency
    currency_symbol
    price
    credit_price
    credit_amount
    amount_balance
    purchase_num
    max_purchase_num
    expires_in
    expires_at
    created_at
    updated_at
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    articles {
      ...AdminArticleFragment
    }
    categories {
      ...CategoryListedAsRelationFragment
    }
    period_renewal_day
    is_sync_installments
    frequency
    time_unit
    recurring_entitlement_expires_in_time_unit_midnight_offset
    recurring_entitlement_expires_in_time_unit_num
    recurring_entitlement_expires_in
    title_translations {
      ...TranslationFragment
    }
    description_translations {
      ...TranslationFragment
    }
    description_short_translations {
      ...TranslationFragment
    }
    call_to_action_tag_translations {
      ...TranslationFragment
    }
    discoverability
    status
    published_from
    published_until
    newsletter_list_id
    issuable_vouchers {
      ...AdminPaymentSyndicateVoucherFragment
    }
    notification_topics {
      ...AdminNotificationTopicFragment
    }
    files {
      ...FileFragment
    }
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "Product": {
      "id": 42,
      "project_id": 42,
      "remote_product_id": "string",
      "name": "string",
      "title": "string",
      "description": "string",
      "description_short": "string",
      "call_to_action_tag": "string",
      "type": "article",
      "credit_type": "general",
      "currency": "EUR",
      "currency_symbol": "EUR",
      "price": 7.99,
      "credit_price": 1,
      "credit_amount": 1,
      "amount_balance": 123.45,
      "purchase_num": 42,
      "max_purchase_num": 1,
      "expires_in": 86400,
      "expires_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "articles": [AdminArticle],
      "categories": [CategoryListedAsRelation],
      "period_renewal_day": 42,
      "is_sync_installments": true,
      "frequency": 1,
      "time_unit": "day",
      "recurring_entitlement_expires_in_time_unit_midnight_offset": 86400,
      "recurring_entitlement_expires_in_time_unit_num": 86400,
      "recurring_entitlement_expires_in": 86400,
      "title_translations": [Translation],
      "description_translations": [Translation],
      "description_short_translations": [Translation],
      "call_to_action_tag_translations": [Translation],
      "discoverability": "hidden",
      "status": "string",
      "published_from": "string",
      "published_until": "string",
      "newsletter_list_id": "string",
      "issuable_vouchers": [AdminPaymentSyndicateVoucher],
      "notification_topics": [AdminNotificationTopic],
      "files": [File]
    }
  }
}

ProductList

Description

Fetch a paginated list of Products.

Response

Returns an AdminProductsListedWithPagination

Arguments
Name Description
search - String A search string to filter Products by.
category_id - Int The Category id to restrict Products to.
type - ProductTypeEnum A single Product type to filter by. Mutually exclusive with types.
types - [ProductTypeEnum] The Product types to filter on (filter type: "where in"). Mutually exclusive with type.
locale - String The locale used to resolve the Products' translated fields.
limit - Int The maximum number of Products to return.
offset - Int The number of Products to skip.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "type", "status", "expires_at", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s).
project_id - Int The Project id that owns the Products.

Example

Query
query ProductList(
  $search: String,
  $category_id: Int,
  $type: ProductTypeEnum,
  $types: [ProductTypeEnum],
  $locale: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int
) {
  ProductList(
    search: $search,
    category_id: $category_id,
    type: $type,
    types: $types,
    locale: $locale,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id
  ) {
    items {
      ...AdminProductFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "category_id": 42,
  "type": "article",
  "types": ["article"],
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42
}
Response
{
  "data": {
    "ProductList": {
      "items": [AdminProduct],
      "pagination": Pagination
    }
  }
}

ProjectConfig

Description

Query a single ProjectConfig

Response

Returns an AdminProjectConfig

Arguments
Name Description
project_id - Int The Project id that owns the ProjectConfig
id - Int The id of the ProjectConfig to retrieve
password_current - String The current admin User password for revealing an auth-only ProjectConfig value

Example

Query
query ProjectConfig(
  $project_id: Int,
  $id: Int,
  $password_current: String
) {
  ProjectConfig(
    project_id: $project_id,
    id: $id,
    password_current: $password_current
  ) {
    id
    project_id
    key
    value
    default_value
    label
    type
    is_read_only
    is_auth_only
    related_file_type
    created_at
    updated_at
  }
}
Variables
{
  "project_id": 42,
  "id": 42,
  "password_current": "string"
}
Response
{
  "data": {
    "ProjectConfig": {
      "id": 42,
      "project_id": 42,
      "key": "string",
      "value": "string",
      "default_value": "string",
      "label": "string",
      "type": "string",
      "is_read_only": true,
      "is_auth_only": false,
      "related_file_type": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

ProjectConfigList

Description

List ProjectConfigs for a Project

Arguments
Name Description
project_id - Int The Project id that owns the ProjectConfigs
search - String Search text matched against ProjectConfig keys and values
type - ProjectConfigTypeEnum Only return ProjectConfigs whose stored value type matches this type
project_config_context - ProjectConfigContextEnum Only return the ProjectConfigs that belong to this CMS settings context
limit - Int The maximum number of ProjectConfigs to return
offset - Int The number of ProjectConfigs to skip before returning results
sort_by - [SortByInput] Sort and order by field(s): "id", "key", "value", "type", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by ProjectConfig field(s)
password_current - String The current admin User password for revealing auth-only ProjectConfig values

Example

Query
query ProjectConfigList(
  $project_id: Int,
  $search: String,
  $type: ProjectConfigTypeEnum,
  $project_config_context: ProjectConfigContextEnum,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $password_current: String
) {
  ProjectConfigList(
    project_id: $project_id,
    search: $search,
    type: $type,
    project_config_context: $project_config_context,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    password_current: $password_current
  ) {
    items {
      ...AdminProjectConfigFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "search": "string",
  "type": "array",
  "project_config_context": "branding_mobile_custom_css",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "password_current": "string"
}
Response
{
  "data": {
    "ProjectConfigList": {
      "items": [AdminProjectConfig],
      "pagination": Pagination
    }
  }
}

ProjectConfigListValidate

Description

Validate a batch of ProjectConfig values for a context without saving them

Response

Returns a Boolean

Arguments
Name Description
project_id - Int The Project id that owns the ProjectConfigs
project_config_context - ProjectConfigContextEnum The CMS settings context whose ProjectConfig values should be validated
items - [ProjectConfigInput] The ProjectConfig ids and candidate values to validate

Example

Query
query ProjectConfigListValidate(
  $project_id: Int,
  $project_config_context: ProjectConfigContextEnum,
  $items: [ProjectConfigInput]
) {
  ProjectConfigListValidate(
    project_id: $project_id,
    project_config_context: $project_config_context,
    items: $items
  )
}
Variables
{
  "project_id": 42,
  "project_config_context": "branding_mobile_custom_css",
  "items": [ProjectConfigInput]
}
Response
{"data": {"ProjectConfigListValidate": true}}

RemoteAssetFileList

Description

Query list of remote asset files provided by the MediaProvider.

Arguments
Name Description
project_id - Int The Project id to fetch remote asset files for.
limit - Int The pagination limit.
offset - Int The pagination offset.
context - RemoteAssetFileContextEnum The remote file context to list files for.
sort_by - [SortByInput] Sort and order by field(s): "file", "file_id", "file_size", "file_extension", "created_at"

Example

Query
query RemoteAssetFileList(
  $project_id: Int,
  $limit: Int,
  $offset: Int,
  $context: RemoteAssetFileContextEnum,
  $sort_by: [SortByInput]
) {
  RemoteAssetFileList(
    project_id: $project_id,
    limit: $limit,
    offset: $offset,
    context: $context,
    sort_by: $sort_by
  ) {
    items {
      ...AdminRemoteAssetFileFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "limit": 42,
  "offset": 42,
  "context": "bulk_upload",
  "sort_by": [SortByInput]
}
Response
{
  "data": {
    "RemoteAssetFileList": {
      "items": [AdminRemoteAssetFile],
      "pagination": Pagination
    }
  }
}

Subscription

Description

Fetch a single Subscription.

Response

Returns an AdminSubscription

Arguments
Name Description
id - Int The id of the Subscription to fetch.
locale - String The locale used to resolve the Subscription's translated fields.

Example

Query
query Subscription(
  $id: Int,
  $locale: String
) {
  Subscription(
    id: $id,
    locale: $locale
  ) {
    id
    project_id
    remote_subscription_id
    name
    title
    description
    description_short
    type
    price
    price_per_installment
    time_unit
    time_unit_translation
    frequency
    currency
    currency_symbol
    initial_installment_num
    initial_installment_time_unit
    allow_suspend_after_installment_num
    max_concurrent_vod_stream_num
    newsletter_list_id
    entitlement_scope
    is_credit_issuing
    purchase_num
    max_purchase_num
    articles {
      ...ArticleListedAsRelationFragment
    }
    categories {
      ...CategoryListedAsRelationFragment
    }
    payment_providers {
      ...AdminPaymentProviderListedAsRelationFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    created_at
    updated_at
    user_subscription_status_action
    title_translations {
      ...TranslationFragment
    }
    description_translations {
      ...TranslationFragment
    }
    description_short_translations {
      ...TranslationFragment
    }
    discoverability
    status
    products {
      ...AdminProductListedAsRelationFragment
    }
    entitleable_articles {
      ...ArticleListedAsRelationFragment
    }
    files {
      ...FileFragment
    }
  }
}
Variables
{"id": 42, "locale": "string"}
Response
{
  "data": {
    "Subscription": {
      "id": 42,
      "project_id": 42,
      "remote_subscription_id": "string",
      "name": "string",
      "title": "string",
      "description": "string",
      "description_short": "string",
      "type": "svod",
      "price": 7.99,
      "price_per_installment": 7.99,
      "time_unit": "day",
      "time_unit_translation": "string",
      "frequency": 1,
      "currency": "EUR",
      "currency_symbol": "EUR",
      "initial_installment_num": 42,
      "initial_installment_time_unit": "day",
      "allow_suspend_after_installment_num": 42,
      "max_concurrent_vod_stream_num": 42,
      "newsletter_list_id": "string",
      "entitlement_scope": "partial_exclusive",
      "is_credit_issuing": true,
      "purchase_num": 42,
      "max_purchase_num": 1,
      "articles": [ArticleListedAsRelation],
      "categories": [CategoryListedAsRelation],
      "payment_providers": [
        AdminPaymentProviderListedAsRelation
      ],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "user_subscription_status_action": "string",
      "title_translations": [Translation],
      "description_translations": [Translation],
      "description_short_translations": [Translation],
      "discoverability": "hidden",
      "status": "string",
      "products": [AdminProductListedAsRelation],
      "entitleable_articles": [ArticleListedAsRelation],
      "files": [File]
    }
  }
}

SubscriptionList

Description

Fetch a paginated list of Subscriptions.

Arguments
Name Description
search - String A search string to filter Subscriptions by.
type - SubscriptionTypeEnum The Subscription type to filter by. Mutually exclusive with filter_by (it can be combined with sort_by).
locale - String The locale used to resolve the Subscriptions' translated fields.
limit - Int The maximum number of Subscriptions to return.
offset - Int The number of Subscriptions to skip.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "type", "price_per_installment", "time_unit", "position", "status", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s).
project_id - Int The Project id that owns the Subscriptions.

Example

Query
query SubscriptionList(
  $search: String,
  $type: SubscriptionTypeEnum,
  $locale: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int
) {
  SubscriptionList(
    search: $search,
    type: $type,
    locale: $locale,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id
  ) {
    items {
      ...AdminSubscriptionFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "type": "svod",
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42
}
Response
{
  "data": {
    "SubscriptionList": {
      "items": [AdminSubscription],
      "pagination": Pagination
    }
  }
}

TelemetryGeoRegionSessionDay

Description

Fetch daily GeoRegion viewing-session telemetry

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
is_group_by_geo_region_code - Boolean Group the result by GeoRegion within the given date range. If set, the returned row properties "observed_at" and "julian_day" are lost. Default = true

Example

Query
query TelemetryGeoRegionSessionDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $is_group_by_geo_region_code: Boolean
) {
  TelemetryGeoRegionSessionDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    is_group_by_geo_region_code: $is_group_by_geo_region_code
  ) {
    items {
      ...AdminTelemetryGeoRegionSessionDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": true,
  "is_mock": true,
  "is_group_by_geo_region_code": true
}
Response
{
  "data": {
    "TelemetryGeoRegionSessionDay": {
      "items": [AdminTelemetryGeoRegionSessionDay],
      "pagination": Pagination
    }
  }
}

TelemetryPaymentSyndicateVoucherDay

Description

Fetch daily telemetry on PaymentSyndicateVoucher claim orders, counted per order status (paid, open, aborted, refunded, charged back).

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
payment_syndicate_voucher_id - Int The PaymentSyndicateVoucher id to restrict telemetry to. Omit (or 0) to include all PaymentSyndicateVouchers. Default = 0
purchase_origin - UserPaymentAccountOrderPurchaseOriginEnum The purchase origin platform to restrict telemetry to.

Example

Query
query TelemetryPaymentSyndicateVoucherDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $payment_syndicate_voucher_id: Int,
  $purchase_origin: UserPaymentAccountOrderPurchaseOriginEnum
) {
  TelemetryPaymentSyndicateVoucherDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    payment_syndicate_voucher_id: $payment_syndicate_voucher_id,
    purchase_origin: $purchase_origin
  ) {
    items {
      ...AdminTelemetryPaymentSyndicateVoucherDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": true,
  "is_mock": true,
  "payment_syndicate_voucher_id": 0,
  "purchase_origin": "currency"
}
Response
{
  "data": {
    "TelemetryPaymentSyndicateVoucherDay": {
      "items": [AdminTelemetryPaymentSyndicateVoucherDay],
      "pagination": Pagination
    }
  }
}

TelemetryPlatformSessionDay

Description

Fetch daily platform viewing-session telemetry

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
is_group_by_telemetry_platform - Boolean Group the result by telemetry platform within given date range. If set, the returned row properties "observed_at" and "julian_day" are lost. Default = true

Example

Query
query TelemetryPlatformSessionDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $is_group_by_telemetry_platform: Boolean
) {
  TelemetryPlatformSessionDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    is_group_by_telemetry_platform: $is_group_by_telemetry_platform
  ) {
    items {
      ...AdminTelemetryPlatformSessionDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": false,
  "is_mock": true,
  "is_group_by_telemetry_platform": true
}
Response
{
  "data": {
    "TelemetryPlatformSessionDay": {
      "items": [AdminTelemetryPlatformSessionDay],
      "pagination": Pagination
    }
  }
}

TelemetryRealTimeData

Description

Fetch the current Project snapshot of concurrent streams, active Users, and published Articles.

Response

Returns an AdminTelemetryRealTimeData

Arguments
Name Description
project_id - Int The Project id to fetch real-time telemetry for
is_mock - Boolean Whether to return mock real-time telemetry values

Example

Query
query TelemetryRealTimeData(
  $project_id: Int,
  $is_mock: Boolean
) {
  TelemetryRealTimeData(
    project_id: $project_id,
    is_mock: $is_mock
  ) {
    concurrent_stream_num
    active_user_num
    published_article_num
  }
}
Variables
{"project_id": 42, "is_mock": false}
Response
{
  "data": {
    "TelemetryRealTimeData": {
      "concurrent_stream_num": 42,
      "active_user_num": 42,
      "published_article_num": 42
    }
  }
}

TelemetrySearchTerms

Description

Fetch paginated search terms and their counts for a Project analytics search tag.

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
sort_by - [SortByInput] Sort search-term telemetry by key or value.
search_tag - AnalyticsSearchTagTypeEnum The analytics search tag to fetch search-term telemetry for.

Example

Query
query TelemetrySearchTerms(
  $project_id: Int,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $sort_by: [SortByInput],
  $search_tag: AnalyticsSearchTagTypeEnum
) {
  TelemetrySearchTerms(
    project_id: $project_id,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    sort_by: $sort_by,
    search_tag: $search_tag
  ) {
    items {
      ...StructureKeyValueIntegerPairFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "limit": 42,
  "offset": 42,
  "is_normalise": false,
  "is_mock": true,
  "sort_by": [SortByInput],
  "search_tag": "article"
}
Response
{
  "data": {
    "TelemetrySearchTerms": {
      "items": [StructureKeyValueIntegerPair],
      "pagination": Pagination
    }
  }
}

TelemetryUserActivityDay

Description

Fetch daily active User telemetry.

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
product_id - Int Currently ignored: this argument is accepted but has no effect; User activity telemetry is not broken down by Product. Default = 0
purchase_origin - UserPaymentAccountOrderPurchaseOriginEnum Currently ignored: this argument is accepted but has no effect; User activity telemetry is not broken down by purchase origin.

Example

Query
query TelemetryUserActivityDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $product_id: Int,
  $purchase_origin: UserPaymentAccountOrderPurchaseOriginEnum
) {
  TelemetryUserActivityDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    product_id: $product_id,
    purchase_origin: $purchase_origin
  ) {
    items {
      ...AdminTelemetryUserActivityDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": true,
  "is_mock": true,
  "product_id": 0,
  "purchase_origin": "currency"
}
Response
{
  "data": {
    "TelemetryUserActivityDay": {
      "items": [AdminTelemetryUserActivityDay],
      "pagination": Pagination
    }
  }
}

TelemetryUserActivityMonth

Description

Fetch monthly active User telemetry.

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true

Example

Query
query TelemetryUserActivityMonth(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean
) {
  TelemetryUserActivityMonth(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock
  ) {
    items {
      ...AdminTelemetryUserActivityMonthFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": true,
  "is_mock": true
}
Response
{
  "data": {
    "TelemetryUserActivityMonth": {
      "items": [AdminTelemetryUserActivityMonth],
      "pagination": Pagination
    }
  }
}

TelemetryUserArticleViewTimeSessionDay

Description

Fetch daily Article view-time telemetry, aggregated per Article and Asset (not per User: only the number of unique Users is reported).

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
sort_by - [SortByInput] Sort Article view-time telemetry by an allowed telemetry field.
entitlement_origin - ArticleEntitlementOriginEnum The entitlement origin to filter Article view-time telemetry by. Omit to select all origins.
entitlement_resource_id - Int The id of the Product or Subscription that provided entitlement. Omit or leave zero to select all resources.
is_group_by_article_asset - Boolean Group the result by Article and Asset within the given date range. If set, the returned row properties "observed_at" and "julian_day" are lost. Default = true

Example

Query
query TelemetryUserArticleViewTimeSessionDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $sort_by: [SortByInput],
  $entitlement_origin: ArticleEntitlementOriginEnum,
  $entitlement_resource_id: Int,
  $is_group_by_article_asset: Boolean
) {
  TelemetryUserArticleViewTimeSessionDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    sort_by: $sort_by,
    entitlement_origin: $entitlement_origin,
    entitlement_resource_id: $entitlement_resource_id,
    is_group_by_article_asset: $is_group_by_article_asset
  ) {
    items {
      ...AdminTelemetryUserArticleViewTimeSessionDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": false,
  "is_mock": true,
  "sort_by": [SortByInput],
  "entitlement_origin": "subscription",
  "entitlement_resource_id": 42,
  "is_group_by_article_asset": true
}
Response
{
  "data": {
    "TelemetryUserArticleViewTimeSessionDay": {
      "items": [
        AdminTelemetryUserArticleViewTimeSessionDay
      ],
      "pagination": Pagination
    }
  }
}

TelemetryUserPaymentOrderDay

Description

Fetch daily UserPaymentAccountOrder telemetry

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
currency - String The currency (ISO 4217 code, e.g. "EUR") of the orders to fetch telemetry for. When omitted, the Project default currency is used. Amounts of different currencies are never summed.

Example

Query
query TelemetryUserPaymentOrderDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $currency: String
) {
  TelemetryUserPaymentOrderDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    currency: $currency
  ) {
    items {
      ...AdminTelemetryUserPaymentOrderDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": true,
  "is_mock": true,
  "currency": "string"
}
Response
{
  "data": {
    "TelemetryUserPaymentOrderDay": {
      "items": [AdminTelemetryUserPaymentOrderDay],
      "pagination": Pagination
    }
  }
}

TelemetryUserProductDay

Description

Fetch daily UserProduct purchase order telemetry.

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
product_id - Int The product id for which to filter data (default 0, which aggregates over all products).
purchase_origin - UserPaymentAccountOrderPurchaseOriginEnum The purchase origin for which to filter data (default "0", which aggregates over all purchase origins).
is_group_by_product_id - Boolean Group the result by product id within given date range. If set, the returned row properties "purchase_origin", "observed_at" and "julian_day" are lost.

Example

Query
query TelemetryUserProductDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $product_id: Int,
  $purchase_origin: UserPaymentAccountOrderPurchaseOriginEnum,
  $is_group_by_product_id: Boolean
) {
  TelemetryUserProductDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    product_id: $product_id,
    purchase_origin: $purchase_origin,
    is_group_by_product_id: $is_group_by_product_id
  ) {
    items {
      ...AdminTelemetryUserProductDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": true,
  "is_mock": true,
  "product_id": 42,
  "purchase_origin": "currency",
  "is_group_by_product_id": false
}
Response
{
  "data": {
    "TelemetryUserProductDay": {
      "items": [AdminTelemetryUserProductDay],
      "pagination": Pagination
    }
  }
}

TelemetryUserSubscriptionDay

Description

Fetch daily UserSubscription telemetry: counts of UserSubscriptions per status (active, suspended, demo, expired and so on), not purchase orders.

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
subscription_id - Int The subscription id for which to filter data (default 0, which aggregates over all subscriptions).
purchase_origin - UserPaymentAccountOrderPurchaseOriginEnum The purchase origin for which to filter data (default "0", which aggregates over all purchase origins).
is_group_by_subscription_id - Boolean Group the result by subscription id within given date range. If set, the returned row properties "aggregate", "purchase_origin", "observed_at" and "julian_day" are lost.

Example

Query
query TelemetryUserSubscriptionDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $subscription_id: Int,
  $purchase_origin: UserPaymentAccountOrderPurchaseOriginEnum,
  $is_group_by_subscription_id: Boolean
) {
  TelemetryUserSubscriptionDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    subscription_id: $subscription_id,
    purchase_origin: $purchase_origin,
    is_group_by_subscription_id: $is_group_by_subscription_id
  ) {
    items {
      ...AdminTelemetryUserSubscriptionDayFragment
    }
    aggregate {
      ...AdminTelemetryUserSubscriptionDayAggregateFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": true,
  "is_mock": true,
  "subscription_id": 42,
  "purchase_origin": "currency",
  "is_group_by_subscription_id": true
}
Response
{
  "data": {
    "TelemetryUserSubscriptionDay": {
      "items": [AdminTelemetryUserSubscriptionDay],
      "aggregate": AdminTelemetryUserSubscriptionDayAggregate,
      "pagination": Pagination
    }
  }
}

TelemetryVodEncodingDay

Description

Fetch daily VOD encoding telemetry

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true

Example

Query
query TelemetryVodEncodingDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean
) {
  TelemetryVodEncodingDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock
  ) {
    items {
      ...AdminTelemetryVodEncodingDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": false,
  "is_mock": true
}
Response
{
  "data": {
    "TelemetryVodEncodingDay": {
      "items": [AdminTelemetryVodEncodingDay],
      "pagination": Pagination
    }
  }
}

TelemetryVodQualityDay

Description

Fetch daily VOD quality telemetry (error and expired-session rates)

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
geo_region_code - String Filter to a specific region cross-section; omit for the project-wide aggregate.
media_provider - String Filter to a specific media-provider cross-section; omit for the project-wide aggregate.

Example

Query
query TelemetryVodQualityDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $geo_region_code: String,
  $media_provider: String
) {
  TelemetryVodQualityDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    geo_region_code: $geo_region_code,
    media_provider: $media_provider
  ) {
    items {
      ...AdminTelemetryVodQualityDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": false,
  "is_mock": true,
  "geo_region_code": "string",
  "media_provider": "string"
}
Response
{
  "data": {
    "TelemetryVodQualityDay": {
      "items": [AdminTelemetryVodQualityDay],
      "pagination": Pagination
    }
  }
}

TelemetryVodQualityMinute

Description

Telemetry on 5-minute VOD quality (error/expired session rate)

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true
geo_region_code - String Filter to a specific region cross-section; only meaningful for a project with project.service.telemetry.quality.is_minute_full_granularity enabled, omit for the project-wide aggregate.
media_provider - String Filter to a specific media-provider cross-section; only meaningful for a project with project.service.telemetry.quality.is_minute_full_granularity enabled, omit for the project-wide aggregate.

Example

Query
query TelemetryVodQualityMinute(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean,
  $geo_region_code: String,
  $media_provider: String
) {
  TelemetryVodQualityMinute(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock,
    geo_region_code: $geo_region_code,
    media_provider: $media_provider
  ) {
    items {
      ...AdminTelemetryVodQualityMinuteFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": false,
  "is_mock": true,
  "geo_region_code": "string",
  "media_provider": "string"
}
Response
{
  "data": {
    "TelemetryVodQualityMinute": {
      "items": [AdminTelemetryVodQualityMinute],
      "pagination": Pagination
    }
  }
}

TelemetryVodStorageDay

Description

Fetch daily VOD storage telemetry

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true

Example

Query
query TelemetryVodStorageDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean
) {
  TelemetryVodStorageDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock
  ) {
    items {
      ...AdminTelemetryVodStorageDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": false,
  "is_mock": true
}
Response
{
  "data": {
    "TelemetryVodStorageDay": {
      "items": [AdminTelemetryVodStorageDay],
      "pagination": Pagination
    }
  }
}

TelemetryVodStreamingDay

Description

Fetch daily VOD streaming telemetry

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true

Example

Query
query TelemetryVodStreamingDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean
) {
  TelemetryVodStreamingDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock
  ) {
    items {
      ...AdminTelemetryVodStreamingDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": true,
  "is_mock": true
}
Response
{
  "data": {
    "TelemetryVodStreamingDay": {
      "items": [AdminTelemetryVodStreamingDay],
      "pagination": Pagination
    }
  }
}

TelemetryVodStreamingMinute

Description

Fetch five-minute VOD streaming telemetry

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true

Example

Query
query TelemetryVodStreamingMinute(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean
) {
  TelemetryVodStreamingMinute(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock
  ) {
    items {
      ...AdminTelemetryVodStreamingMinuteFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": false,
  "is_mock": true
}
Response
{
  "data": {
    "TelemetryVodStreamingMinute": {
      "items": [AdminTelemetryVodStreamingMinute],
      "pagination": Pagination
    }
  }
}

TelemetryVodStreamingUnitDay

Description

Fetch daily VOD streaming-unit telemetry

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true

Example

Query
query TelemetryVodStreamingUnitDay(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean
) {
  TelemetryVodStreamingUnitDay(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock
  ) {
    items {
      ...AdminTelemetryVodStreamingUnitDayFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": true,
  "is_mock": true
}
Response
{
  "data": {
    "TelemetryVodStreamingUnitDay": {
      "items": [AdminTelemetryVodStreamingUnitDay],
      "pagination": Pagination
    }
  }
}

TelemetryVodStreamingUnitMinute

Description

Fetch five-minute VOD streaming-unit telemetry

Arguments
Name Description
project_id - Int The Project id to fetch telemetry for
start_date - String The inclusive start date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
end_date - String The inclusive end date-time in UTC, formatted as YYYY-MM-DDTHH:MM:SSZ
date_range - DateRangeInput The date range to fetch telemetry for, instead of start_date and end_date
limit - Int The pagination limit
offset - Int The pagination offset
is_normalise - Boolean Normalise telemetry data by creating a continuous timeline with zero values where necessary; pagination data is lost
is_mock - Boolean Whether to fill the telemetry response with mock data. Default = true

Example

Query
query TelemetryVodStreamingUnitMinute(
  $project_id: Int,
  $start_date: String,
  $end_date: String,
  $date_range: DateRangeInput,
  $limit: Int,
  $offset: Int,
  $is_normalise: Boolean,
  $is_mock: Boolean
) {
  TelemetryVodStreamingUnitMinute(
    project_id: $project_id,
    start_date: $start_date,
    end_date: $end_date,
    date_range: $date_range,
    limit: $limit,
    offset: $offset,
    is_normalise: $is_normalise,
    is_mock: $is_mock
  ) {
    items {
      ...AdminTelemetryVodStreamingUnitMinuteFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "start_date": "string",
  "end_date": "string",
  "date_range": DateRangeInput,
  "limit": 42,
  "offset": 42,
  "is_normalise": false,
  "is_mock": true
}
Response
{
  "data": {
    "TelemetryVodStreamingUnitMinute": {
      "items": [AdminTelemetryVodStreamingUnitMinute],
      "pagination": Pagination
    }
  }
}

User

Description

Fetch one User for administrative account management, including the User's selected identity, access, entitlement, payment, and activity details.

Response

Returns an AdminUser

Arguments
Name Description
currency - PaymentProviderCurrencyEnum The currency to base displayed properties on, such as user_payment_currency and user_payment_currency_symbol.
id - Int The id of the User to fetch.
is_administrator - Boolean Whether this query targets an Administrator rather than a regular User.

Example

Query
query User(
  $currency: PaymentProviderCurrencyEnum,
  $id: Int,
  $is_administrator: Boolean
) {
  User(
    currency: $currency,
    id: $id,
    is_administrator: $is_administrator
  ) {
    id
    project_id
    name
    display_name
    email
    gender
    locale
    subtitle_locale
    audio_locale
    status
    address
    postal_code
    city
    country
    geo_region_code
    phone
    is_phone_verified
    birthday
    height
    weight
    custom_data
    is_newsletter_opt_in
    is_terms_and_conditions_opt_in
    is_marked_for_deletion
    delete_at
    notifiable
    max_concurrent_vod_stream_num
    user_subscription_status
    user_subscription_last_event_type
    subscription_id
    favourite_articles {
      ...ArticleRelatedFragment
    }
    nomadic_articles {
      ...ArticleRelatedFragment
    }
    history_articles {
      ...ArticleRelatedFragment
    }
    entitled_articles {
      ...ArticleRelatedFragment
    }
    entitled_root_articles {
      ...ArticleRelatedFragment
    }
    articles {
      ...ArticleRelatedFragment
    }
    latest_nomadic_article {
      ...ArticleRelatedFragment
    }
    consents {
      ...UserConsentFragment
    }
    metric_actions {
      ...MetricActionFragment
    }
    notification_profiles {
      ...UserNotificationProfileFragment
    }
    notification_topics {
      ...UserNotificationTopicFragment
    }
    user_subscriptions {
      ...AdminUserSubscriptionFragment
    }
    user_products {
      ...UserProductFragment
    }
    orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    user_payment_credit_amount
    user_payment_general_credit_amount
    user_payment_free_article_credit_amount
    user_payment_currency_amount
    user_payment_currency_symbol
    user_payment_currency
    external_user_id
    metas {
      ...AdminUserMetaFragment
    }
    managed_projects {
      ...AdminProjectFragment
    }
    recent_project {
      ...AdminProjectFragment
    }
    roles {
      ...RoleFragment
    }
    user_product_orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    payment_accounts {
      ...AdminUserPaymentAccountFragment
    }
    article_view_sessions {
      ...UserArticleSessionFragment
    }
    devices {
      ...AdminDeviceFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    created_at
    updated_at
    active_at
    credits {
      ...AdminUserPaymentCreditFragment
    }
  }
}
Variables
{"currency": "CREDIT", "id": 42, "is_administrator": true}
Response
{
  "data": {
    "User": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "display_name": "string",
      "email": "foo@example.com",
      "gender": "male",
      "locale": "string",
      "subtitle_locale": "string",
      "audio_locale": "string",
      "status": "string",
      "address": "string",
      "postal_code": "string",
      "city": "string",
      "country": "string",
      "geo_region_code": "nl",
      "phone": "string",
      "is_phone_verified": false,
      "birthday": "string",
      "height": 123.45,
      "weight": 123.45,
      "custom_data": "string",
      "is_newsletter_opt_in": true,
      "is_terms_and_conditions_opt_in": false,
      "is_marked_for_deletion": true,
      "delete_at": "2000-12-31T12:34:56.000Z",
      "notifiable": "none",
      "max_concurrent_vod_stream_num": 42,
      "user_subscription_status": "string",
      "user_subscription_last_event_type": "first_payment_error",
      "subscription_id": 42,
      "favourite_articles": [ArticleRelated],
      "nomadic_articles": [ArticleRelated],
      "history_articles": [ArticleRelated],
      "entitled_articles": [ArticleRelated],
      "entitled_root_articles": [ArticleRelated],
      "articles": [ArticleRelated],
      "latest_nomadic_article": ArticleRelated,
      "consents": [UserConsent],
      "metric_actions": [MetricAction],
      "notification_profiles": [UserNotificationProfile],
      "notification_topics": [UserNotificationTopic],
      "user_subscriptions": [AdminUserSubscription],
      "user_products": [UserProduct],
      "orders": [AdminUserPaymentAccountOrder],
      "user_payment_credit_amount": 1,
      "user_payment_general_credit_amount": 1,
      "user_payment_free_article_credit_amount": 1,
      "user_payment_currency_amount": "EUR",
      "user_payment_currency_symbol": "EUR",
      "user_payment_currency": "EUR",
      "external_user_id": "string",
      "metas": [AdminUserMeta],
      "managed_projects": [AdminProject],
      "recent_project": AdminProject,
      "roles": [Role],
      "user_product_orders": [
        AdminUserPaymentAccountOrder
      ],
      "payment_accounts": [AdminUserPaymentAccount],
      "article_view_sessions": [UserArticleSession],
      "devices": [AdminDevice],
      "activity_logs": [AdminActivityLog],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "active_at": "2000-12-31T12:34:56.000Z",
      "credits": [AdminUserPaymentCredit]
    }
  }
}

UserArticleList

Description

Fetch a paginated list of UserArticle records, which represent the nomadic play state per User, per Article, per Asset.

Arguments
Name Description
project_id - Int The Project id to list UserArticle records for.
limit - Int The maximum number of UserArticle records to return.
offset - Int The number of UserArticle records to skip.
sort_by - [SortByInput] Sort and order by field(s): "id", "user_id", "article_id", "asset_id", "device_type", "entitlement_origin", "entitlement_resource_id", "is_favourite", "is_continue", "rating_value", "is_progress_marker1_completed", "is_progress_marker2_completed", "is_progress_marker3_completed", "completed_at", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s). Allowed fields: "id", "user_id", "article_id", "asset_id", "device_type", "entitlement_origin", "entitlement_resource_id", "is_favourite", "is_continue", "rating_value", "is_progress_marker1_completed", "is_progress_marker2_completed", "is_progress_marker3_completed", "completed_at", "created_at", "updated_at"

Example

Query
query UserArticleList(
  $project_id: Int,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput]
) {
  UserArticleList(
    project_id: $project_id,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by
  ) {
    items {
      ...AdminUserArticleFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput]
}
Response
{
  "data": {
    "UserArticleList": {
      "items": [AdminUserArticle],
      "pagination": Pagination
    }
  }
}

UserArticleSessionList

Description

Fetch a paginated list of UserArticleSession records: individual play-session pulses (view-time deltas, playback quality, device and geo context) logged per User, per Article, per Asset, not the nomadic play state itself.

Arguments
Name Description
project_id - Int The Project id to list UserArticleSession records for.
limit - Int The maximum number of UserArticleSession records to return.
offset - Int The number of UserArticleSession records to skip.
sort_by - [SortByInput] Sort and order by field(s): "id", "user_id", "asset_id", "device_type", "telemetry_platform", "started_at", "completed_at", "created_at", "updated_at"
filter_by - [FilterByInput] Filter by field(s). Allowed fields: "id", "user_id", "asset_id", "device_type", "telemetry_platform", "started_at", "completed_at", "created_at", "updated_at"

Example

Query
query UserArticleSessionList(
  $project_id: Int,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput]
) {
  UserArticleSessionList(
    project_id: $project_id,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by
  ) {
    items {
      ...AdminUserArticleSessionFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput]
}
Response
{
  "data": {
    "UserArticleSessionList": {
      "items": [AdminUserArticleSession],
      "pagination": Pagination
    }
  }
}

UserDetails

Description

Fetch the current authenticated administrator's own account details, including the administrator's Roles, managed Projects, and profile settings.

Response

Returns an AdminUserDetails

Example

Query
query UserDetails {
  UserDetails {
    id
    project_id
    name
    display_name
    email
    gender
    locale
    subtitle_locale
    audio_locale
    status
    address
    postal_code
    city
    country
    geo_region_code
    phone
    is_phone_verified
    birthday
    height
    weight
    custom_data
    is_newsletter_opt_in
    is_terms_and_conditions_opt_in
    is_marked_for_deletion
    delete_at
    notifiable
    max_concurrent_vod_stream_num
    user_subscription_status
    user_subscription_last_event_type
    subscription_id
    favourite_articles {
      ...ArticleRelatedFragment
    }
    nomadic_articles {
      ...ArticleRelatedFragment
    }
    history_articles {
      ...ArticleRelatedFragment
    }
    entitled_articles {
      ...ArticleRelatedFragment
    }
    entitled_root_articles {
      ...ArticleRelatedFragment
    }
    articles {
      ...ArticleRelatedFragment
    }
    latest_nomadic_article {
      ...ArticleRelatedFragment
    }
    consents {
      ...UserConsentFragment
    }
    metric_actions {
      ...MetricActionFragment
    }
    notification_profiles {
      ...UserNotificationProfileFragment
    }
    notification_topics {
      ...UserNotificationTopicFragment
    }
    user_subscriptions {
      ...UserSubscriptionFragment
    }
    user_products {
      ...UserProductFragment
    }
    orders {
      ...UserPaymentAccountOrderFragment
    }
    user_payment_credit_amount
    user_payment_general_credit_amount
    user_payment_free_article_credit_amount
    user_payment_currency_amount
    user_payment_currency_symbol
    user_payment_currency
    is_terms_and_conditions_renewal_required
    terms_and_conditions_accepted_at
    metas {
      ...AdminUserMetaFragment
    }
    managed_projects {
      ...AdminProjectFragment
    }
    managed_roles {
      ...RoleFragment
    }
    recent_project {
      ...AdminProjectFragment
    }
    roles {
      ...RoleFragment
    }
  }
}
Response
{
  "data": {
    "UserDetails": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "display_name": "string",
      "email": "foo@example.com",
      "gender": "male",
      "locale": "string",
      "subtitle_locale": "string",
      "audio_locale": "string",
      "status": "string",
      "address": "string",
      "postal_code": "string",
      "city": "string",
      "country": "string",
      "geo_region_code": "nl",
      "phone": "string",
      "is_phone_verified": false,
      "birthday": "string",
      "height": 987.65,
      "weight": 123.45,
      "custom_data": "string",
      "is_newsletter_opt_in": true,
      "is_terms_and_conditions_opt_in": false,
      "is_marked_for_deletion": true,
      "delete_at": "2000-12-31T12:34:56.000Z",
      "notifiable": "none",
      "max_concurrent_vod_stream_num": 42,
      "user_subscription_status": "string",
      "user_subscription_last_event_type": "first_payment_error",
      "subscription_id": 42,
      "favourite_articles": [ArticleRelated],
      "nomadic_articles": [ArticleRelated],
      "history_articles": [ArticleRelated],
      "entitled_articles": [ArticleRelated],
      "entitled_root_articles": [ArticleRelated],
      "articles": [ArticleRelated],
      "latest_nomadic_article": ArticleRelated,
      "consents": [UserConsent],
      "metric_actions": [MetricAction],
      "notification_profiles": [UserNotificationProfile],
      "notification_topics": [UserNotificationTopic],
      "user_subscriptions": [UserSubscription],
      "user_products": [UserProduct],
      "orders": [UserPaymentAccountOrder],
      "user_payment_credit_amount": 1,
      "user_payment_general_credit_amount": 1,
      "user_payment_free_article_credit_amount": 1,
      "user_payment_currency_amount": "EUR",
      "user_payment_currency_symbol": "EUR",
      "user_payment_currency": "EUR",
      "is_terms_and_conditions_renewal_required": false,
      "terms_and_conditions_accepted_at": "2000-12-31T12:34:56.000Z",
      "metas": [AdminUserMeta],
      "managed_projects": [AdminProject],
      "managed_roles": [Role],
      "recent_project": AdminProject,
      "roles": [Role]
    }
  }
}

UserList

Description

Fetch a Project's paginated list of Users for administrative account management, with optional search, Role, subscription-status, and administrator filters.

Response

Returns an AdminUsersListedWithPagination

Arguments
Name Description
search - String A search string to filter Users by. Mutually exclusive with user_ids.
locale - String Filter Users on their own locale (exact match on the User's locale property).
limit - Int The maximum number of Users to return.
offset - Int The number of Users to skip.
user_ids - [Int] The User ids to fetch. Mutually exclusive with search.
sort_by - [SortByInput] Sort and order by field(s): "id", "name", "email", "active_at", "created_at", "updated_at", "subscription_id", "user_subscription_status", "user_subscription_last_event_type"
filter_by - [FilterByInput] Filter by field(s).
project_id - Int The Project id that owns the Users.
roles - [Int] The Role ids to filter Users on (matches any).
is_administrator - Boolean Whether to restrict the list to administrative Users: those holding the Administrator or Moderator Role.
user_subscription_status - UserSubscriptionStatusEnum Currently ignored: this argument is accepted but has no effect. Use filter_by with "user_subscription_status" to filter Users on UserSubscription status.

Example

Query
query UserList(
  $search: String,
  $locale: String,
  $limit: Int,
  $offset: Int,
  $user_ids: [Int],
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int,
  $roles: [Int],
  $is_administrator: Boolean,
  $user_subscription_status: UserSubscriptionStatusEnum
) {
  UserList(
    search: $search,
    locale: $locale,
    limit: $limit,
    offset: $offset,
    user_ids: $user_ids,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id,
    roles: $roles,
    is_administrator: $is_administrator,
    user_subscription_status: $user_subscription_status
  ) {
    items {
      ...AdminUserFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "user_ids": [42],
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42,
  "roles": [42],
  "is_administrator": true,
  "user_subscription_status": "initialised"
}
Response
{
  "data": {
    "UserList": {
      "items": [AdminUser],
      "pagination": Pagination
    }
  }
}

UserPaymentAccountOrder

Description

Fetch one UserPaymentAccountOrder for administrative payment-ledger inspection, including its User, PaymentProvider transaction reference, installments, purchased Products, and fulfilment status.

Response

Returns an AdminUserPaymentAccountOrder

Arguments
Name Description
id - Int The id of the UserPaymentAccountOrder to fetch.

Example

Query
query UserPaymentAccountOrder($id: Int) {
  UserPaymentAccountOrder(id: $id) {
    id
    user_id
    user_subscription_id
    payment_syndicate_voucher_id
    voucher_code
    type
    recurring_type
    discount_type
    payment_provider_type
    amount
    status
    status_name
    description
    installed_at
    paid_at
    cancelled_at
    refunded_at
    created_at
    updated_at
    installments {
      ...AdminUserPaymentAccountOrderInstallmentFragment
    }
    currency
    currency_symbol
    user {
      ...AdminUserFragment
    }
    user_payment_account_id
    remote_payment_order_id
    remote_payment_user_id
    amount_balance_mutation
    amount_remote_mutation
    payment_url
    method
    method_details
    ip_address
    geo_region_code
    origin
    purchase_origin
    server_origin
    is_refundable
    metadata
    receipt_data
    invoice_data
    account {
      ...AdminUserPaymentAccountFragment
    }
    user_subscription {
      ...AdminUserSubscriptionFragment
    }
    products {
      ...AdminProductListedAsRelationFragment
    }
    user_subscription_products {
      ...AdminUserSubscriptionProductFragment
    }
    categories {
      ...AdminCategoryFragment
    }
  }
}
Variables
{"id": 42}
Response
{
  "data": {
    "UserPaymentAccountOrder": {
      "id": 42,
      "user_id": 42,
      "user_subscription_id": "string",
      "payment_syndicate_voucher_id": 42,
      "voucher_code": "string",
      "type": "string",
      "recurring_type": "string",
      "discount_type": "string",
      "payment_provider_type": "string",
      "amount": 123.45,
      "status": "string",
      "status_name": "string",
      "description": "string",
      "installed_at": "2000-12-31T12:34:56.000Z",
      "paid_at": "2000-12-31T12:34:56.000Z",
      "cancelled_at": "2000-12-31T12:34:56.000Z",
      "refunded_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "installments": [
        AdminUserPaymentAccountOrderInstallment
      ],
      "currency": "EUR",
      "currency_symbol": "EUR",
      "user": AdminUser,
      "user_payment_account_id": 42,
      "remote_payment_order_id": "string",
      "remote_payment_user_id": "string",
      "amount_balance_mutation": "string",
      "amount_remote_mutation": "string",
      "payment_url": "https://url.example.com",
      "method": "string",
      "method_details": "string",
      "ip_address": "string",
      "geo_region_code": "nl",
      "origin": "string",
      "purchase_origin": "string",
      "server_origin": "string",
      "is_refundable": true,
      "metadata": "string",
      "receipt_data": "string",
      "invoice_data": "string",
      "account": AdminUserPaymentAccount,
      "user_subscription": AdminUserSubscription,
      "products": [AdminProductListedAsRelation],
      "user_subscription_products": [
        AdminUserSubscriptionProduct
      ],
      "categories": [AdminCategory]
    }
  }
}

UserPaymentAccountOrderList

Description

List a Project's UserPaymentAccountOrders for administrative payment-ledger inspection, optionally limited to one User and filtered by order attributes.

Arguments
Name Description
search - String Search UserPaymentAccountOrders.
type - UserPaymentAccountOrderTypeEnum Filter by UserPaymentAccountOrder type.
status - UserPaymentAccountOrderStatusEnum Filter by payment status.
purchase_origin - UserPaymentAccountOrderPurchaseOriginEnum Filter by purchase origin.
locale - String The locale to activate while resolving translated order-related fields.
limit - Int Maximum number of UserPaymentAccountOrders to return.
offset - Int Number of matching UserPaymentAccountOrders to skip before returning results.
sort_by - [SortByInput] Sort UserPaymentAccountOrders by one or more allowed fields: "id", "user_id", "amount", "amount_balance_mutation", "currency", "type", "recurring_type", "method", "status", "purchase_origin", "installed_at", "cancelled_at", "paid_at", "refunded_at", "created_at", "updated_at".
filter_by - [FilterByInput] Filter UserPaymentAccountOrders by one or more allowed fields.
project_id - Int The Project id that owns the Users whose orders are listed.
user_id - Int The id of the User to list payment orders for.

Example

Query
query UserPaymentAccountOrderList(
  $search: String,
  $type: UserPaymentAccountOrderTypeEnum,
  $status: UserPaymentAccountOrderStatusEnum,
  $purchase_origin: UserPaymentAccountOrderPurchaseOriginEnum,
  $locale: String,
  $limit: Int,
  $offset: Int,
  $sort_by: [SortByInput],
  $filter_by: [FilterByInput],
  $project_id: Int,
  $user_id: Int
) {
  UserPaymentAccountOrderList(
    search: $search,
    type: $type,
    status: $status,
    purchase_origin: $purchase_origin,
    locale: $locale,
    limit: $limit,
    offset: $offset,
    sort_by: $sort_by,
    filter_by: $filter_by,
    project_id: $project_id,
    user_id: $user_id
  ) {
    items {
      ...AdminUserPaymentAccountOrderFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "search": "string",
  "type": "svod",
  "status": "open",
  "purchase_origin": "currency",
  "locale": "string",
  "limit": 42,
  "offset": 42,
  "sort_by": [SortByInput],
  "filter_by": [FilterByInput],
  "project_id": 42,
  "user_id": 42
}
Response
{
  "data": {
    "UserPaymentAccountOrderList": {
      "items": [AdminUserPaymentAccountOrder],
      "pagination": Pagination
    }
  }
}

Mutations

ArticleArticleSort

Description

Reposition a recommended Article within another Article's recommended_articles list.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Article whose recommended_articles list is being resorted.
recommended_article_id - Int The id of the recommended Article being repositioned within the list.
pivot_id - Int The id of the sibling recommended Article to position relative to (see pivot_action).
pivot_action - SortPivotActionEnum Whether to position recommended_article_id directly before or after pivot_id.

Example

Query
mutation ArticleArticleSort(
  $id: Int,
  $recommended_article_id: Int,
  $pivot_id: Int,
  $pivot_action: SortPivotActionEnum
) {
  ArticleArticleSort(
    id: $id,
    recommended_article_id: $recommended_article_id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action
  )
}
Variables
{
  "id": 42,
  "recommended_article_id": 42,
  "pivot_id": 42,
  "pivot_action": "before"
}
Response
{"data": {"ArticleArticleSort": false}}

ArticleAssetPlay

Description

Create a play-out configuration for an Article's Asset, including Article-specific context such as playback position, locale preferences, and upsell products. On this Admin schema, playback is not gated by any particular User's actual purchase/entitlement status or by the Asset's playability window; Admin authentication bypasses those checks entirely (they are enforced only on the User schema's ArticleAssetPlay/ClientUserArticleAssetPlay).

Response

Returns an AdminArticleAssetPlay

Arguments
Name Description
article_id - Int The id of the Article to create a play configuration for.
asset_id - Int The id of the Asset to create a play configuration for.
protocols - [ArticlePlayProtocolEnum] The streaming protocols to be included in the play configuration
resolution - ArticlePlayResolutionEnum Force a given video resolution in the play configuration to create a single-bitrate stream (i.e. non-adaptive stream with single-bitrate/resolution)
resolution_max - ArticlePlayResolutionEnum Configure a maximum video resolution for the play configuration (i.e. adaptive stream with maximum bitrate/resolution)
audio_quality_max - ArticlePlayAudioQualityEnum Configure a maximum audio quality for the play configuration
is_proxy_hls_manifest - Boolean Force the manifest to be proxied e.g. in order to inject a subtitle track (only enforced for non-live streams)
is_include_subtitles_in_manifest - Boolean Force the inclusion of subtitle tracks in the manifest (only enforced if "is_proxy_hls_manifest" is true). Default = true
is_offline_download - Boolean Request a play configuration for off-line playback (i.e. in-app download, only available for non-live streams). Default = false
manifest_audio_track_filter - String Configure a specific audio filter for the play configuration. Default = ""
platform_context - PlatformContextEnum Define the appropriate platform context for the play configuration (default WEB). Default = web
device_model_context - DeviceModelContextEnum Define the appropriate device model context for the play configuration

Example

Query
mutation ArticleAssetPlay(
  $article_id: Int,
  $asset_id: Int,
  $protocols: [ArticlePlayProtocolEnum],
  $resolution: ArticlePlayResolutionEnum,
  $resolution_max: ArticlePlayResolutionEnum,
  $audio_quality_max: ArticlePlayAudioQualityEnum,
  $is_proxy_hls_manifest: Boolean,
  $is_include_subtitles_in_manifest: Boolean,
  $is_offline_download: Boolean,
  $manifest_audio_track_filter: String,
  $platform_context: PlatformContextEnum,
  $device_model_context: DeviceModelContextEnum
) {
  ArticleAssetPlay(
    article_id: $article_id,
    asset_id: $asset_id,
    protocols: $protocols,
    resolution: $resolution,
    resolution_max: $resolution_max,
    audio_quality_max: $audio_quality_max,
    is_proxy_hls_manifest: $is_proxy_hls_manifest,
    is_include_subtitles_in_manifest: $is_include_subtitles_in_manifest,
    is_offline_download: $is_offline_download,
    manifest_audio_track_filter: $manifest_audio_track_filter,
    platform_context: $platform_context,
    device_model_context: $device_model_context
  ) {
    article_id
    asset_id
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    linked_type
    subtitles {
      ...FileFragment
    }
    entitlements {
      ...ArticleAssetPlayEntitlementFragment
    }
    upsell_products {
      ...ProductListedAsRelationFragment
    }
    appa
    appr
    pulse_updated_at
    pulse_token
    concurrent_user_num
    fairplay_certificate_url
    user_subtitle_locale
    user_audio_locale
    issued_at
  }
}
Variables
{
  "article_id": 42,
  "asset_id": 42,
  "protocols": ["hls"],
  "resolution": "w3840_h2160",
  "resolution_max": "w3840_h2160",
  "audio_quality_max": "audio_512kb",
  "is_proxy_hls_manifest": true,
  "is_include_subtitles_in_manifest": true,
  "is_offline_download": false,
  "manifest_audio_track_filter": "",
  "platform_context": "web",
  "device_model_context": "apple_native"
}
Response
{
  "data": {
    "ArticleAssetPlay": {
      "article_id": 42,
      "asset_id": 42,
      "time_marker_intro_start": 987.65,
      "time_marker_intro_end": 123.45,
      "time_marker_end": 123.45,
      "duration": 123.45,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "linked_type": "film",
      "subtitles": [File],
      "entitlements": [ArticleAssetPlayEntitlement],
      "upsell_products": [ProductListedAsRelation],
      "appa": 123.45,
      "appr": 0.246,
      "pulse_updated_at": "2000-12-31T12:34:56.000Z",
      "pulse_token": "string",
      "concurrent_user_num": 42,
      "fairplay_certificate_url": "https://url.example.com",
      "user_subtitle_locale": "string",
      "user_audio_locale": "string",
      "issued_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

ArticleClone

Description

Clone an existing Article as a starting point for a new Article.

Response

Returns an AdminArticle

Arguments
Name Description
id - Int The id of the Article which should be cloned.
name - String The new, unique name for the cloned Article.
parent_id - Int The optional id of the Article under which the cloned Article should be placed (its type will automatically be adjusted, e.g. under a "season" each Article should have type "episode").

Example

Query
mutation ArticleClone(
  $id: Int,
  $name: String,
  $parent_id: Int
) {
  ArticleClone(
    id: $id,
    name: $name,
    parent_id: $parent_id
  ) {
    id
    project_id
    parent_id
    name
    url_slug
    full_url_slug
    canonical_url
    canonical_title
    episode_list_display_type
    upsell_product_call_to_action_tag
    ribbon_title
    ribbon_settings
    type
    metas {
      ...AdminArticleMetaFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    assets {
      ...AdminAssetFragment
    }
    categories {
      ...AdminCategoryFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    locale_regions {
      ...LocaleRegionFragment
    }
    products {
      ...AdminProductFragment
    }
    upsell_products {
      ...AdminProductFragment
    }
    created_at
    updated_at
    popularity_index
    visibility
    discoverability
    is_downloadable
    is_auth_required
    published_at
    linked_asset_playable_from
    status
    is_auto_generate_recommendations
    is_show_in_all_geo_regions
    generic_url
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    canonical_title_translations {
      ...TranslationFragment
    }
    upsell_product_call_to_action_tag_translations {
      ...TranslationFragment
    }
    ribbon_title_translations {
      ...TranslationFragment
    }
    children {
      ...AdminArticleFragment
    }
    recommended_articles {
      ...AdminArticleFragment
    }
    featured_on_categories {
      ...AdminCategoryFragment
    }
    files {
      ...FileFragment
    }
    entitling_subscriptions {
      ...AdminSubscriptionFragment
    }
    published_from
    published_until
  }
}
Variables
{
  "id": 42,
  "name": "string",
  "parent_id": 42
}
Response
{
  "data": {
    "ArticleClone": {
      "id": 42,
      "project_id": 42,
      "parent_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "canonical_title": "string",
      "episode_list_display_type": "string",
      "upsell_product_call_to_action_tag": "string",
      "ribbon_title": "string",
      "ribbon_settings": "string",
      "type": "episode",
      "metas": [AdminArticleMeta],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "assets": [AdminAsset],
      "categories": [AdminCategory],
      "geo_regions": [GeoRegion],
      "locale_regions": [LocaleRegion],
      "products": [AdminProduct],
      "upsell_products": [AdminProduct],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "popularity_index": 42,
      "visibility": "everyone",
      "discoverability": "hidden",
      "is_downloadable": false,
      "is_auth_required": true,
      "published_at": "2000-12-31T12:34:56.000Z",
      "linked_asset_playable_from": "string",
      "status": "string",
      "is_auto_generate_recommendations": false,
      "is_show_in_all_geo_regions": true,
      "generic_url": "https://url.example.com",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "canonical_title_translations": [Translation],
      "upsell_product_call_to_action_tag_translations": [
        Translation
      ],
      "ribbon_title_translations": [Translation],
      "children": [AdminArticle],
      "recommended_articles": [AdminArticle],
      "featured_on_categories": [AdminCategory],
      "files": [File],
      "entitling_subscriptions": [AdminSubscription],
      "published_from": "string",
      "published_until": "string"
    }
  }
}

ArticleCreate

Description

Create an Article and optionally configure its content, hierarchy, and access relations.

Response

Returns an AdminArticle

Arguments
Name Description
name - String The Article's name.
parent_id - Int The id of the parent Article, for a hierarchical Article (e.g. an episode's season, a season's series).
type - ArticleTypeEnum The Article's type (e.g. film, trailer, episode). Default = video
episode_list_display_type - ArticleEpisodeListDisplayTypeEnum How child episodes are displayed for a season-type Article.
url_slug - [TranslationInput] A per-locale translation list for the Article's url slug.
full_url_slug - [TranslationInput] A per-locale translation list for the Article's full (hierarchical) url slug.
canonical_url - [TranslationInput] A per-locale translation list for the Article's canonical url.
canonical_title - [TranslationInput] A per-locale translation list for the Article's canonical title.
upsell_product_call_to_action_tag - [TranslationInput] A per-locale translation list for the call-to-action tag shown alongside the Article's upsell Products.
ribbon_title - [TranslationInput] A per-locale translation list for the Article thumbnail's ribbon title.
ribbon_settings - String Style settings (JSON) for the Article thumbnail's ribbon.
locale - String The locale to resolve/write this Article's translatable fields in.
metas - [ArticleMetaInput] SEO/metadata key-value entries to associate with the Article.
assets - [ArticleAssetInput] Assets to link to the Article, replacing its current set of linked Assets.
categories - [Int] Category ids to associate the Article with, replacing its current set.
recommended_articles - [Int] Article ids to recommend alongside this Article, replacing its current set.
geo_regions - [Int] Geo region ids to restrict the Article's availability to, replacing its current set.
locale_regions - [Int] Locale region ids to restrict the Article's availability to, replacing its current set.
products - [Int] Product ids to associate with the Article, replacing its current set.
upsell_products - [Int] Product ids to offer as upsells alongside the Article, replacing its current set.
visibility - ResourceVisibilityEnum The Article's own visibility as a resource (e.g. whether its detail page is displayable), independent of whether its linked Asset is playable or entitled (default: everyone). Default = everyone
discoverability - ArticleDiscoverabilityEnum The Article's discoverability (e.g. whether it appears in search/listings).
is_downloadable - Boolean Whether the Article is available for in-app download.
is_auto_generate_recommendations - Boolean Auto-generate recommended Articles for this Article, instead of manually moderating recommended_articles.
is_show_in_all_geo_regions - Boolean Show the Article in all geo-regions, regardless of geo_regions (default: true). Default = true
is_enforce_lowercase_urls - Boolean Enforce all url/slug values in this mutation to be processed as lowercase (recommended, default: true). Default = true
status - Int The Article's status.
published_from - String Publish-from date (UTC) for the Article.
published_until - String Publish-until date (UTC) for the Article.
project_id - Int The Project id that will own the Article.

Example

Query
mutation ArticleCreate(
  $name: String,
  $parent_id: Int,
  $type: ArticleTypeEnum,
  $episode_list_display_type: ArticleEpisodeListDisplayTypeEnum,
  $url_slug: [TranslationInput],
  $full_url_slug: [TranslationInput],
  $canonical_url: [TranslationInput],
  $canonical_title: [TranslationInput],
  $upsell_product_call_to_action_tag: [TranslationInput],
  $ribbon_title: [TranslationInput],
  $ribbon_settings: String,
  $locale: String,
  $metas: [ArticleMetaInput],
  $assets: [ArticleAssetInput],
  $categories: [Int],
  $recommended_articles: [Int],
  $geo_regions: [Int],
  $locale_regions: [Int],
  $products: [Int],
  $upsell_products: [Int],
  $visibility: ResourceVisibilityEnum,
  $discoverability: ArticleDiscoverabilityEnum,
  $is_downloadable: Boolean,
  $is_auto_generate_recommendations: Boolean,
  $is_show_in_all_geo_regions: Boolean,
  $is_enforce_lowercase_urls: Boolean,
  $status: Int,
  $published_from: String,
  $published_until: String,
  $project_id: Int
) {
  ArticleCreate(
    name: $name,
    parent_id: $parent_id,
    type: $type,
    episode_list_display_type: $episode_list_display_type,
    url_slug: $url_slug,
    full_url_slug: $full_url_slug,
    canonical_url: $canonical_url,
    canonical_title: $canonical_title,
    upsell_product_call_to_action_tag: $upsell_product_call_to_action_tag,
    ribbon_title: $ribbon_title,
    ribbon_settings: $ribbon_settings,
    locale: $locale,
    metas: $metas,
    assets: $assets,
    categories: $categories,
    recommended_articles: $recommended_articles,
    geo_regions: $geo_regions,
    locale_regions: $locale_regions,
    products: $products,
    upsell_products: $upsell_products,
    visibility: $visibility,
    discoverability: $discoverability,
    is_downloadable: $is_downloadable,
    is_auto_generate_recommendations: $is_auto_generate_recommendations,
    is_show_in_all_geo_regions: $is_show_in_all_geo_regions,
    is_enforce_lowercase_urls: $is_enforce_lowercase_urls,
    status: $status,
    published_from: $published_from,
    published_until: $published_until,
    project_id: $project_id
  ) {
    id
    project_id
    parent_id
    name
    url_slug
    full_url_slug
    canonical_url
    canonical_title
    episode_list_display_type
    upsell_product_call_to_action_tag
    ribbon_title
    ribbon_settings
    type
    metas {
      ...AdminArticleMetaFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    assets {
      ...AdminAssetFragment
    }
    categories {
      ...AdminCategoryFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    locale_regions {
      ...LocaleRegionFragment
    }
    products {
      ...AdminProductFragment
    }
    upsell_products {
      ...AdminProductFragment
    }
    created_at
    updated_at
    popularity_index
    visibility
    discoverability
    is_downloadable
    is_auth_required
    published_at
    linked_asset_playable_from
    status
    is_auto_generate_recommendations
    is_show_in_all_geo_regions
    generic_url
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    canonical_title_translations {
      ...TranslationFragment
    }
    upsell_product_call_to_action_tag_translations {
      ...TranslationFragment
    }
    ribbon_title_translations {
      ...TranslationFragment
    }
    children {
      ...AdminArticleFragment
    }
    recommended_articles {
      ...AdminArticleFragment
    }
    featured_on_categories {
      ...AdminCategoryFragment
    }
    files {
      ...FileFragment
    }
    entitling_subscriptions {
      ...AdminSubscriptionFragment
    }
    published_from
    published_until
  }
}
Variables
{
  "name": "string",
  "parent_id": 42,
  "type": "video",
  "episode_list_display_type": "grid",
  "url_slug": [TranslationInput],
  "full_url_slug": [TranslationInput],
  "canonical_url": [TranslationInput],
  "canonical_title": [TranslationInput],
  "upsell_product_call_to_action_tag": [TranslationInput],
  "ribbon_title": [TranslationInput],
  "ribbon_settings": "string",
  "locale": "string",
  "metas": [ArticleMetaInput],
  "assets": [ArticleAssetInput],
  "categories": [42],
  "recommended_articles": [42],
  "geo_regions": [42],
  "locale_regions": [42],
  "products": [42],
  "upsell_products": [42],
  "visibility": "everyone",
  "discoverability": "hidden",
  "is_downloadable": false,
  "is_auto_generate_recommendations": false,
  "is_show_in_all_geo_regions": true,
  "is_enforce_lowercase_urls": true,
  "status": 42,
  "published_from": "string",
  "published_until": "string",
  "project_id": 42
}
Response
{
  "data": {
    "ArticleCreate": {
      "id": 42,
      "project_id": 42,
      "parent_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "canonical_title": "string",
      "episode_list_display_type": "string",
      "upsell_product_call_to_action_tag": "string",
      "ribbon_title": "string",
      "ribbon_settings": "string",
      "type": "episode",
      "metas": [AdminArticleMeta],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "assets": [AdminAsset],
      "categories": [AdminCategory],
      "geo_regions": [GeoRegion],
      "locale_regions": [LocaleRegion],
      "products": [AdminProduct],
      "upsell_products": [AdminProduct],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "popularity_index": 42,
      "visibility": "everyone",
      "discoverability": "hidden",
      "is_downloadable": false,
      "is_auth_required": true,
      "published_at": "2000-12-31T12:34:56.000Z",
      "linked_asset_playable_from": "string",
      "status": "string",
      "is_auto_generate_recommendations": false,
      "is_show_in_all_geo_regions": true,
      "generic_url": "https://url.example.com",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "canonical_title_translations": [Translation],
      "upsell_product_call_to_action_tag_translations": [
        Translation
      ],
      "ribbon_title_translations": [Translation],
      "children": [AdminArticle],
      "recommended_articles": [AdminArticle],
      "featured_on_categories": [AdminCategory],
      "files": [File],
      "entitling_subscriptions": [AdminSubscription],
      "published_from": "string",
      "published_until": "string"
    }
  }
}

ArticleDelete

Description

Permanently delete an existing Article and its files.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Article to delete.

Example

Query
mutation ArticleDelete($id: Int) {
  ArticleDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"ArticleDelete": true}}

ArticleFileDelete

Description

Delete a File attached to an Article.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
article_id - Int The id of the Article this File belongs to.

Example

Query
mutation ArticleFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $article_id: Int
) {
  ArticleFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    article_id: $article_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "article_id": 42
}
Response
{"data": {"ArticleFileDelete": true}}

ArticleMetaDelete

Description

Delete one of an Article's SEO/metadata key-value entries.

Response

Returns a Boolean

Arguments
Name Description
article_id - Int The id of the Article this meta entry belongs to.
key - String The meta key to delete (e.g. "parental", a SEO field name, or any other project-defined key).

Example

Query
mutation ArticleMetaDelete(
  $article_id: Int,
  $key: String
) {
  ArticleMetaDelete(
    article_id: $article_id,
    key: $key
  )
}
Variables
{"article_id": 42, "key": "string"}
Response
{"data": {"ArticleMetaDelete": true}}

ArticleNodeUpdate

Description

Reposition an Article within its hierarchy (before/after a sibling, or as the last child of another Article), automatically adjusting its type to match its new position (e.g. an Article moved under a "season" becomes an "episode"). Moving under another Article requires that Article to be a "series" or a "season", otherwise it fails with a conflict.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the resource being repositioned in the tree.
pivot_id - Int The id of the sibling/parent resource to position relative to (see pivot_action).
pivot_action - NodePivotActionEnum Where to place id relative to pivot_id (before it, after it, or as its child).

Example

Query
mutation ArticleNodeUpdate(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: NodePivotActionEnum
) {
  ArticleNodeUpdate(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "after"}
Response
{"data": {"ArticleNodeUpdate": false}}

ArticleUpdate

Description

Update an existing Article's content, hierarchy, publication, and access configuration.

Response

Returns an AdminArticle

Arguments
Name Description
name - String The Article's name.
parent_id - Int The id of the parent Article, for a hierarchical Article (e.g. an episode's season, a season's series).
type - ArticleTypeEnum The Article's type (e.g. film, trailer, episode).
episode_list_display_type - ArticleEpisodeListDisplayTypeEnum How child episodes are displayed for a season-type Article.
url_slug - [TranslationInput] A per-locale translation list for the Article's url slug.
full_url_slug - [TranslationInput] A per-locale translation list for the Article's full (hierarchical) url slug.
canonical_url - [TranslationInput] A per-locale translation list for the Article's canonical url.
canonical_title - [TranslationInput] A per-locale translation list for the Article's canonical title.
upsell_product_call_to_action_tag - [TranslationInput] A per-locale translation list for the call-to-action tag shown alongside the Article's upsell Products.
ribbon_title - [TranslationInput] A per-locale translation list for the Article thumbnail's ribbon title.
ribbon_settings - String Style settings (JSON) for the Article thumbnail's ribbon.
locale - String The locale to resolve/write this Article's translatable fields in.
files - [ArticleFileInput] Metadata (type, duration, locale) of Files already attached to the Article (e.g. icons, images, posters, videos, documents), updated in place by id. This does not attach new Files.
metas - [ArticleMetaInput] SEO/metadata key-value entries to associate with the Article.
assets - [ArticleAssetInput] Assets to link to the Article, replacing its current set of linked Assets.
categories - [Int] Category ids to associate the Article with, replacing its current set.
recommended_articles - [Int] Article ids to recommend alongside this Article, replacing its current set.
geo_regions - [Int] Geo region ids to restrict the Article's availability to, replacing its current set.
locale_regions - [Int] Locale region ids to restrict the Article's availability to, replacing its current set.
products - [Int] Product ids to associate with the Article, replacing its current set.
upsell_products - [Int] Product ids to offer as upsells alongside the Article, replacing its current set.
visibility - ResourceVisibilityEnum The Article's own visibility as a resource (e.g. whether its detail page is displayable), independent of whether its linked Asset is playable or entitled.
discoverability - ArticleDiscoverabilityEnum The Article's discoverability (e.g. whether it appears in search/listings).
is_downloadable - Boolean Whether the Article is available for in-app download.
is_auto_generate_recommendations - Boolean Auto-generate recommended Articles for this Article, instead of manually moderating recommended_articles.
is_show_in_all_geo_regions - Boolean Show the Article in all geo-regions, regardless of geo_regions (default: true). Default = true
is_enforce_lowercase_urls - Boolean Enforce all url/slug values in this mutation to be processed as lowercase (recommended, default: true). Default = true
status - Int The Article's status.
published_from - String Publish-from date (UTC) for the Article.
published_until - String Publish-until date (UTC) for the Article.
id - Int The id of the Article to update.

Example

Query
mutation ArticleUpdate(
  $name: String,
  $parent_id: Int,
  $type: ArticleTypeEnum,
  $episode_list_display_type: ArticleEpisodeListDisplayTypeEnum,
  $url_slug: [TranslationInput],
  $full_url_slug: [TranslationInput],
  $canonical_url: [TranslationInput],
  $canonical_title: [TranslationInput],
  $upsell_product_call_to_action_tag: [TranslationInput],
  $ribbon_title: [TranslationInput],
  $ribbon_settings: String,
  $locale: String,
  $files: [ArticleFileInput],
  $metas: [ArticleMetaInput],
  $assets: [ArticleAssetInput],
  $categories: [Int],
  $recommended_articles: [Int],
  $geo_regions: [Int],
  $locale_regions: [Int],
  $products: [Int],
  $upsell_products: [Int],
  $visibility: ResourceVisibilityEnum,
  $discoverability: ArticleDiscoverabilityEnum,
  $is_downloadable: Boolean,
  $is_auto_generate_recommendations: Boolean,
  $is_show_in_all_geo_regions: Boolean,
  $is_enforce_lowercase_urls: Boolean,
  $status: Int,
  $published_from: String,
  $published_until: String,
  $id: Int
) {
  ArticleUpdate(
    name: $name,
    parent_id: $parent_id,
    type: $type,
    episode_list_display_type: $episode_list_display_type,
    url_slug: $url_slug,
    full_url_slug: $full_url_slug,
    canonical_url: $canonical_url,
    canonical_title: $canonical_title,
    upsell_product_call_to_action_tag: $upsell_product_call_to_action_tag,
    ribbon_title: $ribbon_title,
    ribbon_settings: $ribbon_settings,
    locale: $locale,
    files: $files,
    metas: $metas,
    assets: $assets,
    categories: $categories,
    recommended_articles: $recommended_articles,
    geo_regions: $geo_regions,
    locale_regions: $locale_regions,
    products: $products,
    upsell_products: $upsell_products,
    visibility: $visibility,
    discoverability: $discoverability,
    is_downloadable: $is_downloadable,
    is_auto_generate_recommendations: $is_auto_generate_recommendations,
    is_show_in_all_geo_regions: $is_show_in_all_geo_regions,
    is_enforce_lowercase_urls: $is_enforce_lowercase_urls,
    status: $status,
    published_from: $published_from,
    published_until: $published_until,
    id: $id
  ) {
    id
    project_id
    parent_id
    name
    url_slug
    full_url_slug
    canonical_url
    canonical_title
    episode_list_display_type
    upsell_product_call_to_action_tag
    ribbon_title
    ribbon_settings
    type
    metas {
      ...AdminArticleMetaFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    assets {
      ...AdminAssetFragment
    }
    categories {
      ...AdminCategoryFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    locale_regions {
      ...LocaleRegionFragment
    }
    products {
      ...AdminProductFragment
    }
    upsell_products {
      ...AdminProductFragment
    }
    created_at
    updated_at
    popularity_index
    visibility
    discoverability
    is_downloadable
    is_auth_required
    published_at
    linked_asset_playable_from
    status
    is_auto_generate_recommendations
    is_show_in_all_geo_regions
    generic_url
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    canonical_title_translations {
      ...TranslationFragment
    }
    upsell_product_call_to_action_tag_translations {
      ...TranslationFragment
    }
    ribbon_title_translations {
      ...TranslationFragment
    }
    children {
      ...AdminArticleFragment
    }
    recommended_articles {
      ...AdminArticleFragment
    }
    featured_on_categories {
      ...AdminCategoryFragment
    }
    files {
      ...FileFragment
    }
    entitling_subscriptions {
      ...AdminSubscriptionFragment
    }
    published_from
    published_until
  }
}
Variables
{
  "name": "string",
  "parent_id": 42,
  "type": "episode",
  "episode_list_display_type": "grid",
  "url_slug": [TranslationInput],
  "full_url_slug": [TranslationInput],
  "canonical_url": [TranslationInput],
  "canonical_title": [TranslationInput],
  "upsell_product_call_to_action_tag": [TranslationInput],
  "ribbon_title": [TranslationInput],
  "ribbon_settings": "string",
  "locale": "string",
  "files": [ArticleFileInput],
  "metas": [ArticleMetaInput],
  "assets": [ArticleAssetInput],
  "categories": [42],
  "recommended_articles": [42],
  "geo_regions": [42],
  "locale_regions": [42],
  "products": [42],
  "upsell_products": [42],
  "visibility": "everyone",
  "discoverability": "hidden",
  "is_downloadable": true,
  "is_auto_generate_recommendations": false,
  "is_show_in_all_geo_regions": true,
  "is_enforce_lowercase_urls": true,
  "status": 42,
  "published_from": "string",
  "published_until": "string",
  "id": 42
}
Response
{
  "data": {
    "ArticleUpdate": {
      "id": 42,
      "project_id": 42,
      "parent_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "canonical_title": "string",
      "episode_list_display_type": "string",
      "upsell_product_call_to_action_tag": "string",
      "ribbon_title": "string",
      "ribbon_settings": "string",
      "type": "episode",
      "metas": [AdminArticleMeta],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "assets": [AdminAsset],
      "categories": [AdminCategory],
      "geo_regions": [GeoRegion],
      "locale_regions": [LocaleRegion],
      "products": [AdminProduct],
      "upsell_products": [AdminProduct],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "popularity_index": 42,
      "visibility": "everyone",
      "discoverability": "hidden",
      "is_downloadable": false,
      "is_auth_required": true,
      "published_at": "2000-12-31T12:34:56.000Z",
      "linked_asset_playable_from": "string",
      "status": "string",
      "is_auto_generate_recommendations": false,
      "is_show_in_all_geo_regions": true,
      "generic_url": "https://url.example.com",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "canonical_title_translations": [Translation],
      "upsell_product_call_to_action_tag_translations": [
        Translation
      ],
      "ribbon_title_translations": [Translation],
      "children": [AdminArticle],
      "recommended_articles": [AdminArticle],
      "featured_on_categories": [AdminCategory],
      "files": [File],
      "entitling_subscriptions": [AdminSubscription],
      "published_from": "string",
      "published_until": "string"
    }
  }
}

AssetContentReplace

Description

Replace the master video/audio content (optionally including images/subtitles) of Asset id with the content of replacement_asset_id. Both Assets must use the same media provider and be of the same non-live type. Runs asynchronously; once the replacement completes, replacement_asset_id is soft-deleted (it keeps its record with status "deleted", while its remote content and Files are cleared).

Response

Returns an AdminAsset

Arguments
Name Description
id - Int The id of the Asset whose content is being replaced. This Asset survives the operation.
replacement_asset_id - Int The id of the Asset to take replacement content from. This Asset is marked as deleted once its content has been migrated into id.
project_id - Int The Project id that owns both Assets.
is_migrate_related_files - Boolean Migrate related files such as screenshots and subtitles (default is "false"). Default = false

Example

Query
mutation AssetContentReplace(
  $id: Int,
  $replacement_asset_id: Int,
  $project_id: Int,
  $is_migrate_related_files: Boolean
) {
  AssetContentReplace(
    id: $id,
    replacement_asset_id: $replacement_asset_id,
    project_id: $project_id,
    is_migrate_related_files: $is_migrate_related_files
  ) {
    id
    project_id
    source_blob_name
    thumbnail_asset_id
    is_live
    type
    linked_type
    accessibility
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    subtitles {
      ...FileFragment
    }
    screenshots {
      ...FileFragment
    }
    playable_from
    playable_until
    published_from
    published_until
    created_at
    updated_at
    project {
      ...AdminProjectFragment
    }
    media_provider
    encoding_profile_name
    encryption_profile_name
    source_blob_md5
    source_asset_id
    encoded_asset_name
    encoded_asset_id
    streaming_unit_id
    origin
    streaming_endpoint
    asset_status_id
    asset_status
    ingestion_status
    ingestion_status_description
    external_asset_id
    stored_bytes
    stored_giga_bytes
    files {
      ...FileFragment
    }
    download_urls {
      ...StructureKeyValueStringPairFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    player_embed_code_iframe
    ingestion_endpoints
    streaming_credentials {
      ...StructureKeyValueStringPairFragment
    }
    last_event_message
    active_asset_recording_id
    active_recording {
      ...AdminAssetRecordingFragment
    }
    recordings {
      ...AdminAssetRecordingFragment
    }
  }
}
Variables
{
  "id": 42,
  "replacement_asset_id": 42,
  "project_id": 42,
  "is_migrate_related_files": false
}
Response
{
  "data": {
    "AssetContentReplace": {
      "id": 42,
      "project_id": 42,
      "source_blob_name": "string",
      "thumbnail_asset_id": "string",
      "is_live": false,
      "type": "audio",
      "linked_type": "film",
      "accessibility": "everyone",
      "time_marker_intro_start": 987.65,
      "time_marker_intro_end": 987.65,
      "time_marker_end": 987.65,
      "duration": 123.45,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "subtitles": [File],
      "screenshots": [File],
      "playable_from": "string",
      "playable_until": "string",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "project": AdminProject,
      "media_provider": "string",
      "encoding_profile_name": "sd_540p_16x9",
      "encryption_profile_name": "none",
      "source_blob_md5": "string",
      "source_asset_id": "string",
      "encoded_asset_name": "string",
      "encoded_asset_id": "string",
      "streaming_unit_id": "string",
      "origin": "string",
      "streaming_endpoint": "string",
      "asset_status_id": "string",
      "asset_status": "string",
      "ingestion_status": "string",
      "ingestion_status_description": "string",
      "external_asset_id": "string",
      "stored_bytes": 123.45,
      "stored_giga_bytes": 123.45,
      "files": [File],
      "download_urls": ["https://url.example.com"],
      "activity_logs": [AdminActivityLog],
      "player_embed_code_iframe": "string",
      "ingestion_endpoints": ["string"],
      "streaming_credentials": [
        StructureKeyValueStringPair
      ],
      "last_event_message": "string",
      "active_asset_recording_id": 42,
      "active_recording": AdminAssetRecording,
      "recordings": [AdminAssetRecording]
    }
  }
}

AssetFileDelete

Description

Permanently delete a secondary File (e.g. screenshot, subtitle) attached to a given Asset, including its underlying stored object.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the File to delete.
asset_id - Int The id of the Asset the File belongs to.

Example

Query
mutation AssetFileDelete(
  $id: Int,
  $asset_id: Int
) {
  AssetFileDelete(
    id: $id,
    asset_id: $asset_id
  )
}
Variables
{"id": 42, "asset_id": 42}
Response
{"data": {"AssetFileDelete": false}}

AssetFileUpdate

Description

Update the duration or locale of an existing secondary File (e.g. subtitle) attached to a given Asset.

Response

Returns a File

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
asset_id - Int The id of the Asset the File belongs to.

Example

Query
mutation AssetFileUpdate(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $asset_id: Int
) {
  AssetFileUpdate(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    asset_id: $asset_id
  ) {
    id
    name
    title
    type
    size
    width
    height
    aspect_ratio_profile
    duration
    locale
    locale_label
    base_url
    base_path
    url
    proxy_file_path
    proxy_url
    file_name
    file_path
  }
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "asset_id": 42
}
Response
{
  "data": {
    "AssetFileUpdate": {
      "id": 42,
      "name": "string",
      "title": "string",
      "type": "audio",
      "size": 42,
      "width": 42,
      "height": 42,
      "aspect_ratio_profile": "16x9",
      "duration": 42,
      "locale": "string",
      "locale_label": "string",
      "base_url": "https://url.example.com",
      "base_path": "string",
      "url": "https://url.example.com",
      "proxy_file_path": "string",
      "proxy_url": "https://url.example.com",
      "file_name": "string",
      "file_path": "string"
    }
  }
}

AssetLiveCreate

Description

Create a new Asset of type "live_video" and prepare its live event on the media provider. This step itself does not start the stream or incur live-streaming costs, but a later AssetLiveStart does; see the AudiencePlayer support portal at https://support.audienceplayer.com/portal/en/kb for details.

Response

Returns an AdminAsset

Arguments
Name Description
project_id - Int The Project id that owns the Asset.
external_asset_id - String An optional external/third-party identifier label for the Asset, used for administrative purposes only.
time_marker_intro_end - Float The time marker of the end of the intro (seconds since start).
time_marker_end - Float The time marker of the end of the asset (seconds since start).
playable_from - String The date-time (UTC) at which the Asset is playable, typically used to indicate the start date-time of a live-stream event.
playable_until - String The date-time (UTC) until which the Asset is playable, typically used to indicate the end date-time of a live-stream event.
published_from - String Publish-from date (UTC) for the Asset.
published_until - String Publish-until date (UTC) for the Asset.
encryption_profile_name - AssetEncryptionProfileNameEnum The DRM/encryption profile to apply to the live Asset. Default = none
source_blob_name - String A descriptive source name for the live event.
media_provider - AssetMediaProviderNameEnum The media provider to create the live event with.

Example

Query
mutation AssetLiveCreate(
  $project_id: Int,
  $external_asset_id: String,
  $time_marker_intro_end: Float,
  $time_marker_end: Float,
  $playable_from: String,
  $playable_until: String,
  $published_from: String,
  $published_until: String,
  $encryption_profile_name: AssetEncryptionProfileNameEnum,
  $source_blob_name: String,
  $media_provider: AssetMediaProviderNameEnum
) {
  AssetLiveCreate(
    project_id: $project_id,
    external_asset_id: $external_asset_id,
    time_marker_intro_end: $time_marker_intro_end,
    time_marker_end: $time_marker_end,
    playable_from: $playable_from,
    playable_until: $playable_until,
    published_from: $published_from,
    published_until: $published_until,
    encryption_profile_name: $encryption_profile_name,
    source_blob_name: $source_blob_name,
    media_provider: $media_provider
  ) {
    id
    project_id
    source_blob_name
    thumbnail_asset_id
    is_live
    type
    linked_type
    accessibility
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    subtitles {
      ...FileFragment
    }
    screenshots {
      ...FileFragment
    }
    playable_from
    playable_until
    published_from
    published_until
    created_at
    updated_at
    project {
      ...AdminProjectFragment
    }
    media_provider
    encoding_profile_name
    encryption_profile_name
    source_blob_md5
    source_asset_id
    encoded_asset_name
    encoded_asset_id
    streaming_unit_id
    origin
    streaming_endpoint
    asset_status_id
    asset_status
    ingestion_status
    ingestion_status_description
    external_asset_id
    stored_bytes
    stored_giga_bytes
    files {
      ...FileFragment
    }
    download_urls {
      ...StructureKeyValueStringPairFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    player_embed_code_iframe
    ingestion_endpoints
    streaming_credentials {
      ...StructureKeyValueStringPairFragment
    }
    last_event_message
    active_asset_recording_id
    active_recording {
      ...AdminAssetRecordingFragment
    }
    recordings {
      ...AdminAssetRecordingFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "external_asset_id": "string",
  "time_marker_intro_end": 123.45,
  "time_marker_end": 987.65,
  "playable_from": "string",
  "playable_until": "string",
  "published_from": "string",
  "published_until": "string",
  "encryption_profile_name": "none",
  "source_blob_name": "string",
  "media_provider": "mock"
}
Response
{
  "data": {
    "AssetLiveCreate": {
      "id": 42,
      "project_id": 42,
      "source_blob_name": "string",
      "thumbnail_asset_id": "string",
      "is_live": false,
      "type": "audio",
      "linked_type": "film",
      "accessibility": "everyone",
      "time_marker_intro_start": 987.65,
      "time_marker_intro_end": 123.45,
      "time_marker_end": 987.65,
      "duration": 123.45,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "subtitles": [File],
      "screenshots": [File],
      "playable_from": "string",
      "playable_until": "string",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "project": AdminProject,
      "media_provider": "string",
      "encoding_profile_name": "sd_540p_16x9",
      "encryption_profile_name": "none",
      "source_blob_md5": "string",
      "source_asset_id": "string",
      "encoded_asset_name": "string",
      "encoded_asset_id": "string",
      "streaming_unit_id": "string",
      "origin": "string",
      "streaming_endpoint": "string",
      "asset_status_id": "string",
      "asset_status": "string",
      "ingestion_status": "string",
      "ingestion_status_description": "string",
      "external_asset_id": "string",
      "stored_bytes": 987.65,
      "stored_giga_bytes": 987.65,
      "files": [File],
      "download_urls": ["https://url.example.com"],
      "activity_logs": [AdminActivityLog],
      "player_embed_code_iframe": "string",
      "ingestion_endpoints": ["string"],
      "streaming_credentials": [
        StructureKeyValueStringPair
      ],
      "last_event_message": "string",
      "active_asset_recording_id": 42,
      "active_recording": AdminAssetRecording,
      "recordings": [AdminAssetRecording]
    }
  }
}

AssetLiveRecordingDelete

Description

Permanently delete a completed or failed live Asset recording.

Response

Returns an AdminAsset

Arguments
Name Description
id - Int The id of the Asset recording to delete.
asset_id - Int The id of the live-video Asset the recording belongs to.
project_id - Int The Project id that owns the Asset.

Example

Query
mutation AssetLiveRecordingDelete(
  $id: Int,
  $asset_id: Int,
  $project_id: Int
) {
  AssetLiveRecordingDelete(
    id: $id,
    asset_id: $asset_id,
    project_id: $project_id
  ) {
    id
    project_id
    source_blob_name
    thumbnail_asset_id
    is_live
    type
    linked_type
    accessibility
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    subtitles {
      ...FileFragment
    }
    screenshots {
      ...FileFragment
    }
    playable_from
    playable_until
    published_from
    published_until
    created_at
    updated_at
    project {
      ...AdminProjectFragment
    }
    media_provider
    encoding_profile_name
    encryption_profile_name
    source_blob_md5
    source_asset_id
    encoded_asset_name
    encoded_asset_id
    streaming_unit_id
    origin
    streaming_endpoint
    asset_status_id
    asset_status
    ingestion_status
    ingestion_status_description
    external_asset_id
    stored_bytes
    stored_giga_bytes
    files {
      ...FileFragment
    }
    download_urls {
      ...StructureKeyValueStringPairFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    player_embed_code_iframe
    ingestion_endpoints
    streaming_credentials {
      ...StructureKeyValueStringPairFragment
    }
    last_event_message
    active_asset_recording_id
    active_recording {
      ...AdminAssetRecordingFragment
    }
    recordings {
      ...AdminAssetRecordingFragment
    }
  }
}
Variables
{"id": 42, "asset_id": 42, "project_id": 42}
Response
{
  "data": {
    "AssetLiveRecordingDelete": {
      "id": 42,
      "project_id": 42,
      "source_blob_name": "string",
      "thumbnail_asset_id": "string",
      "is_live": false,
      "type": "audio",
      "linked_type": "film",
      "accessibility": "everyone",
      "time_marker_intro_start": 987.65,
      "time_marker_intro_end": 987.65,
      "time_marker_end": 987.65,
      "duration": 987.65,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "subtitles": [File],
      "screenshots": [File],
      "playable_from": "string",
      "playable_until": "string",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "project": AdminProject,
      "media_provider": "string",
      "encoding_profile_name": "sd_540p_16x9",
      "encryption_profile_name": "none",
      "source_blob_md5": "string",
      "source_asset_id": "string",
      "encoded_asset_name": "string",
      "encoded_asset_id": "string",
      "streaming_unit_id": "string",
      "origin": "string",
      "streaming_endpoint": "string",
      "asset_status_id": "string",
      "asset_status": "string",
      "ingestion_status": "string",
      "ingestion_status_description": "string",
      "external_asset_id": "string",
      "stored_bytes": 987.65,
      "stored_giga_bytes": 987.65,
      "files": [File],
      "download_urls": ["https://url.example.com"],
      "activity_logs": [AdminActivityLog],
      "player_embed_code_iframe": "string",
      "ingestion_endpoints": ["string"],
      "streaming_credentials": [
        StructureKeyValueStringPair
      ],
      "last_event_message": "string",
      "active_asset_recording_id": 42,
      "active_recording": AdminAssetRecording,
      "recordings": [AdminAssetRecording]
    }
  }
}

AssetLiveRecordingStart

Description

Start a recording of the Asset's currently running live-video channel.

Response

Returns an AdminAsset

Arguments
Name Description
id - Int The id of the live-video Asset to start a recording for.
project_id - Int The Project id that owns the Asset.
start_time - String The date-time (UTC) at which the recording starts.
end_time - String The date-time (UTC) at which the recording is intended to end.

Example

Query
mutation AssetLiveRecordingStart(
  $id: Int,
  $project_id: Int,
  $start_time: String,
  $end_time: String
) {
  AssetLiveRecordingStart(
    id: $id,
    project_id: $project_id,
    start_time: $start_time,
    end_time: $end_time
  ) {
    id
    project_id
    source_blob_name
    thumbnail_asset_id
    is_live
    type
    linked_type
    accessibility
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    subtitles {
      ...FileFragment
    }
    screenshots {
      ...FileFragment
    }
    playable_from
    playable_until
    published_from
    published_until
    created_at
    updated_at
    project {
      ...AdminProjectFragment
    }
    media_provider
    encoding_profile_name
    encryption_profile_name
    source_blob_md5
    source_asset_id
    encoded_asset_name
    encoded_asset_id
    streaming_unit_id
    origin
    streaming_endpoint
    asset_status_id
    asset_status
    ingestion_status
    ingestion_status_description
    external_asset_id
    stored_bytes
    stored_giga_bytes
    files {
      ...FileFragment
    }
    download_urls {
      ...StructureKeyValueStringPairFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    player_embed_code_iframe
    ingestion_endpoints
    streaming_credentials {
      ...StructureKeyValueStringPairFragment
    }
    last_event_message
    active_asset_recording_id
    active_recording {
      ...AdminAssetRecordingFragment
    }
    recordings {
      ...AdminAssetRecordingFragment
    }
  }
}
Variables
{
  "id": 42,
  "project_id": 42,
  "start_time": "string",
  "end_time": "string"
}
Response
{
  "data": {
    "AssetLiveRecordingStart": {
      "id": 42,
      "project_id": 42,
      "source_blob_name": "string",
      "thumbnail_asset_id": "string",
      "is_live": false,
      "type": "audio",
      "linked_type": "film",
      "accessibility": "everyone",
      "time_marker_intro_start": 987.65,
      "time_marker_intro_end": 987.65,
      "time_marker_end": 987.65,
      "duration": 123.45,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "subtitles": [File],
      "screenshots": [File],
      "playable_from": "string",
      "playable_until": "string",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "project": AdminProject,
      "media_provider": "string",
      "encoding_profile_name": "sd_540p_16x9",
      "encryption_profile_name": "none",
      "source_blob_md5": "string",
      "source_asset_id": "string",
      "encoded_asset_name": "string",
      "encoded_asset_id": "string",
      "streaming_unit_id": "string",
      "origin": "string",
      "streaming_endpoint": "string",
      "asset_status_id": "string",
      "asset_status": "string",
      "ingestion_status": "string",
      "ingestion_status_description": "string",
      "external_asset_id": "string",
      "stored_bytes": 123.45,
      "stored_giga_bytes": 123.45,
      "files": [File],
      "download_urls": ["https://url.example.com"],
      "activity_logs": [AdminActivityLog],
      "player_embed_code_iframe": "string",
      "ingestion_endpoints": ["string"],
      "streaming_credentials": [
        StructureKeyValueStringPair
      ],
      "last_event_message": "string",
      "active_asset_recording_id": 42,
      "active_recording": AdminAssetRecording,
      "recordings": [AdminAssetRecording]
    }
  }
}

AssetLiveRecordingStop

Description

Stop the Asset's currently active recording of its live-video channel.

Response

Returns an AdminAsset

Arguments
Name Description
id - Int The id of the live-video Asset to stop the active recording for.
project_id - Int The Project id that owns the Asset.

Example

Query
mutation AssetLiveRecordingStop(
  $id: Int,
  $project_id: Int
) {
  AssetLiveRecordingStop(
    id: $id,
    project_id: $project_id
  ) {
    id
    project_id
    source_blob_name
    thumbnail_asset_id
    is_live
    type
    linked_type
    accessibility
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    subtitles {
      ...FileFragment
    }
    screenshots {
      ...FileFragment
    }
    playable_from
    playable_until
    published_from
    published_until
    created_at
    updated_at
    project {
      ...AdminProjectFragment
    }
    media_provider
    encoding_profile_name
    encryption_profile_name
    source_blob_md5
    source_asset_id
    encoded_asset_name
    encoded_asset_id
    streaming_unit_id
    origin
    streaming_endpoint
    asset_status_id
    asset_status
    ingestion_status
    ingestion_status_description
    external_asset_id
    stored_bytes
    stored_giga_bytes
    files {
      ...FileFragment
    }
    download_urls {
      ...StructureKeyValueStringPairFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    player_embed_code_iframe
    ingestion_endpoints
    streaming_credentials {
      ...StructureKeyValueStringPairFragment
    }
    last_event_message
    active_asset_recording_id
    active_recording {
      ...AdminAssetRecordingFragment
    }
    recordings {
      ...AdminAssetRecordingFragment
    }
  }
}
Variables
{"id": 42, "project_id": 42}
Response
{
  "data": {
    "AssetLiveRecordingStop": {
      "id": 42,
      "project_id": 42,
      "source_blob_name": "string",
      "thumbnail_asset_id": "string",
      "is_live": false,
      "type": "audio",
      "linked_type": "film",
      "accessibility": "everyone",
      "time_marker_intro_start": 987.65,
      "time_marker_intro_end": 123.45,
      "time_marker_end": 123.45,
      "duration": 987.65,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "subtitles": [File],
      "screenshots": [File],
      "playable_from": "string",
      "playable_until": "string",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "project": AdminProject,
      "media_provider": "string",
      "encoding_profile_name": "sd_540p_16x9",
      "encryption_profile_name": "none",
      "source_blob_md5": "string",
      "source_asset_id": "string",
      "encoded_asset_name": "string",
      "encoded_asset_id": "string",
      "streaming_unit_id": "string",
      "origin": "string",
      "streaming_endpoint": "string",
      "asset_status_id": "string",
      "asset_status": "string",
      "ingestion_status": "string",
      "ingestion_status_description": "string",
      "external_asset_id": "string",
      "stored_bytes": 987.65,
      "stored_giga_bytes": 123.45,
      "files": [File],
      "download_urls": ["https://url.example.com"],
      "activity_logs": [AdminActivityLog],
      "player_embed_code_iframe": "string",
      "ingestion_endpoints": ["string"],
      "streaming_credentials": [
        StructureKeyValueStringPair
      ],
      "last_event_message": "string",
      "active_asset_recording_id": 42,
      "active_recording": AdminAssetRecording,
      "recordings": [AdminAssetRecording]
    }
  }
}

AssetLiveStart

Description

Start the live-video channel for an existing live-video Asset (created via AssetLiveCreate), making it active and playable. The start is queued and completes asynchronously, so the Asset is not yet live when this returns: poll its status. Starting a live channel typically incurs real, immediate consumption/streaming costs for as long as it remains active; see the AudiencePlayer support portal at https://support.audienceplayer.com/portal/en/kb for details.

Response

Returns an AdminAsset

Arguments
Name Description
id - Int The id of the live-video Asset to start.
project_id - Int The Project id that owns the Asset.

Example

Query
mutation AssetLiveStart(
  $id: Int,
  $project_id: Int
) {
  AssetLiveStart(
    id: $id,
    project_id: $project_id
  ) {
    id
    project_id
    source_blob_name
    thumbnail_asset_id
    is_live
    type
    linked_type
    accessibility
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    subtitles {
      ...FileFragment
    }
    screenshots {
      ...FileFragment
    }
    playable_from
    playable_until
    published_from
    published_until
    created_at
    updated_at
    project {
      ...AdminProjectFragment
    }
    media_provider
    encoding_profile_name
    encryption_profile_name
    source_blob_md5
    source_asset_id
    encoded_asset_name
    encoded_asset_id
    streaming_unit_id
    origin
    streaming_endpoint
    asset_status_id
    asset_status
    ingestion_status
    ingestion_status_description
    external_asset_id
    stored_bytes
    stored_giga_bytes
    files {
      ...FileFragment
    }
    download_urls {
      ...StructureKeyValueStringPairFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    player_embed_code_iframe
    ingestion_endpoints
    streaming_credentials {
      ...StructureKeyValueStringPairFragment
    }
    last_event_message
    active_asset_recording_id
    active_recording {
      ...AdminAssetRecordingFragment
    }
    recordings {
      ...AdminAssetRecordingFragment
    }
  }
}
Variables
{"id": 42, "project_id": 42}
Response
{
  "data": {
    "AssetLiveStart": {
      "id": 42,
      "project_id": 42,
      "source_blob_name": "string",
      "thumbnail_asset_id": "string",
      "is_live": false,
      "type": "audio",
      "linked_type": "film",
      "accessibility": "everyone",
      "time_marker_intro_start": 987.65,
      "time_marker_intro_end": 123.45,
      "time_marker_end": 123.45,
      "duration": 987.65,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "subtitles": [File],
      "screenshots": [File],
      "playable_from": "string",
      "playable_until": "string",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "project": AdminProject,
      "media_provider": "string",
      "encoding_profile_name": "sd_540p_16x9",
      "encryption_profile_name": "none",
      "source_blob_md5": "string",
      "source_asset_id": "string",
      "encoded_asset_name": "string",
      "encoded_asset_id": "string",
      "streaming_unit_id": "string",
      "origin": "string",
      "streaming_endpoint": "string",
      "asset_status_id": "string",
      "asset_status": "string",
      "ingestion_status": "string",
      "ingestion_status_description": "string",
      "external_asset_id": "string",
      "stored_bytes": 987.65,
      "stored_giga_bytes": 123.45,
      "files": [File],
      "download_urls": ["https://url.example.com"],
      "activity_logs": [AdminActivityLog],
      "player_embed_code_iframe": "string",
      "ingestion_endpoints": ["string"],
      "streaming_credentials": [
        StructureKeyValueStringPair
      ],
      "last_event_message": "string",
      "active_asset_recording_id": 42,
      "active_recording": AdminAssetRecording,
      "recordings": [AdminAssetRecording]
    }
  }
}

AssetLiveStop

Description

Stop the live-video channel for a live-video Asset that is currently active.

Response

Returns an AdminAsset

Arguments
Name Description
id - Int The id of the live-video Asset to stop.
project_id - Int The Project id that owns the Asset.

Example

Query
mutation AssetLiveStop(
  $id: Int,
  $project_id: Int
) {
  AssetLiveStop(
    id: $id,
    project_id: $project_id
  ) {
    id
    project_id
    source_blob_name
    thumbnail_asset_id
    is_live
    type
    linked_type
    accessibility
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    subtitles {
      ...FileFragment
    }
    screenshots {
      ...FileFragment
    }
    playable_from
    playable_until
    published_from
    published_until
    created_at
    updated_at
    project {
      ...AdminProjectFragment
    }
    media_provider
    encoding_profile_name
    encryption_profile_name
    source_blob_md5
    source_asset_id
    encoded_asset_name
    encoded_asset_id
    streaming_unit_id
    origin
    streaming_endpoint
    asset_status_id
    asset_status
    ingestion_status
    ingestion_status_description
    external_asset_id
    stored_bytes
    stored_giga_bytes
    files {
      ...FileFragment
    }
    download_urls {
      ...StructureKeyValueStringPairFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    player_embed_code_iframe
    ingestion_endpoints
    streaming_credentials {
      ...StructureKeyValueStringPairFragment
    }
    last_event_message
    active_asset_recording_id
    active_recording {
      ...AdminAssetRecordingFragment
    }
    recordings {
      ...AdminAssetRecordingFragment
    }
  }
}
Variables
{"id": 42, "project_id": 42}
Response
{
  "data": {
    "AssetLiveStop": {
      "id": 42,
      "project_id": 42,
      "source_blob_name": "string",
      "thumbnail_asset_id": "string",
      "is_live": false,
      "type": "audio",
      "linked_type": "film",
      "accessibility": "everyone",
      "time_marker_intro_start": 987.65,
      "time_marker_intro_end": 123.45,
      "time_marker_end": 987.65,
      "duration": 987.65,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "subtitles": [File],
      "screenshots": [File],
      "playable_from": "string",
      "playable_until": "string",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "project": AdminProject,
      "media_provider": "string",
      "encoding_profile_name": "sd_540p_16x9",
      "encryption_profile_name": "none",
      "source_blob_md5": "string",
      "source_asset_id": "string",
      "encoded_asset_name": "string",
      "encoded_asset_id": "string",
      "streaming_unit_id": "string",
      "origin": "string",
      "streaming_endpoint": "string",
      "asset_status_id": "string",
      "asset_status": "string",
      "ingestion_status": "string",
      "ingestion_status_description": "string",
      "external_asset_id": "string",
      "stored_bytes": 123.45,
      "stored_giga_bytes": 123.45,
      "files": [File],
      "download_urls": ["https://url.example.com"],
      "activity_logs": [AdminActivityLog],
      "player_embed_code_iframe": "string",
      "ingestion_endpoints": ["string"],
      "streaming_credentials": [
        StructureKeyValueStringPair
      ],
      "last_event_message": "string",
      "active_asset_recording_id": 42,
      "active_recording": AdminAssetRecording,
      "recordings": [AdminAssetRecording]
    }
  }
}

AssetPlay

Description

Create a play-out configuration directly for an Asset, without any Article context. Only basic Asset-viewing access is required, not full Article authorization. On this Admin schema, playback is not gated by any particular User's actual purchase/entitlement status; that enforcement only happens on the User schema's equivalents.

Response

Returns an AdminAssetPlay

Arguments
Name Description
asset_id - Int The id of the Asset to create a play configuration for.
protocols - [ArticlePlayProtocolEnum] The streaming protocols to be included in the play configuration
resolution - ArticlePlayResolutionEnum Force a given video resolution in the play configuration to create a single-bitrate stream (i.e. non-adaptive stream with single-bitrate/resolution)
resolution_max - ArticlePlayResolutionEnum Configure a maximum video resolution for the play configuration (i.e. adaptive stream with maximum bitrate/resolution)
audio_quality_max - ArticlePlayAudioQualityEnum Configure a maximum audio quality for the play configuration
is_proxy_hls_manifest - Boolean Force the manifest to be proxied e.g. in order to inject a subtitle track (only enforced for non-live streams)
is_include_subtitles_in_manifest - Boolean Force the inclusion of subtitle tracks in the manifest (only enforced if "is_proxy_hls_manifest" is true). Default = true
is_offline_download - Boolean Request a play configuration for off-line playback (i.e. in-app download, only available for non-live streams). Default = false
manifest_audio_track_filter - String Configure a specific audio filter for the play configuration. Default = ""
platform_context - PlatformContextEnum Define the appropriate platform context for the play configuration (default WEB). Default = web
device_model_context - DeviceModelContextEnum Define the appropriate device model context for the play configuration

Example

Query
mutation AssetPlay(
  $asset_id: Int,
  $protocols: [ArticlePlayProtocolEnum],
  $resolution: ArticlePlayResolutionEnum,
  $resolution_max: ArticlePlayResolutionEnum,
  $audio_quality_max: ArticlePlayAudioQualityEnum,
  $is_proxy_hls_manifest: Boolean,
  $is_include_subtitles_in_manifest: Boolean,
  $is_offline_download: Boolean,
  $manifest_audio_track_filter: String,
  $platform_context: PlatformContextEnum,
  $device_model_context: DeviceModelContextEnum
) {
  AssetPlay(
    asset_id: $asset_id,
    protocols: $protocols,
    resolution: $resolution,
    resolution_max: $resolution_max,
    audio_quality_max: $audio_quality_max,
    is_proxy_hls_manifest: $is_proxy_hls_manifest,
    is_include_subtitles_in_manifest: $is_include_subtitles_in_manifest,
    is_offline_download: $is_offline_download,
    manifest_audio_track_filter: $manifest_audio_track_filter,
    platform_context: $platform_context,
    device_model_context: $device_model_context
  ) {
    asset_id
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    subtitles {
      ...FileFragment
    }
    entitlements {
      ...ArticleAssetPlayEntitlementFragment
    }
    pulse_updated_at
    pulse_token
    fairplay_certificate_url
    user_subtitle_locale
    user_audio_locale
    issued_at
  }
}
Variables
{
  "asset_id": 42,
  "protocols": ["hls"],
  "resolution": "w3840_h2160",
  "resolution_max": "w3840_h2160",
  "audio_quality_max": "audio_512kb",
  "is_proxy_hls_manifest": true,
  "is_include_subtitles_in_manifest": true,
  "is_offline_download": false,
  "manifest_audio_track_filter": "",
  "platform_context": "web",
  "device_model_context": "apple_native"
}
Response
{
  "data": {
    "AssetPlay": {
      "asset_id": 42,
      "time_marker_intro_start": 123.45,
      "time_marker_intro_end": 987.65,
      "time_marker_end": 987.65,
      "duration": 987.65,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "subtitles": [File],
      "entitlements": [ArticleAssetPlayEntitlement],
      "pulse_updated_at": "2000-12-31T12:34:56.000Z",
      "pulse_token": "string",
      "fairplay_certificate_url": "https://url.example.com",
      "user_subtitle_locale": "string",
      "user_audio_locale": "string",
      "issued_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

AssetUpdate

Description

Update an existing Asset: metadata, publication/playability windows, encryption profile, or lifecycle status. Changing asset_status_id/asset_status transitions the Asset through its configured AudiencePlayer media lifecycle, which can schedule asynchronous processing.

Response

Returns an AdminAsset

Arguments
Name Description
id - Int The id of the Asset to update.
project_id - Int The Project id that owns the Asset.
external_asset_id - String An optional external/third-party identifier label for the Asset, used for administrative purposes only.
asset_status_id - Int The Asset's lifecycle status. Mutually exclusive with asset_status.
asset_status - AssetStatusEnum The Asset's lifecycle status, as the enum equivalent of asset_status_id. Mutually exclusive with asset_status_id.
time_marker_intro_start - Float The time marker of the start of the intro (seconds since start).
time_marker_intro_end - Float The time marker of the end of the intro (seconds since start).
time_marker_end - Float The time marker of the end of the asset (seconds since start).
playable_from - String The date-time (UTC) at which the Asset is playable, typically used to indicate the start date-time of a live-stream event.
playable_until - String The date-time (UTC) until which the Asset is playable, typically used to indicate the end date-time of a live-stream event.
published_from - String Publish-from date (UTC) for the Asset.
published_until - String Publish-until date (UTC) for the Asset.
encryption_profile_name - AssetEncryptionProfileNameEnum The DRM/encryption profile to apply to the Asset.
files - [AssetFileInput] Files (e.g. screenshots, subtitles) already attached to the Asset, to update in place (type, duration, locale).
is_force - Boolean Force an update action if possible (e.g. unpublishing an Asset even if it is still linked to other Articles). Default = false

Example

Query
mutation AssetUpdate(
  $id: Int,
  $project_id: Int,
  $external_asset_id: String,
  $asset_status_id: Int,
  $asset_status: AssetStatusEnum,
  $time_marker_intro_start: Float,
  $time_marker_intro_end: Float,
  $time_marker_end: Float,
  $playable_from: String,
  $playable_until: String,
  $published_from: String,
  $published_until: String,
  $encryption_profile_name: AssetEncryptionProfileNameEnum,
  $files: [AssetFileInput],
  $is_force: Boolean
) {
  AssetUpdate(
    id: $id,
    project_id: $project_id,
    external_asset_id: $external_asset_id,
    asset_status_id: $asset_status_id,
    asset_status: $asset_status,
    time_marker_intro_start: $time_marker_intro_start,
    time_marker_intro_end: $time_marker_intro_end,
    time_marker_end: $time_marker_end,
    playable_from: $playable_from,
    playable_until: $playable_until,
    published_from: $published_from,
    published_until: $published_until,
    encryption_profile_name: $encryption_profile_name,
    files: $files,
    is_force: $is_force
  ) {
    id
    project_id
    source_blob_name
    thumbnail_asset_id
    is_live
    type
    linked_type
    accessibility
    time_marker_intro_start
    time_marker_intro_end
    time_marker_end
    duration
    aspect_ratio
    aspect_ratio_fraction
    subtitles {
      ...FileFragment
    }
    screenshots {
      ...FileFragment
    }
    playable_from
    playable_until
    published_from
    published_until
    created_at
    updated_at
    project {
      ...AdminProjectFragment
    }
    media_provider
    encoding_profile_name
    encryption_profile_name
    source_blob_md5
    source_asset_id
    encoded_asset_name
    encoded_asset_id
    streaming_unit_id
    origin
    streaming_endpoint
    asset_status_id
    asset_status
    ingestion_status
    ingestion_status_description
    external_asset_id
    stored_bytes
    stored_giga_bytes
    files {
      ...FileFragment
    }
    download_urls {
      ...StructureKeyValueStringPairFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    player_embed_code_iframe
    ingestion_endpoints
    streaming_credentials {
      ...StructureKeyValueStringPairFragment
    }
    last_event_message
    active_asset_recording_id
    active_recording {
      ...AdminAssetRecordingFragment
    }
    recordings {
      ...AdminAssetRecordingFragment
    }
  }
}
Variables
{
  "id": 42,
  "project_id": 42,
  "external_asset_id": "string",
  "asset_status_id": 42,
  "asset_status": "source_asset_created",
  "time_marker_intro_start": 123.45,
  "time_marker_intro_end": 987.65,
  "time_marker_end": 123.45,
  "playable_from": "string",
  "playable_until": "string",
  "published_from": "string",
  "published_until": "string",
  "encryption_profile_name": "none",
  "files": [AssetFileInput],
  "is_force": false
}
Response
{
  "data": {
    "AssetUpdate": {
      "id": 42,
      "project_id": 42,
      "source_blob_name": "string",
      "thumbnail_asset_id": "string",
      "is_live": false,
      "type": "audio",
      "linked_type": "film",
      "accessibility": "everyone",
      "time_marker_intro_start": 123.45,
      "time_marker_intro_end": 987.65,
      "time_marker_end": 123.45,
      "duration": 987.65,
      "aspect_ratio": "16x9",
      "aspect_ratio_fraction": 1.778,
      "subtitles": [File],
      "screenshots": [File],
      "playable_from": "string",
      "playable_until": "string",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "project": AdminProject,
      "media_provider": "string",
      "encoding_profile_name": "sd_540p_16x9",
      "encryption_profile_name": "none",
      "source_blob_md5": "string",
      "source_asset_id": "string",
      "encoded_asset_name": "string",
      "encoded_asset_id": "string",
      "streaming_unit_id": "string",
      "origin": "string",
      "streaming_endpoint": "string",
      "asset_status_id": "string",
      "asset_status": "string",
      "ingestion_status": "string",
      "ingestion_status_description": "string",
      "external_asset_id": "string",
      "stored_bytes": 987.65,
      "stored_giga_bytes": 987.65,
      "files": [File],
      "download_urls": ["https://url.example.com"],
      "activity_logs": [AdminActivityLog],
      "player_embed_code_iframe": "string",
      "ingestion_endpoints": ["string"],
      "streaming_credentials": [
        StructureKeyValueStringPair
      ],
      "last_event_message": "string",
      "active_asset_recording_id": 42,
      "active_recording": AdminAssetRecording,
      "recordings": [AdminAssetRecording]
    }
  }
}

AssetUploadStatusReport

Description

Report the result of a direct provider upload for an Asset created by AssetUploadTokenFetch. A successful report allows server-side Asset post-processing to continue.

Response

Returns a Boolean

Arguments
Name Description
project_id - Int The Project id that owns the Asset.
asset_id - Int The id of the Asset whose upload status is being reported.
upload_status - Boolean Whether the client-side provider upload completed successfully for the Asset.
last_event_message - String Optional last significant client-side status message from the upload event.

Example

Query
mutation AssetUploadStatusReport(
  $project_id: Int,
  $asset_id: Int,
  $upload_status: Boolean,
  $last_event_message: String
) {
  AssetUploadStatusReport(
    project_id: $project_id,
    asset_id: $asset_id,
    upload_status: $upload_status,
    last_event_message: $last_event_message
  )
}
Variables
{
  "project_id": 42,
  "asset_id": 42,
  "upload_status": false,
  "last_event_message": "string"
}
Response
{"data": {"AssetUploadStatusReport": false}}

AssetUploadTokenFetch

Description

Create a CMS-upload Asset and return the provider-specific upload contract for its large source media file. After the provider upload completes, report completion with AssetUploadStatusReport so server-side processing can continue.

Response

Returns an AdminAssetUploadToken

Arguments
Name Description
project_id - Int The Project id that will own the created Asset.
source_blob_name - String The original source file name for the Asset upload. Its extension must be an accepted video or audio container, as listed by the Config query field asset_source_extensions.
encoding_profile_name - AssetEncodingProfileNameEnum Optional encoding profile to apply after upload.
encryption_profile_name - AssetEncryptionProfileNameEnum Optional encryption profile to apply after upload.
media_provider - AssetMediaProviderNameEnum Optional media provider override.
source_blob_metadata - String Optional ffprobe output (ffprobe -show_streams -show_format -print_format json) for the file about to be uploaded. When provided, it is validated against the same source-asset checks enforced after upload, and the request is rejected upfront on a violation. Omit or leave empty to skip this pre-upload check.

Example

Query
mutation AssetUploadTokenFetch(
  $project_id: Int,
  $source_blob_name: String,
  $encoding_profile_name: AssetEncodingProfileNameEnum,
  $encryption_profile_name: AssetEncryptionProfileNameEnum,
  $media_provider: AssetMediaProviderNameEnum,
  $source_blob_metadata: String
) {
  AssetUploadTokenFetch(
    project_id: $project_id,
    source_blob_name: $source_blob_name,
    encoding_profile_name: $encoding_profile_name,
    encryption_profile_name: $encryption_profile_name,
    media_provider: $media_provider,
    source_blob_metadata: $source_blob_metadata
  ) {
    project_id
    asset_id
    token
    token_type
    credential_string
    expires_in
    source_blob_name
    account_name
    folder_name
    encoding_profile_name
    encryption_profile_name
  }
}
Variables
{
  "project_id": 42,
  "source_blob_name": "string",
  "encoding_profile_name": "sd_540p_16x9",
  "encryption_profile_name": "none",
  "media_provider": "mock",
  "source_blob_metadata": "string"
}
Response
{
  "data": {
    "AssetUploadTokenFetch": {
      "project_id": 42,
      "asset_id": 42,
      "token": "string",
      "token_type": "string",
      "credential_string": "string",
      "expires_in": 86400,
      "source_blob_name": "string",
      "account_name": "string",
      "folder_name": "string",
      "encoding_profile_name": "sd_540p_16x9",
      "encryption_profile_name": "none"
    }
  }
}

CategoryArticleSort

Description

Reposition an Article within a Category's articles list.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Category being repositioned within.
pivot_id - Int The id of the related resource to position relative to.
pivot_action - SortPivotActionEnum How to position the resource relative to "pivot_id".
article_id - Int The id of the Article being repositioned.

Example

Query
mutation CategoryArticleSort(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: SortPivotActionEnum,
  $article_id: Int
) {
  CategoryArticleSort(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action,
    article_id: $article_id
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "before", "article_id": 42}
Response
{"data": {"CategoryArticleSort": false}}

CategoryCreate

Description

Create a Category: a generic tag for categorising content in many different ways, for example simple content genre labels, assigning Subscription entitlement scoping, etc. Articles, Products, Subscriptions and Notifications can be attached to a Category, and a Category can be nested under a parent Category through parent_id. The Category is published unless a status is given, and its url slug defaults to a sanitised form of its name.

Response

Returns an AdminCategory

Arguments
Name Description
name - String The Category's name.
parent_id - Int The id of the Category's parent Category.
type - CategoryTypeEnum The Category's type.
url_slug - [TranslationInput] The Category's url slug, per locale.
full_url_slug - [TranslationInput] The Category's full url slug, per locale.
canonical_url - [TranslationInput] The Category's canonical url, per locale.
locale - String The locale to apply single-locale argument values in.
metas - [CategoryMetaInput] The Category's metadata properties.
featured_articles - [Int] The ids of the Articles to feature on this Category.
visibility - ResourceVisibilityEnum The Category's visibility. Default = everyone
status - Int The Category's status.
child_metas - [String] The metadata field names available on this Category's child Categories.
is_enforce_lowercase_urls - Boolean Whether to force all url and slug values in this mutation to lowercase (recommended). Default = true
project_id - Int The Project id that will own the Category.

Example

Query
mutation CategoryCreate(
  $name: String,
  $parent_id: Int,
  $type: CategoryTypeEnum,
  $url_slug: [TranslationInput],
  $full_url_slug: [TranslationInput],
  $canonical_url: [TranslationInput],
  $locale: String,
  $metas: [CategoryMetaInput],
  $featured_articles: [Int],
  $visibility: ResourceVisibilityEnum,
  $status: Int,
  $child_metas: [String],
  $is_enforce_lowercase_urls: Boolean,
  $project_id: Int
) {
  CategoryCreate(
    name: $name,
    parent_id: $parent_id,
    type: $type,
    url_slug: $url_slug,
    full_url_slug: $full_url_slug,
    canonical_url: $canonical_url,
    locale: $locale,
    metas: $metas,
    featured_articles: $featured_articles,
    visibility: $visibility,
    status: $status,
    child_metas: $child_metas,
    is_enforce_lowercase_urls: $is_enforce_lowercase_urls,
    project_id: $project_id
  ) {
    id
    project_id
    name
    url_slug
    full_url_slug
    canonical_url
    type
    metas {
      ...AdminCategoryMetaFragment
    }
    articles {
      ...AdminArticleFragment
    }
    products {
      ...AdminProductFragment
    }
    featured_articles {
      ...AdminArticleFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    parent_id
    child_metas
    created_at
    updated_at
    generic_url
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    posters {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    visibility
    status
  }
}
Variables
{
  "name": "string",
  "parent_id": 42,
  "type": "article_label",
  "url_slug": [TranslationInput],
  "full_url_slug": [TranslationInput],
  "canonical_url": [TranslationInput],
  "locale": "string",
  "metas": [CategoryMetaInput],
  "featured_articles": [42],
  "visibility": "everyone",
  "status": 42,
  "child_metas": ["string"],
  "is_enforce_lowercase_urls": true,
  "project_id": 42
}
Response
{
  "data": {
    "CategoryCreate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "type": "article_label",
      "metas": [AdminCategoryMeta],
      "articles": [AdminArticle],
      "products": [AdminProduct],
      "featured_articles": [AdminArticle],
      "icons": [File],
      "images": [File],
      "videos": [File],
      "parent_id": 42,
      "child_metas": ["string"],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "generic_url": "https://url.example.com",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "posters": [File],
      "files": [File],
      "visibility": "everyone",
      "status": "string"
    }
  }
}

CategoryDelete

Description

Delete a Category and its Files. Fails if the Category still has children, Articles, Products, Subscriptions, or Notifications attached.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Category to delete.

Example

Query
mutation CategoryDelete($id: Int) {
  CategoryDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"CategoryDelete": false}}

CategoryFeaturedArticleSort

Description

Reposition an Article within a Category's featured_articles list.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Category being repositioned within.
pivot_id - Int The id of the related resource to position relative to.
pivot_action - SortPivotActionEnum How to position the resource relative to "pivot_id".
article_id - Int The id of the Article being repositioned.

Example

Query
mutation CategoryFeaturedArticleSort(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: SortPivotActionEnum,
  $article_id: Int
) {
  CategoryFeaturedArticleSort(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action,
    article_id: $article_id
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "before", "article_id": 42}
Response
{"data": {"CategoryFeaturedArticleSort": true}}

CategoryFileDelete

Description

Delete a File attached to a Category.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
category_id - Int The Category id that owns the File.

Example

Query
mutation CategoryFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $category_id: Int
) {
  CategoryFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    category_id: $category_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "category_id": 42
}
Response
{"data": {"CategoryFileDelete": false}}

CategoryMetaDelete

Description

Delete a metadata property from a Category, by key.

Response

Returns a Boolean

Arguments
Name Description
category_id - Int The Category id that owns this metadata property.
key - String The metadata property's key.

Example

Query
mutation CategoryMetaDelete(
  $category_id: Int,
  $key: String
) {
  CategoryMetaDelete(
    category_id: $category_id,
    key: $key
  )
}
Variables
{"category_id": 42, "key": "string"}
Response
{"data": {"CategoryMetaDelete": false}}

CategoryNodeUpdate

Description

Reposition a Category within the Category tree, relative to another node, and rebuild its url slug (and its descendants') afterward.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the resource being repositioned in the tree.
pivot_id - Int The id of the sibling/parent resource to position relative to (see pivot_action).
pivot_action - NodePivotActionEnum Where to place id relative to pivot_id (before it, after it, or as its child).

Example

Query
mutation CategoryNodeUpdate(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: NodePivotActionEnum
) {
  CategoryNodeUpdate(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "after"}
Response
{"data": {"CategoryNodeUpdate": true}}

CategoryProductSort

Description

Reposition a Product within a Category's products list.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Category being repositioned within.
pivot_id - Int The id of the related resource to position relative to.
pivot_action - SortPivotActionEnum How to position the resource relative to "pivot_id".
product_id - Int The id of the Product being repositioned.

Example

Query
mutation CategoryProductSort(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: SortPivotActionEnum,
  $product_id: Int
) {
  CategoryProductSort(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action,
    product_id: $product_id
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "before", "product_id": 42}
Response
{"data": {"CategoryProductSort": true}}

CategoryUpdate

Description

Update an existing Category's name, type, parent, visibility, status, metadata, Files or url slugs; only the arguments that are passed are changed. Giving a new parent_id together with a url_slug rebuilds the Category's url slug, and a name that violates a uniqueness restriction is rejected with a conflict error.

Response

Returns an AdminCategory

Arguments
Name Description
name - String The Category's name.
parent_id - Int The id of the Category's parent Category.
type - CategoryTypeEnum The Category's type.
url_slug - [TranslationInput] The Category's url slug, per locale.
full_url_slug - [TranslationInput] The Category's full url slug, per locale.
canonical_url - [TranslationInput] The Category's canonical url, per locale.
locale - String The locale to apply single-locale argument values in.
files - [CategoryFileInput] The Category's Files.
metas - [CategoryMetaInput] The Category's metadata properties.
featured_articles - [Int] The ids of the Articles to feature on this Category.
visibility - ResourceVisibilityEnum The Category's visibility.
status - Int The Category's status.
child_metas - [String] The metadata field names available on this Category's child Categories.
is_enforce_lowercase_urls - Boolean Whether to force all url and slug values in this mutation to lowercase (recommended). Default = true
id - Int The id of the Category to update.

Example

Query
mutation CategoryUpdate(
  $name: String,
  $parent_id: Int,
  $type: CategoryTypeEnum,
  $url_slug: [TranslationInput],
  $full_url_slug: [TranslationInput],
  $canonical_url: [TranslationInput],
  $locale: String,
  $files: [CategoryFileInput],
  $metas: [CategoryMetaInput],
  $featured_articles: [Int],
  $visibility: ResourceVisibilityEnum,
  $status: Int,
  $child_metas: [String],
  $is_enforce_lowercase_urls: Boolean,
  $id: Int
) {
  CategoryUpdate(
    name: $name,
    parent_id: $parent_id,
    type: $type,
    url_slug: $url_slug,
    full_url_slug: $full_url_slug,
    canonical_url: $canonical_url,
    locale: $locale,
    files: $files,
    metas: $metas,
    featured_articles: $featured_articles,
    visibility: $visibility,
    status: $status,
    child_metas: $child_metas,
    is_enforce_lowercase_urls: $is_enforce_lowercase_urls,
    id: $id
  ) {
    id
    project_id
    name
    url_slug
    full_url_slug
    canonical_url
    type
    metas {
      ...AdminCategoryMetaFragment
    }
    articles {
      ...AdminArticleFragment
    }
    products {
      ...AdminProductFragment
    }
    featured_articles {
      ...AdminArticleFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    parent_id
    child_metas
    created_at
    updated_at
    generic_url
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    posters {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    visibility
    status
  }
}
Variables
{
  "name": "string",
  "parent_id": 42,
  "type": "article_label",
  "url_slug": [TranslationInput],
  "full_url_slug": [TranslationInput],
  "canonical_url": [TranslationInput],
  "locale": "string",
  "files": [CategoryFileInput],
  "metas": [CategoryMetaInput],
  "featured_articles": [42],
  "visibility": "everyone",
  "status": 42,
  "child_metas": ["string"],
  "is_enforce_lowercase_urls": true,
  "id": 42
}
Response
{
  "data": {
    "CategoryUpdate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "type": "article_label",
      "metas": [AdminCategoryMeta],
      "articles": [AdminArticle],
      "products": [AdminProduct],
      "featured_articles": [AdminArticle],
      "icons": [File],
      "images": [File],
      "videos": [File],
      "parent_id": 42,
      "child_metas": ["string"],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "generic_url": "https://url.example.com",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "posters": [File],
      "files": [File],
      "visibility": "everyone",
      "status": "string"
    }
  }
}

ClientAuthenticate

Description

Authenticate an Admin OAuth client (client credentials grant) and issue an access token. No refresh token is issued: authenticate again when the access token expires.

Response

Returns an Authenticate

Arguments
Name Description
client_id - String The OAuth client id used to authenticate.
client_secret - String The OAuth client secret paired with client_id.
project_id - Int The Project id to authenticate the Admin OAuth client for.

Example

Query
mutation ClientAuthenticate(
  $client_id: String,
  $client_secret: String,
  $project_id: Int
) {
  ClientAuthenticate(
    client_id: $client_id,
    client_secret: $client_secret,
    project_id: $project_id
  ) {
    access_token
    refresh_token
    expires_in
    token_type
    user_id
    user_email
    active_project_id
    url
    is_terms_and_conditions_renewal_required
  }
}
Variables
{
  "client_id": "string",
  "client_secret": "string",
  "project_id": 42
}
Response
{
  "data": {
    "ClientAuthenticate": {
      "access_token": "string",
      "refresh_token": "string",
      "expires_in": 86400,
      "token_type": "string",
      "user_id": 42,
      "user_email": "foo@example.com",
      "active_project_id": 42,
      "url": "https://url.example.com",
      "is_terms_and_conditions_renewal_required": true
    }
  }
}

ClientUpdate

Description

Update a configurable OAuth client for a Project.

Response

Returns an AdminClient

Arguments
Name Description
id - Int The id of the OAuth client to update.
project_id - Int The Project id that owns the OAuth client.
is_generate_new_secret - Boolean Whether to generate a new secret for the OAuth client. Default = false
redirect_uris - [String] The allowed HTTPS redirect URI values for the OAuth client.
remote_callback_url - String The remote callback URL for CRM synchronisation events.
remote_callback_crm_contexts - [CrmSyncContextEnum] The CRM synchronisation contexts that trigger the remote callback.
password_current - String The current password of the authenticated admin User performing the client update.

Example

Query
mutation ClientUpdate(
  $id: Int,
  $project_id: Int,
  $is_generate_new_secret: Boolean,
  $redirect_uris: [String],
  $remote_callback_url: String,
  $remote_callback_crm_contexts: [CrmSyncContextEnum],
  $password_current: String
) {
  ClientUpdate(
    id: $id,
    project_id: $project_id,
    is_generate_new_secret: $is_generate_new_secret,
    redirect_uris: $redirect_uris,
    remote_callback_url: $remote_callback_url,
    remote_callback_crm_contexts: $remote_callback_crm_contexts,
    password_current: $password_current
  ) {
    id
    project_id
    name
    remote_callback_url
    remote_callback_crm_contexts
    redirect_uris
    service_type
    is_configurable
    authorization_url
    token_url
    refresh_token_url
    user_info_url
    scope
    client_id
    client_secret
  }
}
Variables
{
  "id": 42,
  "project_id": 42,
  "is_generate_new_secret": false,
  "redirect_uris": ["string"],
  "remote_callback_url": "string",
  "remote_callback_crm_contexts": ["user_article"],
  "password_current": "string"
}
Response
{
  "data": {
    "ClientUpdate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "remote_callback_url": "https://url.example.com",
      "remote_callback_crm_contexts": ["user_article"],
      "redirect_uris": ["string"],
      "service_type": "external_admin",
      "is_configurable": false,
      "authorization_url": "https://url.example.com",
      "token_url": "https://url.example.com",
      "refresh_token_url": "https://url.example.com",
      "user_info_url": "https://url.example.com",
      "scope": "string",
      "client_id": "string",
      "client_secret": "string"
    }
  }
}

FileUpdate

Description

Update File metadata such as its display title, type, duration, and locale. This does not upload new bytes, replace the stored object, or reattach the File to another resource.

Response

Returns an AdminFile

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
title - [TranslationInput] The File title translations to update

Example

Query
mutation FileUpdate(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $title: [TranslationInput]
) {
  FileUpdate(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    title: $title
  ) {
    id
    name
    title
    type
    size
    width
    height
    aspect_ratio_profile
    duration
    locale
    locale_label
    base_url
    base_path
    url
    proxy_file_path
    proxy_url
    file_name
    file_path
    title_translations {
      ...TranslationFragment
    }
    origin_url
  }
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "title": [TranslationInput]
}
Response
{
  "data": {
    "FileUpdate": {
      "id": 42,
      "name": "string",
      "title": "string",
      "type": "audio",
      "size": 42,
      "width": 42,
      "height": 42,
      "aspect_ratio_profile": "16x9",
      "duration": 42,
      "locale": "string",
      "locale_label": "string",
      "base_url": "https://url.example.com",
      "base_path": "string",
      "url": "https://url.example.com",
      "proxy_file_path": "string",
      "proxy_url": "https://url.example.com",
      "file_name": "string",
      "file_path": "string",
      "title_translations": [Translation],
      "origin_url": "https://url.example.com"
    }
  }
}

FileUpload

Description

Upload and attach a small file to a resource using either GraphQL multipart upload bytes or a public remote URL that the API can fetch server-side.

Response

Returns an AdminFile

Arguments
Name Description
project_id - Int The Project id that owns the target resource.
resource_type - FileUploadResourceTypeEnum The resource type to attach the uploaded file to, for example article.
resource_id - Int The id of the target resource, for example Article #123 uses resource_type article and resource_id 123.
file_type - FileTypeEnum The secondary file type to attach, for example image, icon, poster, document, subtitle, video, or audio.
payload - Upload Direct multipart file bytes for GraphQL clients that support the graphql-multipart-request-spec.
remote_url - String A public HTTPS URL the API can fetch server-side.
file_name - String The original file name, including extension. Required for remote_url, disallowed for payload.
mime_type - String The file MIME type. Metadata only, never used for validation (file type/extension checks are authoritative).
locale - String Optional locale for localized resource files.
replace_by_property - String Optional resource property used to replace an existing matching file.
is_override_validation - Boolean Optional validation override flag, only for callers that are allowed to bypass normal file validation.

Example

Query
mutation FileUpload(
  $project_id: Int,
  $resource_type: FileUploadResourceTypeEnum,
  $resource_id: Int,
  $file_type: FileTypeEnum,
  $payload: Upload,
  $remote_url: String,
  $file_name: String,
  $mime_type: String,
  $locale: String,
  $replace_by_property: String,
  $is_override_validation: Boolean
) {
  FileUpload(
    project_id: $project_id,
    resource_type: $resource_type,
    resource_id: $resource_id,
    file_type: $file_type,
    payload: $payload,
    remote_url: $remote_url,
    file_name: $file_name,
    mime_type: $mime_type,
    locale: $locale,
    replace_by_property: $replace_by_property,
    is_override_validation: $is_override_validation
  ) {
    id
    name
    title
    type
    size
    width
    height
    aspect_ratio_profile
    duration
    locale
    locale_label
    base_url
    base_path
    url
    proxy_file_path
    proxy_url
    file_name
    file_path
    title_translations {
      ...TranslationFragment
    }
    origin_url
  }
}
Variables
{
  "project_id": 42,
  "resource_type": "article",
  "resource_id": 42,
  "file_type": "audio",
  "payload": Upload,
  "remote_url": "string",
  "file_name": "string",
  "mime_type": "string",
  "locale": "string",
  "replace_by_property": "string",
  "is_override_validation": false
}
Response
{
  "data": {
    "FileUpload": {
      "id": 42,
      "name": "string",
      "title": "string",
      "type": "audio",
      "size": 42,
      "width": 42,
      "height": 42,
      "aspect_ratio_profile": "16x9",
      "duration": 42,
      "locale": "string",
      "locale_label": "string",
      "base_url": "https://url.example.com",
      "base_path": "string",
      "url": "https://url.example.com",
      "proxy_file_path": "string",
      "proxy_url": "https://url.example.com",
      "file_name": "string",
      "file_path": "string",
      "title_translations": [Translation],
      "origin_url": "https://url.example.com"
    }
  }
}

FileUploadTokenFetch

Description

Create a short-lived AudiencePlayer upload capability for attaching a small file to a resource. The response includes a direct multipart POST endpoint and a browser upload URL.

Response

Returns an AdminFileUploadToken

Arguments
Name Description
project_id - Int The Project id that owns the target resource.
resource_type - FileUploadResourceTypeEnum The resource type to attach the uploaded file to, for example article.
resource_id - Int The id of the target resource, for example Article #123 uses resource_type article and resource_id 123.
file_type - FileTypeEnum The secondary file type to attach, for example image, icon, poster, document, subtitle, video, or audio.
locale - String Optional locale for localized resource files.
replace_by_property - String Optional resource property used to replace an existing matching file.
is_override_validation - Boolean Optional validation override flag, only for callers that are allowed to bypass normal file validation.

Example

Query
mutation FileUploadTokenFetch(
  $project_id: Int,
  $resource_type: FileUploadResourceTypeEnum,
  $resource_id: Int,
  $file_type: FileTypeEnum,
  $locale: String,
  $replace_by_property: String,
  $is_override_validation: Boolean
) {
  FileUploadTokenFetch(
    project_id: $project_id,
    resource_type: $resource_type,
    resource_id: $resource_id,
    file_type: $file_type,
    locale: $locale,
    replace_by_property: $replace_by_property,
    is_override_validation: $is_override_validation
  ) {
    project_id
    resource_type
    resource_id
    file_type
    token
    token_type
    upload_url
    post_url
    method
    form_file_field
    expires_in
    compatibility_status
  }
}
Variables
{
  "project_id": 42,
  "resource_type": "article",
  "resource_id": 42,
  "file_type": "audio",
  "locale": "string",
  "replace_by_property": "string",
  "is_override_validation": true
}
Response
{
  "data": {
    "FileUploadTokenFetch": {
      "project_id": 42,
      "resource_type": "string",
      "resource_id": 42,
      "file_type": "string",
      "token": "string",
      "token_type": "string",
      "upload_url": "https://url.example.com",
      "post_url": "https://url.example.com",
      "method": "string",
      "form_file_field": "string",
      "expires_in": 86400,
      "compatibility_status": "string"
    }
  }
}

LanguageTagUpdate

Description

Update translated values for a LanguageTag. The LanguageTag key, platform context, and project ownership are not changed.

Response

Returns an AdminLanguageTag

Arguments
Name Description
locale - String The locale to activate before updating translated LanguageTag values.
value - [TranslationInput] The translated LanguageTag values to update.
id - Int The id of the LanguageTag to update.

Example

Query
mutation LanguageTagUpdate(
  $locale: String,
  $value: [TranslationInput],
  $id: Int
) {
  LanguageTagUpdate(
    locale: $locale,
    value: $value,
    id: $id
  ) {
    key
    value
    format
    id
    project_id
    platform_context
    value_translations {
      ...TranslationFragment
    }
  }
}
Variables
{
  "locale": "string",
  "value": [TranslationInput],
  "id": 42
}
Response
{
  "data": {
    "LanguageTagUpdate": {
      "key": "string",
      "value": "string",
      "format": "date",
      "id": 42,
      "project_id": 42,
      "platform_context": "string",
      "value_translations": [Translation]
    }
  }
}

MailTemplateFileDelete

Description

Delete an attached File from a MailTemplate.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
mail_template_id - Int The id of the MailTemplate that owns the File.

Example

Query
mutation MailTemplateFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $mail_template_id: Int
) {
  MailTemplateFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    mail_template_id: $mail_template_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "mail_template_id": 42
}
Response
{"data": {"MailTemplateFileDelete": false}}

MailTemplateSendTest

Description

Send a test e-mail for a MailTemplate to a supplied e-mail address, optionally overriding the locale used for the test send.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the MailTemplate to test.
email - String The e-mail address that should receive the test MailTemplate e-mail.
locale - String The locale to activate while sending the test MailTemplate e-mail.

Example

Query
mutation MailTemplateSendTest(
  $id: Int,
  $email: String,
  $locale: String
) {
  MailTemplateSendTest(
    id: $id,
    email: $email,
    locale: $locale
  )
}
Variables
{
  "id": 42,
  "email": "string",
  "locale": "string"
}
Response
{"data": {"MailTemplateSendTest": false}}

MailTemplateUpdate

Description

Update a MailTemplate's name, status, translated subject/content, or metadata of Files already attached to it.

Response

Returns an AdminMailTemplate

Arguments
Name Description
locale - String The locale to activate while updating translated MailTemplate fields.
name - String The MailTemplate's internal name.
subject - [TranslationInput] The translated MailTemplate subject values.
content - [TranslationInput] The translated MailTemplate content values.
status - Int The MailTemplate's publication status.
files - [MailTemplateFileInput] The existing MailTemplate files whose metadata should be updated.
id - Int The id of the MailTemplate to update.

Example

Query
mutation MailTemplateUpdate(
  $locale: String,
  $name: String,
  $subject: [TranslationInput],
  $content: [TranslationInput],
  $status: Int,
  $files: [MailTemplateFileInput],
  $id: Int
) {
  MailTemplateUpdate(
    locale: $locale,
    name: $name,
    subject: $subject,
    content: $content,
    status: $status,
    files: $files,
    id: $id
  ) {
    id
    project_id
    name
    subject
    content
    subject_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    status
    created_at
    updated_at
  }
}
Variables
{
  "locale": "string",
  "name": "string",
  "subject": [TranslationInput],
  "content": [TranslationInput],
  "status": 42,
  "files": [MailTemplateFileInput],
  "id": 42
}
Response
{
  "data": {
    "MailTemplateUpdate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "subject": "string",
      "content": "string",
      "subject_translations": [Translation],
      "content_translations": [Translation],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "files": [File],
      "status": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

MenuComponentCreate

Description

Create a new MenuComponent in a Menu. This presentation resource configures one navigation control in a frontend app, such as a link, footer link, login, search, or locale-switcher control.

Response

Returns an AdminMenuComponent

Arguments
Name Description
page_id - Int The id of the Page this MenuComponent links to. The Page must exist.
locale - String The locale to apply single-locale argument values in.
url - String The MenuComponent's url.
title - [TranslationInput] The MenuComponent's title, per locale.
content - [TranslationInput] The MenuComponent's content, per locale.
visibility - ResourceVisibilityEnum The MenuComponent's visibility. The types "authorized_only" and "non_authorized_only" require at least one related Subscription or Product (passed in this call or already set).
subscriptions - [Int] The ids of the Subscriptions related to this MenuComponent, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
products - [Int] The ids of the Products related to this MenuComponent, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
menu_id - Int The Menu id that will own the MenuComponent.
type - MenuComponentTypeEnum The MenuComponent's type.

Example

Query
mutation MenuComponentCreate(
  $page_id: Int,
  $locale: String,
  $url: String,
  $title: [TranslationInput],
  $content: [TranslationInput],
  $visibility: ResourceVisibilityEnum,
  $subscriptions: [Int],
  $products: [Int],
  $menu_id: Int,
  $type: MenuComponentTypeEnum
) {
  MenuComponentCreate(
    page_id: $page_id,
    locale: $locale,
    url: $url,
    title: $title,
    content: $content,
    visibility: $visibility,
    subscriptions: $subscriptions,
    products: $products,
    menu_id: $menu_id,
    type: $type
  ) {
    id
    parent_id
    menu_id
    page_id
    page_full_url_slug
    type
    title
    content
    url
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    visibility
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    page {
      ...AdminPageFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{
  "page_id": 42,
  "locale": "string",
  "url": "string",
  "title": [TranslationInput],
  "content": [TranslationInput],
  "visibility": "everyone",
  "subscriptions": [42],
  "products": [42],
  "menu_id": 42,
  "type": "button_url_link"
}
Response
{
  "data": {
    "MenuComponentCreate": {
      "id": 42,
      "parent_id": 42,
      "menu_id": 42,
      "page_id": 42,
      "page_full_url_slug": "url-slug-string",
      "type": "button_url_link",
      "title": "string",
      "content": "string",
      "url": "https://url.example.com",
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "files": [File],
      "visibility": "everyone",
      "title_translations": [Translation],
      "content_translations": [Translation],
      "page": AdminPage,
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

MenuComponentDelete

Description

Delete a MenuComponent and its Files. This presentation resource configures one frontend-app navigation control.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the MenuComponent to delete.

Example

Query
mutation MenuComponentDelete($id: Int) {
  MenuComponentDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"MenuComponentDelete": false}}

MenuComponentFileDelete

Description

Delete a File attached to a MenuComponent.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
menu_component_id - Int The MenuComponent id that owns the File.

Example

Query
mutation MenuComponentFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $menu_component_id: Int
) {
  MenuComponentFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    menu_component_id: $menu_component_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "menu_component_id": 42
}
Response
{"data": {"MenuComponentFileDelete": false}}

MenuComponentNodeUpdate

Description

Reorder a MenuComponent within its parent Menu. This presentation resource configures one frontend-app navigation control. Use "before" to place it immediately before the pivot component, "after" to place it immediately after, or "parent" to nest it as a child of the pivot component.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the resource being repositioned in the tree.
pivot_id - Int The id of the sibling/parent resource to position relative to (see pivot_action).
pivot_action - NodePivotActionEnum Where to place id relative to pivot_id (before it, after it, or as its child).

Example

Query
mutation MenuComponentNodeUpdate(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: NodePivotActionEnum
) {
  MenuComponentNodeUpdate(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "after"}
Response
{"data": {"MenuComponentNodeUpdate": false}}

MenuComponentUpdate

Description

Update an existing MenuComponent in a Menu. This presentation resource configures one navigation control in a frontend app. Only pass the fields you want to change; omitted fields are left unchanged. A MenuComponent links to a Page (page_id) or to an address (url). Translated fields (title, content) are passed as a list of locale/value entries. subscriptions and products replace the existing relations (an empty list clears them), and files only updates existing Files; it does not add or remove any.

Response

Returns an AdminMenuComponent

Arguments
Name Description
page_id - Int The id of the Page this MenuComponent links to. The Page must exist.
locale - String The locale to apply single-locale argument values in.
url - String The MenuComponent's url.
title - [TranslationInput] The MenuComponent's title, per locale.
content - [TranslationInput] The MenuComponent's content, per locale.
visibility - ResourceVisibilityEnum The MenuComponent's visibility. The types "authorized_only" and "non_authorized_only" require at least one related Subscription or Product (passed in this call or already set).
subscriptions - [Int] The ids of the Subscriptions related to this MenuComponent, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
products - [Int] The ids of the Products related to this MenuComponent, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
files - [MenuComponentFileInput] The MenuComponent's Files. Only updates the type, duration and locale of Files that already belong to this MenuComponent; it does not add or remove Files.
id - Int The id of the MenuComponent to update.

Example

Query
mutation MenuComponentUpdate(
  $page_id: Int,
  $locale: String,
  $url: String,
  $title: [TranslationInput],
  $content: [TranslationInput],
  $visibility: ResourceVisibilityEnum,
  $subscriptions: [Int],
  $products: [Int],
  $files: [MenuComponentFileInput],
  $id: Int
) {
  MenuComponentUpdate(
    page_id: $page_id,
    locale: $locale,
    url: $url,
    title: $title,
    content: $content,
    visibility: $visibility,
    subscriptions: $subscriptions,
    products: $products,
    files: $files,
    id: $id
  ) {
    id
    parent_id
    menu_id
    page_id
    page_full_url_slug
    type
    title
    content
    url
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    visibility
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    page {
      ...AdminPageFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{
  "page_id": 42,
  "locale": "string",
  "url": "string",
  "title": [TranslationInput],
  "content": [TranslationInput],
  "visibility": "everyone",
  "subscriptions": [42],
  "products": [42],
  "files": [MenuComponentFileInput],
  "id": 42
}
Response
{
  "data": {
    "MenuComponentUpdate": {
      "id": 42,
      "parent_id": 42,
      "menu_id": 42,
      "page_id": 42,
      "page_full_url_slug": "url-slug-string",
      "type": "button_url_link",
      "title": "string",
      "content": "string",
      "url": "https://url.example.com",
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "files": [File],
      "visibility": "everyone",
      "title_translations": [Translation],
      "content_translations": [Translation],
      "page": AdminPage,
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

MenuCreate

Description

Create a new Menu. This presentation resource configures navigation in a frontend app through MenuComponents such as links, footer links, and login, search, or locale-switcher controls, shown on the given platform_contexts. Add the MenuComponents afterwards with MenuComponentCreate. A visibility of authorized_only or non_authorized_only is rejected unless the Menu is related to at least one Subscription or Product.

Response

Returns an AdminMenu

Arguments
Name Description
name - String The Menu's name.
visibility - ResourceVisibilityEnum The Menu's visibility.
platform_contexts - [PlatformContextEnum] The platform contexts the Menu is available on.
subscriptions - [Int] The ids of the Subscriptions related to this Menu.
products - [Int] The ids of the Products related to this Menu.
locale_regions - [Int] The ids of the LocaleRegions this Menu belongs to.
geo_regions - [Int] The ids of the GeoRegions this Menu belongs to.
project_id - Int The Project id that will own the Menu.

Example

Query
mutation MenuCreate(
  $name: String,
  $visibility: ResourceVisibilityEnum,
  $platform_contexts: [PlatformContextEnum],
  $subscriptions: [Int],
  $products: [Int],
  $locale_regions: [Int],
  $geo_regions: [Int],
  $project_id: Int
) {
  MenuCreate(
    name: $name,
    visibility: $visibility,
    platform_contexts: $platform_contexts,
    subscriptions: $subscriptions,
    products: $products,
    locale_regions: $locale_regions,
    geo_regions: $geo_regions,
    project_id: $project_id
  ) {
    id
    project_id
    name
    platform_contexts
    locale_regions {
      ...LocaleRegionFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    components {
      ...AdminMenuComponentFragment
    }
    visibility
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{
  "name": "string",
  "visibility": "everyone",
  "platform_contexts": ["web"],
  "subscriptions": [42],
  "products": [42],
  "locale_regions": [42],
  "geo_regions": [42],
  "project_id": 42
}
Response
{
  "data": {
    "MenuCreate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "platform_contexts": ["string"],
      "locale_regions": [LocaleRegion],
      "geo_regions": [GeoRegion],
      "components": [AdminMenuComponent],
      "visibility": "everyone",
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

MenuDelete

Description

Delete a Menu. This presentation resource configures frontend-app navigation.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Menu to delete.

Example

Query
mutation MenuDelete($id: Int) {
  MenuDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"MenuDelete": false}}

MenuUpdate

Description

Update an existing Menu. This presentation resource configures navigation in a frontend app, including its name, visibility, platform contexts, and related Subscriptions, Products, LocaleRegions, or GeoRegions. A visibility of authorized_only or non_authorized_only is rejected unless the Menu ends up related to at least one Subscription or Product. The Menu's MenuComponents are managed through the MenuComponent operations.

Response

Returns an AdminMenu

Arguments
Name Description
name - String The Menu's name.
visibility - ResourceVisibilityEnum The Menu's visibility.
platform_contexts - [PlatformContextEnum] The platform contexts the Menu is available on.
subscriptions - [Int] The ids of the Subscriptions related to this Menu.
products - [Int] The ids of the Products related to this Menu.
locale_regions - [Int] The ids of the LocaleRegions this Menu belongs to.
geo_regions - [Int] The ids of the GeoRegions this Menu belongs to.
id - Int The id of the Menu to update.

Example

Query
mutation MenuUpdate(
  $name: String,
  $visibility: ResourceVisibilityEnum,
  $platform_contexts: [PlatformContextEnum],
  $subscriptions: [Int],
  $products: [Int],
  $locale_regions: [Int],
  $geo_regions: [Int],
  $id: Int
) {
  MenuUpdate(
    name: $name,
    visibility: $visibility,
    platform_contexts: $platform_contexts,
    subscriptions: $subscriptions,
    products: $products,
    locale_regions: $locale_regions,
    geo_regions: $geo_regions,
    id: $id
  ) {
    id
    project_id
    name
    platform_contexts
    locale_regions {
      ...LocaleRegionFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    components {
      ...AdminMenuComponentFragment
    }
    visibility
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{
  "name": "string",
  "visibility": "everyone",
  "platform_contexts": ["web"],
  "subscriptions": [42],
  "products": [42],
  "locale_regions": [42],
  "geo_regions": [42],
  "id": 42
}
Response
{
  "data": {
    "MenuUpdate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "platform_contexts": ["string"],
      "locale_regions": [LocaleRegion],
      "geo_regions": [GeoRegion],
      "components": [AdminMenuComponent],
      "visibility": "everyone",
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

MetricActionCreate

Description

Create a MetricAction, an administrative reward or fulfillment step configuration for a gamification or loyalty trigger. A matching Metric can later use it to grant Product or subscription entitlements, or invoke its configured webhook. The returned MetricAction includes the configured reward settings and its linked Metrics, Products, and eligible Users so an administrator can verify the new configuration.

Response

Returns an AdminMetricAction

Arguments
Name Description
locale - String The locale to write translatable MetricAction fields in.
name - String The MetricAction's internal name.
title - [TranslationInput] The MetricAction's translated title values.
content - [TranslationInput] The MetricAction's translated content/body values.
type - MetricActionTypeEnum The MetricAction's type.
status - MetricActionStatusEnum The MetricAction's publication status.
webhook_url - String The webhook URL to which the MetricAction fulfillment event is pushed.
user_subscription_installment_num - Int The number of User subscription installments this MetricAction entitles.
user_subscription_installment_time_unit - SubscriptionTimeUnitEnum The time unit for the User subscription installments this MetricAction entitles.
products - [ProductStackInput] The Products this MetricAction entitles when fulfilled.
eligible_users - [Int] The ids of Users eligible for this MetricAction.
metrics - [Int] The ids of Metrics that may trigger this MetricAction.
files - [MetricActionFileInput] Files already attached to the MetricAction that should be updated.
project_id - Int The Project id that will own the MetricAction.

Example

Query
mutation MetricActionCreate(
  $locale: String,
  $name: String,
  $title: [TranslationInput],
  $content: [TranslationInput],
  $type: MetricActionTypeEnum,
  $status: MetricActionStatusEnum,
  $webhook_url: String,
  $user_subscription_installment_num: Int,
  $user_subscription_installment_time_unit: SubscriptionTimeUnitEnum,
  $products: [ProductStackInput],
  $eligible_users: [Int],
  $metrics: [Int],
  $files: [MetricActionFileInput],
  $project_id: Int
) {
  MetricActionCreate(
    locale: $locale,
    name: $name,
    title: $title,
    content: $content,
    type: $type,
    status: $status,
    webhook_url: $webhook_url,
    user_subscription_installment_num: $user_subscription_installment_num,
    user_subscription_installment_time_unit: $user_subscription_installment_time_unit,
    products: $products,
    eligible_users: $eligible_users,
    metrics: $metrics,
    files: $files,
    project_id: $project_id
  ) {
    id
    project_id
    name
    title
    content
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    type
    status
    webhook_url
    user_subscription_installment_num
    user_subscription_installment_time_unit
    created_at
    updated_at
    products {
      ...AdminProductListedAsRelationFragment
    }
    eligible_users {
      ...AdminUserFragment
    }
    metrics {
      ...AdminMetricFragment
    }
  }
}
Variables
{
  "locale": "string",
  "name": "string",
  "title": [TranslationInput],
  "content": [TranslationInput],
  "type": "user_entitlement",
  "status": "inactive",
  "webhook_url": "string",
  "user_subscription_installment_num": 42,
  "user_subscription_installment_time_unit": "day",
  "products": [ProductStackInput],
  "eligible_users": [42],
  "metrics": [42],
  "files": [MetricActionFileInput],
  "project_id": 42
}
Response
{
  "data": {
    "MetricActionCreate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "title": "string",
      "content": "string",
      "icons": [File],
      "images": [File],
      "files": [File],
      "title_translations": [Translation],
      "content_translations": [Translation],
      "type": "user_entitlement",
      "status": "string",
      "webhook_url": "https://url.example.com",
      "user_subscription_installment_num": 42,
      "user_subscription_installment_time_unit": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "products": [AdminProductListedAsRelation],
      "eligible_users": [AdminUser],
      "metrics": [AdminMetric]
    }
  }
}

MetricActionDelete

Description

Delete an existing MetricAction. This removes the fulfillment configuration from every Metric that references it.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the MetricAction to delete.

Example

Query
mutation MetricActionDelete($id: Int) {
  MetricActionDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"MetricActionDelete": false}}

MetricActionFileDelete

Description

Delete a File attached to a MetricAction.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
metric_action_id - Int The id of the MetricAction the File belongs to.

Example

Query
mutation MetricActionFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $metric_action_id: Int
) {
  MetricActionFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    metric_action_id: $metric_action_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "metric_action_id": 42
}
Response
{"data": {"MetricActionFileDelete": false}}

MetricActionUpdate

Description

Update an existing MetricAction, an administrative reward or fulfillment configuration that a matching Metric can later use to grant Product or subscription entitlements, or invoke its configured webhook. The returned MetricAction includes the resulting reward settings and its linked Metrics, Products, and eligible Users so an administrator can verify the configuration.

Response

Returns an AdminMetricAction

Arguments
Name Description
locale - String The locale to write translatable MetricAction fields in.
name - String The MetricAction's internal name.
title - [TranslationInput] The MetricAction's translated title values.
content - [TranslationInput] The MetricAction's translated content/body values.
type - MetricActionTypeEnum The MetricAction's type.
status - MetricActionStatusEnum The MetricAction's publication status.
webhook_url - String The webhook URL to which the MetricAction fulfillment event is pushed.
user_subscription_installment_num - Int The number of User subscription installments this MetricAction entitles.
user_subscription_installment_time_unit - SubscriptionTimeUnitEnum The time unit for the User subscription installments this MetricAction entitles.
products - [ProductStackInput] The Products this MetricAction entitles when fulfilled.
eligible_users - [Int] The ids of Users eligible for this MetricAction.
metrics - [Int] The ids of Metrics that may trigger this MetricAction.
files - [MetricActionFileInput] Files already attached to the MetricAction that should be updated.
id - Int The id of the MetricAction to update.

Example

Query
mutation MetricActionUpdate(
  $locale: String,
  $name: String,
  $title: [TranslationInput],
  $content: [TranslationInput],
  $type: MetricActionTypeEnum,
  $status: MetricActionStatusEnum,
  $webhook_url: String,
  $user_subscription_installment_num: Int,
  $user_subscription_installment_time_unit: SubscriptionTimeUnitEnum,
  $products: [ProductStackInput],
  $eligible_users: [Int],
  $metrics: [Int],
  $files: [MetricActionFileInput],
  $id: Int
) {
  MetricActionUpdate(
    locale: $locale,
    name: $name,
    title: $title,
    content: $content,
    type: $type,
    status: $status,
    webhook_url: $webhook_url,
    user_subscription_installment_num: $user_subscription_installment_num,
    user_subscription_installment_time_unit: $user_subscription_installment_time_unit,
    products: $products,
    eligible_users: $eligible_users,
    metrics: $metrics,
    files: $files,
    id: $id
  ) {
    id
    project_id
    name
    title
    content
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    type
    status
    webhook_url
    user_subscription_installment_num
    user_subscription_installment_time_unit
    created_at
    updated_at
    products {
      ...AdminProductListedAsRelationFragment
    }
    eligible_users {
      ...AdminUserFragment
    }
    metrics {
      ...AdminMetricFragment
    }
  }
}
Variables
{
  "locale": "string",
  "name": "string",
  "title": [TranslationInput],
  "content": [TranslationInput],
  "type": "user_entitlement",
  "status": "inactive",
  "webhook_url": "string",
  "user_subscription_installment_num": 42,
  "user_subscription_installment_time_unit": "day",
  "products": [ProductStackInput],
  "eligible_users": [42],
  "metrics": [42],
  "files": [MetricActionFileInput],
  "id": 42
}
Response
{
  "data": {
    "MetricActionUpdate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "title": "string",
      "content": "string",
      "icons": [File],
      "images": [File],
      "files": [File],
      "title_translations": [Translation],
      "content_translations": [Translation],
      "type": "user_entitlement",
      "status": "string",
      "webhook_url": "https://url.example.com",
      "user_subscription_installment_num": 42,
      "user_subscription_installment_time_unit": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "products": [AdminProductListedAsRelation],
      "eligible_users": [AdminUser],
      "metrics": [AdminMetric]
    }
  }
}

MetricConditionCreate

Description

Create a MetricCondition for an existing Metric. MetricConditions define the qualifying event or milestone a User must match before a gamification or loyalty trigger can issue its MetricActions.

Response

Returns an AdminMetricCondition

Arguments
Name Description
type - MetricConditionTypeEnum The MetricCondition's type, the resource property it evaluates.
logic_operator - LogicOperatorEnum The comparison operator used between type and value.
value - String The value to compare against the MetricCondition type.
metric_id - Int The id of the Metric that will own the MetricCondition.

Example

Query
mutation MetricConditionCreate(
  $type: MetricConditionTypeEnum,
  $logic_operator: LogicOperatorEnum,
  $value: String,
  $metric_id: Int
) {
  MetricConditionCreate(
    type: $type,
    logic_operator: $logic_operator,
    value: $value,
    metric_id: $metric_id
  ) {
    id
    metric_id
    type
    logic_operator
    value
    created_at
    updated_at
  }
}
Variables
{
  "type": "appa",
  "logic_operator": "equals",
  "value": "string",
  "metric_id": 42
}
Response
{
  "data": {
    "MetricConditionCreate": {
      "id": 42,
      "metric_id": 42,
      "type": "appa",
      "logic_operator": "equals",
      "value": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

MetricConditionDelete

Description

Delete an existing MetricCondition from its parent Metric. This removes one criterion used to decide whether a User qualifies when the Metric is evaluated.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the MetricCondition to delete.

Example

Query
mutation MetricConditionDelete($id: Int) {
  MetricConditionDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"MetricConditionDelete": true}}

MetricConditionUpdate

Description

Update an existing MetricCondition: a criterion that determines whether a User qualifies when its parent Metric is evaluated.

Response

Returns an AdminMetricCondition

Arguments
Name Description
type - MetricConditionTypeEnum The MetricCondition's type, the resource property it evaluates.
logic_operator - LogicOperatorEnum The comparison operator used between type and value.
value - String The value to compare against the MetricCondition type.
id - Int The id of the MetricCondition to update.

Example

Query
mutation MetricConditionUpdate(
  $type: MetricConditionTypeEnum,
  $logic_operator: LogicOperatorEnum,
  $value: String,
  $id: Int
) {
  MetricConditionUpdate(
    type: $type,
    logic_operator: $logic_operator,
    value: $value,
    id: $id
  ) {
    id
    metric_id
    type
    logic_operator
    value
    created_at
    updated_at
  }
}
Variables
{
  "type": "appa",
  "logic_operator": "equals",
  "value": "string",
  "id": 42
}
Response
{
  "data": {
    "MetricConditionUpdate": {
      "id": 42,
      "metric_id": 42,
      "type": "appa",
      "logic_operator": "equals",
      "value": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

MetricCreate

Description

Create a Metric: a gamification and loyalty trigger, evaluated over a time window, that decides which Users qualify from its configured resources and MetricConditions, then triggers its linked MetricActions when evaluated. The returned Metric contains that configuration and its currently linked relations. It is created without conditions; add them afterwards with MetricConditionCreate.

Response

Returns an AdminMetric

Arguments
Name Description
name - String The Metric's name.
description - String The Metric's description.
type - MetricTypeEnum The Metric's type (Article, Product or Subscription), which determines how the Metric is evaluated. MetricCondition creation does not check condition types against this type, so attach only condition types that suit it.
status - MetricStatusEnum The Metric's publication status.
time_window - Int The Metric's time window (hours), leading up to the moment of evaluation.
published_from - String The UTC date/time from which the Metric may be evaluated.
published_until - String The UTC date/time until which the Metric may be evaluated.
categories - [Int] The ids of Categories that scope this Metric.
articles - [Int] The ids of Articles that scope this Metric.
products - [Int] The ids of Products that scope this Metric.
subscriptions - [Int] The ids of Subscriptions that scope this Metric.
eligible_users - [Int] The ids of Users eligible for this Metric.
metric_actions - [Int] The ids of MetricActions triggered by this Metric.
project_id - Int The Project id that will own the Metric.

Example

Query
mutation MetricCreate(
  $name: String,
  $description: String,
  $type: MetricTypeEnum,
  $status: MetricStatusEnum,
  $time_window: Int,
  $published_from: String,
  $published_until: String,
  $categories: [Int],
  $articles: [Int],
  $products: [Int],
  $subscriptions: [Int],
  $eligible_users: [Int],
  $metric_actions: [Int],
  $project_id: Int
) {
  MetricCreate(
    name: $name,
    description: $description,
    type: $type,
    status: $status,
    time_window: $time_window,
    published_from: $published_from,
    published_until: $published_until,
    categories: $categories,
    articles: $articles,
    products: $products,
    subscriptions: $subscriptions,
    eligible_users: $eligible_users,
    metric_actions: $metric_actions,
    project_id: $project_id
  ) {
    id
    project_id
    name
    description
    time_window
    type
    published_from
    published_until
    created_at
    updated_at
    status
    conditions {
      ...AdminMetricConditionFragment
    }
    articles {
      ...AdminArticleFragment
    }
    categories {
      ...AdminCategoryFragment
    }
    products {
      ...AdminProductFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    eligible_users {
      ...AdminUserFragment
    }
    metric_actions {
      ...AdminMetricActionFragment
    }
  }
}
Variables
{
  "name": "string",
  "description": "string",
  "type": "article",
  "status": "inactive",
  "time_window": 42,
  "published_from": "string",
  "published_until": "string",
  "categories": [42],
  "articles": [42],
  "products": [42],
  "subscriptions": [42],
  "eligible_users": [42],
  "metric_actions": [42],
  "project_id": 42
}
Response
{
  "data": {
    "MetricCreate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "description": "string",
      "time_window": 42,
      "type": "article",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "status": "string",
      "conditions": [AdminMetricCondition],
      "articles": [AdminArticle],
      "categories": [AdminCategory],
      "products": [AdminProduct],
      "subscriptions": [AdminSubscription],
      "eligible_users": [AdminUser],
      "metric_actions": [AdminMetricAction]
    }
  }
}

MetricDelete

Description

Delete an existing Metric.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Metric to delete.

Example

Query
mutation MetricDelete($id: Int) {
  MetricDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"MetricDelete": false}}

MetricEvaluateMutation

Description

Evaluate an active Metric for matching Users and queue its configured gamification or loyalty rewards. Matching Users can receive the MetricActions' configured Product or subscription entitlements, and configured webhook actions can be invoked.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Metric to evaluate.

Example

Query
mutation MetricEvaluateMutation($id: Int) {
  MetricEvaluateMutation(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"MetricEvaluateMutation": true}}

MetricUpdate

Description

Update an existing Metric's eligibility configuration, including its evaluation window, resource and User scope, schedule, publication status, and linked MetricActions. The returned Metric contains the resulting configuration and its currently linked relations. Manage MetricConditions through their dedicated operations.

Response

Returns an AdminMetric

Arguments
Name Description
name - String The Metric's name.
description - String The Metric's description.
type - MetricTypeEnum The Metric's type, which determines which MetricCondition types can be attached.
status - MetricStatusEnum The Metric's publication status.
time_window - Int The Metric's time window (hours), leading up to the moment of evaluation.
published_from - String The UTC date/time from which the Metric may be evaluated.
published_until - String The UTC date/time until which the Metric may be evaluated.
categories - [Int] The ids of Categories that scope this Metric.
articles - [Int] The ids of Articles that scope this Metric.
products - [Int] The ids of Products that scope this Metric.
subscriptions - [Int] The ids of Subscriptions that scope this Metric.
eligible_users - [Int] The ids of Users eligible for this Metric.
conditions - [Int] Currently ignored: this argument is accepted but has no effect. MetricConditions are created, updated and deleted through the MetricCondition operations.
metric_actions - [Int] The ids of MetricActions triggered by this Metric.
id - Int The id of the Metric to update.

Example

Query
mutation MetricUpdate(
  $name: String,
  $description: String,
  $type: MetricTypeEnum,
  $status: MetricStatusEnum,
  $time_window: Int,
  $published_from: String,
  $published_until: String,
  $categories: [Int],
  $articles: [Int],
  $products: [Int],
  $subscriptions: [Int],
  $eligible_users: [Int],
  $conditions: [Int],
  $metric_actions: [Int],
  $id: Int
) {
  MetricUpdate(
    name: $name,
    description: $description,
    type: $type,
    status: $status,
    time_window: $time_window,
    published_from: $published_from,
    published_until: $published_until,
    categories: $categories,
    articles: $articles,
    products: $products,
    subscriptions: $subscriptions,
    eligible_users: $eligible_users,
    conditions: $conditions,
    metric_actions: $metric_actions,
    id: $id
  ) {
    id
    project_id
    name
    description
    time_window
    type
    published_from
    published_until
    created_at
    updated_at
    status
    conditions {
      ...AdminMetricConditionFragment
    }
    articles {
      ...AdminArticleFragment
    }
    categories {
      ...AdminCategoryFragment
    }
    products {
      ...AdminProductFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    eligible_users {
      ...AdminUserFragment
    }
    metric_actions {
      ...AdminMetricActionFragment
    }
  }
}
Variables
{
  "name": "string",
  "description": "string",
  "type": "article",
  "status": "inactive",
  "time_window": 42,
  "published_from": "string",
  "published_until": "string",
  "categories": [42],
  "articles": [42],
  "products": [42],
  "subscriptions": [42],
  "eligible_users": [42],
  "conditions": [42],
  "metric_actions": [42],
  "id": 42
}
Response
{
  "data": {
    "MetricUpdate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "description": "string",
      "time_window": 42,
      "type": "article",
      "published_from": "string",
      "published_until": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "status": "string",
      "conditions": [AdminMetricCondition],
      "articles": [AdminArticle],
      "categories": [AdminCategory],
      "products": [AdminProduct],
      "subscriptions": [AdminSubscription],
      "eligible_users": [AdminUser],
      "metric_actions": [AdminMetricAction]
    }
  }
}

NotificationCreate

Description

Create a Notification that is delivered to Users through push (or another channel context). The type decides the lifecycle: "single" is sent once (see schedule_at), "recurring" is sent periodically (frequency per time_unit), "reminder_after_article_inactivity" is a recurring reminder for Users who stopped watching, and "related" is a child Notification that must be linked to a parent through parent_id and inherits its frequency, time_unit and delivery_type unless you set them. The audience is set by delivery_type (default "personalised_users_on_topic") and the NotificationTopics in notification_topics. Title and content are passed as a list of locale/value entries. Files cannot be passed on creation.

Response

Returns an AdminNotification

Arguments
Name Description
name - String The Notification's internal name.
parent_id - Int The id of the parent Notification. Required for Notifications of type "related", and only allowed for them. The parent must exist.
locale - String The locale to activate while applying translated Notification fields.
title - [TranslationInput] The Notification's localized titles.
content - [TranslationInput] The Notification's localized content.
url - String The URL or route triggered when the Notification is tapped.
delivery_type - NotificationDeliveryTypeEnum The Notification's delivery audience strategy. Default = personalised_users_on_topic
type - NotificationTypeEnum The Notification's lifecycle and behavior type.
status - Int The Notification's publication status: 1 for active, 0 for inactive.
time_unit - SubscriptionTimeUnitEnum The Notification's recurring delivery time unit.
frequency - Float The Notification's recurring delivery frequency per time unit.
schedule_at - String The UTC datetime when the Notification should be scheduled for delivery, formatted as Y-m-d\TH:i:s\Z (for example 2026-10-06T09:30:00Z) and before 2038.
articles - [Int] The ids of Articles related to this Notification.
categories - [Int] The ids of Categories related to this Notification.
notification_topics - [Int] The ids of NotificationTopics under which this Notification is sent.
notification_channel_contexts - [NotificationChannelContextEnum] The delivery channel contexts used by this Notification. Default = [push]
project_id - Int The Project id that will own the Notification.

Example

Query
mutation NotificationCreate(
  $name: String,
  $parent_id: Int,
  $locale: String,
  $title: [TranslationInput],
  $content: [TranslationInput],
  $url: String,
  $delivery_type: NotificationDeliveryTypeEnum,
  $type: NotificationTypeEnum,
  $status: Int,
  $time_unit: SubscriptionTimeUnitEnum,
  $frequency: Float,
  $schedule_at: String,
  $articles: [Int],
  $categories: [Int],
  $notification_topics: [Int],
  $notification_channel_contexts: [NotificationChannelContextEnum],
  $project_id: Int
) {
  NotificationCreate(
    name: $name,
    parent_id: $parent_id,
    locale: $locale,
    title: $title,
    content: $content,
    url: $url,
    delivery_type: $delivery_type,
    type: $type,
    status: $status,
    time_unit: $time_unit,
    frequency: $frequency,
    schedule_at: $schedule_at,
    articles: $articles,
    categories: $categories,
    notification_topics: $notification_topics,
    notification_channel_contexts: $notification_channel_contexts,
    project_id: $project_id
  ) {
    id
    project_id
    parent_id
    name
    title
    content
    url
    delivery_type
    type
    notification_channel_contexts
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    children {
      ...AdminNotificationFragment
    }
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    articles {
      ...AdminArticleFragment
    }
    categories {
      ...AdminCategoryFragment
    }
    notification_topics {
      ...AdminNotificationTopicFragment
    }
    frequency
    time_unit
    status
    schedule_at
    delivered_at
    created_at
    updated_at
  }
}
Variables
{
  "name": "string",
  "parent_id": 42,
  "locale": "string",
  "title": [TranslationInput],
  "content": [TranslationInput],
  "url": "string",
  "delivery_type": "personalised_users_on_topic",
  "type": "single",
  "status": 42,
  "time_unit": "day",
  "frequency": 123.45,
  "schedule_at": "string",
  "articles": [42],
  "categories": [42],
  "notification_topics": [42],
  "notification_channel_contexts": ["push"],
  "project_id": 42
}
Response
{
  "data": {
    "NotificationCreate": {
      "id": 42,
      "project_id": 42,
      "parent_id": 42,
      "name": "string",
      "title": "string",
      "content": "string",
      "url": "https://url.example.com",
      "delivery_type": "generic_users_on_topic",
      "type": "single",
      "notification_channel_contexts": [
        "string"
      ],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "files": [File],
      "children": [AdminNotification],
      "title_translations": [Translation],
      "content_translations": [Translation],
      "articles": [AdminArticle],
      "categories": [AdminCategory],
      "notification_topics": [AdminNotificationTopic],
      "frequency": 1,
      "time_unit": "day",
      "status": "string",
      "schedule_at": "2000-12-31T12:34:56.000Z",
      "delivered_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

NotificationDelete

Description

Delete an existing Notification and its Files.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Notification to delete.

Example

Query
mutation NotificationDelete($id: Int) {
  NotificationDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"NotificationDelete": false}}

NotificationFileDelete

Description

Delete a File attached to a Notification.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
notification_id - Int The id of the Notification that owns the File.

Example

Query
mutation NotificationFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $notification_id: Int
) {
  NotificationFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    notification_id: $notification_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "notification_id": 42
}
Response
{"data": {"NotificationFileDelete": true}}

NotificationNodeUpdate

Description

Reposition a Notification within the Notification tree, relative to another node.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the resource being repositioned in the tree.
pivot_id - Int The id of the sibling/parent resource to position relative to (see pivot_action).
pivot_action - NodePivotActionEnum Where to place id relative to pivot_id (before it, after it, or as its child).

Example

Query
mutation NotificationNodeUpdate(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: NodePivotActionEnum
) {
  NotificationNodeUpdate(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "after"}
Response
{"data": {"NotificationNodeUpdate": true}}

NotificationTopicCreate

Description

Create a NotificationTopic.

Response

Returns an AdminNotificationTopic

Arguments
Name Description
name - String The NotificationTopic's internal name.
locale - String The locale to activate while applying translated NotificationTopic fields.
title - [TranslationInput] The NotificationTopic's localized titles.
description - [TranslationInput] The NotificationTopic's localized descriptions.
type - NotificationTopicTypeEnum The NotificationTopic's content type.
status - Int The NotificationTopic's publication status.
notifications - [Int] The ids of Notifications assigned to this NotificationTopic.
project_id - Int The Project id that will own the NotificationTopic.

Example

Query
mutation NotificationTopicCreate(
  $name: String,
  $locale: String,
  $title: [TranslationInput],
  $description: [TranslationInput],
  $type: NotificationTopicTypeEnum,
  $status: Int,
  $notifications: [Int],
  $project_id: Int
) {
  NotificationTopicCreate(
    name: $name,
    locale: $locale,
    title: $title,
    description: $description,
    type: $type,
    status: $status,
    notifications: $notifications,
    project_id: $project_id
  ) {
    id
    remote_notification_topic_id
    project_id
    name
    title
    description
    title_translations {
      ...TranslationFragment
    }
    description_translations {
      ...TranslationFragment
    }
    notifications {
      ...AdminNotificationFragment
    }
    type
    status
    created_at
    updated_at
  }
}
Variables
{
  "name": "string",
  "locale": "string",
  "title": [TranslationInput],
  "description": [TranslationInput],
  "type": "general",
  "status": 42,
  "notifications": [42],
  "project_id": 42
}
Response
{
  "data": {
    "NotificationTopicCreate": {
      "id": 42,
      "remote_notification_topic_id": "string",
      "project_id": 42,
      "name": "string",
      "title": "string",
      "description": "string",
      "title_translations": [Translation],
      "description_translations": [Translation],
      "notifications": [AdminNotification],
      "type": "general",
      "status": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

NotificationTopicDelete

Description

Delete an existing NotificationTopic.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the NotificationTopic to delete.

Example

Query
mutation NotificationTopicDelete($id: Int) {
  NotificationTopicDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"NotificationTopicDelete": true}}

NotificationTopicUpdate

Description

Update an existing NotificationTopic.

Response

Returns an AdminNotificationTopic

Arguments
Name Description
name - String The NotificationTopic's internal name.
locale - String The locale to activate while applying translated NotificationTopic fields.
title - [TranslationInput] The NotificationTopic's localized titles.
description - [TranslationInput] The NotificationTopic's localized descriptions.
type - NotificationTopicTypeEnum The NotificationTopic's content type.
status - Int The NotificationTopic's publication status.
notifications - [Int] The ids of Notifications assigned to this NotificationTopic.
id - Int The id of the NotificationTopic to update.

Example

Query
mutation NotificationTopicUpdate(
  $name: String,
  $locale: String,
  $title: [TranslationInput],
  $description: [TranslationInput],
  $type: NotificationTopicTypeEnum,
  $status: Int,
  $notifications: [Int],
  $id: Int
) {
  NotificationTopicUpdate(
    name: $name,
    locale: $locale,
    title: $title,
    description: $description,
    type: $type,
    status: $status,
    notifications: $notifications,
    id: $id
  ) {
    id
    remote_notification_topic_id
    project_id
    name
    title
    description
    title_translations {
      ...TranslationFragment
    }
    description_translations {
      ...TranslationFragment
    }
    notifications {
      ...AdminNotificationFragment
    }
    type
    status
    created_at
    updated_at
  }
}
Variables
{
  "name": "string",
  "locale": "string",
  "title": [TranslationInput],
  "description": [TranslationInput],
  "type": "general",
  "status": 42,
  "notifications": [42],
  "id": 42
}
Response
{
  "data": {
    "NotificationTopicUpdate": {
      "id": 42,
      "remote_notification_topic_id": "string",
      "project_id": 42,
      "name": "string",
      "title": "string",
      "description": "string",
      "title_translations": [Translation],
      "description_translations": [Translation],
      "notifications": [AdminNotification],
      "type": "general",
      "status": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

NotificationUpdate

Description

Update an existing Notification. Only pass the fields you want to change; omitted fields are left unchanged. Title and content are passed as a list of locale/value entries, and the relation lists (articles, categories, notification_topics, notification_channel_contexts) replace the existing set (an empty list clears it). A "related" Notification must keep a parent through parent_id, and only Notifications of type "related" can have one.

Response

Returns an AdminNotification

Arguments
Name Description
name - String The Notification's internal name.
parent_id - Int The id of the parent Notification. Required for Notifications of type "related", and only allowed for them. The parent must exist.
locale - String The locale to activate while applying translated Notification fields.
title - [TranslationInput] The Notification's localized titles.
content - [TranslationInput] The Notification's localized content.
url - String The URL or route triggered when the Notification is tapped.
delivery_type - NotificationDeliveryTypeEnum The Notification's delivery audience strategy. The type "reminder_after_article_inactivity" requires "personalised_users_on_topic".
type - NotificationTypeEnum The Notification's lifecycle and behavior type.
status - Int The Notification's publication status: 1 for active, 0 for inactive.
time_unit - SubscriptionTimeUnitEnum The Notification's recurring delivery time unit.
frequency - Float The Notification's recurring delivery frequency per time unit.
schedule_at - String The UTC datetime when the Notification should be scheduled for delivery, formatted as Y-m-d\TH:i:s\Z (for example 2026-10-06T09:30:00Z) and before 2038.
articles - [Int] The ids of Articles related to this Notification.
categories - [Int] The ids of Categories related to this Notification.
notification_topics - [Int] The ids of NotificationTopics under which this Notification is sent.
notification_channel_contexts - [NotificationChannelContextEnum] The delivery channel contexts used by this Notification.
files - [NotificationFileInput] Files attached to this Notification. Only updates the type, duration and locale of Files that already belong to this Notification; it does not add or remove Files.
id - Int The id of the Notification to update.

Example

Query
mutation NotificationUpdate(
  $name: String,
  $parent_id: Int,
  $locale: String,
  $title: [TranslationInput],
  $content: [TranslationInput],
  $url: String,
  $delivery_type: NotificationDeliveryTypeEnum,
  $type: NotificationTypeEnum,
  $status: Int,
  $time_unit: SubscriptionTimeUnitEnum,
  $frequency: Float,
  $schedule_at: String,
  $articles: [Int],
  $categories: [Int],
  $notification_topics: [Int],
  $notification_channel_contexts: [NotificationChannelContextEnum],
  $files: [NotificationFileInput],
  $id: Int
) {
  NotificationUpdate(
    name: $name,
    parent_id: $parent_id,
    locale: $locale,
    title: $title,
    content: $content,
    url: $url,
    delivery_type: $delivery_type,
    type: $type,
    status: $status,
    time_unit: $time_unit,
    frequency: $frequency,
    schedule_at: $schedule_at,
    articles: $articles,
    categories: $categories,
    notification_topics: $notification_topics,
    notification_channel_contexts: $notification_channel_contexts,
    files: $files,
    id: $id
  ) {
    id
    project_id
    parent_id
    name
    title
    content
    url
    delivery_type
    type
    notification_channel_contexts
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    children {
      ...AdminNotificationFragment
    }
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    articles {
      ...AdminArticleFragment
    }
    categories {
      ...AdminCategoryFragment
    }
    notification_topics {
      ...AdminNotificationTopicFragment
    }
    frequency
    time_unit
    status
    schedule_at
    delivered_at
    created_at
    updated_at
  }
}
Variables
{
  "name": "string",
  "parent_id": 42,
  "locale": "string",
  "title": [TranslationInput],
  "content": [TranslationInput],
  "url": "string",
  "delivery_type": "generic_users_on_topic",
  "type": "single",
  "status": 42,
  "time_unit": "day",
  "frequency": 987.65,
  "schedule_at": "string",
  "articles": [42],
  "categories": [42],
  "notification_topics": [42],
  "notification_channel_contexts": ["sms"],
  "files": [NotificationFileInput],
  "id": 42
}
Response
{
  "data": {
    "NotificationUpdate": {
      "id": 42,
      "project_id": 42,
      "parent_id": 42,
      "name": "string",
      "title": "string",
      "content": "string",
      "url": "https://url.example.com",
      "delivery_type": "generic_users_on_topic",
      "type": "single",
      "notification_channel_contexts": [
        "string"
      ],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "files": [File],
      "children": [AdminNotification],
      "title_translations": [Translation],
      "content_translations": [Translation],
      "articles": [AdminArticle],
      "categories": [AdminCategory],
      "notification_topics": [AdminNotificationTopic],
      "frequency": 1,
      "time_unit": "day",
      "status": "string",
      "schedule_at": "2000-12-31T12:34:56.000Z",
      "delivered_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

OauthProviderCreate

Description

Create an OAuth2 provider for Single Sign-On (SSO), either with pre-configured endpoints for a supported type (Google, Microsoft, Facebook, GitHub, LinkedIn, X) or as a fully custom "generic" OAuth2 provider with manually configured endpoints.

Response

Returns an AdminOauthProvider

Arguments
Name Description
locale - String The locale used for translated OAuth2 provider fields.
name - String The OAuth2 provider's internal name.
call_to_action_tag - [TranslationInput] The OAuth2 provider's translated call-to-action label.
is_auto_create_user - Boolean Whether to automatically create a local User account when the remote OAuth2 User e-mail address does not yet exist locally. Default = false
allowed_origin_domains - [String] The allowed domain names or URLs from which an OAuth2 authentication request may be initiated.
client_id - String The OAuth2 provider's remote client id.
client_secret - String The OAuth2 provider's remote client secret.
status - OauthProviderStatusEnum The OAuth2 provider's publication status.
type - OauthProviderTypeEnum The OAuth2 provider's platform type.
scopes - [String] The OAuth2 provider's permission scopes.
scope_separator - String The separator used when sending multiple scopes to the remote OAuth2 provider.
auth_url - String The remote OAuth2 provider's authorization URL.
token_url - String The remote OAuth2 provider's token URL.
user_info_url - String The remote OAuth2 provider's user-info URL.
email_info_url - String The remote OAuth2 provider's e-mail-info URL.
user_map - String The JSON mapping from remote OAuth2 user-info fields to local User fields.
custom_data - String The JSON custom data used for provider-specific request options or headers.
project_id - Int The Project id that will own the OAuth2 provider.

Example

Query
mutation OauthProviderCreate(
  $locale: String,
  $name: String,
  $call_to_action_tag: [TranslationInput],
  $is_auto_create_user: Boolean,
  $allowed_origin_domains: [String],
  $client_id: String,
  $client_secret: String,
  $status: OauthProviderStatusEnum,
  $type: OauthProviderTypeEnum,
  $scopes: [String],
  $scope_separator: String,
  $auth_url: String,
  $token_url: String,
  $user_info_url: String,
  $email_info_url: String,
  $user_map: String,
  $custom_data: String,
  $project_id: Int
) {
  OauthProviderCreate(
    locale: $locale,
    name: $name,
    call_to_action_tag: $call_to_action_tag,
    is_auto_create_user: $is_auto_create_user,
    allowed_origin_domains: $allowed_origin_domains,
    client_id: $client_id,
    client_secret: $client_secret,
    status: $status,
    type: $type,
    scopes: $scopes,
    scope_separator: $scope_separator,
    auth_url: $auth_url,
    token_url: $token_url,
    user_info_url: $user_info_url,
    email_info_url: $email_info_url,
    user_map: $user_map,
    custom_data: $custom_data,
    project_id: $project_id
  ) {
    id
    project_id
    call_to_action_tag
    name
    call_to_action_tag_translations {
      ...TranslationFragment
    }
    is_auto_create_user
    allowed_origin_domains
    client_id
    client_secret
    redirect_url
    status
    type
    scopes
    scope_separator
    auth_url
    token_url
    user_info_url
    email_info_url
    user_map
    custom_data
    created_at
    updated_at
    files {
      ...FileFragment
    }
    icons {
      ...FileFragment
    }
  }
}
Variables
{
  "locale": "string",
  "name": "string",
  "call_to_action_tag": [TranslationInput],
  "is_auto_create_user": false,
  "allowed_origin_domains": ["string"],
  "client_id": "string",
  "client_secret": "string",
  "status": "inactive",
  "type": "google",
  "scopes": ["string"],
  "scope_separator": "string",
  "auth_url": "string",
  "token_url": "string",
  "user_info_url": "string",
  "email_info_url": "string",
  "user_map": "string",
  "custom_data": "string",
  "project_id": 42
}
Response
{
  "data": {
    "OauthProviderCreate": {
      "id": 42,
      "project_id": 42,
      "call_to_action_tag": "string",
      "name": "string",
      "call_to_action_tag_translations": [Translation],
      "is_auto_create_user": true,
      "allowed_origin_domains": ["string"],
      "client_id": "string",
      "client_secret": "string",
      "redirect_url": "https://url.example.com",
      "status": "string",
      "type": "google",
      "scopes": ["string"],
      "scope_separator": "string",
      "auth_url": "https://url.example.com",
      "token_url": "https://url.example.com",
      "user_info_url": "https://url.example.com",
      "email_info_url": "foo@example.com",
      "user_map": "string",
      "custom_data": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "files": [File],
      "icons": [File]
    }
  }
}

OauthProviderDelete

Description

Delete an existing OAuth2 provider and its Files.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the OAuth2 provider to delete.

Example

Query
mutation OauthProviderDelete($id: Int) {
  OauthProviderDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"OauthProviderDelete": true}}

OauthProviderFileDelete

Description

Delete a File attached to an OAuth2 provider.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
oauth_provider_id - Int The id of the OAuth2 provider whose File should be deleted.

Example

Query
mutation OauthProviderFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $oauth_provider_id: Int
) {
  OauthProviderFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    oauth_provider_id: $oauth_provider_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "oauth_provider_id": 42
}
Response
{"data": {"OauthProviderFileDelete": true}}

OauthProviderNodeUpdate

Description

Reposition an OAuth2 provider in the Project's sign-in-provider order.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the resource being repositioned in the tree.
pivot_id - Int The id of the sibling/parent resource to position relative to (see pivot_action).
pivot_action - NodePivotActionEnum Where to place id relative to pivot_id (before it, after it, or as its child).

Example

Query
mutation OauthProviderNodeUpdate(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: NodePivotActionEnum
) {
  OauthProviderNodeUpdate(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "after"}
Response
{"data": {"OauthProviderNodeUpdate": false}}

OauthProviderUpdate

Description

Update an existing OAuth2 provider's sign-in and account-mapping configuration.

Response

Returns an AdminOauthProvider

Arguments
Name Description
locale - String The locale used for translated OAuth2 provider fields.
name - String The OAuth2 provider's internal name.
call_to_action_tag - [TranslationInput] The OAuth2 provider's translated call-to-action label.
is_auto_create_user - Boolean Whether to automatically create a local User account when the remote OAuth2 User e-mail address does not yet exist locally. Default = false
allowed_origin_domains - [String] The allowed domain names or URLs from which an OAuth2 authentication request may be initiated.
client_id - String The OAuth2 provider's remote client id.
client_secret - String The OAuth2 provider's remote client secret.
status - OauthProviderStatusEnum The OAuth2 provider's publication status.
type - OauthProviderTypeEnum The OAuth2 provider's platform type.
scopes - [String] The OAuth2 provider's permission scopes.
scope_separator - String The separator used when sending multiple scopes to the remote OAuth2 provider.
auth_url - String The remote OAuth2 provider's authorization URL.
token_url - String The remote OAuth2 provider's token URL.
user_info_url - String The remote OAuth2 provider's user-info URL.
email_info_url - String The remote OAuth2 provider's e-mail-info URL.
user_map - String The JSON mapping from remote OAuth2 user-info fields to local User fields.
custom_data - String The JSON custom data used for provider-specific request options or headers.
id - Int The id of the OAuth2 provider to update.
project_id - Int The Project id that owns the OAuth2 provider.

Example

Query
mutation OauthProviderUpdate(
  $locale: String,
  $name: String,
  $call_to_action_tag: [TranslationInput],
  $is_auto_create_user: Boolean,
  $allowed_origin_domains: [String],
  $client_id: String,
  $client_secret: String,
  $status: OauthProviderStatusEnum,
  $type: OauthProviderTypeEnum,
  $scopes: [String],
  $scope_separator: String,
  $auth_url: String,
  $token_url: String,
  $user_info_url: String,
  $email_info_url: String,
  $user_map: String,
  $custom_data: String,
  $id: Int,
  $project_id: Int
) {
  OauthProviderUpdate(
    locale: $locale,
    name: $name,
    call_to_action_tag: $call_to_action_tag,
    is_auto_create_user: $is_auto_create_user,
    allowed_origin_domains: $allowed_origin_domains,
    client_id: $client_id,
    client_secret: $client_secret,
    status: $status,
    type: $type,
    scopes: $scopes,
    scope_separator: $scope_separator,
    auth_url: $auth_url,
    token_url: $token_url,
    user_info_url: $user_info_url,
    email_info_url: $email_info_url,
    user_map: $user_map,
    custom_data: $custom_data,
    id: $id,
    project_id: $project_id
  ) {
    id
    project_id
    call_to_action_tag
    name
    call_to_action_tag_translations {
      ...TranslationFragment
    }
    is_auto_create_user
    allowed_origin_domains
    client_id
    client_secret
    redirect_url
    status
    type
    scopes
    scope_separator
    auth_url
    token_url
    user_info_url
    email_info_url
    user_map
    custom_data
    created_at
    updated_at
    files {
      ...FileFragment
    }
    icons {
      ...FileFragment
    }
  }
}
Variables
{
  "locale": "string",
  "name": "string",
  "call_to_action_tag": [TranslationInput],
  "is_auto_create_user": false,
  "allowed_origin_domains": ["string"],
  "client_id": "string",
  "client_secret": "string",
  "status": "inactive",
  "type": "google",
  "scopes": ["string"],
  "scope_separator": "string",
  "auth_url": "string",
  "token_url": "string",
  "user_info_url": "string",
  "email_info_url": "string",
  "user_map": "string",
  "custom_data": "string",
  "id": 42,
  "project_id": 42
}
Response
{
  "data": {
    "OauthProviderUpdate": {
      "id": 42,
      "project_id": 42,
      "call_to_action_tag": "string",
      "name": "string",
      "call_to_action_tag_translations": [Translation],
      "is_auto_create_user": true,
      "allowed_origin_domains": ["string"],
      "client_id": "string",
      "client_secret": "string",
      "redirect_url": "https://url.example.com",
      "status": "string",
      "type": "google",
      "scopes": ["string"],
      "scope_separator": "string",
      "auth_url": "https://url.example.com",
      "token_url": "https://url.example.com",
      "user_info_url": "https://url.example.com",
      "email_info_url": "foo@example.com",
      "user_map": "string",
      "custom_data": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "files": [File],
      "icons": [File]
    }
  }
}

PageClone

Description

Clone an existing page under a new name. The cloned page will include all components and elements of the original. Useful for creating pages that share the same structure.

Response

Returns an AdminPage

Arguments
Name Description
id - Int The id of the Page which should be cloned.
name - String The new, unique name for the cloned Page.

Example

Query
mutation PageClone(
  $id: Int,
  $name: String
) {
  PageClone(
    id: $id,
    name: $name
  ) {
    id
    project_id
    category_id
    parent_id
    name
    url_slug
    full_url_slug
    canonical_url
    title
    type
    is_in_sitemap
    platform_contexts
    locale_regions {
      ...LocaleRegionFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    metas {
      ...AdminPageMetaFragment
    }
    components {
      ...AdminPageComponentFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    visibility
    status
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    title_translations {
      ...TranslationFragment
    }
    category {
      ...AdminCategoryFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{"id": 42, "name": "string"}
Response
{
  "data": {
    "PageClone": {
      "id": 42,
      "project_id": 42,
      "category_id": 42,
      "parent_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "title": "string",
      "type": "account_delete",
      "is_in_sitemap": false,
      "platform_contexts": ["string"],
      "locale_regions": [LocaleRegion],
      "geo_regions": [GeoRegion],
      "metas": [AdminPageMeta],
      "components": [AdminPageComponent],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "files": [File],
      "visibility": "everyone",
      "status": "string",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "title_translations": [Translation],
      "category": AdminCategory,
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

PageComponentCreate

Description

Create a new PageComponent in a Page. This presentation resource is a typed building block in a Page's layout. Common types: "text" for rich-text blocks, "carousel" for article/category sliders, "call_to_action_url_link" for CTA sections, "single_tag_line" for hero text. The type decides which of the other properties apply (url, value, style_type, display_type and the resource_* lists are each used by specific types, see their descriptions) and cannot be changed after creation. Components such as carousels, USP bullets and text carousels are filled with elements using PageComponentElementCreate. A Page of type redirect accepts at most one component per visibility, and a Page of type pricing at most one component of type subscriptions. value is not applied on creation: set it afterwards with PageComponentUpdate.

Response

Returns an AdminPageComponent

Arguments
Name Description
locale - String The locale to apply single-locale argument values in.
category_id - Int The id of the Category this PageComponent is dedicated to. Deprecated, use resource_categories instead.
url - String The PageComponent's url. Used by the types call_to_action_url_link, redirect_to_link, redirect_to_random_subpage and text.
value - String The PageComponent's value. Its meaning depends on the type: the id of the target Page for call_to_action_page_link, pages, random_page and redirect_to_random_subpage, and the id of the highlighted Subscription for subscriptions. Other types do not use it.
title - [TranslationInput] The PageComponent's title, per locale.
content - [TranslationInput] The PageComponent's content, per locale.
visibility - ResourceVisibilityEnum The PageComponent's visibility. The types "authorized_only" and "non_authorized_only" require at least one related Subscription or Product (passed in this call or already set). On a Page of type redirect, each visibility can have at most one PageComponent.
style_type - String The PageComponent's style type. Used by the types text and usp_bullets; one of "default", "text_wide", "text_narrow", "text_no_padding" or "transparent".
display_type - PageComponentDisplayTypeEnum The PageComponent's display type. Used by the types article_entitlements, article_favourites, article_history, article_nomadics, categories, category and discover_filter_selector.
status - Int The PageComponent's status.
subscriptions - [Int] The ids of the Subscriptions related to this PageComponent, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
products - [Int] The ids of the Products related to this PageComponent, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
resource_articles - [Int] The ids of the Articles this PageComponent references.
resource_categories - [Int] The ids of the Categories this PageComponent references. Used by the types categories, category and discover_filter_selector. Replaces the existing set; an empty list clears it.
resource_pages - [Int] The ids of the Pages this PageComponent references. Used by the types call_to_action_page_link, pages, random_page and redirect_to_random_subpage. Replaces the existing set; an empty list clears it.
resource_products - [Int] The ids of the Products this PageComponent references.
resource_subscriptions - [Int] The ids of the Subscriptions this PageComponent references. Used by the type subscriptions. Replaces the existing set; an empty list clears it.
page_id - Int The Page id that will own the PageComponent.
type - PageComponentTypeEnum The PageComponent's type.

Example

Query
mutation PageComponentCreate(
  $locale: String,
  $category_id: Int,
  $url: String,
  $value: String,
  $title: [TranslationInput],
  $content: [TranslationInput],
  $visibility: ResourceVisibilityEnum,
  $style_type: String,
  $display_type: PageComponentDisplayTypeEnum,
  $status: Int,
  $subscriptions: [Int],
  $products: [Int],
  $resource_articles: [Int],
  $resource_categories: [Int],
  $resource_pages: [Int],
  $resource_products: [Int],
  $resource_subscriptions: [Int],
  $page_id: Int,
  $type: PageComponentTypeEnum
) {
  PageComponentCreate(
    locale: $locale,
    category_id: $category_id,
    url: $url,
    value: $value,
    title: $title,
    content: $content,
    visibility: $visibility,
    style_type: $style_type,
    display_type: $display_type,
    status: $status,
    subscriptions: $subscriptions,
    products: $products,
    resource_articles: $resource_articles,
    resource_categories: $resource_categories,
    resource_pages: $resource_pages,
    resource_products: $resource_products,
    resource_subscriptions: $resource_subscriptions,
    page_id: $page_id,
    type: $type
  ) {
    id
    page_id
    parent_id
    category_id
    title
    content
    url
    value
    style_type
    display_type
    type
    elements {
      ...AdminPageComponentElementFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    resource_articles {
      ...ArticleListedAsResourceFragment
    }
    resource_categories {
      ...CategoryListedAsResourceFragment
    }
    resource_pages {
      ...PageListedAsResourceFragment
    }
    resource_products {
      ...ProductListedAsResourceFragment
    }
    resource_subscriptions {
      ...SubscriptionListedAsResourceFragment
    }
    visibility
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    category {
      ...AdminCategoryFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{
  "locale": "string",
  "category_id": 42,
  "url": "string",
  "value": "string",
  "title": [TranslationInput],
  "content": [TranslationInput],
  "visibility": "everyone",
  "style_type": "string",
  "display_type": "sliding_carousel",
  "status": 42,
  "subscriptions": [42],
  "products": [42],
  "resource_articles": [42],
  "resource_categories": [42],
  "resource_pages": [42],
  "resource_products": [42],
  "resource_subscriptions": [42],
  "page_id": 42,
  "type": "account_create"
}
Response
{
  "data": {
    "PageComponentCreate": {
      "id": 42,
      "page_id": 42,
      "parent_id": 42,
      "category_id": 42,
      "title": "string",
      "content": "string",
      "url": "https://url.example.com",
      "value": "string",
      "style_type": "string",
      "display_type": "string",
      "type": "account_create",
      "elements": [AdminPageComponentElement],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "files": [File],
      "resource_articles": [ArticleListedAsResource],
      "resource_categories": [CategoryListedAsResource],
      "resource_pages": [PageListedAsResource],
      "resource_products": [ProductListedAsResource],
      "resource_subscriptions": [
        SubscriptionListedAsResource
      ],
      "visibility": "everyone",
      "title_translations": [Translation],
      "content_translations": [Translation],
      "category": AdminCategory,
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

PageComponentDelete

Description

Permanently delete a PageComponent and all its PageComponentElements. This presentation resource and its configured layout part cannot be restored.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the PageComponent to delete.

Example

Query
mutation PageComponentDelete($id: Int) {
  PageComponentDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"PageComponentDelete": true}}

PageComponentElementCreate

Description

Create a new PageComponentElement in a PageComponent. This presentation resource configures one renderable part of the PageComponent, including its type, display text, links, visibility, and resource relations. Elements are later rendered by a frontend app, for example as buttons, slides, text blocks, or account and profile form fields. Common types: "text" for standalone text, "carousel_slide" for carousel items, "button_page_link" for navigation buttons, "button_url_link" for external links, "usp_bullet" for USP bullet points. Which element types fit depends on the type of the PageComponent that owns it (for example a carousel holds carousel_slide and button elements, usp_bullets holds usp_bullet elements, and text_carousel holds text_carousel_slide elements). On account_create and profile_edit components, each element type can be added only once per visibility. The type cannot be changed after creation, and Files cannot be passed on creation.

Response

Returns an AdminPageComponentElement

Arguments
Name Description
locale - String The locale to apply single-locale argument values in.
url - String The PageComponentElement's url, for example the target of a button_url_link.
value - String The PageComponentElement's value. For the types button_badge_page_link, button_page_link, button_product_purchase, button_subscription_purchase, button_play_article_video, subscription and discover_filter_category it holds the id of the Page, Product, Subscription, Article or Category the element points to; other types use it as a free value.
toggle - Boolean Multi-purpose boolean flag whose meaning depends on the type. For registration and profile elements it marks the field as required.
title - [TranslationInput] The PageComponentElement's title, per locale.
content - [TranslationInput] The PageComponentElement's content, per locale.
label - [TranslationInput] The PageComponentElement's label, per locale, such as the text shown on a button.
visibility - ResourceVisibilityEnum The PageComponentElement's visibility. The types "authorized_only" and "non_authorized_only" require at least one related Subscription or Product (passed in this call or already set).
status - Int The PageComponentElement's status.
subscriptions - [Int] The ids of the Subscriptions related to this PageComponentElement, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
products - [Int] The ids of the Products related to this PageComponentElement, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
resource_articles - [Int] The ids of the Articles this PageComponentElement references. Replaces the existing set; an empty list clears it.
resource_categories - [Int] The ids of the Categories this PageComponentElement references. Replaces the existing set; an empty list clears it.
resource_pages - [Int] The ids of the Pages this PageComponentElement references. Replaces the existing set; an empty list clears it.
resource_products - [Int] The ids of the Products this PageComponentElement references. Replaces the existing set; an empty list clears it.
resource_subscriptions - [Int] The ids of the Subscriptions this PageComponentElement references. Replaces the existing set; an empty list clears it.
page_component_id - Int The PageComponent id that will own the PageComponentElement.
type - PageComponentElementTypeEnum The presentation role this PageComponentElement configures in its owning PageComponent. It determines what a frontend app will render, such as text, a button, a slide, or a form field.

Example

Query
mutation PageComponentElementCreate(
  $locale: String,
  $url: String,
  $value: String,
  $toggle: Boolean,
  $title: [TranslationInput],
  $content: [TranslationInput],
  $label: [TranslationInput],
  $visibility: ResourceVisibilityEnum,
  $status: Int,
  $subscriptions: [Int],
  $products: [Int],
  $resource_articles: [Int],
  $resource_categories: [Int],
  $resource_pages: [Int],
  $resource_products: [Int],
  $resource_subscriptions: [Int],
  $page_component_id: Int,
  $type: PageComponentElementTypeEnum
) {
  PageComponentElementCreate(
    locale: $locale,
    url: $url,
    value: $value,
    toggle: $toggle,
    title: $title,
    content: $content,
    label: $label,
    visibility: $visibility,
    status: $status,
    subscriptions: $subscriptions,
    products: $products,
    resource_articles: $resource_articles,
    resource_categories: $resource_categories,
    resource_pages: $resource_pages,
    resource_products: $resource_products,
    resource_subscriptions: $resource_subscriptions,
    page_component_id: $page_component_id,
    type: $type
  ) {
    id
    page_component_id
    parent_id
    type
    title
    content
    label
    url
    value
    toggle
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    resource_articles {
      ...ArticleListedAsResourceFragment
    }
    resource_categories {
      ...CategoryListedAsResourceFragment
    }
    resource_pages {
      ...PageListedAsResourceFragment
    }
    resource_products {
      ...ProductListedAsResourceFragment
    }
    resource_subscriptions {
      ...SubscriptionListedAsResourceFragment
    }
    visibility
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    label_translations {
      ...TranslationFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{
  "locale": "string",
  "url": "string",
  "value": "string",
  "toggle": false,
  "title": [TranslationInput],
  "content": [TranslationInput],
  "label": [TranslationInput],
  "visibility": "everyone",
  "status": 42,
  "subscriptions": [42],
  "products": [42],
  "resource_articles": [42],
  "resource_categories": [42],
  "resource_pages": [42],
  "resource_products": [42],
  "resource_subscriptions": [42],
  "page_component_id": 42,
  "type": "button_account_create"
}
Response
{
  "data": {
    "PageComponentElementCreate": {
      "id": 42,
      "page_component_id": 42,
      "parent_id": 42,
      "type": "string",
      "title": "string",
      "content": "string",
      "label": "string",
      "url": "https://url.example.com",
      "value": "string",
      "toggle": true,
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "files": [File],
      "resource_articles": [ArticleListedAsResource],
      "resource_categories": [CategoryListedAsResource],
      "resource_pages": [PageListedAsResource],
      "resource_products": [ProductListedAsResource],
      "resource_subscriptions": [
        SubscriptionListedAsResource
      ],
      "visibility": "everyone",
      "title_translations": [Translation],
      "content_translations": [Translation],
      "label_translations": [Translation],
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

PageComponentElementDelete

Description

Permanently delete a PageComponentElement. This presentation resource and its configured renderable part cannot be restored.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the PageComponentElement to delete.

Example

Query
mutation PageComponentElementDelete($id: Int) {
  PageComponentElementDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"PageComponentElementDelete": false}}

PageComponentElementFileDelete

Description

Delete a File attached to a PageComponentElement.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
page_component_element_id - Int The PageComponentElement id that owns the File.

Example

Query
mutation PageComponentElementFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $page_component_element_id: Int
) {
  PageComponentElementFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    page_component_element_id: $page_component_element_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "page_component_element_id": 42
}
Response
{"data": {"PageComponentElementFileDelete": false}}

PageComponentElementNodeUpdate

Description

Reorder a PageComponentElement within its parent PageComponent. This presentation resource configures one renderable part of the component. Use "before" to place it immediately before the pivot element, "after" to place it immediately after, or "parent" to nest it as a child of the pivot element.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the resource being repositioned in the tree.
pivot_id - Int The id of the sibling/parent resource to position relative to (see pivot_action).
pivot_action - NodePivotActionEnum Where to place id relative to pivot_id (before it, after it, or as its child).

Example

Query
mutation PageComponentElementNodeUpdate(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: NodePivotActionEnum
) {
  PageComponentElementNodeUpdate(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "after"}
Response
{"data": {"PageComponentElementNodeUpdate": true}}

PageComponentElementUpdate

Description

Update an existing PageComponentElement. This presentation resource configures one renderable part of a PageComponent. Only pass the fields you want to change; omitted fields are left unchanged. The type and the owning PageComponent cannot be changed. Translated fields (title, content, label) are passed as a list of locale/value entries, and the relation lists (subscriptions, products, resource_*) replace the existing set (an empty list clears it). On account_create and profile_edit components an element type can exist only once per visibility.

Response

Returns an AdminPageComponentElement

Arguments
Name Description
locale - String The locale to apply single-locale argument values in.
url - String The PageComponentElement's url, for example the target of a button_url_link.
value - String The PageComponentElement's value. For the types button_badge_page_link, button_page_link, button_product_purchase, button_subscription_purchase, button_play_article_video, subscription and discover_filter_category it holds the id of the Page, Product, Subscription, Article or Category the element points to; other types use it as a free value.
toggle - Boolean Multi-purpose boolean flag whose meaning depends on the type. For registration and profile elements it marks the field as required.
title - [TranslationInput] The PageComponentElement's title, per locale.
content - [TranslationInput] The PageComponentElement's content, per locale.
label - [TranslationInput] The PageComponentElement's label, per locale, such as the text shown on a button.
files - [PageComponentElementFileInput] The PageComponentElement's Files. Only updates the type, duration and locale of Files that already belong to this PageComponentElement; it does not add or remove Files.
visibility - ResourceVisibilityEnum The PageComponentElement's visibility. The types "authorized_only" and "non_authorized_only" require at least one related Subscription or Product (passed in this call or already set).
status - Int The PageComponentElement's status.
subscriptions - [Int] The ids of the Subscriptions related to this PageComponentElement, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
products - [Int] The ids of the Products related to this PageComponentElement, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
resource_articles - [Int] The ids of the Articles this PageComponentElement references. Replaces the existing set; an empty list clears it.
resource_categories - [Int] The ids of the Categories this PageComponentElement references. Replaces the existing set; an empty list clears it.
resource_pages - [Int] The ids of the Pages this PageComponentElement references. Replaces the existing set; an empty list clears it.
resource_products - [Int] The ids of the Products this PageComponentElement references. Replaces the existing set; an empty list clears it.
resource_subscriptions - [Int] The ids of the Subscriptions this PageComponentElement references. Replaces the existing set; an empty list clears it.
id - Int The id of the PageComponentElement to update.

Example

Query
mutation PageComponentElementUpdate(
  $locale: String,
  $url: String,
  $value: String,
  $toggle: Boolean,
  $title: [TranslationInput],
  $content: [TranslationInput],
  $label: [TranslationInput],
  $files: [PageComponentElementFileInput],
  $visibility: ResourceVisibilityEnum,
  $status: Int,
  $subscriptions: [Int],
  $products: [Int],
  $resource_articles: [Int],
  $resource_categories: [Int],
  $resource_pages: [Int],
  $resource_products: [Int],
  $resource_subscriptions: [Int],
  $id: Int
) {
  PageComponentElementUpdate(
    locale: $locale,
    url: $url,
    value: $value,
    toggle: $toggle,
    title: $title,
    content: $content,
    label: $label,
    files: $files,
    visibility: $visibility,
    status: $status,
    subscriptions: $subscriptions,
    products: $products,
    resource_articles: $resource_articles,
    resource_categories: $resource_categories,
    resource_pages: $resource_pages,
    resource_products: $resource_products,
    resource_subscriptions: $resource_subscriptions,
    id: $id
  ) {
    id
    page_component_id
    parent_id
    type
    title
    content
    label
    url
    value
    toggle
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    resource_articles {
      ...ArticleListedAsResourceFragment
    }
    resource_categories {
      ...CategoryListedAsResourceFragment
    }
    resource_pages {
      ...PageListedAsResourceFragment
    }
    resource_products {
      ...ProductListedAsResourceFragment
    }
    resource_subscriptions {
      ...SubscriptionListedAsResourceFragment
    }
    visibility
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    label_translations {
      ...TranslationFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{
  "locale": "string",
  "url": "string",
  "value": "string",
  "toggle": true,
  "title": [TranslationInput],
  "content": [TranslationInput],
  "label": [TranslationInput],
  "files": [PageComponentElementFileInput],
  "visibility": "everyone",
  "status": 42,
  "subscriptions": [42],
  "products": [42],
  "resource_articles": [42],
  "resource_categories": [42],
  "resource_pages": [42],
  "resource_products": [42],
  "resource_subscriptions": [42],
  "id": 42
}
Response
{
  "data": {
    "PageComponentElementUpdate": {
      "id": 42,
      "page_component_id": 42,
      "parent_id": 42,
      "type": "string",
      "title": "string",
      "content": "string",
      "label": "string",
      "url": "https://url.example.com",
      "value": "string",
      "toggle": true,
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "files": [File],
      "resource_articles": [ArticleListedAsResource],
      "resource_categories": [CategoryListedAsResource],
      "resource_pages": [PageListedAsResource],
      "resource_products": [ProductListedAsResource],
      "resource_subscriptions": [
        SubscriptionListedAsResource
      ],
      "visibility": "everyone",
      "title_translations": [Translation],
      "content_translations": [Translation],
      "label_translations": [Translation],
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

PageComponentFileDelete

Description

Delete a File attached to a PageComponent.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
page_component_id - Int The PageComponent id that owns the File.

Example

Query
mutation PageComponentFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $page_component_id: Int
) {
  PageComponentFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    page_component_id: $page_component_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "page_component_id": 42
}
Response
{"data": {"PageComponentFileDelete": false}}

PageComponentNodeUpdate

Description

Reorder a PageComponent within its parent Page. This presentation resource configures one typed part of the Page's layout. Use "before" to place it immediately before the pivot component, "after" to place it immediately after, or "parent" to nest it as a child of the pivot component.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the resource being repositioned in the tree.
pivot_id - Int The id of the sibling/parent resource to position relative to (see pivot_action).
pivot_action - NodePivotActionEnum Where to place id relative to pivot_id (before it, after it, or as its child).

Example

Query
mutation PageComponentNodeUpdate(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: NodePivotActionEnum
) {
  PageComponentNodeUpdate(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "after"}
Response
{"data": {"PageComponentNodeUpdate": true}}

PageComponentUpdate

Description

Update an existing PageComponent. This presentation resource configures a typed building block in a Page's layout. Only pass the fields you want to change; omitted fields are left unchanged. The type and the Page cannot be changed. Which properties apply depends on the component's type (url, value, style_type, display_type and the resource_* lists are each used by specific types, see their descriptions). Translated fields (title, content) are passed as a list of locale/value entries, and the relation lists (subscriptions, products, resource_*) replace the existing set (an empty list clears it).

Response

Returns an AdminPageComponent

Arguments
Name Description
locale - String The locale to apply single-locale argument values in.
category_id - Int The id of the Category this PageComponent is dedicated to. Deprecated, use resource_categories instead.
url - String The PageComponent's url. Used by the types call_to_action_url_link, redirect_to_link, redirect_to_random_subpage and text.
value - String The PageComponent's value. Its meaning depends on the type: the id of the target Page for call_to_action_page_link, pages, random_page and redirect_to_random_subpage, and the id of the highlighted Subscription for subscriptions. Other types do not use it.
title - [TranslationInput] The PageComponent's title, per locale.
content - [TranslationInput] The PageComponent's content, per locale.
files - [PageComponentFileInput] The PageComponent's Files. Only updates the type, duration and locale of Files that already belong to this PageComponent; it does not add or remove Files.
visibility - ResourceVisibilityEnum The PageComponent's visibility. The types "authorized_only" and "non_authorized_only" require at least one related Subscription or Product (passed in this call or already set). On a Page of type redirect, each visibility can have at most one PageComponent.
style_type - String The PageComponent's style type. Used by the types text and usp_bullets; one of "default", "text_wide", "text_narrow", "text_no_padding" or "transparent".
display_type - PageComponentDisplayTypeEnum The PageComponent's display type. Used by the types article_entitlements, article_favourites, article_history, article_nomadics, categories, category and discover_filter_selector.
status - Int The PageComponent's status.
subscriptions - [Int] The ids of the Subscriptions related to this PageComponent, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
products - [Int] The ids of the Products related to this PageComponent, used by the "authorized_only" and "non_authorized_only" visibility types. Replaces the existing set; an empty list clears it.
resource_articles - [Int] The ids of the Articles this PageComponent references.
resource_categories - [Int] The ids of the Categories this PageComponent references. Used by the types categories, category and discover_filter_selector. Replaces the existing set; an empty list clears it.
resource_pages - [Int] The ids of the Pages this PageComponent references. Used by the types call_to_action_page_link, pages, random_page and redirect_to_random_subpage. Replaces the existing set; an empty list clears it.
resource_products - [Int] The ids of the Products this PageComponent references.
resource_subscriptions - [Int] The ids of the Subscriptions this PageComponent references. Used by the type subscriptions. Replaces the existing set; an empty list clears it.
id - Int The id of the PageComponent to update.

Example

Query
mutation PageComponentUpdate(
  $locale: String,
  $category_id: Int,
  $url: String,
  $value: String,
  $title: [TranslationInput],
  $content: [TranslationInput],
  $files: [PageComponentFileInput],
  $visibility: ResourceVisibilityEnum,
  $style_type: String,
  $display_type: PageComponentDisplayTypeEnum,
  $status: Int,
  $subscriptions: [Int],
  $products: [Int],
  $resource_articles: [Int],
  $resource_categories: [Int],
  $resource_pages: [Int],
  $resource_products: [Int],
  $resource_subscriptions: [Int],
  $id: Int
) {
  PageComponentUpdate(
    locale: $locale,
    category_id: $category_id,
    url: $url,
    value: $value,
    title: $title,
    content: $content,
    files: $files,
    visibility: $visibility,
    style_type: $style_type,
    display_type: $display_type,
    status: $status,
    subscriptions: $subscriptions,
    products: $products,
    resource_articles: $resource_articles,
    resource_categories: $resource_categories,
    resource_pages: $resource_pages,
    resource_products: $resource_products,
    resource_subscriptions: $resource_subscriptions,
    id: $id
  ) {
    id
    page_id
    parent_id
    category_id
    title
    content
    url
    value
    style_type
    display_type
    type
    elements {
      ...AdminPageComponentElementFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    resource_articles {
      ...ArticleListedAsResourceFragment
    }
    resource_categories {
      ...CategoryListedAsResourceFragment
    }
    resource_pages {
      ...PageListedAsResourceFragment
    }
    resource_products {
      ...ProductListedAsResourceFragment
    }
    resource_subscriptions {
      ...SubscriptionListedAsResourceFragment
    }
    visibility
    title_translations {
      ...TranslationFragment
    }
    content_translations {
      ...TranslationFragment
    }
    category {
      ...AdminCategoryFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{
  "locale": "string",
  "category_id": 42,
  "url": "string",
  "value": "string",
  "title": [TranslationInput],
  "content": [TranslationInput],
  "files": [PageComponentFileInput],
  "visibility": "everyone",
  "style_type": "string",
  "display_type": "sliding_carousel",
  "status": 42,
  "subscriptions": [42],
  "products": [42],
  "resource_articles": [42],
  "resource_categories": [42],
  "resource_pages": [42],
  "resource_products": [42],
  "resource_subscriptions": [42],
  "id": 42
}
Response
{
  "data": {
    "PageComponentUpdate": {
      "id": 42,
      "page_id": 42,
      "parent_id": 42,
      "category_id": 42,
      "title": "string",
      "content": "string",
      "url": "https://url.example.com",
      "value": "string",
      "style_type": "string",
      "display_type": "string",
      "type": "account_create",
      "elements": [AdminPageComponentElement],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "files": [File],
      "resource_articles": [ArticleListedAsResource],
      "resource_categories": [CategoryListedAsResource],
      "resource_pages": [PageListedAsResource],
      "resource_products": [ProductListedAsResource],
      "resource_subscriptions": [
        SubscriptionListedAsResource
      ],
      "visibility": "everyone",
      "title_translations": [Translation],
      "content_translations": [Translation],
      "category": AdminCategory,
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

PageCreate

Description

Create a new Page. This presentation resource is the top-level container for content in a frontend app and can hold multiple PageComponents. The most common type for general content is "text". Use "home" for the default landing page: create one "home" Page per platform_context, since each platform context needs its own landing page. Other types, such as "discover", are generally designed to be reused across multiple platform_contexts.

Response

Returns an AdminPage

Arguments
Name Description
name - String The Page's name.
locale - String The locale to apply single-locale argument values in.
category_id - Int The id of the Category this Page is dedicated to (e.g. a category landing page).
url_slug - [TranslationInput] The Page's url slug, per locale.
full_url_slug - [TranslationInput] The Page's full url slug, per locale.
canonical_url - [TranslationInput] The Page's canonical url, per locale.
title - [TranslationInput] The Page's title, per locale.
metas - [PageMetaInput] The Page's metadata properties.
platform_contexts - [PlatformContextEnum] The platform contexts the Page is available on.
visibility - ResourceVisibilityEnum The Page's visibility. Default = everyone
status - Int The Page's status.
subscriptions - [Int] The ids of the Subscriptions related to this Page.
products - [Int] The ids of the Products related to this Page.
locale_regions - [Int] The ids of the LocaleRegions this Page belongs to.
geo_regions - [Int] The ids of the GeoRegions this Page belongs to.
is_in_sitemap - Boolean Whether the Page is listed in the general sitemap.
is_enforce_lowercase_urls - Boolean Whether to force all url and slug values in this mutation to lowercase (recommended). Default = true
project_id - Int The Project id that will own the Page.
type - PageTypeEnum The Page's type.

Example

Query
mutation PageCreate(
  $name: String,
  $locale: String,
  $category_id: Int,
  $url_slug: [TranslationInput],
  $full_url_slug: [TranslationInput],
  $canonical_url: [TranslationInput],
  $title: [TranslationInput],
  $metas: [PageMetaInput],
  $platform_contexts: [PlatformContextEnum],
  $visibility: ResourceVisibilityEnum,
  $status: Int,
  $subscriptions: [Int],
  $products: [Int],
  $locale_regions: [Int],
  $geo_regions: [Int],
  $is_in_sitemap: Boolean,
  $is_enforce_lowercase_urls: Boolean,
  $project_id: Int,
  $type: PageTypeEnum
) {
  PageCreate(
    name: $name,
    locale: $locale,
    category_id: $category_id,
    url_slug: $url_slug,
    full_url_slug: $full_url_slug,
    canonical_url: $canonical_url,
    title: $title,
    metas: $metas,
    platform_contexts: $platform_contexts,
    visibility: $visibility,
    status: $status,
    subscriptions: $subscriptions,
    products: $products,
    locale_regions: $locale_regions,
    geo_regions: $geo_regions,
    is_in_sitemap: $is_in_sitemap,
    is_enforce_lowercase_urls: $is_enforce_lowercase_urls,
    project_id: $project_id,
    type: $type
  ) {
    id
    project_id
    category_id
    parent_id
    name
    url_slug
    full_url_slug
    canonical_url
    title
    type
    is_in_sitemap
    platform_contexts
    locale_regions {
      ...LocaleRegionFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    metas {
      ...AdminPageMetaFragment
    }
    components {
      ...AdminPageComponentFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    visibility
    status
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    title_translations {
      ...TranslationFragment
    }
    category {
      ...AdminCategoryFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{
  "name": "string",
  "locale": "string",
  "category_id": 42,
  "url_slug": [TranslationInput],
  "full_url_slug": [TranslationInput],
  "canonical_url": [TranslationInput],
  "title": [TranslationInput],
  "metas": [PageMetaInput],
  "platform_contexts": ["web"],
  "visibility": "everyone",
  "status": 42,
  "subscriptions": [42],
  "products": [42],
  "locale_regions": [42],
  "geo_regions": [42],
  "is_in_sitemap": false,
  "is_enforce_lowercase_urls": true,
  "project_id": 42,
  "type": "account_delete"
}
Response
{
  "data": {
    "PageCreate": {
      "id": 42,
      "project_id": 42,
      "category_id": 42,
      "parent_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "title": "string",
      "type": "account_delete",
      "is_in_sitemap": false,
      "platform_contexts": ["string"],
      "locale_regions": [LocaleRegion],
      "geo_regions": [GeoRegion],
      "metas": [AdminPageMeta],
      "components": [AdminPageComponent],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "files": [File],
      "visibility": "everyone",
      "status": "string",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "title_translations": [Translation],
      "category": AdminCategory,
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

PageDelete

Description

Permanently delete a Page. This presentation resource and its layout configuration are removed. Deletion fails if the Page has linked resources and cannot be undone.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Page to delete.

Example

Query
mutation PageDelete($id: Int) {
  PageDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"PageDelete": false}}

PageFileDelete

Description

Delete a File attached to a Page.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
page_id - Int The Page id that owns the File.

Example

Query
mutation PageFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $page_id: Int
) {
  PageFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    page_id: $page_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "page_id": 42
}
Response
{"data": {"PageFileDelete": true}}

PageNodeUpdate

Description

Reorder a Page relative to a sibling or parent Page in the page tree. This presentation resource controls a frontend-app layout. Use "before" to place it immediately before the pivot page, "after" to place it immediately after, or "parent" to nest it as the last child of the pivot page.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the resource being repositioned in the tree.
pivot_id - Int The id of the sibling/parent resource to position relative to (see pivot_action).
pivot_action - NodePivotActionEnum Where to place id relative to pivot_id (before it, after it, or as its child).

Example

Query
mutation PageNodeUpdate(
  $id: Int,
  $pivot_id: Int,
  $pivot_action: NodePivotActionEnum
) {
  PageNodeUpdate(
    id: $id,
    pivot_id: $pivot_id,
    pivot_action: $pivot_action
  )
}
Variables
{"id": 42, "pivot_id": 42, "pivot_action": "after"}
Response
{"data": {"PageNodeUpdate": false}}

PageUpdate

Description

Update an existing Page. This presentation resource controls routing, availability, metadata, and layout in a frontend app. Only pass the fields you want to change; omitted fields are left unchanged.

Response

Returns an AdminPage

Arguments
Name Description
name - String The Page's name.
locale - String The locale to apply single-locale argument values in.
category_id - Int The id of the Category this Page is dedicated to (e.g. a category landing page).
url_slug - [TranslationInput] The Page's url slug, per locale.
full_url_slug - [TranslationInput] The Page's full url slug, per locale.
canonical_url - [TranslationInput] The Page's canonical url, per locale.
title - [TranslationInput] The Page's title, per locale.
files - [PageFileInput] The Page's Files.
metas - [PageMetaInput] The Page's metadata properties.
platform_contexts - [PlatformContextEnum] The platform contexts the Page is available on.
visibility - ResourceVisibilityEnum The Page's visibility.
status - Int The Page's status.
subscriptions - [Int] The ids of the Subscriptions related to this Page.
products - [Int] The ids of the Products related to this Page.
locale_regions - [Int] The ids of the LocaleRegions this Page belongs to.
geo_regions - [Int] The ids of the GeoRegions this Page belongs to.
is_in_sitemap - Boolean Whether the Page is listed in the general sitemap.
is_enforce_lowercase_urls - Boolean Whether to force all url and slug values in this mutation to lowercase (recommended). Default = true
id - Int The id of the Page to update.

Example

Query
mutation PageUpdate(
  $name: String,
  $locale: String,
  $category_id: Int,
  $url_slug: [TranslationInput],
  $full_url_slug: [TranslationInput],
  $canonical_url: [TranslationInput],
  $title: [TranslationInput],
  $files: [PageFileInput],
  $metas: [PageMetaInput],
  $platform_contexts: [PlatformContextEnum],
  $visibility: ResourceVisibilityEnum,
  $status: Int,
  $subscriptions: [Int],
  $products: [Int],
  $locale_regions: [Int],
  $geo_regions: [Int],
  $is_in_sitemap: Boolean,
  $is_enforce_lowercase_urls: Boolean,
  $id: Int
) {
  PageUpdate(
    name: $name,
    locale: $locale,
    category_id: $category_id,
    url_slug: $url_slug,
    full_url_slug: $full_url_slug,
    canonical_url: $canonical_url,
    title: $title,
    files: $files,
    metas: $metas,
    platform_contexts: $platform_contexts,
    visibility: $visibility,
    status: $status,
    subscriptions: $subscriptions,
    products: $products,
    locale_regions: $locale_regions,
    geo_regions: $geo_regions,
    is_in_sitemap: $is_in_sitemap,
    is_enforce_lowercase_urls: $is_enforce_lowercase_urls,
    id: $id
  ) {
    id
    project_id
    category_id
    parent_id
    name
    url_slug
    full_url_slug
    canonical_url
    title
    type
    is_in_sitemap
    platform_contexts
    locale_regions {
      ...LocaleRegionFragment
    }
    geo_regions {
      ...GeoRegionFragment
    }
    metas {
      ...AdminPageMetaFragment
    }
    components {
      ...AdminPageComponentFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    documents {
      ...FileFragment
    }
    files {
      ...FileFragment
    }
    visibility
    status
    url_slug_translations {
      ...TranslationFragment
    }
    full_url_slug_translations {
      ...TranslationFragment
    }
    canonical_url_translations {
      ...TranslationFragment
    }
    title_translations {
      ...TranslationFragment
    }
    category {
      ...AdminCategoryFragment
    }
    subscriptions {
      ...AdminSubscriptionFragment
    }
    products {
      ...AdminProductFragment
    }
  }
}
Variables
{
  "name": "string",
  "locale": "string",
  "category_id": 42,
  "url_slug": [TranslationInput],
  "full_url_slug": [TranslationInput],
  "canonical_url": [TranslationInput],
  "title": [TranslationInput],
  "files": [PageFileInput],
  "metas": [PageMetaInput],
  "platform_contexts": ["web"],
  "visibility": "everyone",
  "status": 42,
  "subscriptions": [42],
  "products": [42],
  "locale_regions": [42],
  "geo_regions": [42],
  "is_in_sitemap": false,
  "is_enforce_lowercase_urls": true,
  "id": 42
}
Response
{
  "data": {
    "PageUpdate": {
      "id": 42,
      "project_id": 42,
      "category_id": 42,
      "parent_id": 42,
      "name": "string",
      "url_slug": "url-slug-string",
      "full_url_slug": "url-slug-string",
      "canonical_url": "https://url.example.com",
      "title": "string",
      "type": "account_delete",
      "is_in_sitemap": false,
      "platform_contexts": ["string"],
      "locale_regions": [LocaleRegion],
      "geo_regions": [GeoRegion],
      "metas": [AdminPageMeta],
      "components": [AdminPageComponent],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "documents": [File],
      "files": [File],
      "visibility": "everyone",
      "status": "string",
      "url_slug_translations": ["url-slug-string"],
      "full_url_slug_translations": ["url-slug-string"],
      "canonical_url_translations": ["https://url.example.com"],
      "title_translations": [Translation],
      "category": AdminCategory,
      "subscriptions": [AdminSubscription],
      "products": [AdminProduct]
    }
  }
}

PaymentProviderActivate

Description

Activate a configurable PaymentProvider, which deactivates all other configurable PaymentProviders of the Project. Callers with a role up to Administrator are refused while another PaymentProvider is active and configured for live payments.

Response

Returns an AdminPaymentProvider

Arguments
Name Description
id - Int The id of the PaymentProvider to activate.

Example

Query
mutation PaymentProviderActivate($id: Int) {
  PaymentProviderActivate(id: $id) {
    id
    project_id
    name
    description
    type
    status
    device_capability
    order_description_template
    recurring_order_description_template
    collection_window_day_num
    amount_payment_method_change
    default_currency
    default_currency_symbol
    status_message
    connect_status
    connect_status_message
    remote_profile_status
    remote_profile_status_message
    is_configurable
    is_support_connect_flow
    remote_account {
      ...AdminPaymentProviderRemoteAccountFragment
    }
    remote_profile_id
    remote_organisation_id
  }
}
Variables
{"id": 42}
Response
{
  "data": {
    "PaymentProviderActivate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "description": "string",
      "type": "string",
      "status": "string",
      "device_capability": 42,
      "order_description_template": "string",
      "recurring_order_description_template": "string",
      "collection_window_day_num": 42,
      "amount_payment_method_change": 987.65,
      "default_currency": "EUR",
      "default_currency_symbol": "EUR",
      "status_message": "string",
      "connect_status": "string",
      "connect_status_message": "string",
      "remote_profile_status": "string",
      "remote_profile_status_message": "string",
      "is_configurable": false,
      "is_support_connect_flow": true,
      "remote_account": AdminPaymentProviderRemoteAccount,
      "remote_profile_id": "string",
      "remote_organisation_id": "string"
    }
  }
}

PaymentProviderConnectRequest

Description

Begin a remote connect flow for a PaymentProvider.

Arguments
Name Description
id - Int The id of the PaymentProvider to connect.
redirect_url - String The URL to return to after the remote connect flow completes.

Example

Query
mutation PaymentProviderConnectRequest(
  $id: Int,
  $redirect_url: String
) {
  PaymentProviderConnectRequest(
    id: $id,
    redirect_url: $redirect_url
  ) {
    project_id
    state_parameter
    authorization_url
    redirect_url
  }
}
Variables
{"id": 42, "redirect_url": "string"}
Response
{
  "data": {
    "PaymentProviderConnectRequest": {
      "project_id": 42,
      "state_parameter": "string",
      "authorization_url": "https://url.example.com",
      "redirect_url": "https://url.example.com"
    }
  }
}

PaymentProviderDisconnectRequest

Description

Disconnect a remote account from a PaymentProvider.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the PaymentProvider to disconnect.
password - String The current Admin User password required to confirm the disconnect request.

Example

Query
mutation PaymentProviderDisconnectRequest(
  $id: Int,
  $password: String
) {
  PaymentProviderDisconnectRequest(
    id: $id,
    password: $password
  )
}
Variables
{"id": 42, "password": "string"}
Response
{"data": {"PaymentProviderDisconnectRequest": false}}

PaymentProviderUpdate

Description

Update an existing PaymentProvider's Project payment configuration.

Response

Returns an AdminPaymentProvider

Arguments
Name Description
id - Int The id of the PaymentProvider.
order_description_template - String The PaymentProvider template for short one-off payment order descriptions.
recurring_order_description_template - String The PaymentProvider template for short recurring payment order descriptions.
collection_window_day_num - Int The number of days before a Subscription expiry when a recurring payment renewal order is issued.
amount_payment_method_change - Float The amount charged for changing a recurring payment method.
default_currency - String The three-letter default currency code used when no specific currency is configured.
default_currency_symbol - String The currency symbol related to the default currency.
remote_profile_id - String The remote account profile id to configure for this PaymentProvider.

Example

Query
mutation PaymentProviderUpdate(
  $id: Int,
  $order_description_template: String,
  $recurring_order_description_template: String,
  $collection_window_day_num: Int,
  $amount_payment_method_change: Float,
  $default_currency: String,
  $default_currency_symbol: String,
  $remote_profile_id: String
) {
  PaymentProviderUpdate(
    id: $id,
    order_description_template: $order_description_template,
    recurring_order_description_template: $recurring_order_description_template,
    collection_window_day_num: $collection_window_day_num,
    amount_payment_method_change: $amount_payment_method_change,
    default_currency: $default_currency,
    default_currency_symbol: $default_currency_symbol,
    remote_profile_id: $remote_profile_id
  ) {
    id
    project_id
    name
    description
    type
    status
    device_capability
    order_description_template
    recurring_order_description_template
    collection_window_day_num
    amount_payment_method_change
    default_currency
    default_currency_symbol
    status_message
    connect_status
    connect_status_message
    remote_profile_status
    remote_profile_status_message
    is_configurable
    is_support_connect_flow
    remote_account {
      ...AdminPaymentProviderRemoteAccountFragment
    }
    remote_profile_id
    remote_organisation_id
  }
}
Variables
{
  "id": 42,
  "order_description_template": "string",
  "recurring_order_description_template": "string",
  "collection_window_day_num": 42,
  "amount_payment_method_change": 987.65,
  "default_currency": "string",
  "default_currency_symbol": "string",
  "remote_profile_id": "string"
}
Response
{
  "data": {
    "PaymentProviderUpdate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "description": "string",
      "type": "string",
      "status": "string",
      "device_capability": 42,
      "order_description_template": "string",
      "recurring_order_description_template": "string",
      "collection_window_day_num": 42,
      "amount_payment_method_change": 123.45,
      "default_currency": "EUR",
      "default_currency_symbol": "EUR",
      "status_message": "string",
      "connect_status": "string",
      "connect_status_message": "string",
      "remote_profile_status": "string",
      "remote_profile_status_message": "string",
      "is_configurable": false,
      "is_support_connect_flow": true,
      "remote_account": AdminPaymentProviderRemoteAccount,
      "remote_profile_id": "string",
      "remote_organisation_id": "string"
    }
  }
}

PaymentSyndicateCreate

Description

Create a PaymentSyndicate: an administrative categorisation for PaymentSyndicateVouchers that lets voucher claims be traced to the same payment-syndicate group in logs. It does not create entitlements, process payments, or change a User's access.

Response

Returns an AdminPaymentSyndicate

Arguments
Name Description
name - String The PaymentSyndicate's name.
type - PaymentSyndicateTypeEnum The PaymentSyndicate's type.
project_id - Int The Project id that will own the PaymentSyndicate.

Example

Query
mutation PaymentSyndicateCreate(
  $name: String,
  $type: PaymentSyndicateTypeEnum,
  $project_id: Int
) {
  PaymentSyndicateCreate(
    name: $name,
    type: $type,
    project_id: $project_id
  ) {
    id
    project_id
    name
    type
    created_at
    updated_at
    vouchers {
      ...AdminPaymentSyndicateVoucherFragment
    }
  }
}
Variables
{
  "name": "string",
  "type": "internal",
  "project_id": 42
}
Response
{
  "data": {
    "PaymentSyndicateCreate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "type": "internal",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "vouchers": [AdminPaymentSyndicateVoucher]
    }
  }
}

PaymentSyndicateDelete

Description

Delete an existing PaymentSyndicate. Fails while the PaymentSyndicate still has related PaymentSyndicateVouchers.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the PaymentSyndicate to delete.

Example

Query
mutation PaymentSyndicateDelete($id: Int) {
  PaymentSyndicateDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"PaymentSyndicateDelete": true}}

PaymentSyndicateUpdate

Description

Update an existing PaymentSyndicate used to group voucher administration.

Response

Returns an AdminPaymentSyndicate

Arguments
Name Description
name - String The PaymentSyndicate's name.
type - PaymentSyndicateTypeEnum The PaymentSyndicate's type.
id - Int The id of the PaymentSyndicate to update.

Example

Query
mutation PaymentSyndicateUpdate(
  $name: String,
  $type: PaymentSyndicateTypeEnum,
  $id: Int
) {
  PaymentSyndicateUpdate(
    name: $name,
    type: $type,
    id: $id
  ) {
    id
    project_id
    name
    type
    created_at
    updated_at
    vouchers {
      ...AdminPaymentSyndicateVoucherFragment
    }
  }
}
Variables
{
  "name": "string",
  "type": "internal",
  "id": 42
}
Response
{
  "data": {
    "PaymentSyndicateUpdate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "type": "internal",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "vouchers": [AdminPaymentSyndicateVoucher]
    }
  }
}

PaymentSyndicateVoucherCodeBatchCreate

Description

Create a new batch of Voucher Codes for a PaymentSyndicateVoucher, either by supplying the codes explicitly or by having the server generate them.

Arguments
Name Description
payment_syndicate_voucher_id - Int The PaymentSyndicateVoucher id the new Code batch is added to.
codes - [String] Explicit Voucher Codes to add as a batch, up to 1000 at a time.
code_num - Int The number of Voucher Codes to have the server generate as a batch, up to 100000 at a time.

Example

Query
mutation PaymentSyndicateVoucherCodeBatchCreate(
  $payment_syndicate_voucher_id: Int,
  $codes: [String],
  $code_num: Int
) {
  PaymentSyndicateVoucherCodeBatchCreate(
    payment_syndicate_voucher_id: $payment_syndicate_voucher_id,
    codes: $codes,
    code_num: $code_num
  ) {
    id
    payment_syndicate_voucher_id
    installment
    created_at
    updated_at
    codes {
      ...AdminPaymentSyndicateVoucherCodesListedWithPaginationFragment
    }
    code_num
    claimed_num
  }
}
Variables
{
  "payment_syndicate_voucher_id": 42,
  "codes": ["string"],
  "code_num": 42
}
Response
{
  "data": {
    "PaymentSyndicateVoucherCodeBatchCreate": {
      "id": 42,
      "payment_syndicate_voucher_id": 42,
      "installment": 42,
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "codes": AdminPaymentSyndicateVoucherCodesListedWithPagination,
      "code_num": 42,
      "claimed_num": 42
    }
  }
}

PaymentSyndicateVoucherCodeBatchDelete

Description

Delete an existing batch of Voucher Codes, and the Voucher Codes it contains.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Voucher Code batch to delete.

Example

Query
mutation PaymentSyndicateVoucherCodeBatchDelete($id: Int) {
  PaymentSyndicateVoucherCodeBatchDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"PaymentSyndicateVoucherCodeBatchDelete": false}}

PaymentSyndicateVoucherCreate

Description

Create a voucher under a PaymentSyndicate for a Product, Subscription, or generic entitlement.

Response

Returns an AdminPaymentSyndicateVoucher

Arguments
Name Description
locale - String The locale used to resolve the translated description passed for this mutation.
subscription_id - Int The Subscription id this PaymentSyndicateVoucher is scoped to. Only applicable when type is "subscription".
payment_syndicate_id - Int The PaymentSyndicate id that owns the PaymentSyndicateVoucher.
name - String The PaymentSyndicateVoucher's name. Must be unique within the Project.
description - [TranslationInput] The PaymentSyndicateVoucher's translated description(s).
amount - Float The PaymentSyndicateVoucher's price/discount amount, interpreted according to discount_type.
currency - String The PaymentSyndicateVoucher's currency code (e.g. "EUR").
currency_symbol - String The PaymentSyndicateVoucher's currency symbol (e.g. "€"), paired with currency.
installment_num - Int The number of periodical subscription installments this PaymentSyndicateVoucher applies to, in units of time_unit.
max_claimed_num - Int The maximum number of times a Voucher Code belonging to this PaymentSyndicateVoucher can be claimed in total (default 1, higher for large code batches).
max_claimed_per_user_num - Int The maximum number of times a unique Voucher Code can be claimed by a unique User (default 1).
user_subscription_status_action - PaymentSyndicateVoucherUserSubscriptionStatusActionEnum The UserSubscription status to force after this PaymentSyndicateVoucher is validated. Default = activate
is_allow_on_valid_subscription - Boolean Whether this PaymentSyndicateVoucher may be applied even when the User already has a valid Subscription.
time_unit - SubscriptionTimeUnitEnum The time unit in which installment_num is expressed (e.g. "day" or the Subscription's own time unit).
newsletter_list_id - String The id of the newsletter list a User is added to upon claiming this PaymentSyndicateVoucher.
discount_type - PaymentSyndicateVoucherDiscountTypeEnum How amount is applied to the resource price.
installment_type - PaymentSyndicateVoucherInstallmentTypeEnum The PaymentSyndicateVoucher's installment type.
type - PaymentSyndicateVoucherTypeEnum The resource type this PaymentSyndicateVoucher is applicable to.
issue_installments_until - String The fixed date (UTC) up until which installments are issued for this PaymentSyndicateVoucher. Must not lie before installed_at.
installed_at - String The date (UTC) from which this PaymentSyndicateVoucher's Voucher Codes may be claimed.
expires_at - String The date (UTC) until which this PaymentSyndicateVoucher's Voucher Codes may be claimed.
products - [ProductStackInput] The Products this PaymentSyndicateVoucher issues to the User upon being claimed.
scoped_products - [Int] The Product ids this PaymentSyndicateVoucher may be applied to. An empty or omitted list means no restriction.
eligible_email_addresses - [String] The e-mail addresses (or address fragments) eligible to claim this PaymentSyndicateVoucher.
project_id - Int The Project id that will own the PaymentSyndicateVoucher.

Example

Query
mutation PaymentSyndicateVoucherCreate(
  $locale: String,
  $subscription_id: Int,
  $payment_syndicate_id: Int,
  $name: String,
  $description: [TranslationInput],
  $amount: Float,
  $currency: String,
  $currency_symbol: String,
  $installment_num: Int,
  $max_claimed_num: Int,
  $max_claimed_per_user_num: Int,
  $user_subscription_status_action: PaymentSyndicateVoucherUserSubscriptionStatusActionEnum,
  $is_allow_on_valid_subscription: Boolean,
  $time_unit: SubscriptionTimeUnitEnum,
  $newsletter_list_id: String,
  $discount_type: PaymentSyndicateVoucherDiscountTypeEnum,
  $installment_type: PaymentSyndicateVoucherInstallmentTypeEnum,
  $type: PaymentSyndicateVoucherTypeEnum,
  $issue_installments_until: String,
  $installed_at: String,
  $expires_at: String,
  $products: [ProductStackInput],
  $scoped_products: [Int],
  $eligible_email_addresses: [String],
  $project_id: Int
) {
  PaymentSyndicateVoucherCreate(
    locale: $locale,
    subscription_id: $subscription_id,
    payment_syndicate_id: $payment_syndicate_id,
    name: $name,
    description: $description,
    amount: $amount,
    currency: $currency,
    currency_symbol: $currency_symbol,
    installment_num: $installment_num,
    max_claimed_num: $max_claimed_num,
    max_claimed_per_user_num: $max_claimed_per_user_num,
    user_subscription_status_action: $user_subscription_status_action,
    is_allow_on_valid_subscription: $is_allow_on_valid_subscription,
    time_unit: $time_unit,
    newsletter_list_id: $newsletter_list_id,
    discount_type: $discount_type,
    installment_type: $installment_type,
    type: $type,
    issue_installments_until: $issue_installments_until,
    installed_at: $installed_at,
    expires_at: $expires_at,
    products: $products,
    scoped_products: $scoped_products,
    eligible_email_addresses: $eligible_email_addresses,
    project_id: $project_id
  ) {
    id
    project_id
    description
    name
    payment_syndicate_id
    subscription_id
    description_translations {
      ...TranslationFragment
    }
    currency
    currency_symbol
    amount
    installment_num
    max_claimed_num
    max_claimed_per_user_num
    claimed_num
    is_allow_on_valid_subscription
    user_subscription_status_action
    newsletter_list_id
    time_unit
    discount_type
    installment_type
    type
    issue_installments_until
    installed_at
    expires_at
    created_at
    updated_at
    syndicate {
      ...AdminPaymentSyndicateFragment
    }
    batches {
      ...AdminPaymentSyndicateVoucherCodeBatchFragment
    }
    scoped_products {
      ...AdminProductFragment
    }
    products {
      ...AdminProductListedAsRelationFragment
    }
    subscription {
      ...AdminSubscriptionFragment
    }
    eligible_email_addresses
  }
}
Variables
{
  "locale": "string",
  "subscription_id": 42,
  "payment_syndicate_id": 42,
  "name": "string",
  "description": [TranslationInput],
  "amount": 123.45,
  "currency": "string",
  "currency_symbol": "string",
  "installment_num": 42,
  "max_claimed_num": 42,
  "max_claimed_per_user_num": 42,
  "user_subscription_status_action": "activate",
  "is_allow_on_valid_subscription": false,
  "time_unit": "day",
  "newsletter_list_id": "string",
  "discount_type": "percentage",
  "installment_type": "fixed_date",
  "type": "generic",
  "issue_installments_until": "string",
  "installed_at": "string",
  "expires_at": "string",
  "products": [ProductStackInput],
  "scoped_products": [42],
  "eligible_email_addresses": ["string"],
  "project_id": 42
}
Response
{
  "data": {
    "PaymentSyndicateVoucherCreate": {
      "id": 42,
      "project_id": 42,
      "description": "string",
      "name": "string",
      "payment_syndicate_id": 42,
      "subscription_id": 42,
      "description_translations": [Translation],
      "currency": "EUR",
      "currency_symbol": "EUR",
      "amount": 123.45,
      "installment_num": 42,
      "max_claimed_num": 42,
      "max_claimed_per_user_num": 42,
      "claimed_num": 42,
      "is_allow_on_valid_subscription": false,
      "user_subscription_status_action": "string",
      "newsletter_list_id": "string",
      "time_unit": "day",
      "discount_type": "percentage",
      "installment_type": "fixed_date",
      "type": "generic",
      "issue_installments_until": "string",
      "installed_at": "2000-12-31T12:34:56.000Z",
      "expires_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "syndicate": AdminPaymentSyndicate,
      "batches": [AdminPaymentSyndicateVoucherCodeBatch],
      "scoped_products": [AdminProduct],
      "products": [AdminProductListedAsRelation],
      "subscription": AdminSubscription,
      "eligible_email_addresses": ["foo@example.com"]
    }
  }
}

PaymentSyndicateVoucherDelete

Description

Delete an existing PaymentSyndicateVoucher. Fails while the PaymentSyndicateVoucher still has related Voucher Code Batches or Voucher Codes.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the PaymentSyndicateVoucher to delete.

Example

Query
mutation PaymentSyndicateVoucherDelete($id: Int) {
  PaymentSyndicateVoucherDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"PaymentSyndicateVoucherDelete": false}}

PaymentSyndicateVoucherUpdate

Description

Update an existing PaymentSyndicateVoucher's eligibility, validity, and entitlement configuration.

Response

Returns an AdminPaymentSyndicateVoucher

Arguments
Name Description
locale - String The locale used to resolve the translated description passed for this mutation.
subscription_id - Int The Subscription id this PaymentSyndicateVoucher is scoped to. Only applicable when type is "subscription".
payment_syndicate_id - Int The PaymentSyndicate id that owns the PaymentSyndicateVoucher.
name - String The PaymentSyndicateVoucher's name.
description - [TranslationInput] The PaymentSyndicateVoucher's translated description(s).
amount - Float The PaymentSyndicateVoucher's price/discount amount, interpreted according to discount_type.
currency - String The PaymentSyndicateVoucher's currency code (e.g. "EUR").
currency_symbol - String The PaymentSyndicateVoucher's currency symbol (e.g. "€"), paired with currency.
installment_num - Int The number of periodical subscription installments this PaymentSyndicateVoucher applies to, in units of time_unit.
max_claimed_num - Int The maximum number of times a Voucher Code belonging to this PaymentSyndicateVoucher can be claimed in total (default 1, higher for large code batches).
max_claimed_per_user_num - Int The maximum number of times a unique Voucher Code can be claimed by a unique User (default 1).
user_subscription_status_action - PaymentSyndicateVoucherUserSubscriptionStatusActionEnum The UserSubscription status to force after this PaymentSyndicateVoucher is validated.
is_allow_on_valid_subscription - Boolean Whether this PaymentSyndicateVoucher may be applied even when the User already has a valid Subscription.
time_unit - SubscriptionTimeUnitEnum The time unit in which installment_num is expressed (e.g. "day" or the Subscription's own time unit).
newsletter_list_id - String The id of the newsletter list a User is added to upon claiming this PaymentSyndicateVoucher.
discount_type - PaymentSyndicateVoucherDiscountTypeEnum How amount is applied to the resource price.
installment_type - PaymentSyndicateVoucherInstallmentTypeEnum The PaymentSyndicateVoucher's installment type.
type - PaymentSyndicateVoucherTypeEnum The resource type this PaymentSyndicateVoucher is applicable to.
issue_installments_until - String The fixed date (UTC) up until which installments are issued for this PaymentSyndicateVoucher. Must not lie before installed_at.
installed_at - String The date (UTC) from which this PaymentSyndicateVoucher's Voucher Codes may be claimed.
expires_at - String The date (UTC) until which this PaymentSyndicateVoucher's Voucher Codes may be claimed.
products - [ProductStackInput] The Products this PaymentSyndicateVoucher issues to the User upon being claimed.
scoped_products - [Int] The Product ids this PaymentSyndicateVoucher may be applied to. An empty or omitted list means no restriction.
eligible_email_addresses - [String] The e-mail addresses (or address fragments) eligible to claim this PaymentSyndicateVoucher.
id - Int The id of the PaymentSyndicateVoucher to update.

Example

Query
mutation PaymentSyndicateVoucherUpdate(
  $locale: String,
  $subscription_id: Int,
  $payment_syndicate_id: Int,
  $name: String,
  $description: [TranslationInput],
  $amount: Float,
  $currency: String,
  $currency_symbol: String,
  $installment_num: Int,
  $max_claimed_num: Int,
  $max_claimed_per_user_num: Int,
  $user_subscription_status_action: PaymentSyndicateVoucherUserSubscriptionStatusActionEnum,
  $is_allow_on_valid_subscription: Boolean,
  $time_unit: SubscriptionTimeUnitEnum,
  $newsletter_list_id: String,
  $discount_type: PaymentSyndicateVoucherDiscountTypeEnum,
  $installment_type: PaymentSyndicateVoucherInstallmentTypeEnum,
  $type: PaymentSyndicateVoucherTypeEnum,
  $issue_installments_until: String,
  $installed_at: String,
  $expires_at: String,
  $products: [ProductStackInput],
  $scoped_products: [Int],
  $eligible_email_addresses: [String],
  $id: Int
) {
  PaymentSyndicateVoucherUpdate(
    locale: $locale,
    subscription_id: $subscription_id,
    payment_syndicate_id: $payment_syndicate_id,
    name: $name,
    description: $description,
    amount: $amount,
    currency: $currency,
    currency_symbol: $currency_symbol,
    installment_num: $installment_num,
    max_claimed_num: $max_claimed_num,
    max_claimed_per_user_num: $max_claimed_per_user_num,
    user_subscription_status_action: $user_subscription_status_action,
    is_allow_on_valid_subscription: $is_allow_on_valid_subscription,
    time_unit: $time_unit,
    newsletter_list_id: $newsletter_list_id,
    discount_type: $discount_type,
    installment_type: $installment_type,
    type: $type,
    issue_installments_until: $issue_installments_until,
    installed_at: $installed_at,
    expires_at: $expires_at,
    products: $products,
    scoped_products: $scoped_products,
    eligible_email_addresses: $eligible_email_addresses,
    id: $id
  ) {
    id
    project_id
    description
    name
    payment_syndicate_id
    subscription_id
    description_translations {
      ...TranslationFragment
    }
    currency
    currency_symbol
    amount
    installment_num
    max_claimed_num
    max_claimed_per_user_num
    claimed_num
    is_allow_on_valid_subscription
    user_subscription_status_action
    newsletter_list_id
    time_unit
    discount_type
    installment_type
    type
    issue_installments_until
    installed_at
    expires_at
    created_at
    updated_at
    syndicate {
      ...AdminPaymentSyndicateFragment
    }
    batches {
      ...AdminPaymentSyndicateVoucherCodeBatchFragment
    }
    scoped_products {
      ...AdminProductFragment
    }
    products {
      ...AdminProductListedAsRelationFragment
    }
    subscription {
      ...AdminSubscriptionFragment
    }
    eligible_email_addresses
  }
}
Variables
{
  "locale": "string",
  "subscription_id": 42,
  "payment_syndicate_id": 42,
  "name": "string",
  "description": [TranslationInput],
  "amount": 987.65,
  "currency": "string",
  "currency_symbol": "string",
  "installment_num": 42,
  "max_claimed_num": 42,
  "max_claimed_per_user_num": 42,
  "user_subscription_status_action": "none",
  "is_allow_on_valid_subscription": true,
  "time_unit": "day",
  "newsletter_list_id": "string",
  "discount_type": "percentage",
  "installment_type": "fixed_date",
  "type": "generic",
  "issue_installments_until": "string",
  "installed_at": "string",
  "expires_at": "string",
  "products": [ProductStackInput],
  "scoped_products": [42],
  "eligible_email_addresses": ["string"],
  "id": 42
}
Response
{
  "data": {
    "PaymentSyndicateVoucherUpdate": {
      "id": 42,
      "project_id": 42,
      "description": "string",
      "name": "string",
      "payment_syndicate_id": 42,
      "subscription_id": 42,
      "description_translations": [Translation],
      "currency": "EUR",
      "currency_symbol": "EUR",
      "amount": 987.65,
      "installment_num": 42,
      "max_claimed_num": 42,
      "max_claimed_per_user_num": 42,
      "claimed_num": 42,
      "is_allow_on_valid_subscription": false,
      "user_subscription_status_action": "string",
      "newsletter_list_id": "string",
      "time_unit": "day",
      "discount_type": "percentage",
      "installment_type": "fixed_date",
      "type": "generic",
      "issue_installments_until": "string",
      "installed_at": "2000-12-31T12:34:56.000Z",
      "expires_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "syndicate": AdminPaymentSyndicate,
      "batches": [AdminPaymentSyndicateVoucherCodeBatch],
      "scoped_products": [AdminProduct],
      "products": [AdminProductListedAsRelation],
      "subscription": AdminSubscription,
      "eligible_email_addresses": ["foo@example.com"]
    }
  }
}

ProductCreate

Description

Create a Product with pricing, publication, and entitlement configuration.

Response

Returns an AdminProduct

Arguments
Name Description
locale - String The locale used to resolve the translated fields passed for this mutation.
name - String The Product's name.
title - [TranslationInput] The Product's translated title(s).
description - [TranslationInput] The Product's translated description(s).
description_short - [TranslationInput] The Product's translated short description(s).
call_to_action_tag - [TranslationInput] The Product's translated call-to-action tag(s).
newsletter_list_id - String The id of the newsletter list a User is added to upon purchasing this Product.
discoverability - ProductDiscoverabilityEnum How discoverable the Product is to Users.
type - ProductTypeEnum The Product's type.
credit_type - UserPaymentCreditTypeEnum The type of credit this Product issues, when type is "credit" or "service_recurring_credit".
amount_balance - Float The monetary account balance amount this Product issues, when type is "amount_balance".
currency - String The Product's currency code (e.g. "EUR").
currency_symbol - String The Product's currency symbol (e.g. "€"), paired with currency.
price - Float The Product's price.
credit_price - Float The Product's price expressed in credits, as an alternative to price.
credit_amount - Float The quantity of credits this Product issues, when type is "credit" or "service_recurring_credit".
max_purchase_num - Int The maximum number of times a User may purchase this Product.
time_unit - SubscriptionTimeUnitEnum The time unit in which frequency is expressed, for a recurring type Product not synced to its Subscription's installments.
frequency - Float How often, in units of time_unit, a recurring type Product not synced to its Subscription's installments is applied.
period_renewal_day - Int The day of the period on which this Product renews (0 means relative to the day of acquisition, 1 means e.g. the first of the month).
is_sync_installments - Boolean Whether this recurring type Product is synchronised with its Subscription's own installments, rather than using its own time_unit/frequency.
status - ProductStatusEnum The Product's publication status. Default = unpublished
recurring_entitlement_expires_in - Int The number of hours after which a recurring type Product's issued entitlement/credit expires.
recurring_entitlement_expires_in_time_unit_num - Int Alternative to recurring_entitlement_expires_in: the number of time units after which a recurring type Product's issued entitlement/credit expires.
recurring_entitlement_expires_in_time_unit_midnight_offset - Int The offset in seconds since midnight (UTC) applied to recurring_entitlement_expires_in_time_unit_num.
expires_in - Int The number of hours after purchase until entitlement from this Product expires (a "rental" window).
expires_at - String The fixed date (UTC) until which entitlement from this Product expires.
published_from - String The date (UTC) from which the Product may be purchased.
published_until - String The date (UTC) until which the Product may be purchased.
articles - [Int] The Article ids this Product entitles the User to, when type is "article" or "free_article".
categories - [Int] The Category ids this Product belongs to.
issuable_vouchers - [Int] The PaymentSyndicateVoucher ids this Product issues Voucher Codes from, when type is "voucher_code".
notification_topics - [Int] The NotificationTopic ids the User is subscribed to upon purchasing this Product.
files - [ProductFileInput] The Files (icons, images, posters, videos) already linked to this Product to update the type/duration/locale of.
project_id - Int The Project id that will own the Product.

Example

Query
mutation ProductCreate(
  $locale: String,
  $name: String,
  $title: [TranslationInput],
  $description: [TranslationInput],
  $description_short: [TranslationInput],
  $call_to_action_tag: [TranslationInput],
  $newsletter_list_id: String,
  $discoverability: ProductDiscoverabilityEnum,
  $type: ProductTypeEnum,
  $credit_type: UserPaymentCreditTypeEnum,
  $amount_balance: Float,
  $currency: String,
  $currency_symbol: String,
  $price: Float,
  $credit_price: Float,
  $credit_amount: Float,
  $max_purchase_num: Int,
  $time_unit: SubscriptionTimeUnitEnum,
  $frequency: Float,
  $period_renewal_day: Int,
  $is_sync_installments: Boolean,
  $status: ProductStatusEnum,
  $recurring_entitlement_expires_in: Int,
  $recurring_entitlement_expires_in_time_unit_num: Int,
  $recurring_entitlement_expires_in_time_unit_midnight_offset: Int,
  $expires_in: Int,
  $expires_at: String,
  $published_from: String,
  $published_until: String,
  $articles: [Int],
  $categories: [Int],
  $issuable_vouchers: [Int],
  $notification_topics: [Int],
  $files: [ProductFileInput],
  $project_id: Int
) {
  ProductCreate(
    locale: $locale,
    name: $name,
    title: $title,
    description: $description,
    description_short: $description_short,
    call_to_action_tag: $call_to_action_tag,
    newsletter_list_id: $newsletter_list_id,
    discoverability: $discoverability,
    type: $type,
    credit_type: $credit_type,
    amount_balance: $amount_balance,
    currency: $currency,
    currency_symbol: $currency_symbol,
    price: $price,
    credit_price: $credit_price,
    credit_amount: $credit_amount,
    max_purchase_num: $max_purchase_num,
    time_unit: $time_unit,
    frequency: $frequency,
    period_renewal_day: $period_renewal_day,
    is_sync_installments: $is_sync_installments,
    status: $status,
    recurring_entitlement_expires_in: $recurring_entitlement_expires_in,
    recurring_entitlement_expires_in_time_unit_num: $recurring_entitlement_expires_in_time_unit_num,
    recurring_entitlement_expires_in_time_unit_midnight_offset: $recurring_entitlement_expires_in_time_unit_midnight_offset,
    expires_in: $expires_in,
    expires_at: $expires_at,
    published_from: $published_from,
    published_until: $published_until,
    articles: $articles,
    categories: $categories,
    issuable_vouchers: $issuable_vouchers,
    notification_topics: $notification_topics,
    files: $files,
    project_id: $project_id
  ) {
    id
    project_id
    remote_product_id
    name
    title
    description
    description_short
    call_to_action_tag
    type
    credit_type
    currency
    currency_symbol
    price
    credit_price
    credit_amount
    amount_balance
    purchase_num
    max_purchase_num
    expires_in
    expires_at
    created_at
    updated_at
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    articles {
      ...AdminArticleFragment
    }
    categories {
      ...CategoryListedAsRelationFragment
    }
    period_renewal_day
    is_sync_installments
    frequency
    time_unit
    recurring_entitlement_expires_in_time_unit_midnight_offset
    recurring_entitlement_expires_in_time_unit_num
    recurring_entitlement_expires_in
    title_translations {
      ...TranslationFragment
    }
    description_translations {
      ...TranslationFragment
    }
    description_short_translations {
      ...TranslationFragment
    }
    call_to_action_tag_translations {
      ...TranslationFragment
    }
    discoverability
    status
    published_from
    published_until
    newsletter_list_id
    issuable_vouchers {
      ...AdminPaymentSyndicateVoucherFragment
    }
    notification_topics {
      ...AdminNotificationTopicFragment
    }
    files {
      ...FileFragment
    }
  }
}
Variables
{
  "locale": "string",
  "name": "string",
  "title": [TranslationInput],
  "description": [TranslationInput],
  "description_short": [TranslationInput],
  "call_to_action_tag": [TranslationInput],
  "newsletter_list_id": "string",
  "discoverability": "hidden",
  "type": "article",
  "credit_type": "general",
  "amount_balance": 123.45,
  "currency": "string",
  "currency_symbol": "string",
  "price": 123.45,
  "credit_price": 123.45,
  "credit_amount": 123.45,
  "max_purchase_num": 42,
  "time_unit": "day",
  "frequency": 123.45,
  "period_renewal_day": 42,
  "is_sync_installments": false,
  "status": "unpublished",
  "recurring_entitlement_expires_in": 42,
  "recurring_entitlement_expires_in_time_unit_num": 42,
  "recurring_entitlement_expires_in_time_unit_midnight_offset": 42,
  "expires_in": 42,
  "expires_at": "string",
  "published_from": "string",
  "published_until": "string",
  "articles": [42],
  "categories": [42],
  "issuable_vouchers": [42],
  "notification_topics": [42],
  "files": [ProductFileInput],
  "project_id": 42
}
Response
{
  "data": {
    "ProductCreate": {
      "id": 42,
      "project_id": 42,
      "remote_product_id": "string",
      "name": "string",
      "title": "string",
      "description": "string",
      "description_short": "string",
      "call_to_action_tag": "string",
      "type": "article",
      "credit_type": "general",
      "currency": "EUR",
      "currency_symbol": "EUR",
      "price": 7.99,
      "credit_price": 1,
      "credit_amount": 1,
      "amount_balance": 987.65,
      "purchase_num": 42,
      "max_purchase_num": 1,
      "expires_in": 86400,
      "expires_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "articles": [AdminArticle],
      "categories": [CategoryListedAsRelation],
      "period_renewal_day": 42,
      "is_sync_installments": true,
      "frequency": 1,
      "time_unit": "day",
      "recurring_entitlement_expires_in_time_unit_midnight_offset": 86400,
      "recurring_entitlement_expires_in_time_unit_num": 86400,
      "recurring_entitlement_expires_in": 86400,
      "title_translations": [Translation],
      "description_translations": [Translation],
      "description_short_translations": [Translation],
      "call_to_action_tag_translations": [Translation],
      "discoverability": "hidden",
      "status": "string",
      "published_from": "string",
      "published_until": "string",
      "newsletter_list_id": "string",
      "issuable_vouchers": [AdminPaymentSyndicateVoucher],
      "notification_topics": [AdminNotificationTopic],
      "files": [File]
    }
  }
}

ProductDelete

Description

Delete an existing Product and its Files. Fails while the Product still has related Articles.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Product to delete.

Example

Query
mutation ProductDelete($id: Int) {
  ProductDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"ProductDelete": true}}

ProductFileDelete

Description

Delete a File belonging to a Product.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
product_id - Int The Product id that owns the File.

Example

Query
mutation ProductFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $product_id: Int
) {
  ProductFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    product_id: $product_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "product_id": 42
}
Response
{"data": {"ProductFileDelete": false}}

ProductUpdate

Description

Update an existing Product's pricing, publication, and entitlement configuration.

Response

Returns an AdminProduct

Arguments
Name Description
locale - String The locale used to resolve the translated fields passed for this mutation.
name - String The Product's name.
title - [TranslationInput] The Product's translated title(s).
description - [TranslationInput] The Product's translated description(s).
description_short - [TranslationInput] The Product's translated short description(s).
call_to_action_tag - [TranslationInput] The Product's translated call-to-action tag(s).
newsletter_list_id - String The id of the newsletter list a User is added to upon purchasing this Product.
discoverability - ProductDiscoverabilityEnum How discoverable the Product is to Users.
type - ProductTypeEnum The Product's type.
credit_type - UserPaymentCreditTypeEnum The type of credit this Product issues, when type is "credit" or "service_recurring_credit".
amount_balance - Float The monetary account balance amount this Product issues, when type is "amount_balance".
currency - String The Product's currency code (e.g. "EUR").
currency_symbol - String The Product's currency symbol (e.g. "€"), paired with currency.
price - Float The Product's price.
credit_price - Float The Product's price expressed in credits, as an alternative to price.
credit_amount - Float The quantity of credits this Product issues, when type is "credit" or "service_recurring_credit".
max_purchase_num - Int The maximum number of times a User may purchase this Product.
time_unit - SubscriptionTimeUnitEnum The time unit in which frequency is expressed, for a recurring type Product not synced to its Subscription's installments.
frequency - Float How often, in units of time_unit, a recurring type Product not synced to its Subscription's installments is applied.
period_renewal_day - Int The day of the period on which this Product renews (0 means relative to the day of acquisition, 1 means e.g. the first of the month).
is_sync_installments - Boolean Whether this recurring type Product is synchronised with its Subscription's own installments, rather than using its own time_unit/frequency.
status - ProductStatusEnum The Product's publication status.
recurring_entitlement_expires_in - Int The number of hours after which a recurring type Product's issued entitlement/credit expires.
recurring_entitlement_expires_in_time_unit_num - Int Alternative to recurring_entitlement_expires_in: the number of time units after which a recurring type Product's issued entitlement/credit expires.
recurring_entitlement_expires_in_time_unit_midnight_offset - Int The offset in seconds since midnight (UTC) applied to recurring_entitlement_expires_in_time_unit_num.
expires_in - Int The number of hours after purchase until entitlement from this Product expires (a "rental" window).
expires_at - String The fixed date (UTC) until which entitlement from this Product expires.
published_from - String The date (UTC) from which the Product may be purchased.
published_until - String The date (UTC) until which the Product may be purchased.
articles - [Int] The Article ids this Product entitles the User to, when type is "article" or "free_article".
categories - [Int] The Category ids this Product belongs to.
issuable_vouchers - [Int] The PaymentSyndicateVoucher ids this Product issues Voucher Codes from, when type is "voucher_code".
notification_topics - [Int] The NotificationTopic ids the User is subscribed to upon purchasing this Product.
files - [ProductFileInput] The Files (icons, images, posters, videos) already linked to this Product to update the type/duration/locale of.
id - Int The id of the Product to update.

Example

Query
mutation ProductUpdate(
  $locale: String,
  $name: String,
  $title: [TranslationInput],
  $description: [TranslationInput],
  $description_short: [TranslationInput],
  $call_to_action_tag: [TranslationInput],
  $newsletter_list_id: String,
  $discoverability: ProductDiscoverabilityEnum,
  $type: ProductTypeEnum,
  $credit_type: UserPaymentCreditTypeEnum,
  $amount_balance: Float,
  $currency: String,
  $currency_symbol: String,
  $price: Float,
  $credit_price: Float,
  $credit_amount: Float,
  $max_purchase_num: Int,
  $time_unit: SubscriptionTimeUnitEnum,
  $frequency: Float,
  $period_renewal_day: Int,
  $is_sync_installments: Boolean,
  $status: ProductStatusEnum,
  $recurring_entitlement_expires_in: Int,
  $recurring_entitlement_expires_in_time_unit_num: Int,
  $recurring_entitlement_expires_in_time_unit_midnight_offset: Int,
  $expires_in: Int,
  $expires_at: String,
  $published_from: String,
  $published_until: String,
  $articles: [Int],
  $categories: [Int],
  $issuable_vouchers: [Int],
  $notification_topics: [Int],
  $files: [ProductFileInput],
  $id: Int
) {
  ProductUpdate(
    locale: $locale,
    name: $name,
    title: $title,
    description: $description,
    description_short: $description_short,
    call_to_action_tag: $call_to_action_tag,
    newsletter_list_id: $newsletter_list_id,
    discoverability: $discoverability,
    type: $type,
    credit_type: $credit_type,
    amount_balance: $amount_balance,
    currency: $currency,
    currency_symbol: $currency_symbol,
    price: $price,
    credit_price: $credit_price,
    credit_amount: $credit_amount,
    max_purchase_num: $max_purchase_num,
    time_unit: $time_unit,
    frequency: $frequency,
    period_renewal_day: $period_renewal_day,
    is_sync_installments: $is_sync_installments,
    status: $status,
    recurring_entitlement_expires_in: $recurring_entitlement_expires_in,
    recurring_entitlement_expires_in_time_unit_num: $recurring_entitlement_expires_in_time_unit_num,
    recurring_entitlement_expires_in_time_unit_midnight_offset: $recurring_entitlement_expires_in_time_unit_midnight_offset,
    expires_in: $expires_in,
    expires_at: $expires_at,
    published_from: $published_from,
    published_until: $published_until,
    articles: $articles,
    categories: $categories,
    issuable_vouchers: $issuable_vouchers,
    notification_topics: $notification_topics,
    files: $files,
    id: $id
  ) {
    id
    project_id
    remote_product_id
    name
    title
    description
    description_short
    call_to_action_tag
    type
    credit_type
    currency
    currency_symbol
    price
    credit_price
    credit_amount
    amount_balance
    purchase_num
    max_purchase_num
    expires_in
    expires_at
    created_at
    updated_at
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    articles {
      ...AdminArticleFragment
    }
    categories {
      ...CategoryListedAsRelationFragment
    }
    period_renewal_day
    is_sync_installments
    frequency
    time_unit
    recurring_entitlement_expires_in_time_unit_midnight_offset
    recurring_entitlement_expires_in_time_unit_num
    recurring_entitlement_expires_in
    title_translations {
      ...TranslationFragment
    }
    description_translations {
      ...TranslationFragment
    }
    description_short_translations {
      ...TranslationFragment
    }
    call_to_action_tag_translations {
      ...TranslationFragment
    }
    discoverability
    status
    published_from
    published_until
    newsletter_list_id
    issuable_vouchers {
      ...AdminPaymentSyndicateVoucherFragment
    }
    notification_topics {
      ...AdminNotificationTopicFragment
    }
    files {
      ...FileFragment
    }
  }
}
Variables
{
  "locale": "string",
  "name": "string",
  "title": [TranslationInput],
  "description": [TranslationInput],
  "description_short": [TranslationInput],
  "call_to_action_tag": [TranslationInput],
  "newsletter_list_id": "string",
  "discoverability": "hidden",
  "type": "article",
  "credit_type": "general",
  "amount_balance": 123.45,
  "currency": "string",
  "currency_symbol": "string",
  "price": 123.45,
  "credit_price": 987.65,
  "credit_amount": 987.65,
  "max_purchase_num": 42,
  "time_unit": "day",
  "frequency": 987.65,
  "period_renewal_day": 42,
  "is_sync_installments": false,
  "status": "unpublished",
  "recurring_entitlement_expires_in": 42,
  "recurring_entitlement_expires_in_time_unit_num": 42,
  "recurring_entitlement_expires_in_time_unit_midnight_offset": 42,
  "expires_in": 42,
  "expires_at": "string",
  "published_from": "string",
  "published_until": "string",
  "articles": [42],
  "categories": [42],
  "issuable_vouchers": [42],
  "notification_topics": [42],
  "files": [ProductFileInput],
  "id": 42
}
Response
{
  "data": {
    "ProductUpdate": {
      "id": 42,
      "project_id": 42,
      "remote_product_id": "string",
      "name": "string",
      "title": "string",
      "description": "string",
      "description_short": "string",
      "call_to_action_tag": "string",
      "type": "article",
      "credit_type": "general",
      "currency": "EUR",
      "currency_symbol": "EUR",
      "price": 7.99,
      "credit_price": 1,
      "credit_amount": 1,
      "amount_balance": 123.45,
      "purchase_num": 42,
      "max_purchase_num": 1,
      "expires_in": 86400,
      "expires_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "articles": [AdminArticle],
      "categories": [CategoryListedAsRelation],
      "period_renewal_day": 42,
      "is_sync_installments": true,
      "frequency": 1,
      "time_unit": "day",
      "recurring_entitlement_expires_in_time_unit_midnight_offset": 86400,
      "recurring_entitlement_expires_in_time_unit_num": 86400,
      "recurring_entitlement_expires_in": 86400,
      "title_translations": [Translation],
      "description_translations": [Translation],
      "description_short_translations": [Translation],
      "call_to_action_tag_translations": [Translation],
      "discoverability": "hidden",
      "status": "string",
      "published_from": "string",
      "published_until": "string",
      "newsletter_list_id": "string",
      "issuable_vouchers": [AdminPaymentSyndicateVoucher],
      "notification_topics": [AdminNotificationTopic],
      "files": [File]
    }
  }
}

ProjectCacheClear

Description

Clear the cached content (queries and resources) for a Project. Critical caches, such as those holding Users' nomadic watching state, are left intact.

Response

Returns a Boolean

Arguments
Name Description
project_id - Int The Project id whose content cache should be cleared.

Example

Query
mutation ProjectCacheClear($project_id: Int) {
  ProjectCacheClear(project_id: $project_id)
}
Variables
{"project_id": 42}
Response
{"data": {"ProjectCacheClear": false}}

ProjectConfigListUpdate

Description

Update a batch of ProjectConfigs by context or itemised ids

Arguments
Name Description
project_id - Int The Project id that owns the ProjectConfigs
project_config_context - ProjectConfigContextEnum The CMS settings context whose ProjectConfigs are being updated
password_current - String The current admin User password for password-protected ProjectConfig contexts
items - [ProjectConfigInput] The ProjectConfig ids and replacement values to validate and save

Example

Query
mutation ProjectConfigListUpdate(
  $project_id: Int,
  $project_config_context: ProjectConfigContextEnum,
  $password_current: String,
  $items: [ProjectConfigInput]
) {
  ProjectConfigListUpdate(
    project_id: $project_id,
    project_config_context: $project_config_context,
    password_current: $password_current,
    items: $items
  ) {
    items {
      ...AdminProjectConfigFragment
    }
    pagination {
      ...PaginationFragment
    }
  }
}
Variables
{
  "project_id": 42,
  "project_config_context": "branding_mobile_custom_css",
  "password_current": "string",
  "items": [ProjectConfigInput]
}
Response
{
  "data": {
    "ProjectConfigListUpdate": {
      "items": [AdminProjectConfig],
      "pagination": Pagination
    }
  }
}

ProjectConfigUpdate

Description

Update a single ProjectConfig

Response

Returns an AdminProjectConfig

Arguments
Name Description
project_id - Int The Project id that owns the ProjectConfig
id - Int The id of the ProjectConfig to update
value - String The ProjectConfig replacement value

Example

Query
mutation ProjectConfigUpdate(
  $project_id: Int,
  $id: Int,
  $value: String
) {
  ProjectConfigUpdate(
    project_id: $project_id,
    id: $id,
    value: $value
  ) {
    id
    project_id
    key
    value
    default_value
    label
    type
    is_read_only
    is_auth_only
    related_file_type
    created_at
    updated_at
  }
}
Variables
{
  "project_id": 42,
  "id": 42,
  "value": "string"
}
Response
{
  "data": {
    "ProjectConfigUpdate": {
      "id": 42,
      "project_id": 42,
      "key": "string",
      "value": "string",
      "default_value": "string",
      "label": "string",
      "type": "string",
      "is_read_only": true,
      "is_auth_only": false,
      "related_file_type": "string",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z"
    }
  }
}

SubscriptionCreate

Description

Create a recurring Subscription with billing and entitlement configuration.

Response

Returns an AdminSubscription

Arguments
Name Description
locale - String The locale used to resolve the translated fields passed for this mutation.
name - String The Subscription's name.
title - [TranslationInput] The Subscription's translated title(s).
description - [TranslationInput] The Subscription's translated description(s).
description_short - [TranslationInput] The Subscription's translated short description(s).
newsletter_list_id - String The id of the newsletter list a User is added to upon purchasing this Subscription.
discoverability - SubscriptionDiscoverabilityEnum How discoverable the Subscription is to Users.
type - SubscriptionTypeEnum The Subscription's type. Default = svod
entitlement_scope - SubscriptionEntitlementScopeEnum Which Articles the Subscription entitles. Default = all
status - SubscriptionStatusEnum The Subscription's publication status. Default = inactive
price - Float The Subscription's initial price (on first payment).
price_per_installment - Float The Subscription's price per recurring periodic installment.
time_unit - SubscriptionTimeUnitEnum The time unit of the Subscription's recurring periodic installment. Default = month
frequency - Float How often, in units of time_unit, the Subscription's recurring periodic installment repeats.
currency - String The Subscription's currency code (e.g. "EUR").
currency_symbol - String The Subscription's currency symbol (e.g. "€"), paired with currency.
initial_installment_num - Int The Subscription's initial number of installments.
initial_installment_time_unit - SubscriptionTimeUnitEnum The time unit of the Subscription's initial installment.
allow_suspend_after_installment_num - Int The number of periodic installments after which a UserSubscription is allowed to be suspended.
max_concurrent_vod_stream_num - Int The maximum number of concurrent VOD streams allowed for a UserSubscription.
user_subscription_status_action - SubscriptionUserSubscriptionStatusActionEnum The UserSubscription status forced after purchasing this Subscription. Default = activate
project_id - Int The Project id that will own the Subscription.

Example

Query
mutation SubscriptionCreate(
  $locale: String,
  $name: String,
  $title: [TranslationInput],
  $description: [TranslationInput],
  $description_short: [TranslationInput],
  $newsletter_list_id: String,
  $discoverability: SubscriptionDiscoverabilityEnum,
  $type: SubscriptionTypeEnum,
  $entitlement_scope: SubscriptionEntitlementScopeEnum,
  $status: SubscriptionStatusEnum,
  $price: Float,
  $price_per_installment: Float,
  $time_unit: SubscriptionTimeUnitEnum,
  $frequency: Float,
  $currency: String,
  $currency_symbol: String,
  $initial_installment_num: Int,
  $initial_installment_time_unit: SubscriptionTimeUnitEnum,
  $allow_suspend_after_installment_num: Int,
  $max_concurrent_vod_stream_num: Int,
  $user_subscription_status_action: SubscriptionUserSubscriptionStatusActionEnum,
  $project_id: Int
) {
  SubscriptionCreate(
    locale: $locale,
    name: $name,
    title: $title,
    description: $description,
    description_short: $description_short,
    newsletter_list_id: $newsletter_list_id,
    discoverability: $discoverability,
    type: $type,
    entitlement_scope: $entitlement_scope,
    status: $status,
    price: $price,
    price_per_installment: $price_per_installment,
    time_unit: $time_unit,
    frequency: $frequency,
    currency: $currency,
    currency_symbol: $currency_symbol,
    initial_installment_num: $initial_installment_num,
    initial_installment_time_unit: $initial_installment_time_unit,
    allow_suspend_after_installment_num: $allow_suspend_after_installment_num,
    max_concurrent_vod_stream_num: $max_concurrent_vod_stream_num,
    user_subscription_status_action: $user_subscription_status_action,
    project_id: $project_id
  ) {
    id
    project_id
    remote_subscription_id
    name
    title
    description
    description_short
    type
    price
    price_per_installment
    time_unit
    time_unit_translation
    frequency
    currency
    currency_symbol
    initial_installment_num
    initial_installment_time_unit
    allow_suspend_after_installment_num
    max_concurrent_vod_stream_num
    newsletter_list_id
    entitlement_scope
    is_credit_issuing
    purchase_num
    max_purchase_num
    articles {
      ...ArticleListedAsRelationFragment
    }
    categories {
      ...CategoryListedAsRelationFragment
    }
    payment_providers {
      ...AdminPaymentProviderListedAsRelationFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    created_at
    updated_at
    user_subscription_status_action
    title_translations {
      ...TranslationFragment
    }
    description_translations {
      ...TranslationFragment
    }
    description_short_translations {
      ...TranslationFragment
    }
    discoverability
    status
    products {
      ...AdminProductListedAsRelationFragment
    }
    entitleable_articles {
      ...ArticleListedAsRelationFragment
    }
    files {
      ...FileFragment
    }
  }
}
Variables
{
  "locale": "string",
  "name": "string",
  "title": [TranslationInput],
  "description": [TranslationInput],
  "description_short": [TranslationInput],
  "newsletter_list_id": "string",
  "discoverability": "hidden",
  "type": "svod",
  "entitlement_scope": "all",
  "status": "inactive",
  "price": 123.45,
  "price_per_installment": 987.65,
  "time_unit": "month",
  "frequency": 987.65,
  "currency": "string",
  "currency_symbol": "string",
  "initial_installment_num": 42,
  "initial_installment_time_unit": "day",
  "allow_suspend_after_installment_num": 42,
  "max_concurrent_vod_stream_num": 42,
  "user_subscription_status_action": "activate",
  "project_id": 42
}
Response
{
  "data": {
    "SubscriptionCreate": {
      "id": 42,
      "project_id": 42,
      "remote_subscription_id": "string",
      "name": "string",
      "title": "string",
      "description": "string",
      "description_short": "string",
      "type": "svod",
      "price": 7.99,
      "price_per_installment": 7.99,
      "time_unit": "day",
      "time_unit_translation": "string",
      "frequency": 1,
      "currency": "EUR",
      "currency_symbol": "EUR",
      "initial_installment_num": 42,
      "initial_installment_time_unit": "day",
      "allow_suspend_after_installment_num": 42,
      "max_concurrent_vod_stream_num": 42,
      "newsletter_list_id": "string",
      "entitlement_scope": "partial_exclusive",
      "is_credit_issuing": true,
      "purchase_num": 42,
      "max_purchase_num": 1,
      "articles": [ArticleListedAsRelation],
      "categories": [CategoryListedAsRelation],
      "payment_providers": [
        AdminPaymentProviderListedAsRelation
      ],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "user_subscription_status_action": "string",
      "title_translations": [Translation],
      "description_translations": [Translation],
      "description_short_translations": [Translation],
      "discoverability": "hidden",
      "status": "string",
      "products": [AdminProductListedAsRelation],
      "entitleable_articles": [ArticleListedAsRelation],
      "files": [File]
    }
  }
}

SubscriptionDelete

Description

Delete an existing Subscription and its Files. Fails while the Subscription still has related PaymentSyndicateVouchers or UserSubscriptions.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Subscription to delete.

Example

Query
mutation SubscriptionDelete($id: Int) {
  SubscriptionDelete(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"SubscriptionDelete": true}}

SubscriptionFileDelete

Description

Delete a File belonging to a Subscription.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the target File.
type - FileTypeEnum The File's type.
duration - Int The File's duration in seconds, where applicable (e.g. video/audio clips).
locale - String The File's locale, where applicable (e.g. subtitles).
subscription_id - Int The Subscription id that owns the File.

Example

Query
mutation SubscriptionFileDelete(
  $id: Int,
  $type: FileTypeEnum,
  $duration: Int,
  $locale: String,
  $subscription_id: Int
) {
  SubscriptionFileDelete(
    id: $id,
    type: $type,
    duration: $duration,
    locale: $locale,
    subscription_id: $subscription_id
  )
}
Variables
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "subscription_id": 42
}
Response
{"data": {"SubscriptionFileDelete": false}}

SubscriptionUpdate

Description

Update an existing Subscription's billing, availability, and entitlement configuration.

Response

Returns an AdminSubscription

Arguments
Name Description
locale - String The locale used to resolve the translated fields passed for this mutation.
name - String The Subscription's name.
title - [TranslationInput] The Subscription's translated title(s).
description - [TranslationInput] The Subscription's translated description(s).
description_short - [TranslationInput] The Subscription's translated short description(s).
newsletter_list_id - String The id of the newsletter list a User is added to upon purchasing this Subscription.
discoverability - SubscriptionDiscoverabilityEnum How discoverable the Subscription is to Users.
type - SubscriptionTypeEnum The Subscription's type.
entitlement_scope - SubscriptionEntitlementScopeEnum Which Articles the Subscription entitles.
status - SubscriptionStatusEnum The Subscription's publication status.
price - Float The Subscription's initial price (on first payment).
price_per_installment - Float The Subscription's price per recurring periodic installment.
time_unit - SubscriptionTimeUnitEnum The time unit of the Subscription's recurring periodic installment.
frequency - Float How often, in units of time_unit, the Subscription's recurring periodic installment repeats.
currency - String The Subscription's currency code (e.g. "EUR").
currency_symbol - String The Subscription's currency symbol (e.g. "€"), paired with currency.
initial_installment_num - Int The Subscription's initial number of installments.
initial_installment_time_unit - SubscriptionTimeUnitEnum The time unit of the Subscription's initial installment.
allow_suspend_after_installment_num - Int The number of periodic installments after which a UserSubscription is allowed to be suspended.
max_concurrent_vod_stream_num - Int The maximum number of concurrent VOD streams allowed for a UserSubscription.
user_subscription_status_action - SubscriptionUserSubscriptionStatusActionEnum The UserSubscription status forced after purchasing this Subscription.
id - Int The id of the Subscription to update.
products - [ProductStackInput] The Products included with a purchase of this Subscription.
payment_providers - [Int] The PaymentProvider ids this Subscription may be purchased through. An empty list means no restriction; omitting the argument leaves the current set unchanged.
articles - [Int] The Article ids individually selected as part of the Subscription's entitlement_scope.
categories - [Int] The Category ids individually selected as part of the Subscription's entitlement_scope.
files - [SubscriptionFileInput] The Files (icons, images, posters, videos) already linked to this Subscription to update the type/duration/locale of.

Example

Query
mutation SubscriptionUpdate(
  $locale: String,
  $name: String,
  $title: [TranslationInput],
  $description: [TranslationInput],
  $description_short: [TranslationInput],
  $newsletter_list_id: String,
  $discoverability: SubscriptionDiscoverabilityEnum,
  $type: SubscriptionTypeEnum,
  $entitlement_scope: SubscriptionEntitlementScopeEnum,
  $status: SubscriptionStatusEnum,
  $price: Float,
  $price_per_installment: Float,
  $time_unit: SubscriptionTimeUnitEnum,
  $frequency: Float,
  $currency: String,
  $currency_symbol: String,
  $initial_installment_num: Int,
  $initial_installment_time_unit: SubscriptionTimeUnitEnum,
  $allow_suspend_after_installment_num: Int,
  $max_concurrent_vod_stream_num: Int,
  $user_subscription_status_action: SubscriptionUserSubscriptionStatusActionEnum,
  $id: Int,
  $products: [ProductStackInput],
  $payment_providers: [Int],
  $articles: [Int],
  $categories: [Int],
  $files: [SubscriptionFileInput]
) {
  SubscriptionUpdate(
    locale: $locale,
    name: $name,
    title: $title,
    description: $description,
    description_short: $description_short,
    newsletter_list_id: $newsletter_list_id,
    discoverability: $discoverability,
    type: $type,
    entitlement_scope: $entitlement_scope,
    status: $status,
    price: $price,
    price_per_installment: $price_per_installment,
    time_unit: $time_unit,
    frequency: $frequency,
    currency: $currency,
    currency_symbol: $currency_symbol,
    initial_installment_num: $initial_installment_num,
    initial_installment_time_unit: $initial_installment_time_unit,
    allow_suspend_after_installment_num: $allow_suspend_after_installment_num,
    max_concurrent_vod_stream_num: $max_concurrent_vod_stream_num,
    user_subscription_status_action: $user_subscription_status_action,
    id: $id,
    products: $products,
    payment_providers: $payment_providers,
    articles: $articles,
    categories: $categories,
    files: $files
  ) {
    id
    project_id
    remote_subscription_id
    name
    title
    description
    description_short
    type
    price
    price_per_installment
    time_unit
    time_unit_translation
    frequency
    currency
    currency_symbol
    initial_installment_num
    initial_installment_time_unit
    allow_suspend_after_installment_num
    max_concurrent_vod_stream_num
    newsletter_list_id
    entitlement_scope
    is_credit_issuing
    purchase_num
    max_purchase_num
    articles {
      ...ArticleListedAsRelationFragment
    }
    categories {
      ...CategoryListedAsRelationFragment
    }
    payment_providers {
      ...AdminPaymentProviderListedAsRelationFragment
    }
    icons {
      ...FileFragment
    }
    images {
      ...FileFragment
    }
    posters {
      ...FileFragment
    }
    videos {
      ...FileFragment
    }
    created_at
    updated_at
    user_subscription_status_action
    title_translations {
      ...TranslationFragment
    }
    description_translations {
      ...TranslationFragment
    }
    description_short_translations {
      ...TranslationFragment
    }
    discoverability
    status
    products {
      ...AdminProductListedAsRelationFragment
    }
    entitleable_articles {
      ...ArticleListedAsRelationFragment
    }
    files {
      ...FileFragment
    }
  }
}
Variables
{
  "locale": "string",
  "name": "string",
  "title": [TranslationInput],
  "description": [TranslationInput],
  "description_short": [TranslationInput],
  "newsletter_list_id": "string",
  "discoverability": "hidden",
  "type": "svod",
  "entitlement_scope": "partial_exclusive",
  "status": "inactive",
  "price": 123.45,
  "price_per_installment": 987.65,
  "time_unit": "day",
  "frequency": 123.45,
  "currency": "string",
  "currency_symbol": "string",
  "initial_installment_num": 42,
  "initial_installment_time_unit": "day",
  "allow_suspend_after_installment_num": 42,
  "max_concurrent_vod_stream_num": 42,
  "user_subscription_status_action": "activate",
  "id": 42,
  "products": [ProductStackInput],
  "payment_providers": [42],
  "articles": [42],
  "categories": [42],
  "files": [SubscriptionFileInput]
}
Response
{
  "data": {
    "SubscriptionUpdate": {
      "id": 42,
      "project_id": 42,
      "remote_subscription_id": "string",
      "name": "string",
      "title": "string",
      "description": "string",
      "description_short": "string",
      "type": "svod",
      "price": 7.99,
      "price_per_installment": 7.99,
      "time_unit": "day",
      "time_unit_translation": "string",
      "frequency": 1,
      "currency": "EUR",
      "currency_symbol": "EUR",
      "initial_installment_num": 42,
      "initial_installment_time_unit": "day",
      "allow_suspend_after_installment_num": 42,
      "max_concurrent_vod_stream_num": 42,
      "newsletter_list_id": "string",
      "entitlement_scope": "partial_exclusive",
      "is_credit_issuing": true,
      "purchase_num": 42,
      "max_purchase_num": 1,
      "articles": [ArticleListedAsRelation],
      "categories": [CategoryListedAsRelation],
      "payment_providers": [
        AdminPaymentProviderListedAsRelation
      ],
      "icons": [File],
      "images": [File],
      "posters": [File],
      "videos": [File],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "user_subscription_status_action": "string",
      "title_translations": [Translation],
      "description_translations": [Translation],
      "description_short_translations": [Translation],
      "discoverability": "hidden",
      "status": "string",
      "products": [AdminProductListedAsRelation],
      "entitleable_articles": [ArticleListedAsRelation],
      "files": [File]
    }
  }
}

UserAuthenticate

Description

Authenticate with e-mail and password, and issue new access/refresh tokens.

Response

Returns an Authenticate

Arguments
Name Description
email - String The User's e-mail address.
password - String The User's password.

Example

Query
mutation UserAuthenticate(
  $email: String,
  $password: String
) {
  UserAuthenticate(
    email: $email,
    password: $password
  ) {
    access_token
    refresh_token
    expires_in
    token_type
    user_id
    user_email
    active_project_id
    url
    is_terms_and_conditions_renewal_required
  }
}
Variables
{
  "email": "string",
  "password": "string"
}
Response
{
  "data": {
    "UserAuthenticate": {
      "access_token": "string",
      "refresh_token": "string",
      "expires_in": 86400,
      "token_type": "string",
      "user_id": 42,
      "user_email": "foo@example.com",
      "active_project_id": 42,
      "url": "https://url.example.com",
      "is_terms_and_conditions_renewal_required": true
    }
  }
}

UserAuthenticateInvalidate

Description

Invalidate the current authenticated session and remove all tokens.

Response

Returns a Boolean

Example

Query
mutation UserAuthenticateInvalidate {
  UserAuthenticateInvalidate
}
Response
{"data": {"UserAuthenticateInvalidate": true}}

UserAuthenticateRefresh

Description

Refresh the current authenticated session and issue new tokens.

Response

Returns an Authenticate

Arguments
Name Description
refresh_token - String The refresh token issued by a previous authentication, used in place of the http-only refresh_token cookie.

Example

Query
mutation UserAuthenticateRefresh($refresh_token: String) {
  UserAuthenticateRefresh(refresh_token: $refresh_token) {
    access_token
    refresh_token
    expires_in
    token_type
    user_id
    user_email
    active_project_id
    url
    is_terms_and_conditions_renewal_required
  }
}
Variables
{"refresh_token": "string"}
Response
{
  "data": {
    "UserAuthenticateRefresh": {
      "access_token": "string",
      "refresh_token": "string",
      "expires_in": 86400,
      "token_type": "string",
      "user_id": 42,
      "user_email": "foo@example.com",
      "active_project_id": 42,
      "url": "https://url.example.com",
      "is_terms_and_conditions_renewal_required": true
    }
  }
}

UserCreate

Description

Create a new User in a Project. By default this creates a regular User; set is_administrator to true to create an Administrator instead, optionally with one Role id. A name, an e-mail address (unique within the Project) and the project_id are required.

Response

Returns an AdminUser

Arguments
Name Description
name - String The User's name.
email - String The User's e-mail address, unique within the Project.
password - String The User's password.
gender - UserGenderTypeEnum The User's gender.
address - String The User's address.
postal_code - String The User's postal code.
city - String The User's city.
country - String The User's country.
locale - String The User's locale (language).
subtitle_locale - String The User's preferred subtitle locale (language).
audio_locale - String The User's preferred audio locale (language).
phone - String The User's phone number.
phone_country - String The 2-letter country code paired with phone.
birthday - String The User's birthday.
height - Float The User's height.
weight - Float The User's weight.
custom_data - String Custom data stored for the User.
consents - [UserConsentInput] The User's cookie consent records.
notification_topics - [UserNotificationTopicInput] The NotificationTopics the User is subscribed to.
notification_profiles - [UserNotificationProfileInput] The User's notification delivery profiles.
notifiable - UserNotifiableTypeEnum How the User may be notified.
is_newsletter_opt_in - Boolean Whether the User has opted in to the newsletter.
project_id - Int The Project id that will own the User.
metas - [UserMetaInput] The User's meta properties.
roles - [Int] The Role id to assign to the User, when is_administrator is true. At most one Role is allowed.
is_administrator - Boolean Whether this mutation creates an Administrator rather than a regular User.

Example

Query
mutation UserCreate(
  $name: String,
  $email: String,
  $password: String,
  $gender: UserGenderTypeEnum,
  $address: String,
  $postal_code: String,
  $city: String,
  $country: String,
  $locale: String,
  $subtitle_locale: String,
  $audio_locale: String,
  $phone: String,
  $phone_country: String,
  $birthday: String,
  $height: Float,
  $weight: Float,
  $custom_data: String,
  $consents: [UserConsentInput],
  $notification_topics: [UserNotificationTopicInput],
  $notification_profiles: [UserNotificationProfileInput],
  $notifiable: UserNotifiableTypeEnum,
  $is_newsletter_opt_in: Boolean,
  $project_id: Int,
  $metas: [UserMetaInput],
  $roles: [Int],
  $is_administrator: Boolean
) {
  UserCreate(
    name: $name,
    email: $email,
    password: $password,
    gender: $gender,
    address: $address,
    postal_code: $postal_code,
    city: $city,
    country: $country,
    locale: $locale,
    subtitle_locale: $subtitle_locale,
    audio_locale: $audio_locale,
    phone: $phone,
    phone_country: $phone_country,
    birthday: $birthday,
    height: $height,
    weight: $weight,
    custom_data: $custom_data,
    consents: $consents,
    notification_topics: $notification_topics,
    notification_profiles: $notification_profiles,
    notifiable: $notifiable,
    is_newsletter_opt_in: $is_newsletter_opt_in,
    project_id: $project_id,
    metas: $metas,
    roles: $roles,
    is_administrator: $is_administrator
  ) {
    id
    project_id
    name
    display_name
    email
    gender
    locale
    subtitle_locale
    audio_locale
    status
    address
    postal_code
    city
    country
    geo_region_code
    phone
    is_phone_verified
    birthday
    height
    weight
    custom_data
    is_newsletter_opt_in
    is_terms_and_conditions_opt_in
    is_marked_for_deletion
    delete_at
    notifiable
    max_concurrent_vod_stream_num
    user_subscription_status
    user_subscription_last_event_type
    subscription_id
    favourite_articles {
      ...ArticleRelatedFragment
    }
    nomadic_articles {
      ...ArticleRelatedFragment
    }
    history_articles {
      ...ArticleRelatedFragment
    }
    entitled_articles {
      ...ArticleRelatedFragment
    }
    entitled_root_articles {
      ...ArticleRelatedFragment
    }
    articles {
      ...ArticleRelatedFragment
    }
    latest_nomadic_article {
      ...ArticleRelatedFragment
    }
    consents {
      ...UserConsentFragment
    }
    metric_actions {
      ...MetricActionFragment
    }
    notification_profiles {
      ...UserNotificationProfileFragment
    }
    notification_topics {
      ...UserNotificationTopicFragment
    }
    user_subscriptions {
      ...AdminUserSubscriptionFragment
    }
    user_products {
      ...UserProductFragment
    }
    orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    user_payment_credit_amount
    user_payment_general_credit_amount
    user_payment_free_article_credit_amount
    user_payment_currency_amount
    user_payment_currency_symbol
    user_payment_currency
    external_user_id
    metas {
      ...AdminUserMetaFragment
    }
    managed_projects {
      ...AdminProjectFragment
    }
    recent_project {
      ...AdminProjectFragment
    }
    roles {
      ...RoleFragment
    }
    user_product_orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    payment_accounts {
      ...AdminUserPaymentAccountFragment
    }
    article_view_sessions {
      ...UserArticleSessionFragment
    }
    devices {
      ...AdminDeviceFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    created_at
    updated_at
    active_at
    credits {
      ...AdminUserPaymentCreditFragment
    }
  }
}
Variables
{
  "name": "string",
  "email": "string",
  "password": "string",
  "gender": "male",
  "address": "string",
  "postal_code": "string",
  "city": "string",
  "country": "string",
  "locale": "string",
  "subtitle_locale": "string",
  "audio_locale": "string",
  "phone": "string",
  "phone_country": "string",
  "birthday": "string",
  "height": 123.45,
  "weight": 987.65,
  "custom_data": "string",
  "consents": [UserConsentInput],
  "notification_topics": [UserNotificationTopicInput],
  "notification_profiles": [UserNotificationProfileInput],
  "notifiable": "none",
  "is_newsletter_opt_in": true,
  "project_id": 42,
  "metas": [UserMetaInput],
  "roles": [42],
  "is_administrator": false
}
Response
{
  "data": {
    "UserCreate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "display_name": "string",
      "email": "foo@example.com",
      "gender": "male",
      "locale": "string",
      "subtitle_locale": "string",
      "audio_locale": "string",
      "status": "string",
      "address": "string",
      "postal_code": "string",
      "city": "string",
      "country": "string",
      "geo_region_code": "nl",
      "phone": "string",
      "is_phone_verified": false,
      "birthday": "string",
      "height": 123.45,
      "weight": 987.65,
      "custom_data": "string",
      "is_newsletter_opt_in": true,
      "is_terms_and_conditions_opt_in": false,
      "is_marked_for_deletion": true,
      "delete_at": "2000-12-31T12:34:56.000Z",
      "notifiable": "none",
      "max_concurrent_vod_stream_num": 42,
      "user_subscription_status": "string",
      "user_subscription_last_event_type": "first_payment_error",
      "subscription_id": 42,
      "favourite_articles": [ArticleRelated],
      "nomadic_articles": [ArticleRelated],
      "history_articles": [ArticleRelated],
      "entitled_articles": [ArticleRelated],
      "entitled_root_articles": [ArticleRelated],
      "articles": [ArticleRelated],
      "latest_nomadic_article": ArticleRelated,
      "consents": [UserConsent],
      "metric_actions": [MetricAction],
      "notification_profiles": [UserNotificationProfile],
      "notification_topics": [UserNotificationTopic],
      "user_subscriptions": [AdminUserSubscription],
      "user_products": [UserProduct],
      "orders": [AdminUserPaymentAccountOrder],
      "user_payment_credit_amount": 1,
      "user_payment_general_credit_amount": 1,
      "user_payment_free_article_credit_amount": 1,
      "user_payment_currency_amount": "EUR",
      "user_payment_currency_symbol": "EUR",
      "user_payment_currency": "EUR",
      "external_user_id": "string",
      "metas": [AdminUserMeta],
      "managed_projects": [AdminProject],
      "recent_project": AdminProject,
      "roles": [Role],
      "user_product_orders": [
        AdminUserPaymentAccountOrder
      ],
      "payment_accounts": [AdminUserPaymentAccount],
      "article_view_sessions": [UserArticleSession],
      "devices": [AdminDevice],
      "activity_logs": [AdminActivityLog],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "active_at": "2000-12-31T12:34:56.000Z",
      "credits": [AdminUserPaymentCredit]
    }
  }
}

UserDelete

Description

Delete an existing User.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the User to delete.
email - String The e-mail address of the User to delete, verified against id.
is_administrator - Boolean Whether this mutation deletes an Administrator rather than a regular User.

Example

Query
mutation UserDelete(
  $id: Int,
  $email: String,
  $is_administrator: Boolean
) {
  UserDelete(
    id: $id,
    email: $email,
    is_administrator: $is_administrator
  )
}
Variables
{
  "id": 42,
  "email": "string",
  "is_administrator": false
}
Response
{"data": {"UserDelete": false}}

UserDetailsUpdate

Description

Update the current authenticated (admin) User's own details.

Response

Returns an AdminUserDetails

Arguments
Name Description
name - String The User's name.
email - String The User's e-mail address, unique within the Project.
password - String The User's password.
gender - UserGenderTypeEnum The User's gender.
address - String The User's address.
postal_code - String The User's postal code.
city - String The User's city.
country - String The User's country.
locale - String The User's locale (language).
subtitle_locale - String The User's preferred subtitle locale (language).
audio_locale - String The User's preferred audio locale (language).
phone - String The User's phone number.
phone_country - String The 2-letter country code paired with phone.
birthday - String The User's birthday.
height - Float The User's height.
weight - Float The User's weight.
custom_data - String Custom data stored for the User.
consents - [UserConsentInput] The User's cookie consent records.
notification_topics - [UserNotificationTopicInput] The NotificationTopics the User is subscribed to.
notification_profiles - [UserNotificationProfileInput] The User's notification delivery profiles.
notifiable - UserNotifiableTypeEnum How the User may be notified.
is_newsletter_opt_in - Boolean Whether the User has opted in to the newsletter.
password_current - String The User's current password, used to authorize sensitive changes.

Example

Query
mutation UserDetailsUpdate(
  $name: String,
  $email: String,
  $password: String,
  $gender: UserGenderTypeEnum,
  $address: String,
  $postal_code: String,
  $city: String,
  $country: String,
  $locale: String,
  $subtitle_locale: String,
  $audio_locale: String,
  $phone: String,
  $phone_country: String,
  $birthday: String,
  $height: Float,
  $weight: Float,
  $custom_data: String,
  $consents: [UserConsentInput],
  $notification_topics: [UserNotificationTopicInput],
  $notification_profiles: [UserNotificationProfileInput],
  $notifiable: UserNotifiableTypeEnum,
  $is_newsletter_opt_in: Boolean,
  $password_current: String
) {
  UserDetailsUpdate(
    name: $name,
    email: $email,
    password: $password,
    gender: $gender,
    address: $address,
    postal_code: $postal_code,
    city: $city,
    country: $country,
    locale: $locale,
    subtitle_locale: $subtitle_locale,
    audio_locale: $audio_locale,
    phone: $phone,
    phone_country: $phone_country,
    birthday: $birthday,
    height: $height,
    weight: $weight,
    custom_data: $custom_data,
    consents: $consents,
    notification_topics: $notification_topics,
    notification_profiles: $notification_profiles,
    notifiable: $notifiable,
    is_newsletter_opt_in: $is_newsletter_opt_in,
    password_current: $password_current
  ) {
    id
    project_id
    name
    display_name
    email
    gender
    locale
    subtitle_locale
    audio_locale
    status
    address
    postal_code
    city
    country
    geo_region_code
    phone
    is_phone_verified
    birthday
    height
    weight
    custom_data
    is_newsletter_opt_in
    is_terms_and_conditions_opt_in
    is_marked_for_deletion
    delete_at
    notifiable
    max_concurrent_vod_stream_num
    user_subscription_status
    user_subscription_last_event_type
    subscription_id
    favourite_articles {
      ...ArticleRelatedFragment
    }
    nomadic_articles {
      ...ArticleRelatedFragment
    }
    history_articles {
      ...ArticleRelatedFragment
    }
    entitled_articles {
      ...ArticleRelatedFragment
    }
    entitled_root_articles {
      ...ArticleRelatedFragment
    }
    articles {
      ...ArticleRelatedFragment
    }
    latest_nomadic_article {
      ...ArticleRelatedFragment
    }
    consents {
      ...UserConsentFragment
    }
    metric_actions {
      ...MetricActionFragment
    }
    notification_profiles {
      ...UserNotificationProfileFragment
    }
    notification_topics {
      ...UserNotificationTopicFragment
    }
    user_subscriptions {
      ...UserSubscriptionFragment
    }
    user_products {
      ...UserProductFragment
    }
    orders {
      ...UserPaymentAccountOrderFragment
    }
    user_payment_credit_amount
    user_payment_general_credit_amount
    user_payment_free_article_credit_amount
    user_payment_currency_amount
    user_payment_currency_symbol
    user_payment_currency
    is_terms_and_conditions_renewal_required
    terms_and_conditions_accepted_at
    metas {
      ...AdminUserMetaFragment
    }
    managed_projects {
      ...AdminProjectFragment
    }
    managed_roles {
      ...RoleFragment
    }
    recent_project {
      ...AdminProjectFragment
    }
    roles {
      ...RoleFragment
    }
  }
}
Variables
{
  "name": "string",
  "email": "string",
  "password": "string",
  "gender": "male",
  "address": "string",
  "postal_code": "string",
  "city": "string",
  "country": "string",
  "locale": "string",
  "subtitle_locale": "string",
  "audio_locale": "string",
  "phone": "string",
  "phone_country": "string",
  "birthday": "string",
  "height": 123.45,
  "weight": 987.65,
  "custom_data": "string",
  "consents": [UserConsentInput],
  "notification_topics": [UserNotificationTopicInput],
  "notification_profiles": [UserNotificationProfileInput],
  "notifiable": "none",
  "is_newsletter_opt_in": false,
  "password_current": "string"
}
Response
{
  "data": {
    "UserDetailsUpdate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "display_name": "string",
      "email": "foo@example.com",
      "gender": "male",
      "locale": "string",
      "subtitle_locale": "string",
      "audio_locale": "string",
      "status": "string",
      "address": "string",
      "postal_code": "string",
      "city": "string",
      "country": "string",
      "geo_region_code": "nl",
      "phone": "string",
      "is_phone_verified": false,
      "birthday": "string",
      "height": 123.45,
      "weight": 123.45,
      "custom_data": "string",
      "is_newsletter_opt_in": true,
      "is_terms_and_conditions_opt_in": false,
      "is_marked_for_deletion": true,
      "delete_at": "2000-12-31T12:34:56.000Z",
      "notifiable": "none",
      "max_concurrent_vod_stream_num": 42,
      "user_subscription_status": "string",
      "user_subscription_last_event_type": "first_payment_error",
      "subscription_id": 42,
      "favourite_articles": [ArticleRelated],
      "nomadic_articles": [ArticleRelated],
      "history_articles": [ArticleRelated],
      "entitled_articles": [ArticleRelated],
      "entitled_root_articles": [ArticleRelated],
      "articles": [ArticleRelated],
      "latest_nomadic_article": ArticleRelated,
      "consents": [UserConsent],
      "metric_actions": [MetricAction],
      "notification_profiles": [UserNotificationProfile],
      "notification_topics": [UserNotificationTopic],
      "user_subscriptions": [UserSubscription],
      "user_products": [UserProduct],
      "orders": [UserPaymentAccountOrder],
      "user_payment_credit_amount": 1,
      "user_payment_general_credit_amount": 1,
      "user_payment_free_article_credit_amount": 1,
      "user_payment_currency_amount": "EUR",
      "user_payment_currency_symbol": "EUR",
      "user_payment_currency": "EUR",
      "is_terms_and_conditions_renewal_required": false,
      "terms_and_conditions_accepted_at": "2000-12-31T12:34:56.000Z",
      "metas": [AdminUserMeta],
      "managed_projects": [AdminProject],
      "managed_roles": [Role],
      "recent_project": AdminProject,
      "roles": [Role]
    }
  }
}

UserDevicePairingDelete

Description

Delete an existing Device pairing for a User.

Response

Returns a Boolean

Arguments
Name Description
device_id - Int The id of the paired Device to unpair.
user_id - Int The User id that owns the paired Device.

Example

Query
mutation UserDevicePairingDelete(
  $device_id: Int,
  $user_id: Int
) {
  UserDevicePairingDelete(
    device_id: $device_id,
    user_id: $user_id
  )
}
Variables
{"device_id": 42, "user_id": 42}
Response
{"data": {"UserDevicePairingDelete": false}}

UserForUserAuthenticate

Description

Authenticate on behalf of a User, issuing new access/refresh tokens for that User.

Response

Returns an Authenticate

Arguments
Name Description
project_id - Int The Project id the User belongs to.
user_id - Int The id of the User to authenticate as.

Example

Query
mutation UserForUserAuthenticate(
  $project_id: Int,
  $user_id: Int
) {
  UserForUserAuthenticate(
    project_id: $project_id,
    user_id: $user_id
  ) {
    access_token
    refresh_token
    expires_in
    token_type
    user_id
    user_email
    active_project_id
    url
    is_terms_and_conditions_renewal_required
  }
}
Variables
{"project_id": 42, "user_id": 42}
Response
{
  "data": {
    "UserForUserAuthenticate": {
      "access_token": "string",
      "refresh_token": "string",
      "expires_in": 86400,
      "token_type": "string",
      "user_id": 42,
      "user_email": "foo@example.com",
      "active_project_id": 42,
      "url": "https://url.example.com",
      "is_terms_and_conditions_renewal_required": true
    }
  }
}

UserHelpCenterAuthenticate

Description

Authenticate the current admin User for the HelpCenter, issuing new credentials.

Response

Returns an Authenticate

Example

Query
mutation UserHelpCenterAuthenticate {
  UserHelpCenterAuthenticate {
    access_token
    refresh_token
    expires_in
    token_type
    user_id
    user_email
    active_project_id
    url
    is_terms_and_conditions_renewal_required
  }
}
Response
{
  "data": {
    "UserHelpCenterAuthenticate": {
      "access_token": "string",
      "refresh_token": "string",
      "expires_in": 86400,
      "token_type": "string",
      "user_id": 42,
      "user_email": "foo@example.com",
      "active_project_id": 42,
      "url": "https://url.example.com",
      "is_terms_and_conditions_renewal_required": true
    }
  }
}

UserMetaDelete

Description

Delete a meta property belonging to a User.

Response

Returns a Boolean

Arguments
Name Description
user_id - Int The User id that owns the meta property.
key - String The meta property key to delete.
is_administrator - Boolean Whether this mutation targets an Administrator rather than a regular User.

Example

Query
mutation UserMetaDelete(
  $user_id: Int,
  $key: String,
  $is_administrator: Boolean
) {
  UserMetaDelete(
    user_id: $user_id,
    key: $key,
    is_administrator: $is_administrator
  )
}
Variables
{
  "user_id": 42,
  "key": "string",
  "is_administrator": false
}
Response
{"data": {"UserMetaDelete": false}}

UserPasswordResetForUserRequest

Description

Initiate a password reset request for a User, sending them a reset e-mail.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the User to request a password reset for.
is_administrator - Boolean Whether this mutation targets an Administrator rather than a regular User.

Example

Query
mutation UserPasswordResetForUserRequest(
  $id: Int,
  $is_administrator: Boolean
) {
  UserPasswordResetForUserRequest(
    id: $id,
    is_administrator: $is_administrator
  )
}
Variables
{"id": 42, "is_administrator": false}
Response
{"data": {"UserPasswordResetForUserRequest": false}}

UserPasswordResetRequest

Description

Initiate a password reset request for the admin User matching the given e-mail address, sending them a reset e-mail.

Response

Returns a Boolean

Arguments
Name Description
email - String The e-mail address of the admin User to request a password reset for.

Example

Query
mutation UserPasswordResetRequest($email: String) {
  UserPasswordResetRequest(email: $email)
}
Variables
{"email": "string"}
Response
{"data": {"UserPasswordResetRequest": true}}

UserPasswordResetValidate

Description

Validate an admin User's password reset token and, when password is given, set the new password.

Response

Returns a Boolean

Arguments
Name Description
token - String The password reset token received by e-mail.
password - String The new password to set.
is_revoke_all_access_tokens - Boolean Whether to revoke all of the User's existing access tokens on all platforms/apps. Default = false

Example

Query
mutation UserPasswordResetValidate(
  $token: String,
  $password: String,
  $is_revoke_all_access_tokens: Boolean
) {
  UserPasswordResetValidate(
    token: $token,
    password: $password,
    is_revoke_all_access_tokens: $is_revoke_all_access_tokens
  )
}
Variables
{
  "token": "string",
  "password": "string",
  "is_revoke_all_access_tokens": false
}
Response
{"data": {"UserPasswordResetValidate": true}}

UserPaymentAccountOrderRefund

Description

Refund a UserPaymentAccountOrder for a User

Response

Returns an AdminUserPaymentAccountOrder

Arguments
Name Description
id - Int The id of the UserPaymentAccountOrder to refund.
user_id - Int The id of the User that owns the payment order.
is_auto_suspend_user_subscription - Boolean Whether related UserSubscriptions should be suspended automatically after the refund. Default = false

Example

Query
mutation UserPaymentAccountOrderRefund(
  $id: Int,
  $user_id: Int,
  $is_auto_suspend_user_subscription: Boolean
) {
  UserPaymentAccountOrderRefund(
    id: $id,
    user_id: $user_id,
    is_auto_suspend_user_subscription: $is_auto_suspend_user_subscription
  ) {
    id
    user_id
    user_subscription_id
    payment_syndicate_voucher_id
    voucher_code
    type
    recurring_type
    discount_type
    payment_provider_type
    amount
    status
    status_name
    description
    installed_at
    paid_at
    cancelled_at
    refunded_at
    created_at
    updated_at
    installments {
      ...AdminUserPaymentAccountOrderInstallmentFragment
    }
    currency
    currency_symbol
    user {
      ...AdminUserFragment
    }
    user_payment_account_id
    remote_payment_order_id
    remote_payment_user_id
    amount_balance_mutation
    amount_remote_mutation
    payment_url
    method
    method_details
    ip_address
    geo_region_code
    origin
    purchase_origin
    server_origin
    is_refundable
    metadata
    receipt_data
    invoice_data
    account {
      ...AdminUserPaymentAccountFragment
    }
    user_subscription {
      ...AdminUserSubscriptionFragment
    }
    products {
      ...AdminProductListedAsRelationFragment
    }
    user_subscription_products {
      ...AdminUserSubscriptionProductFragment
    }
    categories {
      ...AdminCategoryFragment
    }
  }
}
Variables
{"id": 42, "user_id": 42, "is_auto_suspend_user_subscription": false}
Response
{
  "data": {
    "UserPaymentAccountOrderRefund": {
      "id": 42,
      "user_id": 42,
      "user_subscription_id": "string",
      "payment_syndicate_voucher_id": 42,
      "voucher_code": "string",
      "type": "string",
      "recurring_type": "string",
      "discount_type": "string",
      "payment_provider_type": "string",
      "amount": 987.65,
      "status": "string",
      "status_name": "string",
      "description": "string",
      "installed_at": "2000-12-31T12:34:56.000Z",
      "paid_at": "2000-12-31T12:34:56.000Z",
      "cancelled_at": "2000-12-31T12:34:56.000Z",
      "refunded_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "installments": [
        AdminUserPaymentAccountOrderInstallment
      ],
      "currency": "EUR",
      "currency_symbol": "EUR",
      "user": AdminUser,
      "user_payment_account_id": 42,
      "remote_payment_order_id": "string",
      "remote_payment_user_id": "string",
      "amount_balance_mutation": "string",
      "amount_remote_mutation": "string",
      "payment_url": "https://url.example.com",
      "method": "string",
      "method_details": "string",
      "ip_address": "string",
      "geo_region_code": "nl",
      "origin": "string",
      "purchase_origin": "string",
      "server_origin": "string",
      "is_refundable": true,
      "metadata": "string",
      "receipt_data": "string",
      "invoice_data": "string",
      "account": AdminUserPaymentAccount,
      "user_subscription": AdminUserSubscription,
      "products": [AdminProductListedAsRelation],
      "user_subscription_products": [
        AdminUserSubscriptionProduct
      ],
      "categories": [AdminCategory]
    }
  }
}

UserProductPaymentAccountOrderCreate

Description

Create and fulfill a UserPaymentAccountOrder that directly entitles one or more non-recurring Products to a User, without going through a PaymentProvider.

Response

Returns an AdminUserPaymentAccountOrder

Arguments
Name Description
user_id - Int The id of the User the payment order belongs to.
description - String The UserPaymentAccountOrder description.
products - [ProductStackInput] The Products (and quantities) to entitle to the User. Only non-recurring types are allowed.

Example

Query
mutation UserProductPaymentAccountOrderCreate(
  $user_id: Int,
  $description: String,
  $products: [ProductStackInput]
) {
  UserProductPaymentAccountOrderCreate(
    user_id: $user_id,
    description: $description,
    products: $products
  ) {
    id
    user_id
    user_subscription_id
    payment_syndicate_voucher_id
    voucher_code
    type
    recurring_type
    discount_type
    payment_provider_type
    amount
    status
    status_name
    description
    installed_at
    paid_at
    cancelled_at
    refunded_at
    created_at
    updated_at
    installments {
      ...AdminUserPaymentAccountOrderInstallmentFragment
    }
    currency
    currency_symbol
    user {
      ...AdminUserFragment
    }
    user_payment_account_id
    remote_payment_order_id
    remote_payment_user_id
    amount_balance_mutation
    amount_remote_mutation
    payment_url
    method
    method_details
    ip_address
    geo_region_code
    origin
    purchase_origin
    server_origin
    is_refundable
    metadata
    receipt_data
    invoice_data
    account {
      ...AdminUserPaymentAccountFragment
    }
    user_subscription {
      ...AdminUserSubscriptionFragment
    }
    products {
      ...AdminProductListedAsRelationFragment
    }
    user_subscription_products {
      ...AdminUserSubscriptionProductFragment
    }
    categories {
      ...AdminCategoryFragment
    }
  }
}
Variables
{
  "user_id": 42,
  "description": "string",
  "products": [ProductStackInput]
}
Response
{
  "data": {
    "UserProductPaymentAccountOrderCreate": {
      "id": 42,
      "user_id": 42,
      "user_subscription_id": "string",
      "payment_syndicate_voucher_id": 42,
      "voucher_code": "string",
      "type": "string",
      "recurring_type": "string",
      "discount_type": "string",
      "payment_provider_type": "string",
      "amount": 987.65,
      "status": "string",
      "status_name": "string",
      "description": "string",
      "installed_at": "2000-12-31T12:34:56.000Z",
      "paid_at": "2000-12-31T12:34:56.000Z",
      "cancelled_at": "2000-12-31T12:34:56.000Z",
      "refunded_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "installments": [
        AdminUserPaymentAccountOrderInstallment
      ],
      "currency": "EUR",
      "currency_symbol": "EUR",
      "user": AdminUser,
      "user_payment_account_id": 42,
      "remote_payment_order_id": "string",
      "remote_payment_user_id": "string",
      "amount_balance_mutation": "string",
      "amount_remote_mutation": "string",
      "payment_url": "https://url.example.com",
      "method": "string",
      "method_details": "string",
      "ip_address": "string",
      "geo_region_code": "nl",
      "origin": "string",
      "purchase_origin": "string",
      "server_origin": "string",
      "is_refundable": true,
      "metadata": "string",
      "receipt_data": "string",
      "invoice_data": "string",
      "account": AdminUserPaymentAccount,
      "user_subscription": AdminUserSubscription,
      "products": [AdminProductListedAsRelation],
      "user_subscription_products": [
        AdminUserSubscriptionProduct
      ],
      "categories": [AdminCategory]
    }
  }
}

UserProductsSanitise

Description

Reconcile one User's payment accounts, orders, and Product entitlements with the configured payment-provider state, correcting stale local records such as missed recurring payments or entitlements.

Response

Returns an AdminUser

Arguments
Name Description
id - Int The id of the User whose payment accounts and Products are to be sanitised.

Example

Query
mutation UserProductsSanitise($id: Int) {
  UserProductsSanitise(id: $id) {
    id
    project_id
    name
    display_name
    email
    gender
    locale
    subtitle_locale
    audio_locale
    status
    address
    postal_code
    city
    country
    geo_region_code
    phone
    is_phone_verified
    birthday
    height
    weight
    custom_data
    is_newsletter_opt_in
    is_terms_and_conditions_opt_in
    is_marked_for_deletion
    delete_at
    notifiable
    max_concurrent_vod_stream_num
    user_subscription_status
    user_subscription_last_event_type
    subscription_id
    favourite_articles {
      ...ArticleRelatedFragment
    }
    nomadic_articles {
      ...ArticleRelatedFragment
    }
    history_articles {
      ...ArticleRelatedFragment
    }
    entitled_articles {
      ...ArticleRelatedFragment
    }
    entitled_root_articles {
      ...ArticleRelatedFragment
    }
    articles {
      ...ArticleRelatedFragment
    }
    latest_nomadic_article {
      ...ArticleRelatedFragment
    }
    consents {
      ...UserConsentFragment
    }
    metric_actions {
      ...MetricActionFragment
    }
    notification_profiles {
      ...UserNotificationProfileFragment
    }
    notification_topics {
      ...UserNotificationTopicFragment
    }
    user_subscriptions {
      ...AdminUserSubscriptionFragment
    }
    user_products {
      ...UserProductFragment
    }
    orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    user_payment_credit_amount
    user_payment_general_credit_amount
    user_payment_free_article_credit_amount
    user_payment_currency_amount
    user_payment_currency_symbol
    user_payment_currency
    external_user_id
    metas {
      ...AdminUserMetaFragment
    }
    managed_projects {
      ...AdminProjectFragment
    }
    recent_project {
      ...AdminProjectFragment
    }
    roles {
      ...RoleFragment
    }
    user_product_orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    payment_accounts {
      ...AdminUserPaymentAccountFragment
    }
    article_view_sessions {
      ...UserArticleSessionFragment
    }
    devices {
      ...AdminDeviceFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    created_at
    updated_at
    active_at
    credits {
      ...AdminUserPaymentCreditFragment
    }
  }
}
Variables
{"id": 42}
Response
{
  "data": {
    "UserProductsSanitise": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "display_name": "string",
      "email": "foo@example.com",
      "gender": "male",
      "locale": "string",
      "subtitle_locale": "string",
      "audio_locale": "string",
      "status": "string",
      "address": "string",
      "postal_code": "string",
      "city": "string",
      "country": "string",
      "geo_region_code": "nl",
      "phone": "string",
      "is_phone_verified": false,
      "birthday": "string",
      "height": 987.65,
      "weight": 123.45,
      "custom_data": "string",
      "is_newsletter_opt_in": true,
      "is_terms_and_conditions_opt_in": false,
      "is_marked_for_deletion": true,
      "delete_at": "2000-12-31T12:34:56.000Z",
      "notifiable": "none",
      "max_concurrent_vod_stream_num": 42,
      "user_subscription_status": "string",
      "user_subscription_last_event_type": "first_payment_error",
      "subscription_id": 42,
      "favourite_articles": [ArticleRelated],
      "nomadic_articles": [ArticleRelated],
      "history_articles": [ArticleRelated],
      "entitled_articles": [ArticleRelated],
      "entitled_root_articles": [ArticleRelated],
      "articles": [ArticleRelated],
      "latest_nomadic_article": ArticleRelated,
      "consents": [UserConsent],
      "metric_actions": [MetricAction],
      "notification_profiles": [UserNotificationProfile],
      "notification_topics": [UserNotificationTopic],
      "user_subscriptions": [AdminUserSubscription],
      "user_products": [UserProduct],
      "orders": [AdminUserPaymentAccountOrder],
      "user_payment_credit_amount": 1,
      "user_payment_general_credit_amount": 1,
      "user_payment_free_article_credit_amount": 1,
      "user_payment_currency_amount": "EUR",
      "user_payment_currency_symbol": "EUR",
      "user_payment_currency": "EUR",
      "external_user_id": "string",
      "metas": [AdminUserMeta],
      "managed_projects": [AdminProject],
      "recent_project": AdminProject,
      "roles": [Role],
      "user_product_orders": [
        AdminUserPaymentAccountOrder
      ],
      "payment_accounts": [AdminUserPaymentAccount],
      "article_view_sessions": [UserArticleSession],
      "devices": [AdminDevice],
      "activity_logs": [AdminActivityLog],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "active_at": "2000-12-31T12:34:56.000Z",
      "credits": [AdminUserPaymentCredit]
    }
  }
}

UserProjectAuthenticate

Description

Issue new tokens scoped to a specific Project for the current admin User.

Response

Returns an Authenticate

Arguments
Name Description
project_id - Int The Project id to scope the new tokens to.

Example

Query
mutation UserProjectAuthenticate($project_id: Int) {
  UserProjectAuthenticate(project_id: $project_id) {
    access_token
    refresh_token
    expires_in
    token_type
    user_id
    user_email
    active_project_id
    url
    is_terms_and_conditions_renewal_required
  }
}
Variables
{"project_id": 42}
Response
{
  "data": {
    "UserProjectAuthenticate": {
      "access_token": "string",
      "refresh_token": "string",
      "expires_in": 86400,
      "token_type": "string",
      "user_id": 42,
      "user_email": "foo@example.com",
      "active_project_id": 42,
      "url": "https://url.example.com",
      "is_terms_and_conditions_renewal_required": true
    }
  }
}

UserProjectManage

Description

Mark a Project as the current admin User's most recently accessed managed Project.

Response

Returns a Boolean

Arguments
Name Description
id - Int The id of the Project to mark as recently accessed.

Example

Query
mutation UserProjectManage($id: Int) {
  UserProjectManage(id: $id)
}
Variables
{"id": 42}
Response
{"data": {"UserProjectManage": false}}

UserSubscriptionCreate

Description

Create a UserSubscription by acquiring a specific Subscription for a specific User through the selected configured PaymentProvider. This creates a purchase intent, not an administrative entitlement grant.

Response

Returns an AdminUserSubscription

Arguments
Name Description
user_id - Int The User id to acquire the Subscription for.
subscription_id - Int The id of the Subscription to acquire.
payment_provider_id - Int The PaymentProvider id used to process the purchase.

Example

Query
mutation UserSubscriptionCreate(
  $user_id: Int,
  $subscription_id: Int,
  $payment_provider_id: Int
) {
  UserSubscriptionCreate(
    user_id: $user_id,
    subscription_id: $subscription_id,
    payment_provider_id: $payment_provider_id
  ) {
    id
    user_id
    project_id
    subscription_id
    switch_from_subscription_id
    switch_to_subscription_id
    term
    acquired_at
    expires_at
    suspendable_at
    suspended_at
    invoiced_at
    status
    status_name
    is_valid
    is_expired
    is_suspendable
    is_account_method_changeable
    is_switchable
    user_subscription_products {
      ...AdminUserSubscriptionProductFragment
    }
    products {
      ...AdminProductListedAsRelationFragment
    }
    orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    subscription {
      ...AdminSubscriptionFragment
    }
    switch_to_subscription {
      ...AdminSubscriptionFragment
    }
    switch_from_subscription {
      ...AdminSubscriptionFragment
    }
    account {
      ...AdminUserPaymentAccountFragment
    }
    last_event_type
  }
}
Variables
{"user_id": 42, "subscription_id": 42, "payment_provider_id": 42}
Response
{
  "data": {
    "UserSubscriptionCreate": {
      "id": 42,
      "user_id": 42,
      "project_id": 42,
      "subscription_id": 42,
      "switch_from_subscription_id": 42,
      "switch_to_subscription_id": 42,
      "term": 42,
      "acquired_at": "2000-12-31T12:34:56.000Z",
      "expires_at": "2000-12-31T12:34:56.000Z",
      "suspendable_at": "2000-12-31T12:34:56.000Z",
      "suspended_at": "2000-12-31T12:34:56.000Z",
      "invoiced_at": "2000-12-31T12:34:56.000Z",
      "status": "string",
      "status_name": "string",
      "is_valid": false,
      "is_expired": true,
      "is_suspendable": false,
      "is_account_method_changeable": true,
      "is_switchable": false,
      "user_subscription_products": [
        AdminUserSubscriptionProduct
      ],
      "products": [AdminProductListedAsRelation],
      "orders": [AdminUserPaymentAccountOrder],
      "subscription": AdminSubscription,
      "switch_to_subscription": AdminSubscription,
      "switch_from_subscription": AdminSubscription,
      "account": AdminUserPaymentAccount,
      "last_event_type": "first_payment_error"
    }
  }
}

UserSubscriptionPaymentAccountOrderCreate

Description

Create and fulfill a UserPaymentAccountOrder that directly issues installments or Products to an existing UserSubscription, without going through a PaymentProvider. Fails with a conflict when the User holds another valid UserSubscription besides the given one.

Response

Returns an AdminUserPaymentAccountOrder

Arguments
Name Description
user_id - Int The id of the User the payment order belongs to.
description - String The UserPaymentAccountOrder description.
user_subscription_id - Int The UserSubscription id to issue installments or Products to.
installment_num - Int The number of installments to issue, in units of time_unit. Mutually exclusive with products/issue_installments_until.
time_unit - SubscriptionTimeUnitEnum The time unit installment_num is expressed in. Mutually exclusive with products/issue_installments_until.
issue_installments_until - String The fixed date (UTC) up until which installments are issued. Mutually exclusive with products/installment_num/time_unit.
products - [ProductStackInput] The recurring-type Products (and quantities) to issue to the UserSubscription. Mutually exclusive with installment_num/time_unit/issue_installments_until.

Example

Query
mutation UserSubscriptionPaymentAccountOrderCreate(
  $user_id: Int,
  $description: String,
  $user_subscription_id: Int,
  $installment_num: Int,
  $time_unit: SubscriptionTimeUnitEnum,
  $issue_installments_until: String,
  $products: [ProductStackInput]
) {
  UserSubscriptionPaymentAccountOrderCreate(
    user_id: $user_id,
    description: $description,
    user_subscription_id: $user_subscription_id,
    installment_num: $installment_num,
    time_unit: $time_unit,
    issue_installments_until: $issue_installments_until,
    products: $products
  ) {
    id
    user_id
    user_subscription_id
    payment_syndicate_voucher_id
    voucher_code
    type
    recurring_type
    discount_type
    payment_provider_type
    amount
    status
    status_name
    description
    installed_at
    paid_at
    cancelled_at
    refunded_at
    created_at
    updated_at
    installments {
      ...AdminUserPaymentAccountOrderInstallmentFragment
    }
    currency
    currency_symbol
    user {
      ...AdminUserFragment
    }
    user_payment_account_id
    remote_payment_order_id
    remote_payment_user_id
    amount_balance_mutation
    amount_remote_mutation
    payment_url
    method
    method_details
    ip_address
    geo_region_code
    origin
    purchase_origin
    server_origin
    is_refundable
    metadata
    receipt_data
    invoice_data
    account {
      ...AdminUserPaymentAccountFragment
    }
    user_subscription {
      ...AdminUserSubscriptionFragment
    }
    products {
      ...AdminProductListedAsRelationFragment
    }
    user_subscription_products {
      ...AdminUserSubscriptionProductFragment
    }
    categories {
      ...AdminCategoryFragment
    }
  }
}
Variables
{
  "user_id": 42,
  "description": "string",
  "user_subscription_id": 42,
  "installment_num": 42,
  "time_unit": "day",
  "issue_installments_until": "string",
  "products": [ProductStackInput]
}
Response
{
  "data": {
    "UserSubscriptionPaymentAccountOrderCreate": {
      "id": 42,
      "user_id": 42,
      "user_subscription_id": "string",
      "payment_syndicate_voucher_id": 42,
      "voucher_code": "string",
      "type": "string",
      "recurring_type": "string",
      "discount_type": "string",
      "payment_provider_type": "string",
      "amount": 987.65,
      "status": "string",
      "status_name": "string",
      "description": "string",
      "installed_at": "2000-12-31T12:34:56.000Z",
      "paid_at": "2000-12-31T12:34:56.000Z",
      "cancelled_at": "2000-12-31T12:34:56.000Z",
      "refunded_at": "2000-12-31T12:34:56.000Z",
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "installments": [
        AdminUserPaymentAccountOrderInstallment
      ],
      "currency": "EUR",
      "currency_symbol": "EUR",
      "user": AdminUser,
      "user_payment_account_id": 42,
      "remote_payment_order_id": "string",
      "remote_payment_user_id": "string",
      "amount_balance_mutation": "string",
      "amount_remote_mutation": "string",
      "payment_url": "https://url.example.com",
      "method": "string",
      "method_details": "string",
      "ip_address": "string",
      "geo_region_code": "nl",
      "origin": "string",
      "purchase_origin": "string",
      "server_origin": "string",
      "is_refundable": true,
      "metadata": "string",
      "receipt_data": "string",
      "invoice_data": "string",
      "account": AdminUserPaymentAccount,
      "user_subscription": AdminUserSubscription,
      "products": [AdminProductListedAsRelation],
      "user_subscription_products": [
        AdminUserSubscriptionProduct
      ],
      "categories": [AdminCategory]
    }
  }
}

UserSubscriptionSanitise

Description

Reconcile a UserSubscription and its orders, correcting stale local state such as missed renewals or payments.

Response

Returns an AdminUserSubscription

Arguments
Name Description
id - Int The id of the UserSubscription to sanitise.

Example

Query
mutation UserSubscriptionSanitise($id: Int) {
  UserSubscriptionSanitise(id: $id) {
    id
    user_id
    project_id
    subscription_id
    switch_from_subscription_id
    switch_to_subscription_id
    term
    acquired_at
    expires_at
    suspendable_at
    suspended_at
    invoiced_at
    status
    status_name
    is_valid
    is_expired
    is_suspendable
    is_account_method_changeable
    is_switchable
    user_subscription_products {
      ...AdminUserSubscriptionProductFragment
    }
    products {
      ...AdminProductListedAsRelationFragment
    }
    orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    subscription {
      ...AdminSubscriptionFragment
    }
    switch_to_subscription {
      ...AdminSubscriptionFragment
    }
    switch_from_subscription {
      ...AdminSubscriptionFragment
    }
    account {
      ...AdminUserPaymentAccountFragment
    }
    last_event_type
  }
}
Variables
{"id": 42}
Response
{
  "data": {
    "UserSubscriptionSanitise": {
      "id": 42,
      "user_id": 42,
      "project_id": 42,
      "subscription_id": 42,
      "switch_from_subscription_id": 42,
      "switch_to_subscription_id": 42,
      "term": 42,
      "acquired_at": "2000-12-31T12:34:56.000Z",
      "expires_at": "2000-12-31T12:34:56.000Z",
      "suspendable_at": "2000-12-31T12:34:56.000Z",
      "suspended_at": "2000-12-31T12:34:56.000Z",
      "invoiced_at": "2000-12-31T12:34:56.000Z",
      "status": "string",
      "status_name": "string",
      "is_valid": false,
      "is_expired": true,
      "is_suspendable": false,
      "is_account_method_changeable": true,
      "is_switchable": false,
      "user_subscription_products": [
        AdminUserSubscriptionProduct
      ],
      "products": [AdminProductListedAsRelation],
      "orders": [AdminUserPaymentAccountOrder],
      "subscription": AdminSubscription,
      "switch_to_subscription": AdminSubscription,
      "switch_from_subscription": AdminSubscription,
      "account": AdminUserPaymentAccount,
      "last_event_type": "first_payment_error"
    }
  }
}

UserSubscriptionUpdate

Description

Update one existing UserSubscription's local lifecycle configuration, including its status, renewal settings, or a switch to another Subscription at the next renewal.

Response

Returns an AdminUserSubscription

Arguments
Name Description
id - Int The id of the UserSubscription.
status - UserSubscriptionStatusEnum The UserSubscription's status.
expires_at - String The UserSubscription's expiry date (UTC).
switch_to_subscription_id - Int The Subscription id to switch the UserSubscription to at its next renewal.

Example

Query
mutation UserSubscriptionUpdate(
  $id: Int,
  $status: UserSubscriptionStatusEnum,
  $expires_at: String,
  $switch_to_subscription_id: Int
) {
  UserSubscriptionUpdate(
    id: $id,
    status: $status,
    expires_at: $expires_at,
    switch_to_subscription_id: $switch_to_subscription_id
  ) {
    id
    user_id
    project_id
    subscription_id
    switch_from_subscription_id
    switch_to_subscription_id
    term
    acquired_at
    expires_at
    suspendable_at
    suspended_at
    invoiced_at
    status
    status_name
    is_valid
    is_expired
    is_suspendable
    is_account_method_changeable
    is_switchable
    user_subscription_products {
      ...AdminUserSubscriptionProductFragment
    }
    products {
      ...AdminProductListedAsRelationFragment
    }
    orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    subscription {
      ...AdminSubscriptionFragment
    }
    switch_to_subscription {
      ...AdminSubscriptionFragment
    }
    switch_from_subscription {
      ...AdminSubscriptionFragment
    }
    account {
      ...AdminUserPaymentAccountFragment
    }
    last_event_type
  }
}
Variables
{
  "id": 42,
  "status": "initialised",
  "expires_at": "string",
  "switch_to_subscription_id": 42
}
Response
{
  "data": {
    "UserSubscriptionUpdate": {
      "id": 42,
      "user_id": 42,
      "project_id": 42,
      "subscription_id": 42,
      "switch_from_subscription_id": 42,
      "switch_to_subscription_id": 42,
      "term": 42,
      "acquired_at": "2000-12-31T12:34:56.000Z",
      "expires_at": "2000-12-31T12:34:56.000Z",
      "suspendable_at": "2000-12-31T12:34:56.000Z",
      "suspended_at": "2000-12-31T12:34:56.000Z",
      "invoiced_at": "2000-12-31T12:34:56.000Z",
      "status": "string",
      "status_name": "string",
      "is_valid": false,
      "is_expired": true,
      "is_suspendable": false,
      "is_account_method_changeable": true,
      "is_switchable": false,
      "user_subscription_products": [
        AdminUserSubscriptionProduct
      ],
      "products": [AdminProductListedAsRelation],
      "orders": [AdminUserPaymentAccountOrder],
      "subscription": AdminSubscription,
      "switch_to_subscription": AdminSubscription,
      "switch_from_subscription": AdminSubscription,
      "account": AdminUserPaymentAccount,
      "last_event_type": "first_payment_error"
    }
  }
}

UserUpdate

Description

Update an existing User.

Response

Returns an AdminUser

Arguments
Name Description
name - String The User's name.
email - String The User's e-mail address, unique within the Project.
password - String The User's password.
gender - UserGenderTypeEnum The User's gender.
address - String The User's address.
postal_code - String The User's postal code.
city - String The User's city.
country - String The User's country.
locale - String The User's locale (language).
subtitle_locale - String The User's preferred subtitle locale (language).
audio_locale - String The User's preferred audio locale (language).
phone - String The User's phone number.
phone_country - String The 2-letter country code paired with phone.
birthday - String The User's birthday.
height - Float The User's height.
weight - Float The User's weight.
custom_data - String Custom data stored for the User.
consents - [UserConsentInput] The User's cookie consent records.
notification_topics - [UserNotificationTopicInput] The NotificationTopics the User is subscribed to.
notification_profiles - [UserNotificationProfileInput] The User's notification delivery profiles.
notifiable - UserNotifiableTypeEnum How the User may be notified.
is_newsletter_opt_in - Boolean Whether the User has opted in to the newsletter.
id - Int The id of the User to update.
status - UserStatusEnum The User's verification status.
external_user_id - String A third-party identifier for the User.
is_phone_verified - UserPhoneStatusEnum The User's phone number verification status.
metas - [UserMetaInput] The User's meta properties.
roles - [Int] The Role id to assign to the User, when is_administrator is true. At most one Role is allowed.
is_administrator - Boolean Whether this mutation updates an Administrator rather than a regular User.

Example

Query
mutation UserUpdate(
  $name: String,
  $email: String,
  $password: String,
  $gender: UserGenderTypeEnum,
  $address: String,
  $postal_code: String,
  $city: String,
  $country: String,
  $locale: String,
  $subtitle_locale: String,
  $audio_locale: String,
  $phone: String,
  $phone_country: String,
  $birthday: String,
  $height: Float,
  $weight: Float,
  $custom_data: String,
  $consents: [UserConsentInput],
  $notification_topics: [UserNotificationTopicInput],
  $notification_profiles: [UserNotificationProfileInput],
  $notifiable: UserNotifiableTypeEnum,
  $is_newsletter_opt_in: Boolean,
  $id: Int,
  $status: UserStatusEnum,
  $external_user_id: String,
  $is_phone_verified: UserPhoneStatusEnum,
  $metas: [UserMetaInput],
  $roles: [Int],
  $is_administrator: Boolean
) {
  UserUpdate(
    name: $name,
    email: $email,
    password: $password,
    gender: $gender,
    address: $address,
    postal_code: $postal_code,
    city: $city,
    country: $country,
    locale: $locale,
    subtitle_locale: $subtitle_locale,
    audio_locale: $audio_locale,
    phone: $phone,
    phone_country: $phone_country,
    birthday: $birthday,
    height: $height,
    weight: $weight,
    custom_data: $custom_data,
    consents: $consents,
    notification_topics: $notification_topics,
    notification_profiles: $notification_profiles,
    notifiable: $notifiable,
    is_newsletter_opt_in: $is_newsletter_opt_in,
    id: $id,
    status: $status,
    external_user_id: $external_user_id,
    is_phone_verified: $is_phone_verified,
    metas: $metas,
    roles: $roles,
    is_administrator: $is_administrator
  ) {
    id
    project_id
    name
    display_name
    email
    gender
    locale
    subtitle_locale
    audio_locale
    status
    address
    postal_code
    city
    country
    geo_region_code
    phone
    is_phone_verified
    birthday
    height
    weight
    custom_data
    is_newsletter_opt_in
    is_terms_and_conditions_opt_in
    is_marked_for_deletion
    delete_at
    notifiable
    max_concurrent_vod_stream_num
    user_subscription_status
    user_subscription_last_event_type
    subscription_id
    favourite_articles {
      ...ArticleRelatedFragment
    }
    nomadic_articles {
      ...ArticleRelatedFragment
    }
    history_articles {
      ...ArticleRelatedFragment
    }
    entitled_articles {
      ...ArticleRelatedFragment
    }
    entitled_root_articles {
      ...ArticleRelatedFragment
    }
    articles {
      ...ArticleRelatedFragment
    }
    latest_nomadic_article {
      ...ArticleRelatedFragment
    }
    consents {
      ...UserConsentFragment
    }
    metric_actions {
      ...MetricActionFragment
    }
    notification_profiles {
      ...UserNotificationProfileFragment
    }
    notification_topics {
      ...UserNotificationTopicFragment
    }
    user_subscriptions {
      ...AdminUserSubscriptionFragment
    }
    user_products {
      ...UserProductFragment
    }
    orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    user_payment_credit_amount
    user_payment_general_credit_amount
    user_payment_free_article_credit_amount
    user_payment_currency_amount
    user_payment_currency_symbol
    user_payment_currency
    external_user_id
    metas {
      ...AdminUserMetaFragment
    }
    managed_projects {
      ...AdminProjectFragment
    }
    recent_project {
      ...AdminProjectFragment
    }
    roles {
      ...RoleFragment
    }
    user_product_orders {
      ...AdminUserPaymentAccountOrderFragment
    }
    payment_accounts {
      ...AdminUserPaymentAccountFragment
    }
    article_view_sessions {
      ...UserArticleSessionFragment
    }
    devices {
      ...AdminDeviceFragment
    }
    activity_logs {
      ...AdminActivityLogFragment
    }
    created_at
    updated_at
    active_at
    credits {
      ...AdminUserPaymentCreditFragment
    }
  }
}
Variables
{
  "name": "string",
  "email": "string",
  "password": "string",
  "gender": "male",
  "address": "string",
  "postal_code": "string",
  "city": "string",
  "country": "string",
  "locale": "string",
  "subtitle_locale": "string",
  "audio_locale": "string",
  "phone": "string",
  "phone_country": "string",
  "birthday": "string",
  "height": 123.45,
  "weight": 123.45,
  "custom_data": "string",
  "consents": [UserConsentInput],
  "notification_topics": [UserNotificationTopicInput],
  "notification_profiles": [UserNotificationProfileInput],
  "notifiable": "none",
  "is_newsletter_opt_in": false,
  "id": 42,
  "status": "disabled",
  "external_user_id": "string",
  "is_phone_verified": "unverified",
  "metas": [UserMetaInput],
  "roles": [42],
  "is_administrator": false
}
Response
{
  "data": {
    "UserUpdate": {
      "id": 42,
      "project_id": 42,
      "name": "string",
      "display_name": "string",
      "email": "foo@example.com",
      "gender": "male",
      "locale": "string",
      "subtitle_locale": "string",
      "audio_locale": "string",
      "status": "string",
      "address": "string",
      "postal_code": "string",
      "city": "string",
      "country": "string",
      "geo_region_code": "nl",
      "phone": "string",
      "is_phone_verified": false,
      "birthday": "string",
      "height": 123.45,
      "weight": 987.65,
      "custom_data": "string",
      "is_newsletter_opt_in": true,
      "is_terms_and_conditions_opt_in": false,
      "is_marked_for_deletion": true,
      "delete_at": "2000-12-31T12:34:56.000Z",
      "notifiable": "none",
      "max_concurrent_vod_stream_num": 42,
      "user_subscription_status": "string",
      "user_subscription_last_event_type": "first_payment_error",
      "subscription_id": 42,
      "favourite_articles": [ArticleRelated],
      "nomadic_articles": [ArticleRelated],
      "history_articles": [ArticleRelated],
      "entitled_articles": [ArticleRelated],
      "entitled_root_articles": [ArticleRelated],
      "articles": [ArticleRelated],
      "latest_nomadic_article": ArticleRelated,
      "consents": [UserConsent],
      "metric_actions": [MetricAction],
      "notification_profiles": [UserNotificationProfile],
      "notification_topics": [UserNotificationTopic],
      "user_subscriptions": [AdminUserSubscription],
      "user_products": [UserProduct],
      "orders": [AdminUserPaymentAccountOrder],
      "user_payment_credit_amount": 1,
      "user_payment_general_credit_amount": 1,
      "user_payment_free_article_credit_amount": 1,
      "user_payment_currency_amount": "EUR",
      "user_payment_currency_symbol": "EUR",
      "user_payment_currency": "EUR",
      "external_user_id": "string",
      "metas": [AdminUserMeta],
      "managed_projects": [AdminProject],
      "recent_project": AdminProject,
      "roles": [Role],
      "user_product_orders": [
        AdminUserPaymentAccountOrder
      ],
      "payment_accounts": [AdminUserPaymentAccount],
      "article_view_sessions": [UserArticleSession],
      "devices": [AdminDevice],
      "activity_logs": [AdminActivityLog],
      "created_at": "2000-12-31T12:34:56.000Z",
      "updated_at": "2000-12-31T12:34:56.000Z",
      "active_at": "2000-12-31T12:34:56.000Z",
      "credits": [AdminUserPaymentCredit]
    }
  }
}

Types

ActivityLogLevelEnum

Description

An ActivityLog severity level

Values
Enum Value Description

system_error

A system error log entry that indicates an unexpected technical failure.

config_error

A configuration error log entry that indicates missing, invalid, or inconsistent Project settings.

warning

A warning log entry for a recoverable or attention-worthy condition.

info

An informational log entry for expected operational activity.

debug

A debug log entry with low-level diagnostic details.
Example
"system_error"

AdminActivityLog

Description

An admin ActivityLog

Fields
Field Name Description
id - Int! The id of the ActivityLog
log_name - String The ActivityLog event name
description - String The ActivityLog human-readable description
created_at - String The ActivityLog creation date in UTC
updated_at - String The ActivityLog last modification date in UTC
project_id - Int The Project id that owns the ActivityLog
user_id - Int The User id associated with the ActivityLog
log_level - ActivityLogLevelEnum The ActivityLog severity level
status - Int The ActivityLog processing status code
properties - String The ActivityLog JSON-encoded properties
Example
{
  "id": 42,
  "log_name": "string",
  "description": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "project_id": 42,
  "user_id": 42,
  "log_level": "system_error",
  "status": "string",
  "properties": "string"
}

AdminActivityLogsListedWithPagination

Description

A paginated admin ActivityLog list

Fields
Field Name Description
items - [AdminActivityLog] The ActivityLogs in the current page
pagination - Pagination The pagination metadata for the ActivityLog list
Example
{
  "items": [AdminActivityLog],
  "pagination": Pagination
}

AdminArticle

Description

An administrative Article representation with publication, Asset, categorization, and entitlement relations.

Fields
Field Name Description
id - Int! The id of the Article.
project_id - Int! The Project id that owns the Article.
parent_id - Int The id of the parent Article, for a hierarchical Article.
name - String The Article's name.
url_slug - String The Article's url slug.
Arguments
is_force_lowercase - Boolean

Force the value to lowercase (default).

full_url_slug - String The Article's full (hierarchical) url slug.
Arguments
is_force_lowercase - Boolean

Force the value to lowercase (default).

canonical_url - String The Article's canonical url.
canonical_title - String The Article's canonical title.
episode_list_display_type - String How child episodes are displayed for this Article, when it is a season-type Article.
upsell_product_call_to_action_tag - String The call-to-action tag shown alongside the Article's upsell Products.
ribbon_title - String The Article thumbnail's ribbon title.
ribbon_settings - String Style settings (JSON) for the Article thumbnail's ribbon.
type - ArticleTypeEnum The Article's type (e.g. film, trailer, episode).
metas - [AdminArticleMeta] The Article's metadata properties.
Arguments
output - MetaOutputTypeEnum

The output format to render each metadata property's value in (html, stripped_html, markdown).

icons - [File] The Article's icon Files.
images - [File] The Article's image Files.
posters - [File] The Article's poster image Files.
videos - [File] The Article's video Files.
documents - [File] The Article's document Files.
assets - [AdminAsset] The Article's Assets.
categories - [AdminCategory] The Categories this Article belongs to.
Arguments
type - CategoryTypeEnum

Filter by the Category's type.

sort_by - [SortByInput]

Sort and order by field(s).

parent_id - Int

The id of the parent Category to filter by.

geo_regions - [GeoRegion] The geo regions this Article's availability is restricted to.
locale_regions - [LocaleRegion] The locale regions this Article's availability is restricted to.
products - [AdminProduct] The Article's related Products.
upsell_products - [AdminProduct] The Article's related upsell Products.
created_at - String The creation date (UTC) of the Article.
updated_at - String The last modification date (UTC) of the Article.
popularity_index - Int The Article's popularity index.
visibility - ResourceVisibilityEnum The Article's own visibility as a resource (e.g. whether its detail page is displayable), independent of whether its linked Asset is playable or entitled.
discoverability - ArticleDiscoverabilityEnum The Article's discoverability (e.g. whether it appears in search/listings).
is_downloadable - Boolean Whether the Article is available for in-app download.
is_auth_required - Boolean Whether the Article requires authentication to view.
published_at - String Publish-at date (UTC) for the Article.
linked_asset_playable_from - String Visible-from date (UTC) for the primary Asset (typically of live-streaming type) linked to the Article.
status - Int The Article's status.
is_auto_generate_recommendations - Boolean Whether the Article auto-generates its recommended Articles.
is_show_in_all_geo_regions - Boolean Whether the Article is shown in all geo-regions, regardless of its own geo-restriction.
generic_url - String The Article's generic (non-localized) url.
url_slug_translations - [Translation] The Article's url_slug, per locale.
full_url_slug_translations - [Translation] The Article's full_url_slug, per locale.
canonical_url_translations - [Translation] The Article's canonical_url, per locale.
canonical_title_translations - [Translation] The Article's canonical_title, per locale.
upsell_product_call_to_action_tag_translations - [Translation] The Article's upsell_product_call_to_action_tag, per locale.
ribbon_title_translations - [Translation] The Article's ribbon_title, per locale.
children - [AdminArticle] The Article's child Articles.
recommended_articles - [AdminArticle] The Article's recommended Articles.
featured_on_categories - [AdminCategory] The Categories this Article is featured on.
files - [File] The Article's Files.
Arguments
type - FileTypeEnum

Filter by the File's type (icon, image, poster).

entitling_subscriptions - [AdminSubscription] The Subscriptions that can entitle access to this Article.
published_from - String The Article's publish-from date (UTC).
published_until - String The Article's publish-until date (UTC).
Example
{
  "id": 42,
  "project_id": 42,
  "parent_id": 42,
  "name": "string",
  "url_slug": "url-slug-string",
  "full_url_slug": "url-slug-string",
  "canonical_url": "https://url.example.com",
  "canonical_title": "string",
  "episode_list_display_type": "string",
  "upsell_product_call_to_action_tag": "string",
  "ribbon_title": "string",
  "ribbon_settings": "string",
  "type": "episode",
  "metas": [AdminArticleMeta],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "documents": [File],
  "assets": [AdminAsset],
  "categories": [AdminCategory],
  "geo_regions": [GeoRegion],
  "locale_regions": [LocaleRegion],
  "products": [AdminProduct],
  "upsell_products": [AdminProduct],
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "popularity_index": 42,
  "visibility": "everyone",
  "discoverability": "hidden",
  "is_downloadable": false,
  "is_auth_required": true,
  "published_at": "2000-12-31T12:34:56.000Z",
  "linked_asset_playable_from": "string",
  "status": "string",
  "is_auto_generate_recommendations": false,
  "is_show_in_all_geo_regions": true,
  "generic_url": "https://url.example.com",
  "url_slug_translations": ["url-slug-string"],
  "full_url_slug_translations": ["url-slug-string"],
  "canonical_url_translations": ["https://url.example.com"],
  "canonical_title_translations": [Translation],
  "upsell_product_call_to_action_tag_translations": [
    Translation
  ],
  "ribbon_title_translations": [Translation],
  "children": [AdminArticle],
  "recommended_articles": [AdminArticle],
  "featured_on_categories": [AdminCategory],
  "files": [File],
  "entitling_subscriptions": [AdminSubscription],
  "published_from": "string",
  "published_until": "string"
}

AdminArticleAssetPlay

Description

An Article-Asset playback request.

Fields
Field Name Description
article_id - Int! The id of the Article
asset_id - Int! The id of the Asset
time_marker_intro_start - Float The time marker of the start of the intro (seconds since start)
time_marker_intro_end - Float The time marker of the end of the intro (seconds since start)
time_marker_end - Float The time marker of the end of the Asset (seconds since start)
duration - Float The Asset's duration (seconds)
aspect_ratio - String The Asset's human-readable aspect ratio (e.g. 16x9)
aspect_ratio_fraction - Float The Asset's fractional aspect ratio (e.g. 1.778)
linked_type - ArticleAssetLinkedTypeEnum The Asset's role within this Article (e.g. episode, film, preview, trailer).
subtitles - [File] The Asset's subtitle Files
Arguments
format - FileSubtitleFormatEnum

The subtitle File's format (default: "vtt")

entitlements - [ArticleAssetPlayEntitlement] The Asset's playback entitlements
upsell_products - [ProductListedAsRelation] The Article's related upsell Products
appa - Float The Asset's absolute play position
appr - Float The Asset's relative play position
pulse_updated_at - String The Asset's pulse updated date (UTC)
pulse_token - String The Asset's pulse token
concurrent_user_num - Int The number of concurrent Users currently playing this Article-Asset combination.
fairplay_certificate_url - String The FairPlay certificate url
user_subtitle_locale - String The User's preferred subtitle locale
user_audio_locale - String The User's preferred audio locale
issued_at - String The date stamp (UTC) at which the current play mutation was issued
Arguments
is_format_with_milliseconds - Boolean

Add millisecond indication to the date stamp

Example
{
  "article_id": 42,
  "asset_id": 42,
  "time_marker_intro_start": 987.65,
  "time_marker_intro_end": 123.45,
  "time_marker_end": 987.65,
  "duration": 123.45,
  "aspect_ratio": "16x9",
  "aspect_ratio_fraction": 1.778,
  "linked_type": "film",
  "subtitles": [File],
  "entitlements": [ArticleAssetPlayEntitlement],
  "upsell_products": [ProductListedAsRelation],
  "appa": 987.65,
  "appr": 0.246,
  "pulse_updated_at": "2000-12-31T12:34:56.000Z",
  "pulse_token": "string",
  "concurrent_user_num": 42,
  "fairplay_certificate_url": "https://url.example.com",
  "user_subtitle_locale": "string",
  "user_audio_locale": "string",
  "issued_at": "2000-12-31T12:34:56.000Z"
}

AdminArticleMeta

Description

A metadata property on an Article.

Fields
Field Name Description
id - Int The metadata property id
key - String The metadata property key
value - String The metadata property value
type - MetaTypeEnum The metadata property type
format - String The metadata property rendering format
article_id - Int The Article id that owns this metadata property.
translations - [ArticleMetaTranslation] The metadata property's per-locale translations.
Example
{
  "id": 42,
  "key": "string",
  "value": "string",
  "type": "array",
  "format": "string",
  "article_id": 42,
  "translations": [ArticleMetaTranslation]
}

AdminArticlesListedWithPagination

Description

A paginated list of Articles.

Fields
Field Name Description
items - [AdminArticle] The page of Articles.
pagination - Pagination Pagination info for this list.
Example
{
  "items": [AdminArticle],
  "pagination": Pagination
}

AdminAsset

Description

The full Asset record, including administrative fields not present on the lighter AdminAssetListed shape.

Fields
Field Name Description
id - Int! The id of the Asset
project_id - Int! The Project id that owns the Asset
source_blob_name - String A descriptive name for the Asset's uploaded source file.
thumbnail_asset_id - String The Asset's identifier for its generated thumbnail image at the media provider.
is_live - Boolean Whether this Asset is being treated as live. Only meaningful for Assets of type "video" or "audio": a live_video-type Asset's live-ness is already implied by its type, independently of this flag.
type - AssetTypeEnum The Asset's media type.
linked_type - ArticleAssetLinkedTypeEnum The Asset's role within its Article (e.g. episode, film, preview, trailer).
accessibility - ResourceAccessibilityEnum The Asset's accessibility within its Article.
time_marker_intro_start - Float The time marker of the start of the intro (seconds since start)
time_marker_intro_end - Float The time marker of the end of the intro (seconds since start)
time_marker_end - Float The time marker of the end of the Asset (seconds since start)
duration - Float! The Asset's duration (seconds)
aspect_ratio - String The Asset's human-readable aspect ratio (e.g. 16x9)
aspect_ratio_fraction - String The Asset's fractional aspect ratio (e.g. 1.778)
subtitles - [File] The Asset's subtitle Files
Arguments
format - FileSubtitleFormatEnum

The subtitle File's format

screenshots - [File] The Asset's screenshot image Files
playable_from - String Visible-from date (UTC) for the Asset (typically used to indicate when a live event will begin).
playable_until - String Visible-until date (UTC) for the Asset (typically used to indicate when a live event will end).
published_from - String Publish-from date (UTC) for the Asset
published_until - String Publish-until date (UTC) for the Asset
created_at - String The creation date (UTC) of the Asset
updated_at - String The last modification date (UTC) of the Asset
project - AdminProject The Project this Asset belongs to
media_provider - String Media provider
encoding_profile_name - AssetEncodingProfileNameEnum Encoding profile name
encryption_profile_name - AssetEncryptionProfileNameEnum Encryption profile name
source_blob_md5 - String The md5 checksum of the Asset's uploaded source file.
source_asset_id - String The Asset's identifier at the source/originating system, distinct from AudiencePlayer's own Asset id.
encoded_asset_name - String The Asset's file name for its encoded representation at the media provider.
encoded_asset_id - String The Asset's identifier for its encoded representation at the media provider.
streaming_unit_id - String Streaming unit id
origin - String Upload origin
streaming_endpoint - String Media url locator
asset_status_id - Int! The Asset's lifecycle status, as its raw numeric id.
asset_status - AssetStatusEnum The Asset's lifecycle status. The same underlying value as asset_status_id, exposed as a typed enum.
ingestion_status - String A coarser-grained bucket derived from asset_status_id, one of: processing, error, ok, unpublished, deleted.
ingestion_status_description - String A human-readable progress label for asset_status_id (e.g. "INGESTING 60% [4]"), not intended for programmatic matching.
external_asset_id - String An optional external/third-party identifier label for the Asset, used for administrative purposes only.
stored_bytes - Float Total amount of bytes stored on disk for this Asset
stored_giga_bytes - Float Total amount of gigabytes stored on disk for this Asset
files - [File] List of files
Arguments
type - FileTypeEnum

The File's type (subtitle, screenshot).

download_urls - [StructureKeyValueStringPair] List of download urls
Arguments
is_restrict_to_current_ip_address - Boolean

restrict URL access to current ip address

ttl - Int

URL expiry interval in seconds

activity_logs - [AdminActivityLog] List of all activity logs for this resource
player_embed_code_iframe - String Player embed code in iframe format
ingestion_endpoints - [String] Ingestion endpoints for Asset of type "live_video"
streaming_credentials - [StructureKeyValueStringPair] Streaming credentials (e.g. for live streams)
last_event_message - String The last logged processing event message. Only populated while the Asset is currently in an error status; null otherwise, even if an event message exists from an earlier, now-resolved error.
active_asset_recording_id - Int The id of this live-video Asset's currently active (or last) recording.
active_recording - AdminAssetRecording This live-video Asset's currently active (or last) recording.
recordings - [AdminAssetRecording] All recordings for this live-video Asset, optionally filtered by status.
Arguments
status - String

Filter by recording status: active, finished, post_processing, completed, failed

Example
{
  "id": 42,
  "project_id": 42,
  "source_blob_name": "string",
  "thumbnail_asset_id": "string",
  "is_live": false,
  "type": "audio",
  "linked_type": "film",
  "accessibility": "everyone",
  "time_marker_intro_start": 123.45,
  "time_marker_intro_end": 123.45,
  "time_marker_end": 987.65,
  "duration": 987.65,
  "aspect_ratio": "16x9",
  "aspect_ratio_fraction": 1.778,
  "subtitles": [File],
  "screenshots": [File],
  "playable_from": "string",
  "playable_until": "string",
  "published_from": "string",
  "published_until": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "project": AdminProject,
  "media_provider": "string",
  "encoding_profile_name": "sd_540p_16x9",
  "encryption_profile_name": "none",
  "source_blob_md5": "string",
  "source_asset_id": "string",
  "encoded_asset_name": "string",
  "encoded_asset_id": "string",
  "streaming_unit_id": "string",
  "origin": "string",
  "streaming_endpoint": "string",
  "asset_status_id": "string",
  "asset_status": "string",
  "ingestion_status": "string",
  "ingestion_status_description": "string",
  "external_asset_id": "string",
  "stored_bytes": 987.65,
  "stored_giga_bytes": 123.45,
  "files": [File],
  "download_urls": ["https://url.example.com"],
  "activity_logs": [AdminActivityLog],
  "player_embed_code_iframe": "string",
  "ingestion_endpoints": ["string"],
  "streaming_credentials": [StructureKeyValueStringPair],
  "last_event_message": "string",
  "active_asset_recording_id": 42,
  "active_recording": AdminAssetRecording,
  "recordings": [AdminAssetRecording]
}

AdminAssetListed

Description

An Asset, as returned in a list/search result (a lighter shape than the full Asset type).

Fields
Field Name Description
id - Int! The id of the Asset
project_id - Int! The Project id that owns the Asset
source_blob_name - String A descriptive name for the Asset's uploaded source file.
thumbnail_asset_id - String The Asset's identifier for its generated thumbnail image at the media provider.
is_live - Boolean Whether this Asset is being treated as live. Only meaningful for Assets of type "video" or "audio": a live_video-type Asset's live-ness is already implied by its type, independently of this flag.
type - AssetTypeEnum The Asset's media type.
linked_type - ArticleAssetLinkedTypeEnum The Asset's role within its Article (e.g. episode, film, preview, trailer).
accessibility - ResourceAccessibilityEnum The Asset's accessibility within its Article.
time_marker_intro_start - Float The time marker of the start of the intro (seconds since start)
time_marker_intro_end - Float The time marker of the end of the intro (seconds since start)
time_marker_end - Float The time marker of the end of the Asset (seconds since start)
duration - Float! The Asset's duration (seconds)
aspect_ratio - String The Asset's human-readable aspect ratio (e.g. 16x9)
aspect_ratio_fraction - String The Asset's fractional aspect ratio (e.g. 1.778)
subtitles - [File] The Asset's subtitle Files
Arguments
format - FileSubtitleFormatEnum

The subtitle File's format

screenshots - [File] The Asset's screenshot image Files
playable_from - String Visible-from date (UTC) for the Asset (typically used to indicate when a live event will begin).
playable_until - String Visible-until date (UTC) for the Asset (typically used to indicate when a live event will end).
published_from - String Publish-from date (UTC) for the Asset
published_until - String Publish-until date (UTC) for the Asset
created_at - String The creation date (UTC) of the Asset
updated_at - String The last modification date (UTC) of the Asset
project - AdminProject The Project this Asset belongs to
media_provider - String Media provider
encoding_profile_name - AssetEncodingProfileNameEnum Encoding profile name
encryption_profile_name - AssetEncryptionProfileNameEnum Encryption profile name
source_blob_md5 - String The md5 checksum of the Asset's uploaded source file.
source_asset_id - String The Asset's identifier at the source/originating system, distinct from AudiencePlayer's own Asset id.
encoded_asset_name - String The Asset's file name for its encoded representation at the media provider.
encoded_asset_id - String The Asset's identifier for its encoded representation at the media provider.
streaming_unit_id - String Streaming unit id
origin - String Upload origin
streaming_endpoint - String Media url locator
asset_status_id - Int! The Asset's lifecycle status, as its raw numeric id.
asset_status - AssetStatusEnum The Asset's lifecycle status. The same underlying value as asset_status_id, exposed as a typed enum.
ingestion_status - String A coarser-grained bucket derived from asset_status_id, one of: processing, error, ok, unpublished, deleted.
ingestion_status_description - String A human-readable progress label for asset_status_id (e.g. "INGESTING 60% [4]"), not intended for programmatic matching.
external_asset_id - String An optional external/third-party identifier label for the Asset, used for administrative purposes only.
Example
{
  "id": 42,
  "project_id": 42,
  "source_blob_name": "string",
  "thumbnail_asset_id": "string",
  "is_live": true,
  "type": "audio",
  "linked_type": "film",
  "accessibility": "everyone",
  "time_marker_intro_start": 987.65,
  "time_marker_intro_end": 987.65,
  "time_marker_end": 987.65,
  "duration": 123.45,
  "aspect_ratio": "16x9",
  "aspect_ratio_fraction": 1.778,
  "subtitles": [File],
  "screenshots": [File],
  "playable_from": "string",
  "playable_until": "string",
  "published_from": "string",
  "published_until": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "project": AdminProject,
  "media_provider": "string",
  "encoding_profile_name": "sd_540p_16x9",
  "encryption_profile_name": "none",
  "source_blob_md5": "string",
  "source_asset_id": "string",
  "encoded_asset_name": "string",
  "encoded_asset_id": "string",
  "streaming_unit_id": "string",
  "origin": "string",
  "streaming_endpoint": "string",
  "asset_status_id": "string",
  "asset_status": "string",
  "ingestion_status": "string",
  "ingestion_status_description": "string",
  "external_asset_id": "string"
}

AdminAssetPlay

Description

An Asset playback request.

Fields
Field Name Description
asset_id - Int! The id of the Asset
time_marker_intro_start - Float The time marker of the start of the intro (seconds since start)
time_marker_intro_end - Float The time marker of the end of the intro (seconds since start)
time_marker_end - Float The time marker of the end of the Asset (seconds since start)
duration - Float The Asset's duration (seconds)
aspect_ratio - String The Asset's human-readable aspect ratio (e.g. 16x9)
aspect_ratio_fraction - Float The Asset's fractional aspect ratio (e.g. 1.778)
subtitles - [File] The Asset's subtitle Files
Arguments
format - FileSubtitleFormatEnum

The subtitle File's format (default: "vtt")

entitlements - [ArticleAssetPlayEntitlement] The Asset's playback entitlements
pulse_updated_at - String The Asset's pulse updated date (UTC)
pulse_token - String The Asset's pulse token
fairplay_certificate_url - String The FairPlay certificate url
user_subtitle_locale - String The User's preferred subtitle locale
user_audio_locale - String The User's preferred audio locale
issued_at - String The date stamp (UTC) at which the current play mutation was issued
Arguments
is_format_with_milliseconds - Boolean

Add millisecond indication to the date stamp

Example
{
  "asset_id": 42,
  "time_marker_intro_start": 987.65,
  "time_marker_intro_end": 123.45,
  "time_marker_end": 987.65,
  "duration": 987.65,
  "aspect_ratio": "16x9",
  "aspect_ratio_fraction": 1.778,
  "subtitles": [File],
  "entitlements": [ArticleAssetPlayEntitlement],
  "pulse_updated_at": "2000-12-31T12:34:56.000Z",
  "pulse_token": "string",
  "fairplay_certificate_url": "https://url.example.com",
  "user_subtitle_locale": "string",
  "user_audio_locale": "string",
  "issued_at": "2000-12-31T12:34:56.000Z"
}

AdminAssetRecording

Description

A recording of a live-video Asset's channel.

Fields
Field Name Description
id - Int The id of the recording.
asset_id - Int The id of the Asset this recording belongs to.
project_id - Int The Project id that owns the Asset.
remote_recording_id - String Remote provider recording identifier
time_delta - Float Duration of the recording in seconds
status - String Recording status: active, finished, post_processing, completed, failed
file_path - String File path of the recording at the remote provider
started_at - String Datetime (UTC) at which the recording was started
completed_at - String Datetime (UTC) at which the recording was completed
created_at - String Datetime (UTC) at which this record was created
updated_at - String Datetime (UTC) at which this record was last updated
download_url - String Signed download URL for the recording MP4. Only populated for recordings with status "completed". Resolved via AdminAsset query.
Example
{
  "id": 42,
  "asset_id": 42,
  "project_id": 42,
  "remote_recording_id": "string",
  "time_delta": 123.45,
  "status": "string",
  "file_path": "string",
  "started_at": "2000-12-31T12:34:56.000Z",
  "completed_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "download_url": "https://url.example.com"
}

AdminAssetUploadToken

Description

A provider upload contract for a large Asset source file.

Fields
Field Name Description
project_id - Int The Project id that owns the Asset.
asset_id - Int The id of the created Asset for which the provider upload contract was issued.
token - String Provider-specific upload token, URL, or path. Interpret this together with token_type and the provider-specific context fields.
token_type - String Provider upload contract type, for example AWS_PSU or JS_PSU.
credential_string - String Provider-specific temporary credential string for upload clients. May be empty when the provider does not require it.
expires_in - Int Upload contract TTL in seconds.
source_blob_name - String Sanitised and reserved source file name for the uploaded Asset.
account_name - String Provider-specific account or bucket context for the upload, when applicable.
folder_name - String Provider-specific folder or object-prefix context for the upload, when applicable.
encoding_profile_name - AssetEncodingProfileNameEnum Encoding profile assigned to the Asset after upload.
encryption_profile_name - AssetEncryptionProfileNameEnum Encryption profile assigned to the Asset after upload.
Example
{
  "project_id": 42,
  "asset_id": 42,
  "token": "string",
  "token_type": "string",
  "credential_string": "string",
  "expires_in": 86400,
  "source_blob_name": "string",
  "account_name": "string",
  "folder_name": "string",
  "encoding_profile_name": "sd_540p_16x9",
  "encryption_profile_name": "none"
}

AdminAssetsListedWithPagination

Description

Asset list with pagination

Fields
Field Name Description
items - [AdminAssetListed] The listed Assets on this page.
pagination - Pagination Pagination metadata for the listed Asset results.
Example
{
  "items": [AdminAssetListed],
  "pagination": Pagination
}

AdminCategoriesListedWithPagination

Description

A paginated list of Categories.

Fields
Field Name Description
items - [AdminCategory] The page of Categories.
pagination - Pagination Pagination info for this list.
Example
{
  "items": [AdminCategory],
  "pagination": Pagination
}

AdminCategory

Description

An administrative Category representation used to organize Articles and Products in a hierarchy.

Fields
Field Name Description
id - Int! The id of the Category.
project_id - Int! The Project id that owns this Category.
name - String The Category's name.
url_slug - String The Category's url slug.
Arguments
is_force_lowercase - Boolean

Whether to force the value to lowercase.

full_url_slug - String The Category's full url slug.
Arguments
is_force_lowercase - Boolean

Whether to force the value to lowercase.

canonical_url - String The Category's canonical url.
type - CategoryTypeEnum The Category's type.
metas - [AdminCategoryMeta] The Category's metadata properties.
Arguments
output - MetaOutputTypeEnum

The output format to render each metadata property's value in (html, stripped_html, markdown).

articles - [AdminArticle] The Articles in this Category.
Arguments
sort_by - [SortByInput]

Sort and order by field(s).

products - [AdminProduct] The Products in this Category.
Arguments
sort_by - [SortByInput]

Sort and order by field(s).

featured_articles - [AdminArticle] The Articles featured in this Category.
icons - [File] The Category's icon Files.
images - [File] The Category's image Files.
videos - [File] The Category's video Files.
parent_id - Int The id of the Category's parent Category.
child_metas - [String] The metadata field names available on this Category's child Categories.
created_at - String The Category's creation date (UTC).
updated_at - String The Category's last modification date (UTC).
generic_url - String The Category's generic (non-localized) url.
url_slug_translations - [Translation] The Category's url_slug, per locale.
full_url_slug_translations - [Translation] The Category's full_url_slug, per locale.
canonical_url_translations - [Translation] The Category's canonical_url, per locale.
posters - [File] The Category's poster Files.
files - [File] The Category's Files.
Arguments
type - FileTypeEnum

Filter by the File's type (icon, image, poster).

visibility - ResourceVisibilityEnum The Category's visibility.
status - Int The Category's status.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "url_slug": "url-slug-string",
  "full_url_slug": "url-slug-string",
  "canonical_url": "https://url.example.com",
  "type": "article_label",
  "metas": [AdminCategoryMeta],
  "articles": [AdminArticle],
  "products": [AdminProduct],
  "featured_articles": [AdminArticle],
  "icons": [File],
  "images": [File],
  "videos": [File],
  "parent_id": 42,
  "child_metas": ["string"],
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "generic_url": "https://url.example.com",
  "url_slug_translations": ["url-slug-string"],
  "full_url_slug_translations": ["url-slug-string"],
  "canonical_url_translations": ["https://url.example.com"],
  "posters": [File],
  "files": [File],
  "visibility": "everyone",
  "status": "string"
}

AdminCategoryMeta

Description

A metadata property on a Category.

Fields
Field Name Description
id - Int The metadata property id
key - String The metadata property key
value - String The metadata property value
type - MetaTypeEnum The metadata property type
format - String The metadata property rendering format
category_id - Int The Category id that owns this metadata property.
translations - [CategoryMetaTranslation] The metadata property's per-locale translations.
Example
{
  "id": 42,
  "key": "string",
  "value": "string",
  "type": "array",
  "format": "string",
  "category_id": 42,
  "translations": [CategoryMetaTranslation]
}

AdminClient

Description

An OAuth client.

Fields
Field Name Description
id - Int! The id of the OAuth client.
project_id - Int The Project id that owns the OAuth client.
name - String The OAuth client's name.
remote_callback_url - String The remote callback URL used for CRM synchronisation events.
remote_callback_crm_contexts - [CrmSyncContextEnum] The CRM synchronisation contexts that trigger the remote callback.
redirect_uris - [String] The allowed redirect URI values for the OAuth client.
service_type - ClientServiceTypeEnum The OAuth client's service type.
is_configurable - Boolean Whether the OAuth client is configurable by a Moderator.
authorization_url - String The authorization URL for an OAuth2 authorization-code flow.
token_url - String The token URL for an OAuth2 authorization-code flow.
refresh_token_url - String The refresh-token URL for an OAuth2 authorization-code flow.
user_info_url - String The user-info URL for an OAuth2 authorization-code flow.
scope - String The scope name for an OAuth2 authorization-code flow.
client_id - String The OAuth client id.
client_secret - String The OAuth client secret.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "remote_callback_url": "https://url.example.com",
  "remote_callback_crm_contexts": ["user_article"],
  "redirect_uris": ["string"],
  "service_type": "external_admin",
  "is_configurable": false,
  "authorization_url": "https://url.example.com",
  "token_url": "https://url.example.com",
  "refresh_token_url": "https://url.example.com",
  "user_info_url": "https://url.example.com",
  "scope": "string",
  "client_id": "string",
  "client_secret": "string"
}

AdminClientListed

Description

A listed OAuth client.

Fields
Field Name Description
id - Int! The id of the OAuth client.
project_id - Int The Project id that owns the OAuth client.
name - String The OAuth client's name.
remote_callback_url - String The remote callback URL used for CRM synchronisation events.
remote_callback_crm_contexts - [CrmSyncContextEnum] The CRM synchronisation contexts that trigger the remote callback.
redirect_uris - [String] The allowed redirect URI values for the OAuth client.
service_type - ClientServiceTypeEnum The OAuth client's service type.
is_configurable - Boolean Whether the OAuth client is configurable by a Moderator.
authorization_url - String The authorization URL for an OAuth2 authorization-code flow.
token_url - String The token URL for an OAuth2 authorization-code flow.
refresh_token_url - String The refresh-token URL for an OAuth2 authorization-code flow.
user_info_url - String The user-info URL for an OAuth2 authorization-code flow.
scope - String The scope name for an OAuth2 authorization-code flow.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "remote_callback_url": "https://url.example.com",
  "remote_callback_crm_contexts": ["user_article"],
  "redirect_uris": ["string"],
  "service_type": "external_admin",
  "is_configurable": true,
  "authorization_url": "https://url.example.com",
  "token_url": "https://url.example.com",
  "refresh_token_url": "https://url.example.com",
  "user_info_url": "https://url.example.com",
  "scope": "string"
}

AdminClientsListedWithPagination

Description

A paginated list of OAuth clients.

Fields
Field Name Description
items - [AdminClientListed] The OAuth clients in the current page.
pagination - Pagination The pagination metadata for the OAuth client list.
Example
{
  "items": [AdminClientListed],
  "pagination": Pagination
}

AdminConfig

Description

Admin Project configuration payload

Fields
Field Name Description
system_language_tags - [SystemLanguageTag] A list of system language tags
language_tag_contexts - [LanguageTagContext] A list of language tag contexts, which represent sets of language tags used in the front-end apps
locales - [StructureKeyValueStringPair] A list of locales and languages
project - AdminConfigProject The Project-level admin configuration for the requested Project
roles - [Role] Roles available to admins for the requested Project
platform_style_font_families - [String] A list of available font-families which can be used in web/app styling
platform_style_font_allowed_families - [String] A list of all allowed font-families which can be used in web/app styling for given project
Arguments
platform_context - PlatformContextEnum

Platform context for which to show allowed font families

resource_map - AdminResourceMap The admin resource and property map for the requested Project
type_descendants - [StructureKeyValueStringArrayPair] A list of descendant types for the requested resource and platform context
Arguments
resource - ResourceTypeEnum

Resource type for which to show type descendants

platform_context - PlatformContextEnum

Platform context for which to show type descendants

type_children - [StructureKeyValueStringArrayPair] A list of direct child types for the requested resource and platform context
Arguments
resource - ResourceTypeEnum

Resource type for which to show type children

platform_context - PlatformContextEnum

Platform context for which to show type children

telemetry_platforms - [String] Telemetry platforms
article_asset_linked_types - [String] Project default article asset linked types
article_types - [String] Project default article types
article_discoverability_types - [String] Project default article discoverability types
article_metadata_keys - [String] The available article metadata key names
asset_status_types - [String] Project default asset status types
asset_source_extensions - [StructureKeyValueStringArrayPair] The file extensions (lowercase, without leading dot) accepted for Asset source file uploads, keyed by media type: "video" and "audio". The extension .mp4 is accepted for both.
category_types - [String] Project default category types
category_article_taggable_types - [String] Project default category types which can be directly linked to articles
category_product_taggable_types - [String] Project default category types which can be directly linked to products
logic_operators - [String] Project default logic operators
metric_types - [String] Project default metric types
metric_action_types - [String] Project default metric action types
metric_condition_types - [String] Project default metric condition types
notification_types - [String] Project default notification types
notification_delivery_types - [String] Project default notification delivery types
notification_topic_types - [String] Project default notification topic types
notification_channel_context_types - [String] Project default notification channel context types
page_types - [String] Project default page types
page_component_types - [String] Project default page component types
page_component_element_types - [String] Project default page component element types
payment_syndicate_voucher_types - [String] Project voucher types
payment_syndicate_voucher_discount_types - [String] Project voucher discount types
payment_syndicate_voucher_installment_types - [String] Project voucher installment types
payment_syndicate_voucher_user_subscription_status_actions - [String] User subscriptions status actions that a voucher can implement after being claimed
payment_currency_types - [StructureKeyValueStringPair] Project currency matrix types
product_types - [String] Product types available to the CMS
product_recurring_types - [String] Product types that renew on a recurring basis
product_non_recurring_types - [String] Product types that do not renew on a recurring basis
product_status_types - [String] Product status types
product_discoverability_types - [String] Project default product discoverability types
analytics_search_tag_types - [String] Project default search tag types
subscription_types - [String] Subscription types
subscription_status_types - [String] Subscription status types
subscription_entitlement_scope_types - [String] Subscription entitlement scope types
subscription_time_unit_types - [String] Time unit types
subscription_discoverability_types - [String] Project default subscription discoverability types
user_status_types - [String] Project user status types
user_gender_types - [String] Project user gender types
user_consent_types - [String] Project user consent types
user_notifiable_types - [String] Project user notifiable types
user_phone_status_types - [String] Project user phone status types
user_subscription_status_types - [String] User subscription status types
user_payment_credit_types - [String] Project user payment credit types
role_types - [String] Project role types assigned to users and/or moderators
system_notification_message - String System notification message that may be displayed in the AudiencePlayer CMS
system_notification_message_ttl - Int TTL in seconds, after which a system notification message must reappear in the AudiencePlayer CMS
Example
{
  "system_language_tags": [SystemLanguageTag],
  "language_tag_contexts": [LanguageTagContext],
  "locales": [StructureKeyValueStringPair],
  "project": AdminConfigProject,
  "roles": [Role],
  "platform_style_font_families": [
    "string"
  ],
  "platform_style_font_allowed_families": [
    "string"
  ],
  "resource_map": AdminResourceMap,
  "type_descendants": [StructureKeyValueStringArrayPair],
  "type_children": [StructureKeyValueStringArrayPair],
  "telemetry_platforms": ["string"],
  "article_asset_linked_types": ["film"],
  "article_types": ["string"],
  "article_discoverability_types": [
    "string"
  ],
  "article_metadata_keys": ["string"],
  "asset_status_types": ["string"],
  "asset_source_extensions": [
    StructureKeyValueStringArrayPair
  ],
  "category_types": ["string"],
  "category_article_taggable_types": [
    "string"
  ],
  "category_product_taggable_types": [
    "string"
  ],
  "logic_operators": ["string"],
  "metric_types": ["string"],
  "metric_action_types": ["string"],
  "metric_condition_types": ["string"],
  "notification_types": ["string"],
  "notification_delivery_types": ["string"],
  "notification_topic_types": ["string"],
  "notification_channel_context_types": [
    "string"
  ],
  "page_types": ["string"],
  "page_component_types": ["string"],
  "page_component_element_types": [
    "string"
  ],
  "payment_syndicate_voucher_types": [
    "string"
  ],
  "payment_syndicate_voucher_discount_types": [
    "string"
  ],
  "payment_syndicate_voucher_installment_types": [
    "string"
  ],
  "payment_syndicate_voucher_user_subscription_status_actions": ["string"],
  "payment_currency_types": ["EUR"],
  "product_types": ["string"],
  "product_recurring_types": ["string"],
  "product_non_recurring_types": ["string"],
  "product_status_types": ["string"],
  "product_discoverability_types": [
    "string"
  ],
  "analytics_search_tag_types": ["string"],
  "subscription_types": ["string"],
  "subscription_status_types": ["string"],
  "subscription_entitlement_scope_types": [
    "string"
  ],
  "subscription_time_unit_types": [
    "string"
  ],
  "subscription_discoverability_types": [
    "string"
  ],
  "user_status_types": ["string"],
  "user_gender_types": ["string"],
  "user_consent_types": ["string"],
  "user_notifiable_types": ["string"],
  "user_phone_status_types": ["string"],
  "user_subscription_status_types": ["string"],
  "user_payment_credit_types": ["string"],
  "role_types": ["string"],
  "system_notification_message": "string",
  "system_notification_message_ttl": 42
}

AdminConfigProject

Description

Admin Project configuration summary

Fields
Field Name Description
has_subscriptions - Boolean Project has subscriptions
has_auto_canonical_urls - Boolean Project has auto-generated canonical URLs
has_credits - Boolean Project has credits
has_subscription_payment_registration_integration - Boolean Project has payment flow integrated with registration
has_subscription_payment_pricing_before_registration - Boolean Project has subscription pricing shown before registration
has_subscription_credit_integration - Boolean Project has credits integrated within subscriptions
has_entitlements - Boolean Project has entitlements
has_geo_restrictions - Boolean Project uses GeoRegion restrictions
has_article_favourites - Boolean Project has article favourites
has_article_ratings - Boolean Project has article ratings
has_article_nomadics - Boolean Project has article nomadics
has_article_series_nomadics - Boolean Project has article nomadics in series
has_article_entitlements - Boolean Project has article entitlements
has_article_history - Boolean Project has article history
has_article_recommendations - Boolean Project has article recommendations
has_article_offline_downloads - Boolean Project has offline article downloads
has_article_purchase_buttons - Boolean Project has purchase buttons separately displayed on the article detail pages
has_product_purchase_affiliation_categories - Boolean Project has affiliation categories for products, to be displayed in the purchase modals
has_subscription_purchase_affiliation_categories - Boolean Project has affiliation categories for subscriptions, to be displayed in the purchase modals
has_checkout_combined_login_registration - Boolean Project shows combined login and registration modal during checkout instead of only a registration form
is_affiliation_category_selection_required - Boolean Project affiliation category must be selected on purchase checkout
max_concurrent_vod_stream_num - Int Maximum allowed number of concurrent VOD streams
media_provider_type - String The primary configured media provider
streampulse_completion_ratio - Float Default ratio at which a video is considered to be completed
encryption_fairplay_certificate_url - String Encryption FairPlay certificate URL
asset_encoding_profiles - [AssetEncodingProfile] Project available asset encoding profiles
asset_encryption_profiles - [AssetEncryptionProfile] Project available asset encryption profiles
Arguments
is_filter_on_best_match - Boolean

Limit the selection to the best matches based on the project preferences (typically this yields the "no-encryption" profile and one preferred "encryption" profile)

asset_default_encryption_profile_name - AssetEncryptionProfileNameEnum Default Asset encryption profile
asset_default_encoding_profile_name - AssetEncodingProfileNameEnum Default asset encoding profile
image_resize_resolutions - [ImageResolution] Project image size resolutions
locale - String Project default locale
locale_translations - [String] Project locale translations
default_currency - String Project default currency
default_currency_symbol - String Project default currency symbol
website_logo - String Project website logo
website_url - String Project website URL
website_domain - String Project website domain name
website_internal_url - String Project internal website URL
base_url_slugs - [AdminConfigProjectBaseUrlSlug] Project website base URL slugs
user_consent_types - [String] Project user consent types
theme_colours - [String] Project theme colours
article_ribbon_settings - [StructureKeyValueStringPair] Article thumbnail ribbon settings
active_platform_contexts - [String] The platform contexts active for the Project
active_config_contexts - [String] The ProjectConfig contexts active for the Project
privileges - AdminConfigProjectPrivileges The Project privileges and limits available to the admin CMS
media_provider_types - [String] The available media provider types for the Project
Example
{
  "has_subscriptions": false,
  "has_auto_canonical_urls": true,
  "has_credits": false,
  "has_subscription_payment_registration_integration": true,
  "has_subscription_payment_pricing_before_registration": false,
  "has_subscription_credit_integration": true,
  "has_entitlements": false,
  "has_geo_restrictions": true,
  "has_article_favourites": false,
  "has_article_ratings": true,
  "has_article_nomadics": false,
  "has_article_series_nomadics": true,
  "has_article_entitlements": false,
  "has_article_history": true,
  "has_article_recommendations": false,
  "has_article_offline_downloads": true,
  "has_article_purchase_buttons": false,
  "has_product_purchase_affiliation_categories": true,
  "has_subscription_purchase_affiliation_categories": false,
  "has_checkout_combined_login_registration": true,
  "is_affiliation_category_selection_required": false,
  "max_concurrent_vod_stream_num": 42,
  "media_provider_type": "string",
  "streampulse_completion_ratio": 987.65,
  "encryption_fairplay_certificate_url": "https://url.example.com",
  "asset_encoding_profiles": [AssetEncodingProfile],
  "asset_encryption_profiles": [AssetEncryptionProfile],
  "asset_default_encryption_profile_name": "none",
  "asset_default_encoding_profile_name": "sd_540p_16x9",
  "image_resize_resolutions": [ImageResolution],
  "locale": "string",
  "locale_translations": ["string"],
  "default_currency": "EUR",
  "default_currency_symbol": "EUR",
  "website_logo": "string",
  "website_url": "https://url.example.com",
  "website_domain": "string",
  "website_internal_url": "https://url.example.com",
  "base_url_slugs": ["url-slug-string"],
  "user_consent_types": ["string"],
  "theme_colours": ["string"],
  "article_ribbon_settings": [
    StructureKeyValueStringPair
  ],
  "active_platform_contexts": ["string"],
  "active_config_contexts": ["string"],
  "privileges": AdminConfigProjectPrivileges,
  "media_provider_types": ["string"]
}

AdminConfigProjectBaseUrlSlug

Description

Admin Project website base URL slug

Fields
Field Name Description
resource - String The resource the base URL slug applies to
type - String The resource subtype the base URL slug applies to
value - String The base URL slug value
Example
{
  "resource": "string",
  "type": "string",
  "value": "string"
}

AdminConfigProjectPrivileges

Description

Admin config project privileges

Fields
Field Name Description
has_app_ap_embed - Boolean Project can use AP-Embed.
has_app_chromecast - Boolean Project can use the AudiencePlayer Chromecast app.
has_app_metrological - Boolean Project can use the Audienceplayer apps for the Metrological platform.
has_app_mobile - Boolean Project can use the AudiencePlayer native mobile apps for iOS and Android.
has_app_smart_tv - Boolean Project can use the AudiencePlayer Smart TV apps.
has_app_web_custom_domain - Boolean Project can use the AudiencePlayer WEB Template with a custom domain name.
has_app_web_custom_logo_footer - Boolean Project can use the AudiencePlayer WEB Template with a custom footer logo.
has_app_web_template - Boolean Project can use the AudiencePlayer WEB Template.
has_article_non_authorised_playback - Boolean Project can offer Articles without authorised-only playback (i.e. free videos such as trailers and previews).
has_asset_drm_encryption - Boolean Project can implement DRM encryption on video streams.
has_asset_live_streaming - Boolean Project can implement live video streams.
has_gamification - Boolean Project can use Gamification/Loyalty.
has_integration_api - Boolean Project can implement custom integrations with the AudiencePlayer API.
has_integration_crm - Boolean Project can use CRM integrations.
has_integration_wp - Boolean Project can use AudiencePlayer Wordpress plugin integration.
has_monetization_products - Boolean Project can use monetization Products.
has_monetization_subscriptions - Boolean Project can use monetization Subscriptions.
has_monetization_vouchers - Boolean Project can use monetization Vouchers.
has_push_notifications - Boolean Project can use Push Notification.
limit_aggregated_max_video_duration_hr - Float Project has a limit on the total duration of all aggregated video content.
limit_aggregated_max_file_storage_gb - Float Project has a limit on the total storage space measured in Gb (video, images, etc).
limit_aggregated_max_streaming_gb_month - Float Project has a limit on the total streaming consumption measured in Gb per month (video, images, etc).
Example
{
  "has_app_ap_embed": true,
  "has_app_chromecast": false,
  "has_app_metrological": true,
  "has_app_mobile": false,
  "has_app_smart_tv": true,
  "has_app_web_custom_domain": false,
  "has_app_web_custom_logo_footer": true,
  "has_app_web_template": false,
  "has_article_non_authorised_playback": true,
  "has_asset_drm_encryption": false,
  "has_asset_live_streaming": true,
  "has_gamification": false,
  "has_integration_api": true,
  "has_integration_crm": false,
  "has_integration_wp": true,
  "has_monetization_products": false,
  "has_monetization_subscriptions": true,
  "has_monetization_vouchers": false,
  "has_push_notifications": true,
  "limit_aggregated_max_video_duration_hr": 123.45,
  "limit_aggregated_max_file_storage_gb": 123.45,
  "limit_aggregated_max_streaming_gb_month": 987.65
}

AdminDevice

Description

An admin Device

Fields
Field Name Description
id - Int! The id of the Device.
name - String The Device's name.
uuid - String The Device's UUID.
project_id - Int The Project id that owns the Device.
user_id - Int The id of the User that owns the Device.
created_at - String The Device's creation date-time (UTC).
type - String The Device's type.
operator_context - String The Device's operator context.
brand - String The Device's detected brand.
model - String The Device's detected model.
key - String The Device's encoded authentication key.
ip_address - String The Device's last recorded IP address.
Example
{
  "id": 42,
  "name": "string",
  "uuid": "string",
  "project_id": 42,
  "user_id": 42,
  "created_at": "2000-12-31T12:34:56.000Z",
  "type": "string",
  "operator_context": "string",
  "brand": "string",
  "model": "string",
  "key": "string",
  "ip_address": "string"
}

AdminFile

Description

An admin File

Fields
Field Name Description
id - Int! The id of the File
name - String The File's original name
title - String The File's display title or generated title fallback
type - FileTypeEnum The File's type
size - Int The File's size in bytes
width - Int The File's width in pixels
height - Int The File's height in pixels
aspect_ratio_profile - String The File's calculated aspect-ratio profile
duration - Int The File's duration in seconds, where applicable
locale - String The File's language locale code
locale_label - String The File's language locale label
base_url - String The File's base URL
base_path - String The File's base URL path
url - String The File's public URL
proxy_file_path - String The File's proxy path
proxy_url - String The File's proxy URL
file_name - String The File's storage file name
file_path - String The File's storage path
title_translations - [Translation] The File title translations
origin_url - String The File origin URL, which serves as the origin for CDN hydration.
Example
{
  "id": 42,
  "name": "string",
  "title": "string",
  "type": "audio",
  "size": 42,
  "width": 42,
  "height": 42,
  "aspect_ratio_profile": "16x9",
  "duration": 42,
  "locale": "string",
  "locale_label": "string",
  "base_url": "https://url.example.com",
  "base_path": "string",
  "url": "https://url.example.com",
  "proxy_file_path": "string",
  "proxy_url": "https://url.example.com",
  "file_name": "string",
  "file_path": "string",
  "title_translations": [Translation],
  "origin_url": "https://url.example.com"
}

AdminFileUploadToken

Description

A signed AudiencePlayer upload capability for a small file attached to a resource.

Fields
Field Name Description
project_id - Int The Project id that owns the target resource.
resource_type - String The resource type the file will be attached to.
resource_id - Int The id of the resource the file will be attached to.
file_type - String The secondary file type being uploaded, such as image, icon, poster, document, subtitle, video, or audio.
token - String Encrypted upload capability payload embedded in upload_url. Clients normally do not need to inspect it.
token_type - String The upload capability type. AUD_PSU means AudiencePlayer signed upload URL for small resource files; AWS_PSU and JS_PSU are provider upload contracts for large Assets.
upload_url - String Browser upload page URL. Present or open this when user-driven upload is needed.
post_url - String Direct multipart upload endpoint. HTTP clients with local file access should POST the file here using method and form_file_field.
method - String HTTP method for direct upload.
form_file_field - String Multipart file field name expected by post_url. Use this value exactly in the upload request.
expires_in - Int Token TTL in seconds. Upload before this expires.
compatibility_status - String Advisory CMS/template compatibility for this concrete target: CMS_MANAGED, API_ONLY, or UNKNOWN. API_ONLY still permits upload, but standard AudiencePlayer CMS/template apps may not expose or use the file.
Example
{
  "project_id": 42,
  "resource_type": "string",
  "resource_id": 42,
  "file_type": "string",
  "token": "string",
  "token_type": "string",
  "upload_url": "https://url.example.com",
  "post_url": "https://url.example.com",
  "method": "string",
  "form_file_field": "string",
  "expires_in": 86400,
  "compatibility_status": "string"
}

AdminLanguageTag

Description

A translatable LanguageTag managed for a Project.

Fields
Field Name Description
key - String The LanguageTag key.
value - String The LanguageTag value in the active locale.
format - MetaFormatEnum The rendering format to use for the LanguageTag value.
id - Int! The id of the LanguageTag.
project_id - Int! The Project id that owns the LanguageTag.
platform_context - String The platform context the LanguageTag belongs to.
value_translations - [Translation] The translated values for this LanguageTag.
Arguments
output - MetaOutputTypeEnum

The output format to use for the translated LanguageTag values.

Example
{
  "key": "string",
  "value": "string",
  "format": "date",
  "id": 42,
  "project_id": 42,
  "platform_context": "string",
  "value_translations": [Translation]
}

AdminLanguageTagsListedWithPagination

Description

A paginated list of admin LanguageTags.

Fields
Field Name Description
items - [AdminLanguageTag] The LanguageTags in this page.
pagination - Pagination Pagination metadata for the LanguageTag list.
Example
{
  "items": [AdminLanguageTag],
  "pagination": Pagination
}

AdminMailTemplate

Description

An administrative MailTemplate representation with localized content and attached Files.

Fields
Field Name Description
id - Int The id of the MailTemplate.
project_id - Int The Project id that owns the MailTemplate.
name - String The MailTemplate's internal name.
subject - String The MailTemplate's subject in the active locale.
content - String The MailTemplate's content in the active locale.
Arguments
output - MetaOutputTypeEnum

The output format for the MailTemplate content.

subject_translations - [Translation] The translated subject values for the MailTemplate.
content_translations - [Translation] The translated content values for the MailTemplate.
Arguments
output - MetaOutputTypeEnum

The output format for translated MailTemplate content.

icons - [File] The icon Files attached to the MailTemplate.
images - [File] The image Files attached to the MailTemplate.
posters - [File] The poster Files attached to the MailTemplate.
videos - [File] The video Files attached to the MailTemplate.
files - [File] The Files attached to the MailTemplate.
Arguments
type - FileTypeEnum

The File type to filter by.

status - Int The MailTemplate's publication status.
created_at - String The MailTemplate's creation date in UTC.
updated_at - String The MailTemplate's last modification date in UTC.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "subject": "string",
  "content": "string",
  "subject_translations": [Translation],
  "content_translations": [Translation],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "files": [File],
  "status": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

AdminMailTemplatesListedWithPagination

Description

A paginated list of MailTemplates.

Fields
Field Name Description
items - [AdminMailTemplate] The MailTemplates in the current page.
pagination - Pagination The pagination metadata for the MailTemplate list.
Example
{
  "items": [AdminMailTemplate],
  "pagination": Pagination
}

AdminMenu

Description

An administrative Menu representation for a presentation resource that configures frontend-app navigation with ordered MenuComponents and visibility settings.

Fields
Field Name Description
id - Int! The id of the Menu.
project_id - Int! The Project id that owns this Menu.
name - String The Menu's name.
platform_contexts - [String] The platform contexts the Menu is available on.
locale_regions - [LocaleRegion] The LocaleRegions this Menu belongs to.
geo_regions - [GeoRegion] The GeoRegions this Menu belongs to.
components - [AdminMenuComponent] The Menu's MenuComponents.
Arguments
output - MetaOutputTypeEnum

The output format to render each MenuComponent's title/content in (html, stripped_html, markdown).

sort_by - [SortByInput]

Sort and order by field(s).

visibility - ResourceVisibilityEnum The Menu's visibility.
subscriptions - [AdminSubscription] The Menu's related Subscriptions.
products - [AdminProduct] The Menu's related Products.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "platform_contexts": ["string"],
  "locale_regions": [LocaleRegion],
  "geo_regions": [GeoRegion],
  "components": [AdminMenuComponent],
  "visibility": "everyone",
  "subscriptions": [AdminSubscription],
  "products": [AdminProduct]
}

AdminMenuComponent

Description

An administrative MenuComponent representation for a presentation resource that configures one navigation control with localized content, links, ordering, and visibility settings.

Fields
Field Name Description
id - Int! The id of the MenuComponent.
parent_id - Int The id of the MenuComponent's parent MenuComponent.
menu_id - Int! The Menu id that owns this MenuComponent.
page_id - Int The id of the Page this MenuComponent links to.
page_full_url_slug - String The full url slug of the Page this MenuComponent links to.
type - MenuComponentTypeEnum The MenuComponent's type.
title - String The MenuComponent's title.
content - String The MenuComponent's content.
Arguments
output - MetaOutputTypeEnum

The output format to render the content in (html, stripped_html, markdown).

url - String The MenuComponent's url.
icons - [File] The MenuComponent's icon Files.
images - [File] The MenuComponent's image Files.
posters - [File] The MenuComponent's poster Files.
videos - [File] The MenuComponent's video Files.
files - [File] The MenuComponent's Files.
Arguments
type - FileTypeEnum

Filter by the File's type (icon, image, poster).

visibility - ResourceVisibilityEnum The MenuComponent's visibility.
title_translations - [Translation] The MenuComponent's title, per locale.
content_translations - [Translation] The MenuComponent's content, per locale.
Arguments
output - MetaOutputTypeEnum

The output format to render the content in (html, stripped_html, markdown).

page - AdminPage The Page this MenuComponent links to.
subscriptions - [AdminSubscription] The MenuComponent's related Subscriptions.
products - [AdminProduct] The MenuComponent's related Products.
Example
{
  "id": 42,
  "parent_id": 42,
  "menu_id": 42,
  "page_id": 42,
  "page_full_url_slug": "url-slug-string",
  "type": "button_url_link",
  "title": "string",
  "content": "string",
  "url": "https://url.example.com",
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "files": [File],
  "visibility": "everyone",
  "title_translations": [Translation],
  "content_translations": [Translation],
  "page": AdminPage,
  "subscriptions": [AdminSubscription],
  "products": [AdminProduct]
}

AdminMenuComponentsListedWithPagination

Description

A paginated list of MenuComponents.

Fields
Field Name Description
items - [AdminMenuComponent] The page of MenuComponents.
pagination - Pagination Pagination info for this list.
Example
{
  "items": [AdminMenuComponent],
  "pagination": Pagination
}

AdminMenusListedWithPagination

Description

A paginated list of Menus.

Fields
Field Name Description
items - [AdminMenu] The page of Menus.
pagination - Pagination Pagination info for this list.
Example
{
  "items": [AdminMenu],
  "pagination": Pagination
}

AdminMetric

Description

An administrative Metric representation containing the conditions, resources, eligible Users, and MetricActions needed to inspect or manage an eligibility rule.

Fields
Field Name Description
id - Int! The id of the Metric.
project_id - Int! The Project id that owns this Metric.
name - String The Metric's name.
description - String The Metric's description.
time_window - Int The Metric's time window (hours), leading up to the moment of evaluation.
type - MetricTypeEnum The Metric's type.
published_from - String The UTC date/time from which the Metric may be evaluated.
published_until - String The UTC date/time until which the Metric may be evaluated.
created_at - String The creation date (UTC) of the Metric.
updated_at - String The last modification date (UTC) of the Metric.
status - MetricStatusEnum The Metric's publication status.
conditions - [AdminMetricCondition] The MetricConditions for this Metric.
articles - [AdminArticle] The Articles that scope this Metric.
categories - [AdminCategory] The Categories that scope this Metric.
products - [AdminProduct] The Products that scope this Metric.
subscriptions - [AdminSubscription] The Subscriptions that scope this Metric.
eligible_users - [AdminUser] The Users eligible for this Metric.
metric_actions - [AdminMetricAction] The MetricActions triggered by this Metric.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "description": "string",
  "time_window": 42,
  "type": "article",
  "published_from": "string",
  "published_until": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "status": "string",
  "conditions": [AdminMetricCondition],
  "articles": [AdminArticle],
  "categories": [AdminCategory],
  "products": [AdminProduct],
  "subscriptions": [AdminSubscription],
  "eligible_users": [AdminUser],
  "metric_actions": [AdminMetricAction]
}

AdminMetricAction

Description

An administrative MetricAction representation containing the fulfillment configuration, linked Metrics, Products, and eligible Users used when a Metric matches.

Fields
Field Name Description
id - Int! The id of the MetricAction.
project_id - Int! The Project id that owns this MetricAction.
name - String The MetricAction's name.
title - String The MetricAction's title.
content - String The MetricAction's content.
icons - [File] The MetricAction's icon Files.
images - [File] The MetricAction's image Files.
files - [File] The MetricAction's Files.
Arguments
type - FileTypeEnum

Filter by the File's type (icon, image, poster).

title_translations - [Translation] The MetricAction's title translations.
content_translations - [Translation] The MetricAction's content translations.
Arguments
output - MetaOutputTypeEnum

Output format (html, stripped_html, markdown).

type - MetricActionTypeEnum The MetricAction's type.
status - MetricActionStatusEnum The MetricAction's publication status.
webhook_url - String The MetricAction's webhook URL.
user_subscription_installment_num - Int The number of User subscription installments this MetricAction entitles.
user_subscription_installment_time_unit - String The time unit for the User subscription installments this MetricAction entitles.
created_at - String The creation date (UTC) of the MetricAction.
updated_at - String The last modification date (UTC) of the MetricAction.
products - [AdminProductListedAsRelation] The Products this MetricAction entitles when fulfilled.
eligible_users - [AdminUser] The Users eligible for this MetricAction.
metrics - [AdminMetric] The Metrics that may trigger this MetricAction.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "title": "string",
  "content": "string",
  "icons": [File],
  "images": [File],
  "files": [File],
  "title_translations": [Translation],
  "content_translations": [Translation],
  "type": "user_entitlement",
  "status": "string",
  "webhook_url": "https://url.example.com",
  "user_subscription_installment_num": 42,
  "user_subscription_installment_time_unit": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "products": [AdminProductListedAsRelation],
  "eligible_users": [AdminUser],
  "metrics": [AdminMetric]
}

AdminMetricActionsListedWithPagination

Description

Administrative MetricActions with pagination.

Fields
Field Name Description
items - [AdminMetricAction] The MetricActions on this page.
pagination - Pagination Pagination metadata for the MetricAction list.
Example
{
  "items": [AdminMetricAction],
  "pagination": Pagination
}

AdminMetricCondition

Description

An administrative MetricCondition representation used by a Metric to determine whether a User matches.

Fields
Field Name Description
id - Int! The id of the MetricCondition.
metric_id - Int The Metric id that owns this MetricCondition.
type - MetricConditionTypeEnum The MetricCondition's type, the resource property it evaluates.
logic_operator - LogicOperatorEnum The MetricCondition's logic operator, used to compare its "type" against "value".
value - String The MetricCondition's comparison value.
created_at - String The creation date (UTC) of the MetricCondition.
updated_at - String The last modification date (UTC) of the MetricCondition.
Example
{
  "id": 42,
  "metric_id": 42,
  "type": "appa",
  "logic_operator": "equals",
  "value": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

AdminMetricsListedWithPagination

Description

Administrative Metrics with pagination.

Fields
Field Name Description
items - [AdminMetric] The Metrics on this page.
pagination - Pagination Pagination metadata for the Metric list.
Example
{
  "items": [AdminMetric],
  "pagination": Pagination
}

AdminNotification

Description

An administrative Notification representation with delivery, content, targeting, and publication settings.

Fields
Field Name Description
id - Int! The id of the Notification.
project_id - Int! The Project id that owns the Notification.
parent_id - Int The id of the parent Notification.
name - String The Notification's internal name.
title - String The Notification's localized title.
content - String The Notification's localized content.
url - String The URL or route triggered when the Notification is tapped.
delivery_type - NotificationDeliveryTypeEnum The Notification's delivery audience strategy.
type - NotificationTypeEnum The Notification's lifecycle and behavior type.
notification_channel_contexts - [String] The delivery channel contexts used by this Notification.
icons - [File] Icon Files attached to this Notification.
images - [File] Image Files attached to this Notification.
posters - [File] Poster Files attached to this Notification.
videos - [File] Video Files attached to this Notification.
files - [File] Files attached to this Notification.
Arguments
type - FileTypeEnum

Filter attached Files by File type.

children - [AdminNotification] Child Notifications of this Notification.
title_translations - [Translation] The Notification's title translations.
content_translations - [Translation] The Notification's content translations.
Arguments
output - MetaOutputTypeEnum

The output format for translated content.

articles - [AdminArticle] Articles linked to this Notification.
Arguments
type - ArticleTypeEnum

Filter linked Articles by Article type.

sort_by - [SortByInput]

Sort and order by field(s).

categories - [AdminCategory] Categories linked to this Notification.
Arguments
type - CategoryTypeEnum

Filter linked Categories by Category type.

sort_by - [SortByInput]

Sort and order by field(s).

parent_id - Int

Filter linked Categories by parent Category id.

notification_topics - [AdminNotificationTopic] NotificationTopics under which this Notification is sent.
Arguments
type - NotificationTopicTypeEnum

Filter linked NotificationTopics by NotificationTopic type.

sort_by - [SortByInput]

Sort and order by field(s).

frequency - Float The Notification's recurring delivery frequency per time unit.
time_unit - SubscriptionTimeUnitEnum The Notification's recurring delivery time unit.
status - Int The Notification's publication status.
schedule_at - String The UTC datetime when the Notification is scheduled for delivery.
delivered_at - String The UTC datetime when the Notification was delivered.
created_at - String The UTC datetime when the Notification was created.
updated_at - String The UTC datetime when the Notification was last updated.
Example
{
  "id": 42,
  "project_id": 42,
  "parent_id": 42,
  "name": "string",
  "title": "string",
  "content": "string",
  "url": "https://url.example.com",
  "delivery_type": "generic_users_on_topic",
  "type": "single",
  "notification_channel_contexts": [
    "string"
  ],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "files": [File],
  "children": [AdminNotification],
  "title_translations": [Translation],
  "content_translations": [Translation],
  "articles": [AdminArticle],
  "categories": [AdminCategory],
  "notification_topics": [AdminNotificationTopic],
  "frequency": 1,
  "time_unit": "day",
  "status": "string",
  "schedule_at": "2000-12-31T12:34:56.000Z",
  "delivered_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

AdminNotificationTopic

Description

An administrative NotificationTopic representation that Users may subscribe to for targeted delivery.

Fields
Field Name Description
id - Int! The id of the NotificationTopic.
remote_notification_topic_id - String The remote id of the NotificationTopic used by push-notification providers.
project_id - Int! The Project id that owns the NotificationTopic.
name - String The NotificationTopic's internal name.
title - String The NotificationTopic's localized title.
description - String The NotificationTopic's localized description.
title_translations - [Translation] The NotificationTopic's title translations.
description_translations - [Translation] The NotificationTopic's description translations.
Arguments
output - MetaOutputTypeEnum

The output format for translated descriptions.

notifications - [AdminNotification] Notifications assigned to this NotificationTopic.
Arguments
type - NotificationTypeEnum

Filter linked Notifications by Notification type.

sort_by - [SortByInput]

Sort and order by field(s).

type - NotificationTopicTypeEnum The NotificationTopic's content type.
status - Int The NotificationTopic's publication status.
created_at - String The UTC datetime when the NotificationTopic was created.
updated_at - String The UTC datetime when the NotificationTopic was last updated.
Example
{
  "id": 42,
  "remote_notification_topic_id": "string",
  "project_id": 42,
  "name": "string",
  "title": "string",
  "description": "string",
  "title_translations": [Translation],
  "description_translations": [Translation],
  "notifications": [AdminNotification],
  "type": "general",
  "status": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

AdminNotificationTopicsListedWithPagination

Description

Administrative NotificationTopics with pagination.

Fields
Field Name Description
items - [AdminNotificationTopic] The NotificationTopics on this page.
pagination - Pagination Pagination metadata for the NotificationTopic result set.
Example
{
  "items": [AdminNotificationTopic],
  "pagination": Pagination
}

AdminNotificationsListedWithPagination

Description

Administrative Notifications with pagination.

Fields
Field Name Description
items - [AdminNotification] The Notifications on this page.
pagination - Pagination Pagination metadata for the Notification result set.
Example
{
  "items": [AdminNotification],
  "pagination": Pagination
}

AdminOauthProvider

Description

An administrative OAuth2 provider representation with sign-in, account-mapping, and callback configuration.

Fields
Field Name Description
id - Int! The id of the OAuth2 provider.
project_id - Int! The Project id that owns the OAuth2 provider.
call_to_action_tag - String The OAuth2 provider's call-to-action label.
name - String The OAuth2 provider's internal name.
call_to_action_tag_translations - [Translation] The OAuth2 provider's call-to-action label translations.
is_auto_create_user - Boolean Whether to automatically create a local User account when the remote OAuth2 User e-mail address does not yet exist locally.
allowed_origin_domains - [String] The allowed domain names or URLs from which an OAuth2 authentication request may be initiated.
client_id - String The OAuth2 provider's remote client id.
client_secret - String The OAuth2 provider's remote client secret.
redirect_url - String The OAuth2 provider's redirect URL, also called redirect_uri in RFC 6749.
status - OauthProviderStatusEnum The OAuth2 provider's publication status.
type - OauthProviderTypeEnum The OAuth2 provider's platform type.
scopes - [String] The OAuth2 provider's permission scopes.
scope_separator - String The separator used when sending multiple scopes to the remote OAuth2 provider.
auth_url - String The remote OAuth2 provider's authorization URL.
token_url - String The remote OAuth2 provider's token URL.
user_info_url - String The remote OAuth2 provider's user-info URL.
email_info_url - String The remote OAuth2 provider's optional e-mail-info URL.
user_map - String The JSON mapping from remote OAuth2 user-info fields to local User fields.
custom_data - String The JSON custom data used for provider-specific request options or headers.
created_at - String The OAuth2 provider's creation date in UTC.
updated_at - String The OAuth2 provider's last modification date in UTC.
files - [File] The OAuth2 provider's Files.
Arguments
type - FileTypeEnum

The File type to filter by.

icons - [File] The OAuth2 provider's icon Files.
Example
{
  "id": 42,
  "project_id": 42,
  "call_to_action_tag": "string",
  "name": "string",
  "call_to_action_tag_translations": [Translation],
  "is_auto_create_user": true,
  "allowed_origin_domains": ["string"],
  "client_id": "string",
  "client_secret": "string",
  "redirect_url": "https://url.example.com",
  "status": "string",
  "type": "google",
  "scopes": ["string"],
  "scope_separator": "string",
  "auth_url": "https://url.example.com",
  "token_url": "https://url.example.com",
  "user_info_url": "https://url.example.com",
  "email_info_url": "foo@example.com",
  "user_map": "string",
  "custom_data": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "files": [File],
  "icons": [File]
}

AdminOauthProvidersListedWithPagination

Description

A paginated list of administrated OAuth2 providers.

Fields
Field Name Description
items - [AdminOauthProvider] The administrated OAuth2 providers on this page.
pagination - Pagination The pagination metadata for the OAuth2 provider list.
Example
{
  "items": [AdminOauthProvider],
  "pagination": Pagination
}

AdminPage

Description

An administrative Page representation for a presentation resource, including routing, layout, localized content, and visibility settings.

Fields
Field Name Description
id - Int! The id of the Page.
project_id - Int! The Project id that owns this Page.
category_id - Int The id of the Category this Page is dedicated to (e.g. a category landing page).
parent_id - Int The id of the Page's parent Page.
name - String The Page's name.
url_slug - String The Page's url slug.
Arguments
is_force_lowercase - Boolean

Whether to force the value to lowercase.

full_url_slug - String The Page's full url slug.
Arguments
is_force_lowercase - Boolean

Whether to force the value to lowercase.

canonical_url - String The Page's canonical url.
title - String The Page's title.
type - PageTypeEnum The Page's type.
is_in_sitemap - Boolean Whether the Page is listed in the general sitemap.
platform_contexts - [String] The platform contexts the Page is available on.
locale_regions - [LocaleRegion] The LocaleRegions this Page belongs to.
geo_regions - [GeoRegion] The GeoRegions this Page belongs to.
metas - [AdminPageMeta] The Page's metadata properties.
Arguments
output - MetaOutputTypeEnum

The output format to render each metadata property's value in (html, stripped_html, markdown).

components - [AdminPageComponent] The Page's PageComponents.
Arguments
output - MetaOutputTypeEnum

The output format to render each PageComponent's title/content in (html, stripped_html, markdown).

sort_by - [SortByInput]

Sort and order by field(s).

icons - [File] The Page's icon Files.
images - [File] The Page's image Files.
posters - [File] The Page's poster Files.
videos - [File] The Page's video Files.
documents - [File] The Page's document Files.
files - [File] The Page's Files.
Arguments
type - FileTypeEnum

Filter by the File's type (icon, image, poster).

visibility - ResourceVisibilityEnum The Page's visibility.
status - Int The Page's status.
url_slug_translations - [Translation] The Page's url_slug, per locale.
full_url_slug_translations - [Translation] The Page's full_url_slug, per locale.
canonical_url_translations - [Translation] The Page's canonical_url, per locale.
title_translations - [Translation] The Page's title, per locale.
category - AdminCategory The Category this Page is dedicated to (e.g. a category landing page).
subscriptions - [AdminSubscription] The Page's related Subscriptions.
products - [AdminProduct] The Page's related Products.
Example
{
  "id": 42,
  "project_id": 42,
  "category_id": 42,
  "parent_id": 42,
  "name": "string",
  "url_slug": "url-slug-string",
  "full_url_slug": "url-slug-string",
  "canonical_url": "https://url.example.com",
  "title": "string",
  "type": "account_delete",
  "is_in_sitemap": false,
  "platform_contexts": ["string"],
  "locale_regions": [LocaleRegion],
  "geo_regions": [GeoRegion],
  "metas": [AdminPageMeta],
  "components": [AdminPageComponent],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "documents": [File],
  "files": [File],
  "visibility": "everyone",
  "status": "string",
  "url_slug_translations": ["url-slug-string"],
  "full_url_slug_translations": ["url-slug-string"],
  "canonical_url_translations": ["https://url.example.com"],
  "title_translations": [Translation],
  "category": AdminCategory,
  "subscriptions": [AdminSubscription],
  "products": [AdminProduct]
}

AdminPageComponent

Description

An administrative PageComponent representation for a presentation resource with a typed layout role, localized content, and visibility settings.

Fields
Field Name Description
id - Int! The id of the PageComponent.
page_id - Int! The Page id that owns this PageComponent.
parent_id - Int The id of the PageComponent's parent PageComponent.
category_id - Int The id of the Category this PageComponent is dedicated to. Deprecated, use resource_categories instead. Deprecated in favour of resource_categories
title - String The PageComponent's title.
content - String The PageComponent's content.
url - String The PageComponent's url.
value - String The PageComponent's value.
style_type - String The PageComponent's style type.
display_type - String The PageComponent's display type.
type - PageComponentTypeEnum The PageComponent's type.
elements - [AdminPageComponentElement] The PageComponent's PageComponentElements.
Arguments
output - MetaOutputTypeEnum

The output format to render each PageComponentElement's title/content in (html, stripped_html, markdown).

sort_by - [SortByInput]

Sort and order by field(s).

icons - [File] The PageComponent's icon Files.
images - [File] The PageComponent's image Files.
posters - [File] The PageComponent's poster Files.
videos - [File] The PageComponent's video Files.
documents - [File] The PageComponent's document Files.
files - [File] The PageComponent's Files.
Arguments
type - FileTypeEnum

Filter by the File's type (icon, image, poster).

resource_articles - [ArticleListedAsResource] The Articles this PageComponent references.
resource_categories - [CategoryListedAsResource] The Categories this PageComponent references.
resource_pages - [PageListedAsResource] The Pages this PageComponent references.
resource_products - [ProductListedAsResource] The Products this PageComponent references.
resource_subscriptions - [SubscriptionListedAsResource] The Subscriptions this PageComponent references.
visibility - ResourceVisibilityEnum The PageComponent's visibility.
title_translations - [Translation] The PageComponent's title, per locale.
content_translations - [Translation] The PageComponent's content, per locale.
Arguments
output - MetaOutputTypeEnum

The output format to render the content in (html, stripped_html, markdown).

category - AdminCategory The Category this PageComponent is dedicated to (deprecated, see resource_categories).
subscriptions - [AdminSubscription] The PageComponent's related Subscriptions.
products - [AdminProduct] The PageComponent's related Products.
Example
{
  "id": 42,
  "page_id": 42,
  "parent_id": 42,
  "category_id": 42,
  "title": "string",
  "content": "string",
  "url": "https://url.example.com",
  "value": "string",
  "style_type": "string",
  "display_type": "string",
  "type": "account_create",
  "elements": [AdminPageComponentElement],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "documents": [File],
  "files": [File],
  "resource_articles": [ArticleListedAsResource],
  "resource_categories": [CategoryListedAsResource],
  "resource_pages": [PageListedAsResource],
  "resource_products": [ProductListedAsResource],
  "resource_subscriptions": [
    SubscriptionListedAsResource
  ],
  "visibility": "everyone",
  "title_translations": [Translation],
  "content_translations": [Translation],
  "category": AdminCategory,
  "subscriptions": [AdminSubscription],
  "products": [AdminProduct]
}

AdminPageComponentElement

Description

An administrative PageComponentElement representation for a presentation resource with localized content, ordering, and visibility settings.

Fields
Field Name Description
id - Int! The id of the PageComponentElement.
page_component_id - Int! The PageComponent id that owns this PageComponentElement.
parent_id - Int The id of the PageComponentElement's parent PageComponentElement.
type - String The PageComponentElement's type.
title - String The PageComponentElement's title.
content - String The PageComponentElement's content.
label - String The PageComponentElement's label.
url - String The PageComponentElement's url.
value - String The PageComponentElement's value.
toggle - Boolean The PageComponentElement's toggle value.
icons - [File] The PageComponentElement's icon Files.
images - [File] The PageComponentElement's image Files.
posters - [File] The PageComponentElement's poster Files.
videos - [File] The PageComponentElement's video Files.
documents - [File] The PageComponentElement's document Files.
files - [File] The PageComponentElement's Files.
Arguments
type - FileTypeEnum

Filter by the File's type (icon, image, poster).

resource_articles - [ArticleListedAsResource] The Articles this PageComponentElement references.
resource_categories - [CategoryListedAsResource] The Categories this PageComponentElement references.
resource_pages - [PageListedAsResource] The Pages this PageComponentElement references.
resource_products - [ProductListedAsResource] The Products this PageComponentElement references.
resource_subscriptions - [SubscriptionListedAsResource] The Subscriptions this PageComponentElement references.
visibility - ResourceVisibilityEnum The PageComponentElement's visibility.
title_translations - [Translation] The PageComponentElement's title, per locale.
content_translations - [Translation] The PageComponentElement's content, per locale.
Arguments
output - MetaOutputTypeEnum

The output format to render the content in (html, stripped_html, markdown).

label_translations - [Translation] The PageComponentElement's label, per locale.
subscriptions - [AdminSubscription] The PageComponentElement's related Subscriptions.
products - [AdminProduct] The PageComponentElement's related Products.
Example
{
  "id": 42,
  "page_component_id": 42,
  "parent_id": 42,
  "type": "string",
  "title": "string",
  "content": "string",
  "label": "string",
  "url": "https://url.example.com",
  "value": "string",
  "toggle": true,
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "documents": [File],
  "files": [File],
  "resource_articles": [ArticleListedAsResource],
  "resource_categories": [CategoryListedAsResource],
  "resource_pages": [PageListedAsResource],
  "resource_products": [ProductListedAsResource],
  "resource_subscriptions": [
    SubscriptionListedAsResource
  ],
  "visibility": "everyone",
  "title_translations": [Translation],
  "content_translations": [Translation],
  "label_translations": [Translation],
  "subscriptions": [AdminSubscription],
  "products": [AdminProduct]
}

AdminPageComponentElementsListedWithPagination

Description

A paginated list of PageComponentElements.

Fields
Field Name Description
items - [AdminPageComponentElement] The page of PageComponentElements.
pagination - Pagination Pagination info for this list.
Example
{
  "items": [AdminPageComponentElement],
  "pagination": Pagination
}

AdminPageComponentsListedWithPagination

Description

A paginated list of PageComponents.

Fields
Field Name Description
items - [AdminPageComponent] The page of PageComponents.
pagination - Pagination Pagination info for this list.
Example
{
  "items": [AdminPageComponent],
  "pagination": Pagination
}

AdminPageMeta

Description

A metadata property on a Page.

Fields
Field Name Description
id - Int The metadata property id
key - String The metadata property key
value - String The metadata property value
type - MetaTypeEnum The metadata property type
format - String The metadata property rendering format
page_id - Int The Page id that owns this metadata property.
translations - [PageMetaTranslation] The metadata property's per-locale translations.
Example
{
  "id": 42,
  "key": "string",
  "value": "string",
  "type": "array",
  "format": "string",
  "page_id": 42,
  "translations": [PageMetaTranslation]
}

AdminPagesListedWithPagination

Description

A paginated list of Pages.

Fields
Field Name Description
items - [AdminPage] The page of Pages.
pagination - Pagination Pagination info for this list.
Example
{
  "items": [AdminPage],
  "pagination": Pagination
}

AdminPaymentProvider

Description

An administrative PaymentProvider representation configured for purchases and recurring payments.

Fields
Field Name Description
id - Int! The id of the PaymentProvider.
project_id - Int! The Project id that owns the PaymentProvider.
name - String The PaymentProvider's name.
description - String The PaymentProvider's description.
type - String The PaymentProvider's provider type.
status - PaymentProviderStatusEnum The PaymentProvider's status.
device_capability - Int The PaymentProvider's device payment capability flags.
order_description_template - String The PaymentProvider template for short one-off payment order descriptions.
recurring_order_description_template - String The PaymentProvider template for short recurring payment order descriptions.
collection_window_day_num - Int The number of days before a Subscription expiry when a recurring payment renewal order is issued.
amount_payment_method_change - Float The amount charged for changing a recurring payment method.
default_currency - String The three-letter default currency code used when no specific currency is configured.
default_currency_symbol - String The currency symbol related to the default currency.
status_message - String The PaymentProvider's status message.
connect_status - PaymentProviderConnectFlowStatusEnum The PaymentProvider's remote account connect-flow status.
connect_status_message - String The PaymentProvider's connect-flow status message.
remote_profile_status - PaymentProviderRemoteProfileStatusEnum The PaymentProvider's selected remote profile status.
remote_profile_status_message - String The PaymentProvider's selected remote profile status message.
is_configurable - Boolean Whether this PaymentProvider is configurable by a Moderator.
is_support_connect_flow - Boolean Whether this PaymentProvider supports a remote account connect flow.
remote_account - AdminPaymentProviderRemoteAccount The PaymentProvider's remotely connected account information.
remote_profile_id - String The configured remote account profile id.
remote_organisation_id - String The remote account organisation id.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "description": "string",
  "type": "string",
  "status": "string",
  "device_capability": 42,
  "order_description_template": "string",
  "recurring_order_description_template": "string",
  "collection_window_day_num": 42,
  "amount_payment_method_change": 987.65,
  "default_currency": "EUR",
  "default_currency_symbol": "EUR",
  "status_message": "string",
  "connect_status": "string",
  "connect_status_message": "string",
  "remote_profile_status": "string",
  "remote_profile_status_message": "string",
  "is_configurable": false,
  "is_support_connect_flow": true,
  "remote_account": AdminPaymentProviderRemoteAccount,
  "remote_profile_id": "string",
  "remote_organisation_id": "string"
}

AdminPaymentProviderConnectRequest

Description

A PaymentProvider remote account connect-request.

Fields
Field Name Description
project_id - Int! The Project id for the connect request.
state_parameter - String The state parameter used to validate the remote connect flow callback.
authorization_url - String The authorization URL used to initiate the remote connect flow with the PaymentProvider.
redirect_url - String The URL to return to after the remote connect flow completes.
Example
{
  "project_id": 42,
  "state_parameter": "string",
  "authorization_url": "https://url.example.com",
  "redirect_url": "https://url.example.com"
}

AdminPaymentProviderListedAsRelation

Description

An administrated PaymentProvider listed as a relation.

Fields
Field Name Description
id - Int! The id of the PaymentProvider.
project_id - Int! The Project id that owns the PaymentProvider.
name - String The PaymentProvider's name.
description - String The PaymentProvider's description.
type - String The PaymentProvider's provider type.
status - PaymentProviderStatusEnum The PaymentProvider's status.
device_capability - Int The PaymentProvider's device payment capability flags.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "description": "string",
  "type": "string",
  "status": "string",
  "device_capability": 42
}

AdminPaymentProviderRemoteAccount

Description

Information about a PaymentProvider remotely connected account.

Fields
Field Name Description
created_at - String The remotely connected account creation date in UTC.
id - String The id of the remotely connected account.
profiles - [AdminPaymentProviderRemoteAccountProfile] The remotely connected account's available profiles.
name - String The remotely connected account's name.
onboarding_status - String The remotely connected account's onboarding status.
onboarding_status_message - String The remotely connected account's onboarding status message.
can_receive_payments - Boolean Whether the remotely connected account can receive User payments.
can_receive_payments_message - String The status message for whether the remotely connected account can receive User payments.
can_receive_settlements - Boolean Whether the remotely connected account can receive settlements.
can_receive_settlements_message - String The status message for whether the remotely connected account can receive settlements.
Example
{
  "created_at": "2000-12-31T12:34:56.000Z",
  "id": "string",
  "profiles": [AdminPaymentProviderRemoteAccountProfile],
  "name": "string",
  "onboarding_status": "string",
  "onboarding_status_message": "string",
  "can_receive_payments": false,
  "can_receive_payments_message": "string",
  "can_receive_settlements": false,
  "can_receive_settlements_message": "string"
}

AdminPaymentProviderRemoteAccountProfile

Description

Information about a PaymentProvider remote account profile.

Fields
Field Name Description
remote_profile_id - String The id of the remote account profile.
remote_profile_name - String The remote account profile's name.
payment_methods - [String] The remote account profile's available payment methods.
Example
{
  "remote_profile_id": "string",
  "remote_profile_name": "string",
  "payment_methods": ["string"]
}

AdminPaymentProvidersListedWithPagination

Description

A paginated list of administrated PaymentProviders.

Fields
Field Name Description
items - [AdminPaymentProvider] The administrated PaymentProviders on this page.
pagination - Pagination The pagination metadata for the PaymentProvider list.
Example
{
  "items": [AdminPaymentProvider],
  "pagination": Pagination
}

AdminPaymentSyndicate

Description

An administrative PaymentSyndicate representation that owns PaymentSyndicateVouchers.

Fields
Field Name Description
id - Int! The id of the PaymentSyndicate.
project_id - Int! The Project id that owns the PaymentSyndicate.
name - String The PaymentSyndicate's name.
type - PaymentSyndicateTypeEnum The PaymentSyndicate's type.
created_at - String The PaymentSyndicate's creation date (UTC).
updated_at - String The PaymentSyndicate's last modification date (UTC).
vouchers - [AdminPaymentSyndicateVoucher] The PaymentSyndicateVouchers belonging to the PaymentSyndicate.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "type": "internal",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "vouchers": [AdminPaymentSyndicateVoucher]
}

AdminPaymentSyndicateVoucher

Description

An administrative PaymentSyndicateVoucher representation defining eligibility, validity, claims, and entitlement effects.

Fields
Field Name Description
id - Int! The id of the PaymentSyndicateVoucher.
project_id - Int! The Project id that owns the PaymentSyndicateVoucher.
description - String The PaymentSyndicateVoucher's description.
name - String The PaymentSyndicateVoucher's name.
payment_syndicate_id - Int The PaymentSyndicate id that owns the PaymentSyndicateVoucher.
subscription_id - Int The Subscription id this PaymentSyndicateVoucher is scoped to, when applicable.
description_translations - [Translation] The PaymentSyndicateVoucher's description, translated per locale.
currency - String The PaymentSyndicateVoucher's currency code (e.g. "EUR").
currency_symbol - String The PaymentSyndicateVoucher's currency symbol (e.g. "€").
amount - Float The PaymentSyndicateVoucher's price/discount amount, interpreted according to discount_type.
installment_num - Int The number of periodical subscription installments this PaymentSyndicateVoucher applies to, in units of time_unit.
max_claimed_num - Int The maximum number of times a Voucher Code belonging to this PaymentSyndicateVoucher can be claimed in total.
max_claimed_per_user_num - Int The maximum number of times a unique Voucher Code can be claimed by a unique User.
claimed_num - Int The total number of times Voucher Codes belonging to this PaymentSyndicateVoucher have been claimed.
is_allow_on_valid_subscription - Boolean Whether this PaymentSyndicateVoucher may be applied even when the User already has a valid Subscription.
user_subscription_status_action - String The UserSubscription status forced after this PaymentSyndicateVoucher is validated.
newsletter_list_id - String The id of the newsletter list a User is added to upon claiming this PaymentSyndicateVoucher.
time_unit - SubscriptionTimeUnitEnum The time unit in which installment_num is expressed.
discount_type - PaymentSyndicateVoucherDiscountTypeEnum How amount is applied to the resource price.
installment_type - PaymentSyndicateVoucherInstallmentTypeEnum The PaymentSyndicateVoucher's installment type.
type - PaymentSyndicateVoucherTypeEnum The resource type this PaymentSyndicateVoucher is applicable to.
issue_installments_until - String The fixed date (UTC) up until which installments are issued for this PaymentSyndicateVoucher.
installed_at - String The date (UTC) from which this PaymentSyndicateVoucher's Voucher Codes may be claimed.
expires_at - String The date (UTC) until which this PaymentSyndicateVoucher's Voucher Codes may be claimed.
created_at - String The PaymentSyndicateVoucher's creation date (UTC).
updated_at - String The PaymentSyndicateVoucher's last modification date (UTC).
syndicate - AdminPaymentSyndicate The PaymentSyndicate that owns the PaymentSyndicateVoucher.
batches - [AdminPaymentSyndicateVoucherCodeBatch] The Voucher Code batches belonging to the PaymentSyndicateVoucher.
scoped_products - [AdminProduct] The Products this PaymentSyndicateVoucher may be applied to. Empty means no restriction.
products - [AdminProductListedAsRelation] The Products this PaymentSyndicateVoucher issues to the User upon being claimed.
subscription - AdminSubscription The Subscription this PaymentSyndicateVoucher is scoped to, when applicable.
eligible_email_addresses - [String] The e-mail addresses (or address fragments) eligible to claim this PaymentSyndicateVoucher.
Example
{
  "id": 42,
  "project_id": 42,
  "description": "string",
  "name": "string",
  "payment_syndicate_id": 42,
  "subscription_id": 42,
  "description_translations": [Translation],
  "currency": "EUR",
  "currency_symbol": "EUR",
  "amount": 987.65,
  "installment_num": 42,
  "max_claimed_num": 42,
  "max_claimed_per_user_num": 42,
  "claimed_num": 42,
  "is_allow_on_valid_subscription": false,
  "user_subscription_status_action": "string",
  "newsletter_list_id": "string",
  "time_unit": "day",
  "discount_type": "percentage",
  "installment_type": "fixed_date",
  "type": "generic",
  "issue_installments_until": "string",
  "installed_at": "2000-12-31T12:34:56.000Z",
  "expires_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "syndicate": AdminPaymentSyndicate,
  "batches": [AdminPaymentSyndicateVoucherCodeBatch],
  "scoped_products": [AdminProduct],
  "products": [AdminProductListedAsRelation],
  "subscription": AdminSubscription,
  "eligible_email_addresses": ["foo@example.com"]
}

AdminPaymentSyndicateVoucherCode

Description

A PaymentSyndicateVoucher Code.

Fields
Field Name Description
id - Int! The id of the Voucher Code.
payment_syndicate_voucher_id - Int! The PaymentSyndicateVoucher id that owns the Voucher Code.
payment_syndicate_voucher_code_batch_id - Int! The Voucher Code batch id that owns the Voucher Code.
code - String The Voucher Code's value, as claimed by a User.
claimed_num - Int! The number of times the Voucher Code has been claimed.
claimed_at - String The Voucher Code's most recent claim date (UTC).
created_at - String The Voucher Code's creation date (UTC).
updated_at - String The Voucher Code's last modification date (UTC).
batch - AdminPaymentSyndicateVoucherCodeBatch The Voucher Code batch that owns the Voucher Code.
Example
{
  "id": 42,
  "payment_syndicate_voucher_id": 42,
  "payment_syndicate_voucher_code_batch_id": 42,
  "code": "string",
  "claimed_num": 42,
  "claimed_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "batch": AdminPaymentSyndicateVoucherCodeBatch
}

AdminPaymentSyndicateVoucherCodeBatch

Description

A batch of PaymentSyndicateVoucher Codes.

Fields
Field Name Description
id - Int! The id of the Voucher Code batch.
payment_syndicate_voucher_id - Int! The PaymentSyndicateVoucher id that owns the Voucher Code batch.
installment - Int The Voucher Code batch's installment number.
created_at - String The Voucher Code batch's creation date (UTC).
updated_at - String The Voucher Code batch's last modification date (UTC).
codes - AdminPaymentSyndicateVoucherCodesListedWithPagination The Voucher Codes belonging to the Voucher Code batch.
Arguments
limit - Int

The maximum number of Voucher Codes to return.

offset - Int

The number of Voucher Codes to skip.

code_num - Int The number of Voucher Codes in the Voucher Code batch.
claimed_num - Int The number of times Voucher Codes belonging to the batch have been claimed.
Example
{
  "id": 42,
  "payment_syndicate_voucher_id": 42,
  "installment": 42,
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "codes": AdminPaymentSyndicateVoucherCodesListedWithPagination,
  "code_num": 42,
  "claimed_num": 42
}

AdminPaymentSyndicateVoucherCodesListedWithPagination

Description

A paginated list of PaymentSyndicateVoucher Codes.

Fields
Field Name Description
items - [AdminPaymentSyndicateVoucherCode] The Voucher Codes.
pagination - Pagination The pagination details for this list.
Example
{
  "items": [AdminPaymentSyndicateVoucherCode],
  "pagination": Pagination
}

AdminPaymentSyndicateVouchersListedWithPagination

Description

A paginated list of PaymentSyndicateVouchers.

Fields
Field Name Description
items - [AdminPaymentSyndicateVoucher] The PaymentSyndicateVouchers.
pagination - Pagination The pagination details for this list.
Example
{
  "items": [AdminPaymentSyndicateVoucher],
  "pagination": Pagination
}

AdminPaymentSyndicatesListedWithPagination

Description

A paginated list of PaymentSyndicates.

Fields
Field Name Description
items - [AdminPaymentSyndicate] The PaymentSyndicates.
pagination - Pagination The pagination details for this list.
Example
{
  "items": [AdminPaymentSyndicate],
  "pagination": Pagination
}

AdminProduct

Description

An administrative Product representation with pricing, publication, and content-entitlement settings.

Fields
Field Name Description
id - Int! The id of the Product.
project_id - Int! The Project id that owns the Product.
remote_product_id - String The Product's remote id (e.g. used for in-app purchases), prefixed per the Project's configuration.
name - String The Product's name.
title - String The Product's title.
description - String The Product's description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

description_short - String The Product's short description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

call_to_action_tag - String The Product's call-to-action tag.
type - ProductTypeEnum The Product's type.
credit_type - UserPaymentCreditTypeEnum The type of credit this Product issues, when type is "credit" or "service_recurring_credit".
currency - String The Product's currency code (e.g. "EUR").
currency_symbol - String The Product's currency symbol (e.g. "€").
price - Float The Product's price.
credit_price - Float The Product's price expressed in credits, as an alternative to price.
credit_amount - Float The quantity of credits this Product issues.
amount_balance - Float The monetary account balance amount this Product issues, when type is "amount_balance".
purchase_num - Int The number of times this Product has been purchased, in the context this Product is being resolved in (e.g. as part of a UserSubscription).
max_purchase_num - Int The maximum number of times a User may purchase this Product.
expires_in - Int The number of hours after purchase until entitlement from this Product expires (a "rental" window).
expires_at - String The fixed date (UTC) until which entitlement from this Product expires.
created_at - String The Product's creation date (UTC).
updated_at - String The Product's last modification date (UTC).
icons - [File] The Product's icon Files.
images - [File] The Product's image Files.
posters - [File] The Product's poster Files.
videos - [File] The Product's video Files.
articles - [AdminArticle] The Articles this Product entitles the User to, when type is "article" or "free_article".
categories - [CategoryListedAsRelation] The Categories the Product belongs to.
Arguments
type - CategoryTypeEnum

The Category type to filter on.

sort_by - [SortByInput]

Sort and order by field(s).

parent_id - Int

The id of the parent Category to filter on.

period_renewal_day - Int The day of the period on which this Product renews (0 means relative to the day of acquisition, 1 means e.g. the first of the month).
is_sync_installments - Boolean Whether this recurring type Product is synchronised with its Subscription's own installments, rather than using its own time_unit/frequency.
frequency - Float How often, in units of time_unit, a recurring type Product not synced to its Subscription's installments is applied.
time_unit - SubscriptionTimeUnitEnum The time unit in which frequency is expressed, for a recurring type Product not synced to its Subscription's installments.
recurring_entitlement_expires_in_time_unit_midnight_offset - Int The offset in seconds since midnight (UTC) applied to recurring_entitlement_expires_in_time_unit_num.
recurring_entitlement_expires_in_time_unit_num - Int Alternative to recurring_entitlement_expires_in: the number of time units after which a recurring type Product's issued entitlement/credit expires.
recurring_entitlement_expires_in - Int The number of hours after which a recurring type Product's issued entitlement/credit expires.
title_translations - [Translation] The Product's title, translated per locale.
description_translations - [Translation] The Product's description, translated per locale.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

description_short_translations - [Translation] The Product's short description, translated per locale.
call_to_action_tag_translations - [Translation] The Product's call-to-action tag, translated per locale.
discoverability - ProductDiscoverabilityEnum How discoverable the Product is to Users.
status - ProductStatusEnum The Product's publication status.
published_from - String The date (UTC) from which the Product may be purchased.
published_until - String The date (UTC) until which the Product may be purchased.
newsletter_list_id - String The id of the newsletter list a User is added to upon purchasing this Product.
issuable_vouchers - [AdminPaymentSyndicateVoucher] The PaymentSyndicateVouchers this Product issues Voucher Codes from, when type is "voucher_code".
notification_topics - [AdminNotificationTopic] The NotificationTopics the User is subscribed to upon purchasing this Product.
files - [File] The Product's Files.
Arguments
type - FileTypeEnum

The File type to filter on.

Example
{
  "id": 42,
  "project_id": 42,
  "remote_product_id": "string",
  "name": "string",
  "title": "string",
  "description": "string",
  "description_short": "string",
  "call_to_action_tag": "string",
  "type": "article",
  "credit_type": "general",
  "currency": "EUR",
  "currency_symbol": "EUR",
  "price": 7.99,
  "credit_price": 1,
  "credit_amount": 1,
  "amount_balance": 123.45,
  "purchase_num": 42,
  "max_purchase_num": 1,
  "expires_in": 86400,
  "expires_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "articles": [AdminArticle],
  "categories": [CategoryListedAsRelation],
  "period_renewal_day": 42,
  "is_sync_installments": true,
  "frequency": 1,
  "time_unit": "day",
  "recurring_entitlement_expires_in_time_unit_midnight_offset": 86400,
  "recurring_entitlement_expires_in_time_unit_num": 86400,
  "recurring_entitlement_expires_in": 86400,
  "title_translations": [Translation],
  "description_translations": [Translation],
  "description_short_translations": [Translation],
  "call_to_action_tag_translations": [Translation],
  "discoverability": "hidden",
  "status": "string",
  "published_from": "string",
  "published_until": "string",
  "newsletter_list_id": "string",
  "issuable_vouchers": [AdminPaymentSyndicateVoucher],
  "notification_topics": [AdminNotificationTopic],
  "files": [File]
}

AdminProductListedAsRelation

Description

A Product, as a relation on another resource.

Fields
Field Name Description
id - Int! The id of the Product.
project_id - Int! The Project id that owns the Product.
remote_product_id - String The Product's remote id (e.g. used for in-app purchases), prefixed per the Project's configuration.
name - String The Product's name.
title - String The Product's title.
description - String The Product's description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

description_short - String The Product's short description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

call_to_action_tag - String The Product's call-to-action tag.
type - ProductTypeEnum The Product's type.
credit_type - UserPaymentCreditTypeEnum The type of credit this Product issues, when type is "credit" or "service_recurring_credit".
currency - String The Product's currency code (e.g. "EUR").
currency_symbol - String The Product's currency symbol (e.g. "€").
price - Float The Product's price.
credit_price - Float The Product's price expressed in credits, as an alternative to price.
credit_amount - Float The quantity of credits this Product issues.
amount_balance - Float The monetary account balance amount this Product issues, when type is "amount_balance".
purchase_num - Int The quantity of this Product in the context it is being resolved in.
max_purchase_num - Int The maximum number of times a User may purchase this Product.
expires_in - Int The number of hours after purchase until entitlement from this Product expires (a "rental" window).
expires_at - String The fixed date (UTC) until which entitlement from this Product expires.
created_at - String The Product's creation date (UTC).
updated_at - String The Product's last modification date (UTC).
icons - [File] The Product's icon Files.
images - [File] The Product's image Files.
posters - [File] The Product's poster Files.
videos - [File] The Product's video Files.
articles - [AdminArticle] The Articles this Product entitles the User to, when type is "article" or "free_article".
categories - [CategoryListedAsRelation] The Categories the Product belongs to.
Arguments
type - CategoryTypeEnum

The Category type to filter on.

sort_by - [SortByInput]

Sort and order by field(s).

parent_id - Int

The id of the parent Category to filter on.

period_renewal_day - Int The day of the period on which this Product renews (0 means relative to the day of acquisition, 1 means e.g. the first of the month).
is_sync_installments - Boolean Whether this recurring type Product is synchronised with its Subscription's own installments, rather than using its own time_unit/frequency.
frequency - Float How often, in units of time_unit, a recurring type Product not synced to its Subscription's installments is applied.
time_unit - SubscriptionTimeUnitEnum The time unit in which frequency is expressed, for a recurring type Product not synced to its Subscription's installments.
recurring_entitlement_expires_in_time_unit_midnight_offset - Int The offset in seconds since midnight (UTC) applied to recurring_entitlement_expires_in_time_unit_num.
recurring_entitlement_expires_in_time_unit_num - Int Alternative to recurring_entitlement_expires_in: the number of time units after which a recurring type Product's issued entitlement/credit expires.
recurring_entitlement_expires_in - Int The number of hours after which a recurring type Product's issued entitlement/credit expires.
title_translations - [Translation] The Product's title, translated per locale.
description_translations - [Translation] The Product's description, translated per locale.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

description_short_translations - [Translation] The Product's short description, translated per locale.
call_to_action_tag_translations - [Translation] The Product's call-to-action tag, translated per locale.
discoverability - ProductDiscoverabilityEnum How discoverable the Product is to Users.
status - ProductStatusEnum The Product's publication status.
published_from - String The date (UTC) from which the Product may be purchased.
published_until - String The date (UTC) until which the Product may be purchased.
newsletter_list_id - String The id of the newsletter list a User is added to upon purchasing this Product.
issuable_vouchers - [AdminPaymentSyndicateVoucher] The PaymentSyndicateVouchers this Product issues Voucher Codes from, when type is "voucher_code".
notification_topics - [AdminNotificationTopic] The NotificationTopics the User is subscribed to upon purchasing this Product.
files - [File] The Product's Files.
Arguments
type - FileTypeEnum

The File type to filter on.

product_price - Float A price override for this Product in the context it is being resolved in, replacing its own price.
Example
{
  "id": 42,
  "project_id": 42,
  "remote_product_id": "string",
  "name": "string",
  "title": "string",
  "description": "string",
  "description_short": "string",
  "call_to_action_tag": "string",
  "type": "article",
  "credit_type": "general",
  "currency": "EUR",
  "currency_symbol": "EUR",
  "price": 7.99,
  "credit_price": 1,
  "credit_amount": 1,
  "amount_balance": 123.45,
  "purchase_num": 42,
  "max_purchase_num": 1,
  "expires_in": 86400,
  "expires_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "articles": [AdminArticle],
  "categories": [CategoryListedAsRelation],
  "period_renewal_day": 42,
  "is_sync_installments": false,
  "frequency": 1,
  "time_unit": "day",
  "recurring_entitlement_expires_in_time_unit_midnight_offset": 86400,
  "recurring_entitlement_expires_in_time_unit_num": 86400,
  "recurring_entitlement_expires_in": 86400,
  "title_translations": [Translation],
  "description_translations": [Translation],
  "description_short_translations": [Translation],
  "call_to_action_tag_translations": [Translation],
  "discoverability": "hidden",
  "status": "string",
  "published_from": "string",
  "published_until": "string",
  "newsletter_list_id": "string",
  "issuable_vouchers": [AdminPaymentSyndicateVoucher],
  "notification_topics": [AdminNotificationTopic],
  "files": [File],
  "product_price": 7.99
}

AdminProductsListedWithPagination

Description

A paginated list of Products.

Fields
Field Name Description
items - [AdminProduct] The Products.
pagination - Pagination The pagination details for this list.
Example
{
  "items": [AdminProduct],
  "pagination": Pagination
}

AdminProject

Description

An admin Project

Fields
Field Name Description
id - Int! The id of the Project.
name - String The Project's name.
users - [User] The Users related to this Project.
managers - [User] The manager Users related to this Project.
status - Int The Project's lifecycle status.
status_label - String The Project's lifecycle status label.
Example
{
  "id": 42,
  "name": "string",
  "users": [User],
  "managers": [User],
  "status": "string",
  "status_label": "string"
}

AdminProjectConfig

Description

An admin ProjectConfig

Fields
Field Name Description
id - Int! The id of the ProjectConfig
project_id - Int The Project id that owns the ProjectConfig
key - String The ProjectConfig key
value - String The ProjectConfig value
Arguments
is_expose_origin_url_values - Boolean

Return origin URLs instead of CDN URLs for remote-file ProjectConfigs

default_value - String The ProjectConfig default value
label - String The ProjectConfig display label
type - String The ProjectConfig value type
is_read_only - Boolean Whether the ProjectConfig is read-only in context-based updates
is_auth_only - Boolean Whether the ProjectConfig value requires explicit password authentication to reveal
related_file_type - String The File type related to this ProjectConfig
created_at - String The ProjectConfig creation date in UTC
updated_at - String The ProjectConfig last modification date in UTC
Example
{
  "id": 42,
  "project_id": 42,
  "key": "string",
  "value": "string",
  "default_value": "string",
  "label": "string",
  "type": "string",
  "is_read_only": true,
  "is_auth_only": false,
  "related_file_type": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

AdminProjectConfigsListedWithPagination

Description

A paginated admin ProjectConfig list

Fields
Field Name Description
items - [AdminProjectConfig] The ProjectConfigs in the current page
pagination - Pagination The pagination metadata for the ProjectConfig list
Example
{
  "items": [AdminProjectConfig],
  "pagination": Pagination
}

AdminRemoteAssetFile

Description

A file present at the media provider's remote storage, not yet ingested as an Asset.

Fields
Field Name Description
file_id - String The remote file's identifier at the media provider.
file - String The remote file's full path and name, including extension.
file_name - String The remote file's full name, including extension.
file_extension - String The remote file's extension.
file_size - Float The remote file's size in bytes.
encoding_profile_name - AssetEncodingProfileNameEnum The encoding profile name assigned to the remote file.
file_md5 - String The MD5 hash of the remote file.
download_url - String The download URL for the remote file.
Arguments
is_restrict_to_current_ip_address - Boolean

Restrict URL access to the current IP address.

ttl - Int

URL expiry interval in seconds.

created_at - String The date-time (UTC) at which the file was created at the remote provider.
Example
{
  "file_id": "string",
  "file": "string",
  "file_name": "string",
  "file_extension": "string",
  "file_size": 987.65,
  "encoding_profile_name": "sd_540p_16x9",
  "file_md5": "string",
  "download_url": "https://url.example.com",
  "created_at": "2000-12-31T12:34:56.000Z"
}

AdminRemoteAssetFilesWithPagination

Description

Remote Asset files with pagination

Fields
Field Name Description
items - [AdminRemoteAssetFile] Remote Asset files in the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminRemoteAssetFile],
  "pagination": Pagination
}

AdminResourceMap

Description

A resource map

Fields
Field Name Description
asset - [AdminResourceTypeMap] Asset property map
article - [AdminResourceTypeMap] Article property map
article_meta - [AdminResourceTypeMap] Article meta property map
category - [AdminResourceTypeMap] Article property map
category_meta - [AdminResourceTypeMap] Category property map
mail_template - [AdminResourceTypeMap] Mail template property map
menu - [AdminResourceTypeMap] Menu property map
menu_component - [AdminResourceTypeMap] Menu component property map
metric - [AdminResourceTypeMap] Metric property map
metric_action - [AdminResourceTypeMap] Metric action property map
notification - [AdminResourceTypeMap] Notification template property map
notification_topic - [AdminResourceTypeMap] Notification topic template property map
oauth_provider - [AdminResourceTypeMap] OAuth2 Provider property map
page - [AdminResourceTypeMap] Page property map
page_meta - [AdminResourceTypeMap] Page meta property map
page_component - [AdminResourceTypeMap] Page component property map
page_component_element - [AdminResourceTypeMap] Page component element property map
payment_syndicate_voucher - [AdminResourceTypeMap] Payment syndicate voucher property map
product - [AdminResourceTypeMap] Product property map
subscription - [AdminResourceTypeMap] Subscription property map
user - [AdminResourceTypeMap] User property map
user_payment_account_order - [AdminResourceTypeMap] User payment account order property map
user_subscription - [AdminResourceTypeMap] User subscription property map
Example
{
  "asset": [AdminResourceTypeMap],
  "article": [AdminResourceTypeMap],
  "article_meta": [AdminResourceTypeMap],
  "category": [AdminResourceTypeMap],
  "category_meta": [AdminResourceTypeMap],
  "mail_template": [AdminResourceTypeMap],
  "menu": [AdminResourceTypeMap],
  "menu_component": [AdminResourceTypeMap],
  "metric": [AdminResourceTypeMap],
  "metric_action": [AdminResourceTypeMap],
  "notification": [AdminResourceTypeMap],
  "notification_topic": [AdminResourceTypeMap],
  "oauth_provider": [AdminResourceTypeMap],
  "page": [AdminResourceTypeMap],
  "page_meta": [AdminResourceTypeMap],
  "page_component": [AdminResourceTypeMap],
  "page_component_element": [AdminResourceTypeMap],
  "payment_syndicate_voucher": [AdminResourceTypeMap],
  "product": [AdminResourceTypeMap],
  "subscription": [AdminResourceTypeMap],
  "user": [AdminResourceTypeMap],
  "user_payment_account_order": [AdminResourceTypeMap],
  "user_subscription": [AdminResourceTypeMap]
}

AdminResourceTypeBlockMap

Description

A block map

Fields
Field Name Description
name - String Block name
label - String Block label
description - String Block description
Example
{
  "name": "string",
  "label": "string",
  "description": "string"
}

AdminResourceTypeMap

Description

A resource type map

Fields
Field Name Description
type - String Resource type
properties - [AdminResourceTypePropertyMap] Resource property map for given resource type
blocks - [AdminResourceTypeBlockMap] Available blocks to group given properties for display
Example
{
  "type": "string",
  "properties": [AdminResourceTypePropertyMap],
  "blocks": [AdminResourceTypeBlockMap]
}

AdminResourceTypePropertyMap

Description

A property map

Fields
Field Name Description
name - String Property name
format - String Property format
values - [String] Property list of values
label - String Property label
is_required - Boolean Property filling is required
is_disabled - Boolean Property input is disabled
max_length - Int Property max character length
block_name - String Block name indicating in which block the property must be grouped
Example
{
  "name": "string",
  "format": "string",
  "values": ["string"],
  "label": "string",
  "is_required": true,
  "is_disabled": false,
  "max_length": 42,
  "block_name": "string"
}

AdminSubscription

Description

An administrative Subscription representation with billing, availability, and content-entitlement settings.

Fields
Field Name Description
id - Int! The id of the Subscription.
project_id - Int! The Project id that owns the Subscription.
remote_subscription_id - String The Subscription's remote id (e.g. used for in-app purchases), prefixed per the Project's configuration.
name - String The Subscription's name.
title - String The Subscription's title.
description - String The Subscription's description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

description_short - String The Subscription's short description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

type - SubscriptionTypeEnum The Subscription's type.
price - Float The Subscription's initial price (on first payment).
price_per_installment - Float The Subscription's price per recurring periodic installment.
time_unit - SubscriptionTimeUnitEnum The time unit of the Subscription's recurring periodic installment.
time_unit_translation - String The translated label of time_unit.
frequency - Float How often, in units of time_unit, the Subscription's recurring periodic installment repeats.
currency - String The Subscription's currency code (e.g. "EUR").
currency_symbol - String The Subscription's currency symbol (e.g. "€").
initial_installment_num - Int The Subscription's initial number of installments.
initial_installment_time_unit - SubscriptionTimeUnitEnum The time unit of the Subscription's initial installment.
allow_suspend_after_installment_num - Int The number of periodic installments after which a UserSubscription is allowed to be suspended.
max_concurrent_vod_stream_num - Int The maximum number of concurrent VOD streams allowed for a UserSubscription.
newsletter_list_id - String The id of the newsletter list a User is added to upon purchasing this Subscription.
entitlement_scope - SubscriptionEntitlementScopeEnum Which Articles the Subscription entitles.
is_credit_issuing - Boolean Whether the Subscription periodically issues credits through one of its Products.
purchase_num - Int The quantity of the Subscription in the context it is being resolved in. Always 1.
max_purchase_num - Int The maximum quantity that may be purchased of this Subscription. Always 1.
articles - [ArticleListedAsRelation] The Articles individually selected (excluding descendant Categories) as part of the Subscription's entitlement_scope.
categories - [CategoryListedAsRelation] The Categories individually selected as part of the Subscription's entitlement_scope.
payment_providers - [AdminPaymentProviderListedAsRelation] The PaymentProviders through which this Subscription may be purchased. Empty means all PaymentProviders are allowed.
icons - [File] The Subscription's icon Files.
images - [File] The Subscription's image Files.
posters - [File] The Subscription's poster Files.
videos - [File] The Subscription's video Files.
created_at - String The Subscription's creation date (UTC).
updated_at - String The Subscription's last modification date (UTC).
user_subscription_status_action - String The UserSubscription status forced after purchasing this Subscription.
title_translations - [Translation] The Subscription's title, translated per locale.
description_translations - [Translation] The Subscription's description, translated per locale.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

description_short_translations - [Translation] The Subscription's short description, translated per locale.
discoverability - SubscriptionDiscoverabilityEnum How discoverable the Subscription is to Users.
status - SubscriptionStatusEnum The Subscription's publication status.
products - [AdminProductListedAsRelation] The Products included with a purchase of this Subscription.
entitleable_articles - [ArticleListedAsRelation] The complete list of Articles (including descendants of selected Categories) entitled through the Subscription.
files - [File] The Subscription's Files.
Arguments
type - FileTypeEnum

The File type to filter on.

Example
{
  "id": 42,
  "project_id": 42,
  "remote_subscription_id": "string",
  "name": "string",
  "title": "string",
  "description": "string",
  "description_short": "string",
  "type": "svod",
  "price": 7.99,
  "price_per_installment": 7.99,
  "time_unit": "day",
  "time_unit_translation": "string",
  "frequency": 1,
  "currency": "EUR",
  "currency_symbol": "EUR",
  "initial_installment_num": 42,
  "initial_installment_time_unit": "day",
  "allow_suspend_after_installment_num": 42,
  "max_concurrent_vod_stream_num": 42,
  "newsletter_list_id": "string",
  "entitlement_scope": "partial_exclusive",
  "is_credit_issuing": true,
  "purchase_num": 42,
  "max_purchase_num": 1,
  "articles": [ArticleListedAsRelation],
  "categories": [CategoryListedAsRelation],
  "payment_providers": [
    AdminPaymentProviderListedAsRelation
  ],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "user_subscription_status_action": "string",
  "title_translations": [Translation],
  "description_translations": [Translation],
  "description_short_translations": [Translation],
  "discoverability": "hidden",
  "status": "string",
  "products": [AdminProductListedAsRelation],
  "entitleable_articles": [ArticleListedAsRelation],
  "files": [File]
}

AdminSubscriptionsListedWithPagination

Description

A paginated list of Subscriptions.

Fields
Field Name Description
items - [AdminSubscription] The Subscriptions.
pagination - Pagination The pagination details for this list.
Example
{
  "items": [AdminSubscription],
  "pagination": Pagination
}

AdminTelemetryGeoRegionSessionDay

Description

GeoRegion viewing-session telemetry metrics

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "geo_region_session_day" for this telemetry).
geo_region_code - String Geo region code for given data set
geo_region_name - String Geo region name for given data set
time_watched - Int The total watch time in seconds for this GeoRegion
time_watched_fraction - Float The fraction of watch time for this GeoRegion
num_unique_users - Int The number of unique Users that contributed watch time for this GeoRegion
num_unique_user_articles - Int The number of unique UserArticles that contributed watch time for this GeoRegion
julian_day - Int The telemetry record Julian day number, equivalent to observed_at.
observed_at - String The telemetry record observation date-time (UTC), at day resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "geo_region_code": "nl",
  "geo_region_name": "string",
  "time_watched": 42,
  "time_watched_fraction": 987.65,
  "num_unique_users": 42,
  "num_unique_user_articles": 42,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryGeoRegionSessionDaysListedWithPagination

Description

GeoRegion viewing-session telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryGeoRegionSessionDay] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryGeoRegionSessionDay],
  "pagination": Pagination
}

AdminTelemetryPaymentSyndicateVoucherDay

Description

Daily telemetry on PaymentSyndicateVoucher claim orders.

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
payment_syndicate_voucher_id - Int The PaymentSyndicateVoucher id this telemetry entry is scoped to, when filtered.
purchase_origin - String The platform this telemetry entry's orders originated from.
tag - String The telemetry entry's tag.
total_count - Int The total number of UserPaymentAccountOrders that claimed a PaymentSyndicateVoucher Code on this day.
empty_count - Int The number of Users without a claimed PaymentSyndicateVoucher Code on this day.
aborted_count - Int The number of aborted PaymentSyndicateVoucher claim orders on this day.
charged_back_count - Int The number of charged-back PaymentSyndicateVoucher claim orders on this day.
open_count - Int The number of open PaymentSyndicateVoucher claim orders on this day.
paid_count - Int The number of paid PaymentSyndicateVoucher claim orders on this day.
refunded_count - Int The number of refunded PaymentSyndicateVoucher claim orders on this day.
julian_day - Int The telemetry entry's Julian day.
observed_at - String The telemetry entry's observation date-time (UTC).
Example
{
  "project_id": 42,
  "payment_syndicate_voucher_id": 42,
  "purchase_origin": "string",
  "tag": "string",
  "total_count": 42,
  "empty_count": 42,
  "aborted_count": 42,
  "charged_back_count": 42,
  "open_count": 42,
  "paid_count": 42,
  "refunded_count": 42,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryPaymentSyndicateVoucherDaysListedWithPagination

Description

A paginated list of daily PaymentSyndicateVoucher telemetry entries.

Fields
Field Name Description
items - [AdminTelemetryPaymentSyndicateVoucherDay] The daily telemetry entries.
pagination - Pagination The pagination details for this list.
Example
{
  "items": [AdminTelemetryPaymentSyndicateVoucherDay],
  "pagination": Pagination
}

AdminTelemetryPlatformSessionDay

Description

Platform viewing-session telemetry metrics

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "platform_session_day" for this telemetry).
telemetry_platform - String Telemetry platform for given data set
time_watched - Int The total watch time in seconds for this telemetry platform
time_watched_fraction - Float The fraction of watch time for this telemetry platform
num_unique_users - Int The number of unique Users that contributed watch time for this telemetry platform
num_unique_user_articles - Int The number of unique UserArticles that contributed watch time for this telemetry platform
julian_day - Int The telemetry record Julian day number, equivalent to observed_at.
observed_at - String The telemetry record observation date-time (UTC), at day resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "telemetry_platform": "string",
  "time_watched": 42,
  "time_watched_fraction": 123.45,
  "num_unique_users": 42,
  "num_unique_user_articles": 42,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryPlatformSessionDaysListedWithPagination

Description

Platform viewing-session telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryPlatformSessionDay] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryPlatformSessionDay],
  "pagination": Pagination
}

AdminTelemetryRealTimeData

Description

A real-time telemetry data set

Fields
Field Name Description
concurrent_stream_num - Int The number of concurrent streams
active_user_num - Int The number of active users
published_article_num - Int The number of published articles
Example
{
  "concurrent_stream_num": 42,
  "active_user_num": 42,
  "published_article_num": 42
}

AdminTelemetrySearchTermsListedWithPagination

Description

Search-term telemetry entries with pagination

Fields
Field Name Description
items - [StructureKeyValueIntegerPair] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [StructureKeyValueIntegerPair],
  "pagination": Pagination
}

AdminTelemetryUserActivityDay

Description

Daily User activity telemetry metrics

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "user_activity_day" for this telemetry).
product_count - Int Telemetry total active Users entitled through a Product
product_time_delta - Float Telemetry total view time (seconds) of active Users entitled through a Product
subscription_count - Int Telemetry total active Users entitled through a Subscription
subscription_time_delta - Float Telemetry total view time (seconds) of active Users entitled through a Subscription
authenticated_count - Int Telemetry total active Users with an account
authenticated_time_delta - Float Telemetry total view time (seconds) of active Users with an account
authenticated_4k_count - Int Telemetry total active 4K-Users with an account
authenticated_4k_time_delta - Float Telemetry total view time (seconds) of active 4K-Users with an account
non_authenticated_count - Int Telemetry total active Users without an account (anonymous)
non_authenticated_time_delta - Float Telemetry total view time (seconds) of active Users without an account (anonymous)
non_authenticated_4k_count - Int Telemetry total active 4K-Users without an account (anonymous)
non_authenticated_4k_time_delta - Float Telemetry total view time (seconds) of active 4K-Users without an account (anonymous)
julian_day - Int The telemetry record Julian day number, equivalent to observed_at.
observed_at - String The telemetry record observation date-time (UTC), at day resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "product_count": 42,
  "product_time_delta": 123.45,
  "subscription_count": 42,
  "subscription_time_delta": 123.45,
  "authenticated_count": 42,
  "authenticated_time_delta": 123.45,
  "authenticated_4k_count": 42,
  "authenticated_4k_time_delta": 123.45,
  "non_authenticated_count": 42,
  "non_authenticated_time_delta": 123.45,
  "non_authenticated_4k_count": 42,
  "non_authenticated_4k_time_delta": 987.65,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryUserActivityDaysListedWithPagination

Description

Daily User activity telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryUserActivityDay] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryUserActivityDay],
  "pagination": Pagination
}

AdminTelemetryUserActivityMonth

Description

Monthly User activity telemetry metrics

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "user_activity_day" for this telemetry).
product_count - Int Telemetry total active Users entitled through a Product
product_time_delta - Float Telemetry total view time (seconds) of active Users entitled through a Product
subscription_count - Int Telemetry total active Users entitled through a Subscription
subscription_time_delta - Float Telemetry total view time (seconds) of active Users entitled through a Subscription
authenticated_count - Int Telemetry total active Users with an account
authenticated_time_delta - Float Telemetry total view time (seconds) of active Users with an account
authenticated_4k_count - Int Telemetry total active 4K-Users with an account
authenticated_4k_time_delta - Float Telemetry total view time (seconds) of active 4K-Users with an account
non_authenticated_count - Int Telemetry total active Users without an account (anonymous)
non_authenticated_time_delta - Float Telemetry total view time (seconds) of active Users without an account (anonymous)
non_authenticated_4k_count - Int Telemetry total active 4K-Users without an account (anonymous)
non_authenticated_4k_time_delta - Float Telemetry total view time (seconds) of active 4K-Users without an account (anonymous)
julian_day - Int The telemetry record Julian day number, equivalent to observed_at.
observed_at - String The telemetry record observation date-time (UTC), at day resolution.
julian_month - Int Telemetry julian month
Example
{
  "project_id": 42,
  "tag": "string",
  "product_count": 42,
  "product_time_delta": 123.45,
  "subscription_count": 42,
  "subscription_time_delta": 987.65,
  "authenticated_count": 42,
  "authenticated_time_delta": 987.65,
  "authenticated_4k_count": 42,
  "authenticated_4k_time_delta": 123.45,
  "non_authenticated_count": 42,
  "non_authenticated_time_delta": 123.45,
  "non_authenticated_4k_count": 42,
  "non_authenticated_4k_time_delta": 987.65,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z",
  "julian_month": 42
}

AdminTelemetryUserActivityMonthsListedWithPagination

Description

Monthly User activity telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryUserActivityMonth] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryUserActivityMonth],
  "pagination": Pagination
}

AdminTelemetryUserArticleViewTimeSessionDay

Description

A daily telemetry aggregate of Article view-time consumption.

Fields
Field Name Description
project_id - Int The Project id this telemetry record belongs to.
tag - String The telemetry record's type tag.
article_id - Int The id of the Article this telemetry record aggregates.
asset_id - Int The id of the Asset this telemetry record aggregates.
article_name - String The Article's name (falls back to the Asset's name, then "Article #", if unset).
asset_name - String The Asset's name.
asset_duration - Float The Asset's duration (seconds).
external_asset_id - String The Asset's custom external id.
linked_type - ArticleAssetLinkedTypeEnum The Article's linked Asset type.
metadata_markers - [StructureKeyValueStringPair] The Project-defined metadata markers for this telemetry record.
time_watched - Int The aggregated time watched (seconds) for this day.
progress_avg - Float The average Asset completion progress for this day.
entitlement_origin - String The entitlement origin for this telemetry record.
entitlement_resource_id - Int The id of the resource ("Product" or "Subscription") that entitled this telemetry record.
num_completed - Int The number of completed views for this day.
num_progress_marker1_completed - Int The number of views that reached custom progress marker 1 for this day.
num_progress_marker2_completed - Int The number of views that reached custom progress marker 2 for this day.
num_progress_marker3_completed - Int The number of views that reached custom progress marker 3 for this day.
num_unique_users - Int The number of unique Users for this day.
num_favourites - Int The number of Users who marked the Article as favourite for this day.
rating_value_avg - Float The average rating value for this day.
rating_user_num - Float The number of Users who rated the Article for this day.
julian_day - Int The Julian day this telemetry record aggregates.
observed_at - String The telemetry record's observation date-time (UTC).
Example
{
  "project_id": 42,
  "tag": "string",
  "article_id": 42,
  "asset_id": 42,
  "article_name": "string",
  "asset_name": "string",
  "asset_duration": 987.65,
  "external_asset_id": "string",
  "linked_type": "film",
  "metadata_markers": [StructureKeyValueStringPair],
  "time_watched": 42,
  "progress_avg": 123.45,
  "entitlement_origin": "string",
  "entitlement_resource_id": 42,
  "num_completed": 42,
  "num_progress_marker1_completed": 42,
  "num_progress_marker2_completed": 42,
  "num_progress_marker3_completed": 42,
  "num_unique_users": 42,
  "num_favourites": 42,
  "rating_value_avg": 123.45,
  "rating_user_num": 987.65,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryUserArticleViewTimeSessionDaysListedWithPagination

Description

A paginated list of daily Article view-time telemetry aggregates.

Fields
Field Name Description
items - [AdminTelemetryUserArticleViewTimeSessionDay] The page of telemetry records.
pagination - Pagination Pagination info for this list.
Example
{
  "items": [AdminTelemetryUserArticleViewTimeSessionDay],
  "pagination": Pagination
}

AdminTelemetryUserPaymentOrderDay

Description

Daily UserPaymentAccountOrder telemetry metrics

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "user_payment_order_day" for this telemetry).
currency - String The currency (ISO 4217 code) of the amounts in this entry. Entries written before currencies were separated carry the default currency of the Project and may hold mixed-currency amounts.
amount_aborted_sum - Float The total amount of aborted payment orders, in the entry's currency.
amount_paid_sum - Float The total amount of paid payment orders, in the entry's currency.
amount_refunded_sum - Float The total amount of refunded payment orders, in the entry's currency.
amount_charged_back_sum - Float The total amount of charged-back payment orders, in the entry's currency.
order_aborted_count - Int Telemetry count of aborted payment orders
order_paid_count - Int Telemetry count of paid payment orders
order_refunded_count - Int Telemetry count of refunded payment orders
order_charged_back_count - Int Telemetry count of charged-back payment orders
order_total_count - Int Telemetry total payment order count
julian_day - Int The telemetry record Julian day number, equivalent to observed_at.
observed_at - String The telemetry record observation date-time (UTC), at day resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "currency": "EUR",
  "amount_aborted_sum": 987.65,
  "amount_paid_sum": 987.65,
  "amount_refunded_sum": 987.65,
  "amount_charged_back_sum": 123.45,
  "order_aborted_count": 42,
  "order_paid_count": 42,
  "order_refunded_count": 42,
  "order_charged_back_count": 42,
  "order_total_count": 42,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryUserPaymentOrderDaysListedWithPagination

Description

Daily UserPaymentAccountOrder telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryUserPaymentOrderDay] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryUserPaymentOrderDay],
  "pagination": Pagination
}

AdminTelemetryUserProductDay

Description

Daily telemetry on UserProduct purchase orders.

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
product_id - Int The Product id this telemetry entry is scoped to, when filtered or grouped by product.
product_name - String The name of the Product this telemetry entry is scoped to, when filtered or grouped by product.
purchase_origin - String The platform this telemetry entry's orders originated from.
tag - String The telemetry entry's tag.
total_count - Int The total number of UserPaymentAccountOrders that purchased a Product on this day.
empty_count - Int The number of Users without a purchased Product on this day.
aborted_count - Int The number of aborted Product purchase orders on this day.
charged_back_count - Int The number of charged-back Product purchase orders on this day.
open_count - Int The number of open Product purchase orders on this day.
paid_count - Int The number of paid Product purchase orders on this day.
refunded_count - Int The number of refunded Product purchase orders on this day.
julian_day - Int The telemetry entry's Julian day.
observed_at - String The telemetry entry's observation date-time (UTC).
Example
{
  "project_id": 42,
  "product_id": 42,
  "product_name": "string",
  "purchase_origin": "string",
  "tag": "string",
  "total_count": 42,
  "empty_count": 42,
  "aborted_count": 42,
  "charged_back_count": 42,
  "open_count": 42,
  "paid_count": 42,
  "refunded_count": 42,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryUserProductDaysListedWithPagination

Description

A paginated list of daily UserProduct telemetry entries.

Fields
Field Name Description
items - [AdminTelemetryUserProductDay] The daily telemetry entries.
pagination - Pagination The pagination details for this list.
Example
{
  "items": [AdminTelemetryUserProductDay],
  "pagination": Pagination
}

AdminTelemetryUserSubscriptionDay

Description

Daily telemetry on UserSubscriptions.

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
subscription_id - Int The Subscription id this telemetry entry is scoped to, when filtered or grouped by subscription.
subscription_name - String The name of the Subscription this telemetry entry is scoped to, when filtered or grouped by subscription.
purchase_origin - String The platform this telemetry entry's orders originated from.
tag - String The telemetry entry's tag.
total_count - Int The total number of UserSubscriptions on this day.
empty_count - Int The number of Users without a UserSubscription on this day.
subscribed_count - Int The number of UserSubscriptions with status active, suspended, or demo on this day.
initialised_count - Int The number of UserSubscriptions with status "initialised" on this day.
active_count - Int The number of UserSubscriptions with status "active" on this day.
active_paid_count - Int The number of active UserSubscriptions with a payment mandate on this day.
suspended_count - Int The number of UserSubscriptions with status "suspended" on this day.
suspended_paid_count - Int The number of suspended UserSubscriptions with a payment mandate on this day.
demo_count - Int The number of UserSubscriptions with status "demo" on this day.
expired_count - Int The number of UserSubscriptions with status "expired" on this day.
stale_count - Int The number of stale UserSubscriptions on this day.
switch_from_count - Int The number of UserSubscriptions marked to switch away from this Subscription on this day.
switch_to_count - Int The number of UserSubscriptions marked to switch to this Subscription on this day.
churn_rate - Float The UserSubscription churn rate on this day.
growth_rate - Float The UserSubscription growth rate on this day.
num_retention_days - Int The average number of UserSubscription retention days on this day.
julian_day - Int The telemetry entry's Julian day.
observed_at - String The telemetry entry's observation date-time (UTC).
Example
{
  "project_id": 42,
  "subscription_id": 42,
  "subscription_name": "string",
  "purchase_origin": "string",
  "tag": "string",
  "total_count": 42,
  "empty_count": 42,
  "subscribed_count": 42,
  "initialised_count": 42,
  "active_count": 42,
  "active_paid_count": 42,
  "suspended_count": 42,
  "suspended_paid_count": 42,
  "demo_count": 42,
  "expired_count": 42,
  "stale_count": 42,
  "switch_from_count": 42,
  "switch_to_count": 42,
  "churn_rate": 123.45,
  "growth_rate": 123.45,
  "num_retention_days": 42,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryUserSubscriptionDayAggregate

Description

Aggregate UserSubscription telemetry metrics over the queried date range.

Fields
Field Name Description
churn_rate - Float The UserSubscription churn rate over the queried date range.
growth_rate - Float The UserSubscription growth rate over the queried date range.
num_retention_days - Int The average number of UserSubscription retention days over the queried date range.
Example
{"churn_rate": 123.45, "growth_rate": 123.45, "num_retention_days": 42}

AdminTelemetryUserSubscriptionDaysListedWithPagination

Description

A paginated list of daily UserSubscription telemetry entries.

Fields
Field Name Description
items - [AdminTelemetryUserSubscriptionDay] The daily telemetry entries.
aggregate - AdminTelemetryUserSubscriptionDayAggregate Aggregate telemetry metrics over the queried date range.
pagination - Pagination The pagination details for this list.
Example
{
  "items": [AdminTelemetryUserSubscriptionDay],
  "aggregate": AdminTelemetryUserSubscriptionDayAggregate,
  "pagination": Pagination
}

AdminTelemetryVodEncodingDay

Description

Daily VOD encoding telemetry metrics

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "vod_encoding_day" for this telemetry).
minutes_encoded - Float Telemetry encoded minutes
hours_encoded - Float Telemetry encoded hours
julian_day - Int The telemetry record Julian day number, equivalent to observed_at.
observed_at - String The telemetry record observation date-time (UTC), at day resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "minutes_encoded": 123.45,
  "hours_encoded": 987.65,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryVodEncodingDaysListedWithPagination

Description

Daily VOD encoding telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryVodEncodingDay] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryVodEncodingDay],
  "pagination": Pagination
}

AdminTelemetryVodQualityDay

Description

Daily VOD quality telemetry metrics (error and expired-session rates)

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "vod_quality_day" for this telemetry).
geo_region_code - String Geo region code for given data set; TelemetryRepository::TELEMETRY_ORIGIN_ANY ("0") marks the project-wide aggregate row
geo_region_name - String Geo region name for given data set
media_provider - String Media provider for given data set (resolved via the session's Asset relation); TelemetryRepository::TELEMETRY_ORIGIN_ANY ("0") marks the project-wide aggregate row
total_session_count - Int Total qualifying session-tank rows (denominator for error_rate/expired_rate)
error_count - Int Session-tank rows with event_type = "error"
expired_count - Int Session-tank rows with event_type = "expired" (abnormal disconnect, not a user-initiated stop)
error_rate - Float error_count / total_session_count
expired_rate - Float expired_count / total_session_count
abr_quality_fraction - Float Adaptive bitrate quality: time_delta-weighted average of (session bitrate / asset max bitrate) across every PLAYTIME_EVENT_TYPES session pulse in this (geo_region_code, media_provider) cell
latency_error_count - Int Egress/takeoff-URL resolve failures (RestHelper::resolveRedirectUrl()); ANY-only -- always 0 on a per-region/per-provider cross-section row, only meaningful on the (ANY, ANY) aggregate row
latency_error_rate - Float latency_error_count / an approximate play-event count denominator; ANY-only, see latency_error_count
julian_day - Int The telemetry record Julian day number, equivalent to observed_at.
observed_at - String The telemetry record observation date-time (UTC), at day resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "geo_region_code": "nl",
  "geo_region_name": "string",
  "media_provider": "string",
  "total_session_count": 42,
  "error_count": 42,
  "expired_count": 42,
  "error_rate": 123.45,
  "expired_rate": 987.65,
  "abr_quality_fraction": 123.45,
  "latency_error_count": 42,
  "latency_error_rate": 987.65,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryVodQualityDaysListedWithPagination

Description

Daily VOD quality telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryVodQualityDay] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryVodQualityDay],
  "pagination": Pagination
}

AdminTelemetryVodQualityMinute

Description

Five-minute VOD quality telemetry metrics (error and expired-session rates)

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "vod_quality_minute" for this telemetry).
geo_region_code - String TelemetryRepository::TELEMETRY_ORIGIN_ANY ("0") unless the project has opted into project.service.telemetry.quality.is_minute_full_granularity (default true)
media_provider - String See geo_region_code above
total_session_count - Int Total qualifying session-tank rows (denominator for error_rate/expired_rate)
error_count - Int Session-tank rows with event_type = "error"
expired_count - Int Session-tank rows with event_type = "expired" (abnormal disconnect, not a user-initiated stop)
error_rate - Float error_count / total_session_count
expired_rate - Float expired_count / total_session_count
abr_quality_fraction - Float Adaptive bitrate quality: time_delta-weighted average of (session bitrate / asset max bitrate) across every PLAYTIME_EVENT_TYPES session pulse in this (5-minute) bucket
latency_error_count - Int Egress/takeoff-URL resolve failures (RestHelper::resolveRedirectUrl()) in this (5-minute) bucket
latency_error_rate - Float latency_error_count / an approximate play-event count denominator
julian_day - Int The telemetry record Julian day number of the observation day; see observed_at for the time within the day.
observed_at - String The telemetry record observation date-time (UTC), at minute resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "geo_region_code": "nl",
  "media_provider": "string",
  "total_session_count": 42,
  "error_count": 42,
  "expired_count": 42,
  "error_rate": 987.65,
  "expired_rate": 123.45,
  "abr_quality_fraction": 123.45,
  "latency_error_count": 42,
  "latency_error_rate": 987.65,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryVodQualityMinutesListedWithPagination

Description

Five-minute VOD quality telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryVodQualityMinute] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryVodQualityMinute],
  "pagination": Pagination
}

AdminTelemetryVodStorageDay

Description

Daily VOD storage telemetry metrics

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "vod_storage_day" for this telemetry).
bytes - Float The total stored bytes at the end of the observed day: bytes_vod + bytes_statics.
bytes_in - Float The ingressed bytes (uploads to VOD storage)
bytes_out - Float The egressed bytes (downloads from VOD storage)
giga_bytes - Float The total stored gigabytes: bytes / 10^9 (decimal GB), rounded to 3 decimals.
giga_bytes_in - Float The ingressed gigabytes: bytes_in / 10^9 (decimal GB), rounded to 3 decimals.
giga_bytes_out - Float The egressed gigabytes: bytes_out / 10^9 (decimal GB), rounded to 3 decimals.
bytes_vod - Float The stored bytes for video assets: source files, transcoded renditions, manifests, thumbnails, etc. Part of bytes; the remainder is bytes_statics.
giga_bytes_vod - Float The stored gigabytes for video assets: bytes_vod / 10^9 (decimal GB), rounded to 3 decimals.
bytes_statics - Float The stored bytes for frontend assets (e.g. background mp4 videos, images). Part of bytes; the remainder is bytes_vod.
giga_bytes_statics - Float The stored gigabytes for frontend assets: bytes_statics / 10^9 (decimal GB), rounded to 3 decimals.
hours_stored - Float The estimated stored media duration in hours, rounded up to whole hours. This is not disk usage.
minutes_stored - Float The estimated stored media duration in minutes: hours_stored x 60, so always a multiple of 60 (hour resolution).
julian_day - Int The telemetry record Julian day number, equivalent to observed_at.
observed_at - String The telemetry record observation date-time (UTC): the start of the day the snapshot describes.
Example
{
  "project_id": 42,
  "tag": "string",
  "bytes": 987.65,
  "bytes_in": 987.65,
  "bytes_out": 987.65,
  "giga_bytes": 987.65,
  "giga_bytes_in": 123.45,
  "giga_bytes_out": 123.45,
  "bytes_vod": 987.65,
  "giga_bytes_vod": 987.65,
  "bytes_statics": 987.65,
  "giga_bytes_statics": 123.45,
  "hours_stored": 123.45,
  "minutes_stored": 987.65,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryVodStorageDaysListedWithPagination

Description

Daily VOD storage telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryVodStorageDay] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryVodStorageDay],
  "pagination": Pagination
}

AdminTelemetryVodStreamingDay

Description

Daily VOD streaming telemetry metrics

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "vod_streaming_day" for this telemetry).
bytes - Float The transferred bytes
giga_bytes - Float The transferred gigabytes
bytes_zone1 - Float The transferred bytes in CDN zone 1
giga_bytes_zone1 - Float The transferred gigabytes in CDN zone 1
bytes_zone2 - Float The transferred bytes in CDN zone 2
giga_bytes_zone2 - Float The transferred gigabytes in CDN zone 2
bytes_zone3 - Float The transferred bytes in CDN zone 3
giga_bytes_zone3 - Float The transferred gigabytes in CDN zone 3
bytes_zone4 - Float The transferred bytes in CDN zone 4
giga_bytes_zone4 - Float The transferred gigabytes in CDN zone 4
bytes_zone5 - Float The transferred bytes in CDN zone 5
giga_bytes_zone5 - Float The transferred gigabytes in CDN zone 5
bytes_zone6 - Float The transferred bytes in CDN zone 6
giga_bytes_zone6 - Float The transferred gigabytes in CDN zone 6
bytes_statics - Float The transferred bytes for static files (images, subtitles, etc)
giga_bytes_statics - Float The transferred gigabytes for static files (images, subtitles, etc)
abr_quality_fraction - Float Adaptive bitrate quality: time_delta-weighted average of (session bitrate / asset max bitrate) across every session pulse in this bucket
julian_day - Int The telemetry record Julian day number, equivalent to observed_at.
observed_at - String The telemetry record observation date-time (UTC), at day resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "bytes": 123.45,
  "giga_bytes": 987.65,
  "bytes_zone1": 123.45,
  "giga_bytes_zone1": 987.65,
  "bytes_zone2": 987.65,
  "giga_bytes_zone2": 123.45,
  "bytes_zone3": 987.65,
  "giga_bytes_zone3": 987.65,
  "bytes_zone4": 123.45,
  "giga_bytes_zone4": 987.65,
  "bytes_zone5": 123.45,
  "giga_bytes_zone5": 987.65,
  "bytes_zone6": 123.45,
  "giga_bytes_zone6": 987.65,
  "bytes_statics": 987.65,
  "giga_bytes_statics": 987.65,
  "abr_quality_fraction": 987.65,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryVodStreamingDaysListedWithPagination

Description

Daily VOD streaming telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryVodStreamingDay] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryVodStreamingDay],
  "pagination": Pagination
}

AdminTelemetryVodStreamingMinute

Description

Five-minute VOD streaming telemetry metrics

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "vod_streaming_minute" for this telemetry).
bytes - Float The transferred bytes
giga_bytes - Float The transferred gigabytes
abr_quality_fraction - Float Adaptive bitrate quality: time_delta-weighted average of (session bitrate / asset max bitrate) across every session pulse in this bucket
julian_day - Int The telemetry record Julian day number of the observation day; see observed_at for the time within the day.
observed_at - String The telemetry record observation date-time (UTC), at minute resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "bytes": 123.45,
  "giga_bytes": 123.45,
  "abr_quality_fraction": 987.65,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryVodStreamingMinutesListedWithPagination

Description

Five-minute VOD streaming telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryVodStreamingMinute] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryVodStreamingMinute],
  "pagination": Pagination
}

AdminTelemetryVodStreamingUnitDay

Description

Daily VOD streaming telemetry metrics units

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "vod_streaming_unit_day" for this telemetry).
unit_num - Float Actual integer number of bandwidth units currently committed
observed_unit_num - Float Observed fractional number of bandwidth units currently used (actual bandwidth usage)
required_unit_num - Float Calculated fractional number of bandwidth units needed in near future (predicted bandwidth usage)
scaled_unit_num - Float Number of bandwidth units for which a scaling event was fired
julian_day - Int The telemetry record Julian day number, equivalent to observed_at.
observed_at - String The telemetry record observation date-time (UTC), at day resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "unit_num": 987.65,
  "observed_unit_num": 987.65,
  "required_unit_num": 123.45,
  "scaled_unit_num": 123.45,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryVodStreamingUnitDaysListedWithPagination

Description

Daily VOD streaming-unit telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryVodStreamingUnitDay] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryVodStreamingUnitDay],
  "pagination": Pagination
}

AdminTelemetryVodStreamingUnitMinute

Description

Five-minute VOD streaming telemetry metrics units

Fields
Field Name Description
project_id - Int The Project id this telemetry entry belongs to.
tag - String The telemetry record tag (always "vod_streaming_unit_minute" for this telemetry).
unit_num - Float Actual integer number of bandwidth units currently committed
observed_unit_num - Float Observed fractional number of bandwidth units currently used (actual bandwidth usage)
required_unit_num - Float Calculated fractional number of bandwidth units needed in near future (predicted bandwidth usage)
scaled_unit_num - Float Number of bandwidth units for which a scaling event was fired
julian_day - Int The telemetry record Julian day number of the observation day; see observed_at for the time within the day.
observed_at - String The telemetry record observation date-time (UTC), at minute resolution.
Example
{
  "project_id": 42,
  "tag": "string",
  "unit_num": 123.45,
  "observed_unit_num": 123.45,
  "required_unit_num": 987.65,
  "scaled_unit_num": 987.65,
  "julian_day": 42,
  "observed_at": "2000-12-31T12:34:56.000Z"
}

AdminTelemetryVodStreamingUnitMinutesListedWithPagination

Description

Five-minute VOD streaming-unit telemetry entries with pagination

Fields
Field Name Description
items - [AdminTelemetryVodStreamingUnitMinute] Telemetry entries for the current page
pagination - Pagination Pagination metadata for the current page
Example
{
  "items": [AdminTelemetryVodStreamingUnitMinute],
  "pagination": Pagination
}

AdminUser

Description

A User.

Fields
Field Name Description
id - Int! The id of the User.
project_id - Int The Project id that owns the User.
name - String The User's name.
display_name - String The User's display name, typically the User's first name or first part of the e-mail address.
email - String The User's e-mail address.
gender - UserGenderTypeEnum The User's gender.
locale - String The User's locale (language).
subtitle_locale - String The User's preferred subtitle locale (language).
audio_locale - String The User's preferred audio locale (language).
status - UserStatusEnum The User's verification status.
address - String The User's address.
postal_code - String The User's postal code.
city - String The User's city.
country - String The User's country.
geo_region_code - String The User's country code.
phone - String The User's phone number.
is_phone_verified - UserPhoneStatusEnum The User's phone number verification status.
birthday - String The User's birthday.
height - Float The User's height.
weight - Float The User's weight.
custom_data - String Custom data stored for the User.
is_newsletter_opt_in - Boolean Whether the User has opted in to the newsletter.
is_terms_and_conditions_opt_in - Boolean Whether the User has accepted the terms and conditions.
is_marked_for_deletion - Boolean Whether the User's account is marked for deletion.
delete_at - String The date (UTC) at which the User's account will be deleted, when is_marked_for_deletion is true.
notifiable - UserNotifiableTypeEnum How the User may be notified.
max_concurrent_vod_stream_num - Int The maximum number of concurrent VOD streams allowed for the User.
user_subscription_status - UserSubscriptionStatusEnum The status of the User's current UserSubscription, if any.
user_subscription_last_event_type - UserSubscriptionEventTypeEnum The most recent event of importance generated for the User's current UserSubscription, if any.
subscription_id - Int The Subscription id the User's current UserSubscription is an instance of, if any.
favourite_articles - [ArticleRelated] The Articles the User marked as favourite.
nomadic_articles - [ArticleRelated] The Articles the User has an active (in-progress) nomadic playback position for.
history_articles - [ArticleRelated] The Articles the User has completed.
entitled_articles - [ArticleRelated] The complete list of Articles the User is entitled to.
Arguments
is_include_expired_articles - Boolean

Whether to include Articles the User's entitlement to has expired.

is_include_descendant_articles - Boolean

Whether to include descendant Articles of entitled Categories. Only applied when is_include_expired_articles is false.

entitled_root_articles - [ArticleRelated] The root-level Articles the User is entitled to.
articles - [ArticleRelated] The Articles related to the User (favourite, nomadic, and/or history).
Arguments
is_exclude_stale_articles - Boolean

Whether to exclude Articles that are not nomadic, favourite, or history for the User.

latest_nomadic_article - ArticleRelated The User's latest active nomadic Article.
Arguments
root_id - Int

The parent/root Article id to scope the search to.

is_fallback_to_first_eligible_article - Boolean

Whether to fall back to the first eligible Article when no nomadic Article is found.

consents - [UserConsent] The User's cookie consent records.
metric_actions - [MetricAction] The MetricActions fulfilled by the User.
notification_profiles - [UserNotificationProfile] The User's notification delivery profiles.
notification_topics - [UserNotificationTopic] The NotificationTopics the User is subscribed to.
user_subscriptions - [AdminUserSubscription] The User's UserSubscriptions.
user_products - [UserProduct] The User's purchased Products.
orders - [AdminUserPaymentAccountOrder] The User's UserPaymentAccountOrders, excluding open, cancelled, aborted, and expired ones.
user_payment_credit_amount - Float The User's available credit amount for the given credit type.
Arguments
type - UserPaymentCreditTypeEnum

The credit type to fetch the amount for.

user_payment_general_credit_amount - Float The User's available general credit amount.
user_payment_free_article_credit_amount - Float The User's available free-article credit amount.
user_payment_currency_amount - Float The User's available account balance amount, in the currency indicated by user_payment_currency.
user_payment_currency_symbol - String The currency symbol paired with user_payment_currency.
user_payment_currency - String The currency code user_payment_currency_amount is expressed in.
external_user_id - String A third-party identifier for the User.
metas - [AdminUserMeta] The User's meta properties.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

managed_projects - [AdminProject] The Projects the User manages.
recent_project - AdminProject The Project the User most recently accessed.
roles - [Role] The User's Roles.
user_product_orders - [AdminUserPaymentAccountOrder] The User's UserPaymentAccountOrders for non-recurring Products and payment-method changes.
payment_accounts - [AdminUserPaymentAccount] The User's UserPaymentAccounts.
article_view_sessions - [UserArticleSession] The User's Article view sessions.
Arguments
sort_by - [SortByInput]

Sort and order by field(s).

devices - [AdminDevice] The User's paired Devices.
activity_logs - [AdminActivityLog] The User's activity log entries.
Arguments
sort_by - [SortByInput]

Sort and order by field(s).

created_at - String The User's creation date (UTC).
updated_at - String The User's last modification date (UTC).
active_at - String The User's last video viewing activity date (UTC).
credits - [AdminUserPaymentCredit] The User's payment credits.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "display_name": "string",
  "email": "foo@example.com",
  "gender": "male",
  "locale": "string",
  "subtitle_locale": "string",
  "audio_locale": "string",
  "status": "string",
  "address": "string",
  "postal_code": "string",
  "city": "string",
  "country": "string",
  "geo_region_code": "nl",
  "phone": "string",
  "is_phone_verified": false,
  "birthday": "string",
  "height": 123.45,
  "weight": 123.45,
  "custom_data": "string",
  "is_newsletter_opt_in": true,
  "is_terms_and_conditions_opt_in": false,
  "is_marked_for_deletion": true,
  "delete_at": "2000-12-31T12:34:56.000Z",
  "notifiable": "none",
  "max_concurrent_vod_stream_num": 42,
  "user_subscription_status": "string",
  "user_subscription_last_event_type": "first_payment_error",
  "subscription_id": 42,
  "favourite_articles": [ArticleRelated],
  "nomadic_articles": [ArticleRelated],
  "history_articles": [ArticleRelated],
  "entitled_articles": [ArticleRelated],
  "entitled_root_articles": [ArticleRelated],
  "articles": [ArticleRelated],
  "latest_nomadic_article": ArticleRelated,
  "consents": [UserConsent],
  "metric_actions": [MetricAction],
  "notification_profiles": [UserNotificationProfile],
  "notification_topics": [UserNotificationTopic],
  "user_subscriptions": [AdminUserSubscription],
  "user_products": [UserProduct],
  "orders": [AdminUserPaymentAccountOrder],
  "user_payment_credit_amount": 1,
  "user_payment_general_credit_amount": 1,
  "user_payment_free_article_credit_amount": 1,
  "user_payment_currency_amount": "EUR",
  "user_payment_currency_symbol": "EUR",
  "user_payment_currency": "EUR",
  "external_user_id": "string",
  "metas": [AdminUserMeta],
  "managed_projects": [AdminProject],
  "recent_project": AdminProject,
  "roles": [Role],
  "user_product_orders": [AdminUserPaymentAccountOrder],
  "payment_accounts": [AdminUserPaymentAccount],
  "article_view_sessions": [UserArticleSession],
  "devices": [AdminDevice],
  "activity_logs": [AdminActivityLog],
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "active_at": "2000-12-31T12:34:56.000Z",
  "credits": [AdminUserPaymentCredit]
}

AdminUserArticle

Description

A UserArticle record, holding all the "nomadic watching" information per User, per Article, per Asset.

Fields
Field Name Description
id - Int The id of the UserArticle record.
user_id - Int The id of the User this UserArticle record belongs to.
anonymous_user_id - String The auto-generated fingerprint of the anonymous (public) User this UserArticle record belongs to, when not authenticated.
article_id - Int The id of the Article this UserArticle record belongs to.
asset_id - Int The id of the Asset this UserArticle record belongs to.
linked_type - String The UserArticle's linked Asset type, representing the link between the Article and the Asset.
device_type - String The device type on which the User last watched this Article-Asset.
user_agent - String The user agent (browser/app) through which the User last watched this Article-Asset.
geo_region_code - String The two-character geo-region code representing the country/region from which the User last watched this Article-Asset.
subtitle_locale - String The User's last-selected subtitle-track locale (if any) for this Article-Asset.
audio_locale - String The User's last-selected audio-track locale (if any) for this Article-Asset.
time_watched - Int The total, aggregated amount of time (seconds) the User has watched this Article-Asset.
appa - Float The User's absolute play progress (seconds, between 0 and the Asset's duration) for this Article-Asset.
appr - Float The User's relative play progress (completed percentage) for this Article-Asset.
is_favourite - Boolean Whether the User marked this Article-Asset as favourite.
is_continue - Boolean Whether the User marked this Article-Asset as continue-watching.
is_history - Boolean Whether the User marked this Article-Asset as watched.
entitlement_origin - String The origin responsible for entitling the User's play-out of this Article-Asset.
entitlement_resource_id - Int The id of the specific Product or Subscription responsible for entitling the User's play-out of this Article-Asset.
is_progress_marker1_completed - Boolean Whether the User fulfilled custom progress marker 1 (default: 33% completion).
is_progress_marker2_completed - Boolean Whether the User fulfilled custom progress marker 2 (default: not defined).
is_progress_marker3_completed - Boolean Whether the User fulfilled custom progress marker 3 (default: not defined).
num_completed - Int The number of times the User has completed play-out of this Article-Asset (crossed the "End" time marker, with a minimum interval of the Asset's duration).
rating_value - Float The rating value the User assigned this Article-Asset.
rated_at - String The date (UTC) the User last rated this Article-Asset.
completed_at - String The date (UTC) the User first finished play-out of this Article-Asset (crossed the "End" time marker).
created_at - String The UserArticle record's creation date (UTC), created either by being marked as favourite or by the User starting play-out.
updated_at - String The date (UTC) the User last watched this Article-Asset.
Example
{
  "id": 42,
  "user_id": 42,
  "anonymous_user_id": "string",
  "article_id": 42,
  "asset_id": 42,
  "linked_type": "film",
  "device_type": "string",
  "user_agent": "string",
  "geo_region_code": "nl",
  "subtitle_locale": "string",
  "audio_locale": "string",
  "time_watched": 42,
  "appa": 987.65,
  "appr": 0.246,
  "is_favourite": false,
  "is_continue": true,
  "is_history": false,
  "entitlement_origin": "string",
  "entitlement_resource_id": 42,
  "is_progress_marker1_completed": true,
  "is_progress_marker2_completed": false,
  "is_progress_marker3_completed": true,
  "num_completed": 42,
  "rating_value": 123.45,
  "rated_at": "2000-12-31T12:34:56.000Z",
  "completed_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

AdminUserArticleSession

Description

A User's Article view session, holding the incremental event data generated by play-out.

Fields
Field Name Description
id - Int! The id of the UserArticleSession record.
user_id - Int The id of the authenticated User that generated this UserArticleSession record (null for an anonymous User, see anonymous_user_id).
anonymous_user_id - String The anonymous visitor id that generated this UserArticleSession record, for a User without an account (null for an authenticated User, see user_id).
article_id - Int The id of the Article this UserArticleSession record belongs to.
asset_id - Int The id of the Asset this UserArticleSession record belongs to.
linked_type - String The UserArticleSession's Article-Asset linked type.
time_watched - Int The UserArticleSession's amount of time watched (only meaningful for play-time event types).
time_delta - Float The UserArticleSession's elapsed time.
resolution_tag - String The UserArticleSession's displayed resolution.
protocol - String The UserArticleSession's streaming protocol.
encryption_type - String The UserArticleSession's encryption type.
event_type - String The UserArticleSession's event type (play-time event types: "play", "playing", "stop").
event_payload - String The UserArticleSession's recorded payload/message.
is_progress_marker1_completed - Boolean Whether the UserArticleSession fulfilled custom progress marker 1.
is_progress_marker2_completed - Boolean Whether the UserArticleSession fulfilled custom progress marker 2.
is_progress_marker3_completed - Boolean Whether the UserArticleSession fulfilled custom progress marker 3.
is_completed - Boolean Whether the UserArticleSession fulfilled the Asset's completion marker.
device_type - String The UserArticleSession's detected device type.
device_brand - String The UserArticleSession's detected device brand.
device_model - String The UserArticleSession's detected device model.
telemetry_platform - String The UserArticleSession's detected telemetry platform.
ip_address - String The UserArticleSession's IP address.
user_agent - String The User's user agent (browser/app) through which this Article-Asset was last watched.
geo_region_code - String The UserArticleSession's geo-region code.
audio_locale - String The UserArticleSession's audio language (ISO 639-1 code).
subtitle_locale - String The UserArticleSession's subtitle language (ISO 639-1 code).
started_at - String The UserArticleSession's start date (UTC).
Example
{
  "id": 42,
  "user_id": 42,
  "anonymous_user_id": "string",
  "article_id": 42,
  "asset_id": 42,
  "linked_type": "film",
  "time_watched": 42,
  "time_delta": 123.45,
  "resolution_tag": "string",
  "protocol": "string",
  "encryption_type": "string",
  "event_type": "string",
  "event_payload": "string",
  "is_progress_marker1_completed": false,
  "is_progress_marker2_completed": true,
  "is_progress_marker3_completed": false,
  "is_completed": true,
  "device_type": "string",
  "device_brand": "string",
  "device_model": "string",
  "telemetry_platform": "string",
  "ip_address": "string",
  "user_agent": "string",
  "geo_region_code": "nl",
  "audio_locale": "string",
  "subtitle_locale": "string",
  "started_at": "2000-12-31T12:34:56.000Z"
}

AdminUserArticleSessionsListedWithPagination

Description

A paginated list of UserArticleSession records.

Fields
Field Name Description
items - [AdminUserArticleSession] The page of UserArticleSession records.
pagination - Pagination Pagination info for this list.
Example
{
  "items": [AdminUserArticleSession],
  "pagination": Pagination
}

AdminUserArticlesListedWithPagination

Description

A paginated list of UserArticle records.

Fields
Field Name Description
items - [AdminUserArticle] The page of UserArticle records.
pagination - Pagination Pagination info for this list.
Example
{
  "items": [AdminUserArticle],
  "pagination": Pagination
}

AdminUserDetails

Description

The current authenticated admin User's own details.

Fields
Field Name Description
id - Int! The id of the User.
project_id - Int The Project id that owns the User.
name - String The User's name.
display_name - String The User's display name, typically the User's first name or first part of the e-mail address.
email - String The User's e-mail address.
gender - UserGenderTypeEnum The User's gender.
locale - String The User's locale (language).
subtitle_locale - String The User's preferred subtitle locale (language).
audio_locale - String The User's preferred audio locale (language).
status - UserStatusEnum The User's verification status.
address - String The User's address.
postal_code - String The User's postal code.
city - String The User's city.
country - String The User's country.
geo_region_code - String The User's country code.
phone - String The User's phone number.
is_phone_verified - UserPhoneStatusEnum The User's phone number verification status.
birthday - String The User's birthday.
height - Float The User's height.
weight - Float The User's weight.
custom_data - String Custom data stored for the User.
is_newsletter_opt_in - Boolean Whether the User has opted in to the newsletter.
is_terms_and_conditions_opt_in - Boolean Whether the User has accepted the terms and conditions.
is_marked_for_deletion - Boolean Whether the User's account is marked for deletion.
delete_at - String The date (UTC) at which the User's account will be deleted, when is_marked_for_deletion is true.
notifiable - UserNotifiableTypeEnum How the User may be notified.
max_concurrent_vod_stream_num - Int The maximum number of concurrent VOD streams allowed for the User.
user_subscription_status - UserSubscriptionStatusEnum The status of the User's current UserSubscription, if any.
user_subscription_last_event_type - UserSubscriptionEventTypeEnum The most recent event of importance generated for the User's current UserSubscription, if any.
subscription_id - Int The Subscription id the User's current UserSubscription is an instance of, if any.
favourite_articles - [ArticleRelated] The Articles the User marked as favourite.
nomadic_articles - [ArticleRelated] The Articles the User has an active (in-progress) nomadic playback position for.
history_articles - [ArticleRelated] The Articles the User has completed.
entitled_articles - [ArticleRelated] The complete list of Articles the User is entitled to.
entitled_root_articles - [ArticleRelated] The root-level Articles the User is entitled to.
articles - [ArticleRelated] The Articles related to the User (favourite, nomadic, and/or history).
Arguments
is_exclude_stale_articles - Boolean

Whether to exclude Articles that are not nomadic, favourite, or history for the User.

latest_nomadic_article - ArticleRelated The User's latest active nomadic Article.
Arguments
root_id - Int

The parent/root Article id to scope the search to.

is_fallback_to_first_eligible_article - Boolean

Whether to fall back to the first eligible Article when no nomadic Article is found.

consents - [UserConsent] The User's cookie consent records.
metric_actions - [MetricAction] The MetricActions fulfilled by the User.
notification_profiles - [UserNotificationProfile] The User's notification delivery profiles.
notification_topics - [UserNotificationTopic] The NotificationTopics the User is subscribed to.
user_subscriptions - [UserSubscription] The User's UserSubscriptions.
user_products - [UserProduct] The User's purchased Products.
orders - [UserPaymentAccountOrder] The User's UserPaymentAccountOrders, excluding open, cancelled, aborted, and expired ones.
Arguments
sort_by - [SortByInput]

Sort and order by field(s).

user_payment_credit_amount - Float The User's available credit amount for the given credit type.
Arguments
type - UserPaymentCreditTypeEnum

The credit type to fetch the amount for.

user_payment_general_credit_amount - Float The User's available general credit amount.
user_payment_free_article_credit_amount - Float The User's available free-article credit amount.
user_payment_currency_amount - Float The User's available account balance amount, in the currency indicated by user_payment_currency.
user_payment_currency_symbol - String The currency symbol paired with user_payment_currency.
user_payment_currency - String The currency code user_payment_currency_amount is expressed in.
is_terms_and_conditions_renewal_required - Boolean Whether renewed acceptance of the terms and conditions is required from the User.
terms_and_conditions_accepted_at - String The date (UTC) the User last accepted the terms and conditions.
metas - [AdminUserMeta] The User's meta properties.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

managed_projects - [AdminProject] The Projects the User manages.
managed_roles - [Role] The Roles the User is allowed to assign to other Users.
recent_project - AdminProject The Project the User most recently accessed.
roles - [Role] The User's Roles.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "display_name": "string",
  "email": "foo@example.com",
  "gender": "male",
  "locale": "string",
  "subtitle_locale": "string",
  "audio_locale": "string",
  "status": "string",
  "address": "string",
  "postal_code": "string",
  "city": "string",
  "country": "string",
  "geo_region_code": "nl",
  "phone": "string",
  "is_phone_verified": false,
  "birthday": "string",
  "height": 987.65,
  "weight": 123.45,
  "custom_data": "string",
  "is_newsletter_opt_in": true,
  "is_terms_and_conditions_opt_in": false,
  "is_marked_for_deletion": true,
  "delete_at": "2000-12-31T12:34:56.000Z",
  "notifiable": "none",
  "max_concurrent_vod_stream_num": 42,
  "user_subscription_status": "string",
  "user_subscription_last_event_type": "first_payment_error",
  "subscription_id": 42,
  "favourite_articles": [ArticleRelated],
  "nomadic_articles": [ArticleRelated],
  "history_articles": [ArticleRelated],
  "entitled_articles": [ArticleRelated],
  "entitled_root_articles": [ArticleRelated],
  "articles": [ArticleRelated],
  "latest_nomadic_article": ArticleRelated,
  "consents": [UserConsent],
  "metric_actions": [MetricAction],
  "notification_profiles": [UserNotificationProfile],
  "notification_topics": [UserNotificationTopic],
  "user_subscriptions": [UserSubscription],
  "user_products": [UserProduct],
  "orders": [UserPaymentAccountOrder],
  "user_payment_credit_amount": 1,
  "user_payment_general_credit_amount": 1,
  "user_payment_free_article_credit_amount": 1,
  "user_payment_currency_amount": "EUR",
  "user_payment_currency_symbol": "EUR",
  "user_payment_currency": "EUR",
  "is_terms_and_conditions_renewal_required": false,
  "terms_and_conditions_accepted_at": "2000-12-31T12:34:56.000Z",
  "metas": [AdminUserMeta],
  "managed_projects": [AdminProject],
  "managed_roles": [Role],
  "recent_project": AdminProject,
  "roles": [Role]
}

AdminUserMeta

Description

A meta property belonging to a User.

Fields
Field Name Description
id - Int The id of the meta property.
user_id - Int The User id that owns the meta property.
key - String The meta property's key.
value - String The meta property's value.
translations - [UserMetaTranslation] The meta property's value, translated per locale.
type - MetaTypeEnum The meta property's type.
format - String The meta property's rendering format.
Example
{
  "id": 42,
  "user_id": 42,
  "key": "string",
  "value": "string",
  "translations": [UserMetaTranslation],
  "type": "array",
  "format": "string"
}

AdminUserPaymentAccount

Description

An admin UserPaymentAccount

Fields
Field Name Description
id - Int! The id of the UserPaymentAccount.
payment_provider_id - Int The id of the PaymentProvider linked to the UserPaymentAccount.
amount_balance - Float The amount balance of the account
method - String The payment method of the account
method_details - String The payment method details of the account
geo_region_code - String The GeoRegion code from which the UserPaymentAccount creation originated.
orders - [UserPaymentAccountOrder] The UserPaymentAccountOrders for this account.
remote_payment_user_id - String The remote payment User id registered at the PaymentProvider or gateway.
remote_payment_mandate_id - String The remote payment mandate id registered at the PaymentProvider or gateway, used to create recurring payments.
Example
{
  "id": 42,
  "payment_provider_id": 42,
  "amount_balance": 987.65,
  "method": "string",
  "method_details": "string",
  "geo_region_code": "nl",
  "orders": [UserPaymentAccountOrder],
  "remote_payment_user_id": "string",
  "remote_payment_mandate_id": "string"
}

AdminUserPaymentAccountOrder

Description

An administrative UserPaymentAccountOrder representation with payment and installment details.

Fields
Field Name Description
id - Int! The id of the UserPaymentAccountOrder.
user_id - Int The id of the User that owns the UserPaymentAccountOrder.
user_subscription_id - String The id of the UserSubscription related to the UserPaymentAccountOrder.
payment_syndicate_voucher_id - Int The id of the PaymentSyndicateVoucher attached to the UserPaymentAccountOrder.
voucher_code - String The Voucher Code attached to the UserPaymentAccountOrder.
type - String The UserPaymentAccountOrder's type.
recurring_type - String The recurring type of the order
discount_type - String The discount type of the order
payment_provider_type - String The payment provider type of the order
amount - Float The UserPaymentAccountOrder's amount.
status - String The UserPaymentAccountOrder's payment status.
status_name - String The UserPaymentAccountOrder's translated payment status name.
description - String The UserPaymentAccountOrder's description.
installed_at - String The installation date (UTC) of the order
paid_at - String The payment fulfilment date (UTC) of the order
cancelled_at - String The cancellation date (UTC) of the order
refunded_at - String The refunded/charge-back date (UTC) of the order
created_at - String The creation date (UTC) of the order
updated_at - String The last modification date (UTC) of the order
installments - [AdminUserPaymentAccountOrderInstallment] The order installments
currency - String The UserPaymentAccountOrder's currency.
currency_symbol - String The UserPaymentAccountOrder's currency symbol.
user - AdminUser The User connected to the UserPaymentAccountOrder.
user_payment_account_id - Int The user payment account id of the order
remote_payment_order_id - String The remote payment provider order id of the order
remote_payment_user_id - String The remote payment user id of the order
amount_balance_mutation - String The balance mutation amount of the order
amount_remote_mutation - String The remote mutation amount of the order
payment_url - String The payment url of the order
method - String The payment method of the order
method_details - String The payment method details of the order
ip_address - String The ip address attached to the order
geo_region_code - String The GeoRegion code from which this UserPaymentAccountOrder originated.
origin - String The source from which this order originated (e.g. user, moderator, api)
purchase_origin - String The purchase origin of the fulfilment of this order
server_origin - String The server instance on which the order originated
is_refundable - Boolean Whether the UserPaymentAccountOrder is refundable.
metadata - String The order metadata and/or error details
receipt_data - String The order in-app purchase receipt data and/or error details
invoice_data - String The order invoice data which summarises purchased items and prices
account - AdminUserPaymentAccount The UserPaymentAccount for this order.
user_subscription - AdminUserSubscription The related user subscription
products - [AdminProductListedAsRelation] The Products related to the UserPaymentAccountOrder.
Arguments
sort_by - [SortByInput]

Sort related Products.

user_subscription_products - [AdminUserSubscriptionProduct] The UserSubscriptionProducts related through the pivot relation.
Arguments
sort_by - [SortByInput]

Sort related UserSubscriptionProducts.

categories - [AdminCategory] The affiliation Categories this UserPaymentAccountOrder relates to.
Example
{
  "id": 42,
  "user_id": 42,
  "user_subscription_id": "string",
  "payment_syndicate_voucher_id": 42,
  "voucher_code": "string",
  "type": "string",
  "recurring_type": "string",
  "discount_type": "string",
  "payment_provider_type": "string",
  "amount": 987.65,
  "status": "string",
  "status_name": "string",
  "description": "string",
  "installed_at": "2000-12-31T12:34:56.000Z",
  "paid_at": "2000-12-31T12:34:56.000Z",
  "cancelled_at": "2000-12-31T12:34:56.000Z",
  "refunded_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "installments": [
    AdminUserPaymentAccountOrderInstallment
  ],
  "currency": "EUR",
  "currency_symbol": "EUR",
  "user": AdminUser,
  "user_payment_account_id": 42,
  "remote_payment_order_id": "string",
  "remote_payment_user_id": "string",
  "amount_balance_mutation": "string",
  "amount_remote_mutation": "string",
  "payment_url": "https://url.example.com",
  "method": "string",
  "method_details": "string",
  "ip_address": "string",
  "geo_region_code": "nl",
  "origin": "string",
  "purchase_origin": "string",
  "server_origin": "string",
  "is_refundable": true,
  "metadata": "string",
  "receipt_data": "string",
  "invoice_data": "string",
  "account": AdminUserPaymentAccount,
  "user_subscription": AdminUserSubscription,
  "products": [AdminProductListedAsRelation],
  "user_subscription_products": [
    AdminUserSubscriptionProduct
  ],
  "categories": [AdminCategory]
}

AdminUserPaymentAccountOrderInstallment

Description

A user payment account order installment

Fields
Field Name Description
id - Int! The id of the order installment
user_payment_account_order_id - Int! The id of the order
time_unit - String The time unit of the order installment
term - Int The term of the order installment
installment - Int The installment index of the order
Example
{
  "id": 42,
  "user_payment_account_order_id": 42,
  "time_unit": "string",
  "term": 42,
  "installment": 42
}

AdminUserPaymentAccountOrdersListedWithPagination

Description

UserPaymentAccountOrders with pagination

Fields
Field Name Description
items - [AdminUserPaymentAccountOrder] UserPaymentAccountOrders for the current page.
pagination - Pagination Pagination metadata for the UserPaymentAccountOrder list.
Example
{
  "items": [AdminUserPaymentAccountOrder],
  "pagination": Pagination
}

AdminUserPaymentCredit

Description

An admin UserPaymentCredit

Fields
Field Name Description
id - Int! The id of the UserPaymentCredit.
user_id - Int The id of the User that owns the UserPaymentCredit.
status - String The UserPaymentCredit's status.
type - String The UserPaymentCredit's type.
amount - Float The UserPaymentCredit's original amount.
amount_balance - Float The UserPaymentCredit's remaining amount balance.
installed_at - String The UserPaymentCredit's installation date-time (UTC).
expires_at - String The UserPaymentCredit's expiry date-time (UTC).
fulfilment_order - AdminUserPaymentAccountOrder The UserPaymentAccountOrder through which this UserPaymentCredit was fulfilled.
fulfilment_order_origin - String The fulfilment order origin.
fulfilment_order_purchase_origin - String The fulfilment order purchase origin.
orders - [AdminUserPaymentAccountOrder] The UserPaymentAccountOrders through which this UserPaymentCredit was used.
Example
{
  "id": 42,
  "user_id": 42,
  "status": "string",
  "type": "string",
  "amount": 123.45,
  "amount_balance": 987.65,
  "installed_at": "2000-12-31T12:34:56.000Z",
  "expires_at": "2000-12-31T12:34:56.000Z",
  "fulfilment_order": AdminUserPaymentAccountOrder,
  "fulfilment_order_origin": "string",
  "fulfilment_order_purchase_origin": "string",
  "orders": [AdminUserPaymentAccountOrder]
}

AdminUserSubscription

Description

An administrative UserSubscription representation, including its status, renewal, entitlement, and payment details.

Fields
Field Name Description
id - Int! The id of the UserSubscription.
user_id - Int! The User id that owns the UserSubscription.
project_id - Int! The Project id that owns the UserSubscription.
subscription_id - Int! The Subscription id the UserSubscription is an instance of.
switch_from_subscription_id - Int The Subscription id the UserSubscription was switched from, when applicable.
switch_to_subscription_id - Int The Subscription id the UserSubscription is scheduled to switch to at its next renewal, when status is "switch_at_renewal".
term - Int The UserSubscription's current term number (how many renewals it has completed).
acquired_at - String The UserSubscription's acquisition date (UTC).
expires_at - String The UserSubscription's current expiry date (UTC).
suspendable_at - String The date (UTC) from which the UserSubscription becomes eligible to be suspended.
suspended_at - String The date (UTC) at which the UserSubscription was suspended.
invoiced_at - String The UserSubscription's next invoice date (UTC).
status - UserSubscriptionStatusEnum The UserSubscription's status.
status_name - String The UserSubscription's status, as an upper-case label.
is_valid - Boolean Whether the UserSubscription is currently valid.
is_expired - Boolean Whether the UserSubscription's expires_at date has passed.
is_suspendable - Boolean Whether the UserSubscription is currently eligible to be suspended.
is_account_method_changeable - Boolean Whether the UserSubscription's payment account method may currently be changed.
is_switchable - Boolean Whether the UserSubscription may currently be switched to a different Subscription.
user_subscription_products - [AdminUserSubscriptionProduct] The Products entitled through the UserSubscription, as pivot relations carrying purchase/pricing details.
Arguments
sort_by - [SortByInput]

Sort and order by field(s).

products - [AdminProductListedAsRelation] The Products entitled through the UserSubscription.
Arguments
sort_by - [SortByInput]

Sort and order by field(s).

orders - [AdminUserPaymentAccountOrder] The UserPaymentAccountOrders associated with the UserSubscription.
Arguments
sort_by - [SortByInput]

Sort and order by field(s).

subscription - AdminSubscription The Subscription the UserSubscription is an instance of.
switch_to_subscription - AdminSubscription The Subscription the User will switch to at the UserSubscription's next renewal, when status is "switch_at_renewal".
switch_from_subscription - AdminSubscription The Subscription the UserSubscription was switched from, when applicable.
account - AdminUserPaymentAccount The UserPaymentAccount the UserSubscription is billed through.
last_event_type - UserSubscriptionEventTypeEnum The most recent event of importance generated for the UserSubscription, if any.
Example
{
  "id": 42,
  "user_id": 42,
  "project_id": 42,
  "subscription_id": 42,
  "switch_from_subscription_id": 42,
  "switch_to_subscription_id": 42,
  "term": 42,
  "acquired_at": "2000-12-31T12:34:56.000Z",
  "expires_at": "2000-12-31T12:34:56.000Z",
  "suspendable_at": "2000-12-31T12:34:56.000Z",
  "suspended_at": "2000-12-31T12:34:56.000Z",
  "invoiced_at": "2000-12-31T12:34:56.000Z",
  "status": "string",
  "status_name": "string",
  "is_valid": false,
  "is_expired": true,
  "is_suspendable": false,
  "is_account_method_changeable": true,
  "is_switchable": false,
  "user_subscription_products": [
    AdminUserSubscriptionProduct
  ],
  "products": [AdminProductListedAsRelation],
  "orders": [AdminUserPaymentAccountOrder],
  "subscription": AdminSubscription,
  "switch_to_subscription": AdminSubscription,
  "switch_from_subscription": AdminSubscription,
  "account": AdminUserPaymentAccount,
  "last_event_type": "first_payment_error"
}

AdminUserSubscriptionProduct

Description

A Product entitled to a User through a UserSubscription.

Fields
Field Name Description
id - Int The id of the UserSubscriptionProduct.
product_id - Int The id of the Product entitled through the UserSubscription.
user_subscription_id - Int The UserSubscription id that entitles the Product.
user_payment_account_order_id - Int The UserPaymentAccountOrder id through which the Product was entitled.
purchase_num - Int The quantity of the Product entitled through the UserSubscription.
product_price - Float A price override for the Product in the context of this UserSubscription, replacing its own price.
created_at - String The UserSubscriptionProduct's creation date (UTC).
renews_at - String The date (UTC) on which the entitlement to the Product next renews.
expires_at - String The date (UTC) until which the entitlement to the Product remains valid.
product - AdminProduct The entitled Product.
order - AdminUserPaymentAccountOrder The UserPaymentAccountOrder through which the Product was entitled.
Example
{
  "id": 42,
  "product_id": 42,
  "user_subscription_id": 42,
  "user_payment_account_order_id": 42,
  "purchase_num": 42,
  "product_price": 7.99,
  "created_at": "2000-12-31T12:34:56.000Z",
  "renews_at": "2000-12-31T12:34:56.000Z",
  "expires_at": "2000-12-31T12:34:56.000Z",
  "product": AdminProduct,
  "order": AdminUserPaymentAccountOrder
}

AdminUsersListedWithPagination

Description

A paginated list of Users.

Fields
Field Name Description
items - [AdminUser] The Users.
pagination - Pagination The pagination details for this list.
Example
{
  "items": [AdminUser],
  "pagination": Pagination
}

AnalyticsSearchTagTypeEnum

Description

Analytics search-term tag

Values
Enum Value Description

article

Search-term telemetry for Article searches.

category

Search-term telemetry for Category searches.

page

Search-term telemetry for Page searches.
Example
"article"

Article

Description

An Article.

Fields
Field Name Description
id - Int! The id of the Article.
project_id - Int! The Project id that owns the Article.
parent_id - Int The id of the parent Article, for a hierarchical Article.
name - String The Article's name.
url_slug - String The Article's url slug.
Arguments
is_force_lowercase - Boolean

Force the value to lowercase (default).

full_url_slug - String The Article's full (hierarchical) url slug.
Arguments
is_force_lowercase - Boolean

Force the value to lowercase (default).

canonical_url - String The Article's canonical url.
canonical_title - String The Article's canonical title.
episode_list_display_type - String How child episodes are displayed for this Article, when it is a season-type Article.
upsell_product_call_to_action_tag - String The call-to-action tag shown alongside the Article's upsell Products.
ribbon_title - String The Article thumbnail's ribbon title.
ribbon_settings - String Style settings (JSON) for the Article thumbnail's ribbon.
type - ArticleTypeEnum The Article's type (e.g. film, trailer, episode).
metas - [ArticleMeta] The Article's SEO/metadata key-value entries.
Arguments
output - MetaOutputTypeEnum

Output format (html, stripped_html, markdown).

group - String

Filter to meta entries in this group.

icons - [File] The Article's icon Files.
images - [File] The Article's image Files.
posters - [File] The Article's poster image Files.
videos - [File] The Article's video Files.
documents - [File] The Article's document Files.
assets - [Asset] The Assets linked to this Article.
categories - [CategoryListedAsRelation] The Categories this Article belongs to.
Arguments
type - CategoryTypeEnum

Filter by Category type.

sort_by - [SortByInput]

Sort and order by field(s).

parent_id - Int

Filter to direct children of the Category with this id.

geo_regions - [GeoRegion] The geo regions this Article's availability is restricted to.
locale_regions - [LocaleRegion] The locale regions this Article's availability is restricted to.
products - [ProductListedAsRelation] The Article's related Products.
upsell_products - [ProductListedAsRelation] The Article's related upsell Products.
created_at - String The creation date (UTC) of the Article.
updated_at - String The last modification date (UTC) of the Article.
popularity_index - Int The Article's popularity index.
visibility - ResourceVisibilityEnum The Article's own visibility as a resource (e.g. whether its detail page is displayable), independent of whether its linked Asset is playable or entitled.
discoverability - ArticleDiscoverabilityEnum The Article's discoverability (e.g. whether it appears in search/listings).
is_downloadable - Boolean Whether the Article is available for in-app download.
is_auth_required - Boolean Whether the Article requires authentication to view.
published_at - String Publish-at date (UTC) for the Article.
linked_asset_playable_from - String Visible-from date (UTC) for the primary Asset (typically of live-streaming type) linked to the Article.
status - Int The Article's status.
featured_on_categories - [CategoryListedAsRelation] The Categories this Article is featured on.
recommended_articles - [ArticleRelated] The Article's recommended Articles.
children - [Article] The Article's child Articles. At most 200 nested Articles (all levels combined, in their listed order) are returned for the requested Article, the rest is left out without an error: request a smaller part of a large series instead, e.g. one season at a time.
entitling_subscriptions - [SubscriptionListed] The Subscriptions that can entitle access to this Article.
Example
{
  "id": 42,
  "project_id": 42,
  "parent_id": 42,
  "name": "string",
  "url_slug": "url-slug-string",
  "full_url_slug": "url-slug-string",
  "canonical_url": "https://url.example.com",
  "canonical_title": "string",
  "episode_list_display_type": "string",
  "upsell_product_call_to_action_tag": "string",
  "ribbon_title": "string",
  "ribbon_settings": "string",
  "type": "episode",
  "metas": [ArticleMeta],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "documents": [File],
  "assets": [Asset],
  "categories": [CategoryListedAsRelation],
  "geo_regions": [GeoRegion],
  "locale_regions": [LocaleRegion],
  "products": [ProductListedAsRelation],
  "upsell_products": [ProductListedAsRelation],
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "popularity_index": 42,
  "visibility": "everyone",
  "discoverability": "hidden",
  "is_downloadable": true,
  "is_auth_required": false,
  "published_at": "2000-12-31T12:34:56.000Z",
  "linked_asset_playable_from": "string",
  "status": "string",
  "featured_on_categories": [CategoryListedAsRelation],
  "recommended_articles": [ArticleRelated],
  "children": [Article],
  "entitling_subscriptions": [SubscriptionListed]
}

ArticleAssetInput

Description

Links an Asset to an Article, controlling its role (linked_type) and visibility (accessibility) within that Article.

Fields
Input Field Description
id - Int The id of the Asset to link.
accessibility - ResourceAccessibilityEnum The Asset's accessibility within this Article. Omit to fall back to the linked_type's own default.
linked_type - ArticleAssetLinkedTypeEnum The Asset's role within this Article (e.g. episode, film, preview, trailer).
Example
{"id": 42, "accessibility": "everyone", "linked_type": "episode"}

ArticleAssetLinkedTypeEnum

Description

How an Asset is linked to an Article (e.g. episode, film, preview, trailer), which also determines its default accessibility.

Values
Enum Value Description

episode

A regular episode of the Article. Defaults to authorized-only accessibility unless overridden explicitly.

film

The main film content of the Article. Defaults to authorized-only accessibility unless overridden explicitly.

preview

A preview clip of the Article. Defaults to authenticated-only accessibility unless overridden explicitly.

trailer

A trailer for the Article. Defaults to everyone accessibility unless overridden explicitly.
Example
"episode"

ArticleAssetPlayEntitlement

Description

An Article-Asset playback entitlement.

Fields
Field Name Description
media_provider - String The media provider
encryption_type - String The DRM/encryption technology applied to this playback entitlement. Null when no encryption is applied (never the literal "none" value), for compatibility with legacy clients.
encryption_provider - String The encryption provider
manifest - String Streaming endpoint manifests
protocol - String The stream type
mime_type - String The stream mime type
token - String Play back entitlement token
content_key_id - String The content key id of the entitlement
key_delivery_url - String Key delivery url
hls_key_uri - String Key delivery uri
expires_in - Int Play back entitlement token ttl
download_expires_in - Int download policy ttl
is_live - Boolean Whether this playback is being treated as live. Only meaningful for Assets of type "video" or "audio": a live_video-type Asset's live-ness is already implied by its type, independently of this flag.
Example
{
  "media_provider": "string",
  "encryption_type": "string",
  "encryption_provider": "string",
  "manifest": "string",
  "protocol": "string",
  "mime_type": "string",
  "token": "string",
  "content_key_id": "string",
  "key_delivery_url": "https://url.example.com",
  "hls_key_uri": "string",
  "expires_in": 86400,
  "download_expires_in": 86400,
  "is_live": true
}

ArticleDiscoverabilityEnum

Description

The Article's discoverability through listing/browse/search surfaces.

Values
Enum Value Description

hidden

Hidden from all listing/browse/search surfaces, but still directly reachable by id or direct link.

discoverable

Discoverable through listing/browse/search surfaces.
Example
"hidden"

ArticleEntitlementOriginEnum

Description

The Article's entitlement origin, the resource or actor that granted access to play it.

Values
Enum Value Description

subscription

Entitled through an active Subscription.

product

Entitled through a purchased Product.

public

Entitled because the Article is publicly accessible, without requiring purchase or authentication.

user

Entitled directly on the User's account, outside of a Product or Subscription.

admin

Entitled manually by an admin operator.

client

Entitled through the requesting Client application itself.

webhook

Entitled through an external webhook integration.
Example
"subscription"

ArticleEpisodeListDisplayTypeEnum

Description

How a season's episode list should be displayed.

Values
Enum Value Description

grid

Display the season's episodes as a grid of posters.

list

Display the season's episodes as a vertical list.
Example
"grid"

ArticleFileInput

Description

A File attached to an Article.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
article_id - Int The Article id that owns this File.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "article_id": 42
}

ArticleListFilterTypeEnum

Description

A preconfigured Article list filter, used in place of explicit sort_by/filter_by arguments.

Values
Enum Value Description

trending

Articles trending in recent popularity.

popular

The most popular Articles overall.

recent

The most recently added Articles.
Example
"trending"

ArticleListedAsRelation

Description

An Article, as it appears when listed as a related resource of another Article.

Fields
Field Name Description
id - Int! The id of the Article.
project_id - Int! The Project id that owns the Article.
parent_id - Int The id of the parent Article, for a hierarchical Article.
name - String The Article's name.
url_slug - String The Article's url slug.
Arguments
is_force_lowercase - Boolean

Force the value to lowercase (default).

full_url_slug - String The Article's full (hierarchical) url slug.
Arguments
is_force_lowercase - Boolean

Force the value to lowercase (default).

canonical_url - String The Article's canonical url.
canonical_title - String The Article's canonical title.
episode_list_display_type - String How child episodes are displayed for this Article, when it is a season-type Article.
upsell_product_call_to_action_tag - String The call-to-action tag shown alongside the Article's upsell Products.
ribbon_title - String The Article thumbnail's ribbon title.
ribbon_settings - String Style settings (JSON) for the Article thumbnail's ribbon.
type - ArticleTypeEnum The Article's type (e.g. film, trailer, episode).
metas - [ArticleMeta] The Article's SEO/metadata key-value entries.
Arguments
output - MetaOutputTypeEnum

Output format (html, stripped_html, markdown).

group - String

Filter to meta entries in this group.

icons - [File] The Article's icon Files.
images - [File] The Article's image Files.
posters - [File] The Article's poster image Files.
videos - [File] The Article's video Files.
documents - [File] The Article's document Files.
assets - [Asset] The Assets linked to this Article.
categories - [CategoryListedAsRelation] The Categories this Article belongs to.
Arguments
type - CategoryTypeEnum

Filter by Category type.

sort_by - [SortByInput]

Sort and order by field(s).

parent_id - Int

Filter to direct children of the Category with this id.

upsell_products - [ProductListedAsRelation] The Article's related upsell Products.
created_at - String The creation date (UTC) of the Article.
updated_at - String The last modification date (UTC) of the Article.
popularity_index - Int The Article's popularity index.
visibility - ResourceVisibilityEnum The Article's own visibility as a resource (e.g. whether its detail page is displayable), independent of whether its linked Asset is playable or entitled.
discoverability - ArticleDiscoverabilityEnum The Article's discoverability (e.g. whether it appears in search/listings).
is_downloadable - Boolean Whether the Article is available for in-app download.
is_auth_required - Boolean Whether the Article requires authentication to view.
published_at - String Publish-at date (UTC) for the Article.
linked_asset_playable_from - String Visible-from date (UTC) for the primary Asset (typically of live-streaming type) linked to the Article.
status - Int The Article's status.
Example
{
  "id": 42,
  "project_id": 42,
  "parent_id": 42,
  "name": "string",
  "url_slug": "url-slug-string",
  "full_url_slug": "url-slug-string",
  "canonical_url": "https://url.example.com",
  "canonical_title": "string",
  "episode_list_display_type": "string",
  "upsell_product_call_to_action_tag": "string",
  "ribbon_title": "string",
  "ribbon_settings": "string",
  "type": "episode",
  "metas": [ArticleMeta],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "documents": [File],
  "assets": [Asset],
  "categories": [CategoryListedAsRelation],
  "upsell_products": [ProductListedAsRelation],
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "popularity_index": 42,
  "visibility": "everyone",
  "discoverability": "hidden",
  "is_downloadable": true,
  "is_auth_required": false,
  "published_at": "2000-12-31T12:34:56.000Z",
  "linked_asset_playable_from": "string",
  "status": "string"
}

ArticleListedAsResource

Description

An Article, as it appears within a generic resource listing.

Fields
Field Name Description
id - Int! The id of the resource
name - String The name of resource
visibility - ResourceVisibilityEnum The Article's visibility.
Example
{
  "id": 42,
  "name": "string",
  "visibility": "everyone"
}

ArticleMeta

Description

A metadata property on an Article.

Fields
Field Name Description
id - Int The metadata property id
key - String The metadata property key
value - String The metadata property value
type - MetaTypeEnum The metadata property type
format - String The metadata property rendering format
article_id - Int The Article id that owns this metadata property.
Example
{
  "id": 42,
  "key": "string",
  "value": "string",
  "type": "array",
  "format": "string",
  "article_id": 42
}

ArticleMetaInput

Description

A metadata property on an Article.

Fields
Input Field Description
id - Int The metadata property id
key - String The metadata property key
value - String The metadata property value
type - MetaTypeEnum The metadata property type
format - MetaFormatEnum The metadata property rendering format
locale - String The metadata property locale
article_id - Int The Article id that owns this metadata property.
Example
{
  "id": 42,
  "key": "string",
  "value": "string",
  "type": "array",
  "format": "date",
  "locale": "string",
  "article_id": 42
}

ArticleMetaTranslation

Description

A single-locale translation of an ArticleMeta property.

Fields
Field Name Description
id - Int The metadata property translation id
value - String The metadata property translation value
locale - String The metadata property translation locale
article_meta_id - Int The ArticleMeta id that this translation belongs to.
Example
{
  "id": 42,
  "value": "string",
  "locale": "string",
  "article_meta_id": 42
}

ArticlePlayAudioQualityEnum

Description

The audio stream quality

Values
Enum Value Description

audio_512kb

512kbps audio bitrate (highest quality, multi-channel/AC3 range).

audio_384kb

384kbps audio bitrate (multi-channel/AC3 range).

audio_256kb

256kbps audio bitrate (maximum for standard stereo).

audio_128kb

128kbps audio bitrate (lowest quality).
Example
"audio_512kb"

ArticlePlayProtocolEnum

Description

The media stream protocol

Values
Enum Value Description

hls

HTTP Live Streaming (general usage): Recommended for the Apple ecosystem and most other clients, including Chromecast, SmartTV etc.

dash

MPEG Dynamic Adaptive Streaming over HTTP (general usage): Recommended for the Google/Android ecosystem.

mss

Microsoft Smooth Streaming: DEPRECATED. Not recommended for general usage and not under default support.

mss_v20

Microsoft Smooth Streaming (manifest version 2.0, legacy/compatibility variant): DEPRECATED. Not recommended for general usage and not under default support.

hls_v3

HTTP Live Streaming (manifest version 3, legacy/compatibility variant): Not recommended for general usage and not under default support.

hls_v4

HTTP Live Streaming (manifest version 4, legacy/compatibility variant): Not recommended for general usage and not under default support.

hls_v7

HTTP Live Streaming (manifest version 7, legacy/compatibility variant): Not recommended for general usage and not under default support.

pd

Progressive Download (direct, non-adaptive file playback). Only to be used for extreme legacy devices, not under default support.
Example
hls

ArticlePlayResolutionEnum

Description

The media stream resolution

Values
Enum Value Description

w3840_h2160

4K Ultra HD (3840×2160, landscape).

w2560_h1440

Quad HD (2560×1440, landscape).

w1920_h1080

Full HD (1920×1080, landscape).

w1280_h720

HD (1280×720, landscape).

w960_h540

qHD (960×540, landscape).

w640_h360

nHD (640×360, landscape).

w320_h180

Lowest supported resolution (320×180, landscape).

w2160_h3840

4K Ultra HD (2160×3840, portrait).

w1440_h2560

Quad HD (1440×2560, portrait).

w1080_h1920

Full HD (1080×1920, portrait).

w720_h1280

HD (720×1280, portrait).

w540_h960

qHD (540×960, portrait).

w360_h640

nHD (360×640, portrait).

w180_h320

Lowest supported resolution (180×320, portrait).
Example
"w3840_h2160"

ArticleRelated

Description

An Article, as it appears when listed as related to a User's viewing or entitlement history.

Fields
Field Name Description
id - Int! The id of the Article.
project_id - Int! The Project id that owns the Article.
parent_id - Int The id of the parent Article, for a hierarchical Article.
name - String The Article's name.
url_slug - String The Article's url slug.
Arguments
is_force_lowercase - Boolean

Force the value to lowercase (default).

full_url_slug - String The Article's full (hierarchical) url slug.
Arguments
is_force_lowercase - Boolean

Force the value to lowercase (default).

canonical_url - String The Article's canonical url.
canonical_title - String The Article's canonical title.
episode_list_display_type - String How child episodes are displayed for this Article, when it is a season-type Article.
upsell_product_call_to_action_tag - String The call-to-action tag shown alongside the Article's upsell Products.
ribbon_title - String The Article thumbnail's ribbon title.
ribbon_settings - String Style settings (JSON) for the Article thumbnail's ribbon.
type - ArticleTypeEnum The Article's type (e.g. film, trailer, episode).
metas - [ArticleMeta] The Article's SEO/metadata key-value entries.
Arguments
output - MetaOutputTypeEnum

Output format (html, stripped_html, markdown).

group - String

Filter to meta entries in this group.

icons - [File] The Article's icon Files.
images - [File] The Article's image Files.
posters - [File] The Article's poster image Files.
videos - [File] The Article's video Files.
documents - [File] The Article's document Files.
assets - [Asset] The Assets linked to this Article.
categories - [CategoryListedAsRelation] The Categories this Article belongs to.
Arguments
type - CategoryTypeEnum

Filter by Category type.

sort_by - [SortByInput]

Sort and order by field(s).

parent_id - Int

Filter to direct children of the Category with this id.

geo_regions - [GeoRegion] The geo regions this Article's availability is restricted to.
locale_regions - [LocaleRegion] The locale regions this Article's availability is restricted to.
products - [ProductListedAsRelation] The Article's related Products.
upsell_products - [ProductListedAsRelation] The Article's related upsell Products.
created_at - String The creation date (UTC) of the Article.
updated_at - String The last modification date (UTC) of the Article.
popularity_index - Int The Article's popularity index.
visibility - ResourceVisibilityEnum The Article's own visibility as a resource (e.g. whether its detail page is displayable), independent of whether its linked Asset is playable or entitled.
discoverability - ArticleDiscoverabilityEnum The Article's discoverability (e.g. whether it appears in search/listings).
is_downloadable - Boolean Whether the Article is available for in-app download.
is_auth_required - Boolean Whether the Article requires authentication to view.
published_at - String Publish-at date (UTC) for the Article.
linked_asset_playable_from - String Visible-from date (UTC) for the primary Asset (typically of live-streaming type) linked to the Article.
status - Int The Article's status.
asset_id - Int The Asset id this related Article represents.
is_favourite - Boolean Whether the Article is marked as favourite (only set when this related Article represents a viewed UserArticle).
is_continue - Boolean Whether the Article is marked as continue-watching (only set when this related Article represents a viewed UserArticle).
is_history - Boolean Whether the Article is marked as history (only set when this related Article represents a viewed UserArticle).
subtitle_locale - String The User's selected subtitle locale (only set when this related Article represents a viewed UserArticle).
audio_locale - String The User's selected audio locale (only set when this related Article represents a viewed UserArticle).
rating_value - Float The User's assigned rating value for the Article (only set when this related Article represents a viewed UserArticle).
root_article_id - Int The id of the entitled Article's root ancestor (typically an Article of type "series").
appa - Float The Asset's absolute play position (only set when this related Article represents a viewed UserArticle).
appr - Float The Asset's relative play position (only set when this related Article represents a viewed UserArticle).
linked_type - ArticleAssetLinkedTypeEnum The Article's linked Asset type.
entitling_product_id - Int The id of the Product that entitled this Article (only set when this related Article represents an entitled Article).
issuing_user_payment_account_order_id - Int The id of the UserPaymentAccountOrder that issued this Article's entitlement (only set when this related Article represents an entitled Article).
is_entitlement_expired - Boolean Whether the Article's entitlement has expired (only set when this related Article represents an entitled Article).
expires_in - Int The entitlement's expiry interval, in seconds (only set when this related Article represents an entitled Article).
expires_at - String The entitlement's expiry date (UTC) (only set when this related Article represents an entitled Article).
entitled_at - String The entitlement date (UTC) (only set when this related Article represents an entitled Article).
nomadic_updated_at - String The nomadic UserArticle's last-updated date (UTC) (only set when this related Article represents a viewed UserArticle).
nomadic_completed_at - String The nomadic UserArticle's completion date (UTC) (only set when this related Article represents a viewed UserArticle).
nomadic_num_completed - Int The number of times the nomadic UserArticle has been completely viewed (only set when this related Article represents a viewed UserArticle).
Example
{
  "id": 42,
  "project_id": 42,
  "parent_id": 42,
  "name": "string",
  "url_slug": "url-slug-string",
  "full_url_slug": "url-slug-string",
  "canonical_url": "https://url.example.com",
  "canonical_title": "string",
  "episode_list_display_type": "string",
  "upsell_product_call_to_action_tag": "string",
  "ribbon_title": "string",
  "ribbon_settings": "string",
  "type": "episode",
  "metas": [ArticleMeta],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "documents": [File],
  "assets": [Asset],
  "categories": [CategoryListedAsRelation],
  "geo_regions": [GeoRegion],
  "locale_regions": [LocaleRegion],
  "products": [ProductListedAsRelation],
  "upsell_products": [ProductListedAsRelation],
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "popularity_index": 42,
  "visibility": "everyone",
  "discoverability": "hidden",
  "is_downloadable": false,
  "is_auth_required": true,
  "published_at": "2000-12-31T12:34:56.000Z",
  "linked_asset_playable_from": "string",
  "status": "string",
  "asset_id": 42,
  "is_favourite": false,
  "is_continue": true,
  "is_history": false,
  "subtitle_locale": "string",
  "audio_locale": "string",
  "rating_value": 987.65,
  "root_article_id": 42,
  "appa": 123.45,
  "appr": 0.246,
  "linked_type": "film",
  "entitling_product_id": 42,
  "issuing_user_payment_account_order_id": 42,
  "is_entitlement_expired": true,
  "expires_in": 86400,
  "expires_at": "2000-12-31T12:34:56.000Z",
  "entitled_at": "2000-12-31T12:34:56.000Z",
  "nomadic_updated_at": "2000-12-31T12:34:56.000Z",
  "nomadic_completed_at": "2000-12-31T12:34:56.000Z",
  "nomadic_num_completed": 42
}

ArticleTypeEnum

Description

The Article's type.

Values
Enum Value Description

episode

A single episode within a season (depth 2 in the series hierarchy).

film

A standalone film, not part of a series.

season

A season within a series, grouping its episodes (depth 1 in the series hierarchy).

series

A series, the top-level container for its seasons and episodes.

text

A standalone text/article resource, not a playable video.

video

A standalone playable video, not part of a series.
Example
"episode"

Asset

Description

An Asset.

Fields
Field Name Description
id - Int! The id of the Asset
project_id - Int! The Project id that owns the Asset
source_blob_name - String A descriptive name for the Asset's uploaded source file.
thumbnail_asset_id - String The Asset's identifier for its generated thumbnail image at the media provider.
is_live - Boolean Whether this Asset is being treated as live. Only meaningful for Assets of type "video" or "audio": a live_video-type Asset's live-ness is already implied by its type, independently of this flag.
type - AssetTypeEnum The Asset's media type.
linked_type - ArticleAssetLinkedTypeEnum The Asset's role within its Article (e.g. episode, film, preview, trailer).
accessibility - ResourceAccessibilityEnum The Asset's accessibility within its Article.
time_marker_intro_start - Float The time marker of the start of the intro (seconds since start)
time_marker_intro_end - Float The time marker of the end of the intro (seconds since start)
time_marker_end - Float The time marker of the end of the Asset (seconds since start)
duration - Float! The Asset's duration (seconds)
aspect_ratio - String The Asset's human-readable aspect ratio (e.g. 16x9)
aspect_ratio_fraction - String The Asset's fractional aspect ratio (e.g. 1.778)
subtitles - [File] The Asset's subtitle Files
Arguments
format - FileSubtitleFormatEnum

The subtitle File's format

screenshots - [File] The Asset's screenshot image Files
playable_from - String Visible-from date (UTC) for the Asset (typically used to indicate when a live event will begin).
playable_until - String Visible-until date (UTC) for the Asset (typically used to indicate when a live event will end).
published_from - String Publish-from date (UTC) for the Asset
published_until - String Publish-until date (UTC) for the Asset
created_at - String The creation date (UTC) of the Asset
updated_at - String The last modification date (UTC) of the Asset
Example
{
  "id": 42,
  "project_id": 42,
  "source_blob_name": "string",
  "thumbnail_asset_id": "string",
  "is_live": false,
  "type": "audio",
  "linked_type": "film",
  "accessibility": "everyone",
  "time_marker_intro_start": 123.45,
  "time_marker_intro_end": 987.65,
  "time_marker_end": 123.45,
  "duration": 987.65,
  "aspect_ratio": "16x9",
  "aspect_ratio_fraction": 1.778,
  "subtitles": [File],
  "screenshots": [File],
  "playable_from": "string",
  "playable_until": "string",
  "published_from": "string",
  "published_until": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

AssetEncodingProfile

Description

A selectable encoding profile a Project can offer, with its display metadata.

Fields
Field Name Description
encoding_profile_name - AssetEncodingProfileNameEnum The encoding profile's name.
tag - String A short display tag for the encoding profile (e.g. "HD").
label - String A human-readable label for the encoding profile.
media_type - String The media type the encoding profile applies to (video or audio).
description - String A human-readable description of what the encoding profile produces.
Example
{
  "encoding_profile_name": "sd_540p_16x9",
  "tag": "string",
  "label": "string",
  "media_type": "string",
  "description": "string"
}

AssetEncodingProfileNameEnum

Description

Encoding profile name applied to an Asset after source upload.

Values
Enum Value Description

sd_540p_16x9

Standard Definition, 540p, landscape (16:9).

sd_portrait_540p_9x16

Standard Definition, 540p, portrait (9:16).

hd_1080p_16x9

High Definition, 1080p, landscape (16:9).

hd_portrait_1080p_9x16

High Definition, 1080p, portrait (9:16).

uhd4k_2160p_16x9

4K Ultra HD, 2160p, landscape (16:9).

auto_16x9

Automatically selects the closest fixed profile (SD/HD/4K) based on the source video's own resolution.

pass_through

Builds a custom encoding ladder directly from the source video's own tracks, rather than a fixed SD/HD/4K profile.

sd_audio_16x9

Audio-only encoding profile, for audio-type Assets.
Example
"sd_540p_16x9"

AssetEncryptionProfile

Description

A selectable encryption profile a Project can offer, with its display metadata.

Fields
Field Name Description
encryption_profile_name - AssetEncryptionProfileNameEnum The encryption profile's name.
tag - String A short display tag for the encryption profile (e.g. "DRM").
label - String A human-readable label for the encryption profile.
description - String A human-readable description of what the encryption profile applies.
is_best_match - Boolean Whether this encryption profile is part of the "best match" selection. At most two profiles are eligible (typically profile "none" and one other encryption profile).
Example
{
  "encryption_profile_name": "none",
  "tag": "string",
  "label": "string",
  "description": "string",
  "is_best_match": false
}

AssetEncryptionProfileNameEnum

Description

Encryption profile name applied to an Asset after source upload.

Values
Enum Value Description

none

No DRM/encryption. Encryption and DRM are not applied to the video streams.

cenc_aes

Hybrid DRM/ClearKey encryption. DRM (Widevine/PlayReady) is applied to DASH and MSS video streams, ClearKey encryption is applied to HLS video streams.

cenc_fps

Full DRM encryption. DRM (Widevine/PlayReady/Fairplay) is applied to DASH, MSS and HLS video streams.
Example
"none"

AssetFileInput

Description

Updates an existing File's metadata (type, duration, locale) as part of an Asset mutation.

Fields
Input Field Description
id - Int The id of the File to update.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
asset_id - Int The id of the Asset this File belongs to.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "asset_id": 42
}

AssetMediaProviderNameEnum

Description

Media provider type used for Asset source upload and processing.

Values
Enum Value Description

mock

Test provider with no real media pipeline; used for development and testing only.

aws

Amazon Web Services media pipeline (MediaConvert/MediaPackage/MediaLive).

jetstream

JetStream media pipeline.
Example
"mock"

AssetState

Description

The actual Asset state, including local and remote status properties.

Fields
Field Name Description
current_asset_status_id - Int The Asset's current locally-persisted status id.
current_asset_status_name - String The Asset's current locally-persisted status name.
calculated_asset_status_id - Int The Asset's status id as freshly recalculated from the media provider's live state, which may differ from current_asset_status_id if they have drifted out of sync.
calculated_asset_status_name - String The Asset's status name as freshly recalculated from the media provider's live state, which may differ from current_asset_status_name if they have drifted out of sync.
live_remote_asset_id - String The live-video channel's identifier at the media provider.
live_remote_asset_status_name - String The live-video channel's raw status name at the media provider.
live_remote_asset_status_description - String A human-readable description of the live-video channel's status at the media provider.
is_live_remote_asset_source_video_encoding - Boolean Whether the live-video channel is currently encoding an incoming source audio/video stream.
is_live_remote_asset_encoded_video_packaging - Boolean Whether the live-video channel is currently outputting an encoded audio/video stream.
is_asset_policies_configured - Boolean Whether the Asset's persisted authorisation policies fully satisfy its encryption profile; null when not evaluated (e.g. the Asset isn't currently calculated as published)
Example
{
  "current_asset_status_id": "string",
  "current_asset_status_name": "string",
  "calculated_asset_status_id": "string",
  "calculated_asset_status_name": "string",
  "live_remote_asset_id": "string",
  "live_remote_asset_status_name": "string",
  "live_remote_asset_status_description": "string",
  "is_live_remote_asset_source_video_encoding": true,
  "is_live_remote_asset_encoded_video_packaging": false,
  "is_asset_policies_configured": true
}

AssetStatusEnum

Description

The Asset's lifecycle status.

Values
Enum Value Description

source_asset_created

Asset record created; encoding has not started yet.

asset_encoding

Media provider is encoding the source file.

asset_encoding_error

Encoding failed.

asset_encoded

Encoding finished successfully; thumbnail generation is next.

thumbnail_processing

Thumbnail generation in progress.

thumbnail_processing_error

Thumbnail generation failed.

thumbnails_created

Thumbnails generated successfully; ready to be published.

policy_error

DRM/content-key policy configuration failed. No longer produced by current media-provider integrations, reserved for legacy/future use.

not_published

Fully processed but not published; not yet playable.

publish_request

Publish requested and pending.

publish_error

Publish failed.

published

Published and playable.

unpublish_request

Unpublish requested and pending.

unpublish_error

Unpublish failed.

republish_request

Republish requested while already published, e.g. after a settings or DRM change.

asset_delete_request

Delete requested and pending.

asset_delete_error

Delete failed.

asset_deleted

Permanently deleted.

source_asset_uploading

Source file upload in progress.

source_asset_upload_completed

Source file upload finished; awaiting preprocessing.

source_asset_preprocessing

Source file preprocessing/sanity checks in progress.

source_asset_preprocessing_error

Source file preprocessing failed.

source_asset_upload_error

Source file upload failed.

publishing

Publish in progress.

source_asset_sanity_error

Source file failed sanity validation.

asset_content_replace_request

Content replacement requested and pending, via AssetContentReplace.

asset_content_replacing

Content replacement in progress.

asset_content_replace_error

Content replacement failed.

live_asset_idle

Live-video channel exists but is not currently running.

live_asset_created

Live-video channel created; not yet started.

live_asset_creation_error

Live-video channel creation failed.

live_asset_running

Live-video channel is active and playable.

live_asset_start_request

Live-video channel start requested and pending.

live_asset_starting

Live-video channel start in progress.

live_asset_starting_error

Live-video channel failed to start.

live_asset_stop_request

Live-video channel stop requested and pending.

live_asset_stopping

Live-video channel stop in progress.

live_asset_stopping_error

Live-video channel failed to stop.
Example
"source_asset_created"

AssetTypeEnum

Description

The Asset's media type.

Values
Enum Value Description

audio

Audio-only Asset, with no video track.

mock

Test Asset backed by the mock media provider, not a real media pipeline.

video

Regular on-demand video Asset.

live_video

Live-video Asset backed by a live-streaming channel.
Example
"audio"

Authenticate

Description

Authentication credentials

Fields
Field Name Description
access_token - String The authentication token
refresh_token - String The refresh token
expires_in - Int Expiration time in seconds
token_type - String The access token type
user_id - Int The user id belonging to the authentication token (in case token was issued for an administrator, this property represents the user id of that administrator)
user_email - String The user email belonging to the authentication token (in case token issued for an administrator, this property represents the email address of that administrator)
active_project_id - Int The active project_id for the issued authentication token
url - String A url relevant for given credentials may be issued if applicable
is_terms_and_conditions_renewal_required - Boolean Renewed acceptance of the terms and conditions is required
Example
{
  "access_token": "string",
  "refresh_token": "string",
  "expires_in": 86400,
  "token_type": "string",
  "user_id": 42,
  "user_email": "foo@example.com",
  "active_project_id": 42,
  "url": "https://url.example.com",
  "is_terms_and_conditions_renewal_required": true
}

Boolean

Description

The Boolean scalar type represents true or false.

Example
true

CategoryFileInput

Description

A File attached to a Category.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
category_id - Int The Category id that owns this File.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "category_id": 42
}

CategoryListFilterTypeEnum

Description

A preconfigured Category list filter, used in place of an explicit type argument.

Values
Enum Value Description

article_taggable

Limit to Categories that can have Articles explicitly tagged to them (type "article_label").
Example
"article_taggable"

CategoryListedAsRelation

Description

A Category, as it appears when listed as a related resource of another resource.

Fields
Field Name Description
id - Int! The id of the Category.
project_id - Int! The Project id that owns this Category.
name - String The Category's name.
url_slug - String The Category's url slug.
Arguments
is_force_lowercase - Boolean

Whether to force the value to lowercase.

full_url_slug - String The Category's full url slug.
Arguments
is_force_lowercase - Boolean

Whether to force the value to lowercase.

canonical_url - String The Category's canonical url.
type - CategoryTypeEnum The Category's type.
metas - [CategoryMeta] The Category's metadata properties.
Arguments
output - MetaOutputTypeEnum

The output format to render each metadata property's value in (html, stripped_html, markdown).

group - String

Filter by the metadata property's group name.

icons - [File] The Category's icon Files.
images - [File] The Category's image Files.
videos - [File] The Category's video Files.
parent_id - Int The id of the Category's parent Category.
child_metas - [String] The metadata field names available on this Category's child Categories.
created_at - String The Category's creation date (UTC).
updated_at - String The Category's last modification date (UTC).
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "url_slug": "url-slug-string",
  "full_url_slug": "url-slug-string",
  "canonical_url": "https://url.example.com",
  "type": "article_label",
  "metas": [CategoryMeta],
  "icons": [File],
  "images": [File],
  "videos": [File],
  "parent_id": 42,
  "child_metas": ["string"],
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

CategoryListedAsResource

Description

A Category, as it appears within a generic resource listing.

Fields
Field Name Description
id - Int! The id of the resource
name - String The name of resource
visibility - ResourceVisibilityEnum The Category's visibility.
Example
{
  "id": 42,
  "name": "string",
  "visibility": "everyone"
}

CategoryMeta

Description

A metadata property on a Category.

Fields
Field Name Description
id - Int The metadata property id
key - String The metadata property key
value - String The metadata property value
type - MetaTypeEnum The metadata property type
format - String The metadata property rendering format
category_id - Int The Category id that owns this metadata property.
Example
{
  "id": 42,
  "key": "string",
  "value": "string",
  "type": "array",
  "format": "string",
  "category_id": 42
}

CategoryMetaInput

Description

A metadata property on a Category.

Fields
Input Field Description
id - Int The metadata property id
key - String The metadata property key
value - String The metadata property value
type - MetaTypeEnum The metadata property type
format - MetaFormatEnum The metadata property rendering format
locale - String The metadata property locale
category_id - Int The Category id that owns this metadata property.
Example
{
  "id": 42,
  "key": "string",
  "value": "string",
  "type": "array",
  "format": "date",
  "locale": "string",
  "category_id": 42
}

CategoryMetaTranslation

Description

A single-locale translation of a CategoryMeta property.

Fields
Field Name Description
id - Int The metadata property translation id
value - String The metadata property translation value
locale - String The metadata property translation locale
category_meta_id - Int The CategoryMeta id that this translation belongs to.
Example
{
  "id": 42,
  "value": "string",
  "locale": "string",
  "category_meta_id": 42
}

CategoryTypeEnum

Description

The Category's type.

Values
Enum Value Description

article_label

A regular, manually curated Category (its Articles/Products are explicitly assigned, not auto-populated).

article_popular

An auto-populated Category listing the most popular Articles.

article_recently_added

An auto-populated Category listing the most recently added Articles.

article_trending

An auto-populated Category listing Articles trending in recent popularity.

article_purchased_recommendations

An auto-populated Category listing Article recommendations based on the User's purchase history.
Example
"article_label"

ClientServiceTypeEnum

Description

The configurable service type of an OAuth client.

Values
Enum Value Description

external_admin

External integration client with Admin API access.

external_user

External integration client with User and Device API access.

external_wordpress

External WordPress integration client with User and Device API access.

external_integration

External identity integration client with tenant identity access.
Example
"external_admin"

CoreProject

Description

A core Project

Fields
Field Name Description
id - Int! The id of the Project.
name - String The Project's name.
created_at - String The Project's creation date-time (UTC).
updated_at - String The Project's last modification date-time (UTC).
users - [CoreUser] The Users related to this Project.
managers - [CoreUser] The manager Users related to this Project.
status - Int The Project's lifecycle status.
status_label - String The Project's lifecycle status label.
Example
{
  "id": 42,
  "name": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "users": [CoreUser],
  "managers": [CoreUser],
  "status": "string",
  "status_label": "string"
}

CoreUser

Description

A core User.

Fields
Field Name Description
id - Int! The id of the User.
project_id - Int The Project id that owns the User.
name - String The User's name.
display_name - String The User's display name, typically the User's first name or first part of the e-mail address.
email - String The User's e-mail address.
gender - UserGenderTypeEnum The User's gender.
locale - String The User's locale (language).
subtitle_locale - String The User's preferred subtitle locale (language).
audio_locale - String The User's preferred audio locale (language).
status - UserStatusEnum The User's verification status.
address - String The User's address.
postal_code - String The User's postal code.
city - String The User's city.
country - String The User's country.
geo_region_code - String The User's country code.
phone - String The User's phone number.
is_phone_verified - UserPhoneStatusEnum The User's phone number verification status.
birthday - String The User's birthday.
height - Float The User's height.
weight - Float The User's weight.
custom_data - String Custom data stored for the User.
is_newsletter_opt_in - Boolean Whether the User has opted in to the newsletter.
is_terms_and_conditions_opt_in - Boolean Whether the User has accepted the terms and conditions.
is_marked_for_deletion - Boolean Whether the User's account is marked for deletion.
delete_at - String The date (UTC) at which the User's account will be deleted, when is_marked_for_deletion is true.
notifiable - UserNotifiableTypeEnum How the User may be notified.
max_concurrent_vod_stream_num - Int The maximum number of concurrent VOD streams allowed for the User.
user_subscription_status - UserSubscriptionStatusEnum The status of the User's current UserSubscription, if any.
user_subscription_last_event_type - UserSubscriptionEventTypeEnum The most recent event of importance generated for the User's current UserSubscription, if any.
subscription_id - Int The Subscription id the User's current UserSubscription is an instance of, if any.
metas - [CoreUserMeta] The User's meta properties.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

managed_projects - [CoreProject] The Projects the User manages.
managed_roles - [Role] The Roles the User is allowed to assign to other Users.
recent_project - CoreProject The Project the User most recently accessed.
roles - [Role] The User's Roles.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "display_name": "string",
  "email": "foo@example.com",
  "gender": "male",
  "locale": "string",
  "subtitle_locale": "string",
  "audio_locale": "string",
  "status": "string",
  "address": "string",
  "postal_code": "string",
  "city": "string",
  "country": "string",
  "geo_region_code": "nl",
  "phone": "string",
  "is_phone_verified": true,
  "birthday": "string",
  "height": 987.65,
  "weight": 123.45,
  "custom_data": "string",
  "is_newsletter_opt_in": false,
  "is_terms_and_conditions_opt_in": true,
  "is_marked_for_deletion": false,
  "delete_at": "2000-12-31T12:34:56.000Z",
  "notifiable": "none",
  "max_concurrent_vod_stream_num": 42,
  "user_subscription_status": "string",
  "user_subscription_last_event_type": "first_payment_error",
  "subscription_id": 42,
  "metas": [CoreUserMeta],
  "managed_projects": [CoreProject],
  "managed_roles": [Role],
  "recent_project": CoreProject,
  "roles": [Role]
}

CoreUserMeta

Description

A core User meta property.

Fields
Field Name Description
id - Int The id of the meta property.
user_id - Int The User id that owns the meta property.
key - String The meta property's key.
value - String The meta property's value.
translations - [UserMetaTranslation] The meta property's value, translated per locale.
type - MetaTypeEnum The meta property's type.
format - String The meta property's rendering format.
Example
{
  "id": 42,
  "user_id": 42,
  "key": "string",
  "value": "string",
  "translations": [UserMetaTranslation],
  "type": "array",
  "format": "string"
}

CrmSyncContextEnum

Description

CRM sync context

Values
Enum Value Description

user_article

CRM sync context for UserArticle changes.

user_create

CRM sync context for User creation.

user_delete

CRM sync context for User deletion.

user_details

CRM sync context for User detail changes.

user_product

CRM sync context for UserProduct changes.

user_subscription

CRM sync context for UserSubscription changes.
Example
"user_article"

DateRangeInput

Description

A date range input

Fields
Input Field Description
start - String The inclusive start date.
end - String The inclusive end date.
Example
{
  "start": "string",
  "end": "string"
}

DeviceModelContextEnum

Description

Device model context

Values
Enum Value Description

apple_native

Apple native platforms (iOS/tvOS/macOS applications).

chromecast_legacy

Legacy Chromecast devices (Cast OS, not Android-based).

chromecast_4k

Chromecast with Google TV (4K), Android TV based.

lg_legacy

Legacy LG Smart TV platform (pre-webOS).

lg_webos

LG webOS Smart TV platform.

samsung_tizen

Samsung Tizen Smart TV platform.

tpvision_tva

TP Vision (Philips) Smart TV platform.
Example
"apple_native"

File

Description

A File

Fields
Field Name Description
id - Int! The id of the File
name - String The File's original name
title - String The File's display title or generated title fallback
type - FileTypeEnum The File's type
size - Int The File's size in bytes
width - Int The File's width in pixels
height - Int The File's height in pixels
aspect_ratio_profile - String The File's calculated aspect-ratio profile
duration - Int The File's duration in seconds, where applicable
locale - String The File's language locale code
locale_label - String The File's language locale label
base_url - String The File's base URL
base_path - String The File's base URL path
url - String The File's public URL
proxy_file_path - String The File's proxy path
proxy_url - String The File's proxy URL
file_name - String The File's storage file name
file_path - String The File's storage path
Example
{
  "id": 42,
  "name": "string",
  "title": "string",
  "type": "audio",
  "size": 42,
  "width": 42,
  "height": 42,
  "aspect_ratio_profile": "16x9",
  "duration": 42,
  "locale": "string",
  "locale_label": "string",
  "base_url": "https://url.example.com",
  "base_path": "string",
  "url": "https://url.example.com",
  "proxy_file_path": "string",
  "proxy_url": "https://url.example.com",
  "file_name": "string",
  "file_path": "string"
}

FileSubtitleFormatEnum

Description

Subtitle file format

Values
Enum Value Description

vtt

WebVTT subtitle format.

srt

SubRip subtitle format.

ttml

Timed Text Markup Language subtitle format.
Example
"vtt"

FileTypeEnum

Description

Secondary file type assigned to an uploaded File, such as image, icon, poster, document, subtitle, video, or audio.

Values
Enum Value Description

audio

An audio File, usually used for localized audio tracks or other audio-only attachments.

binary

A generic binary File without stricter type-specific extension validation.

css

A CSS stylesheet File.

document

A document File, such as a PDF, DOCX, spreadsheet, text, archive, or downloadable audio document.

icon

An icon File, typically uploaded as a small graphic or favicon-style image.

image

A general image File.

poster

A poster image File.

screenshot

A screenshot image File, often attached to Assets.

subtitle

A subtitle File in VTT, SRT, or TTML format.

video

A video File.
Example
"audio"

FileUploadResourceTypeEnum

Description

Resource types that support secondary file attachments through FileUpload or FileUploadTokenFetch.

Values
Enum Value Description

article

Attach a File to an Article.

asset

Attach a secondary File to an Asset.

category

Attach a File to a Category.

subscription

Attach a File to a Subscription.

product

Attach a File to a Product.

page

Attach a File to a Page.

page_component

Attach a File to a PageComponent.

page_component_element

Attach a File to a PageComponentElement.

menu_component

Attach a File to a MenuComponent.

mail_template

Attach a File to a MailTemplate.

notification

Attach a File to a Notification.

metric_action

Attach a File to a MetricAction.

oauth_provider

Attach a File to an OAuth2 provider.

project_config

Attach a File to a ProjectConfig.
Example
"article"

FilterByInput

Description

A filter input

Fields
Input Field Description
field - String The field to filter by.
logic_operator - LogicOperatorEnum The comparison operator to apply.
value - String The value to compare against.
Example
{
  "field": "string",
  "logic_operator": "equals",
  "value": "string"
}

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
987.65

GeoRegion

Description

A geographic country or configured region shorthand.

Fields
Field Name Description
id - Int! The id of the GeoRegion.
code - String The GeoRegion code.
name - String The GeoRegion name in the active locale.
Example
{
  "id": 42,
  "code": "string",
  "name": "string"
}

GeoRegionListed

Description

A GeoRegion returned in a list.

Fields
Field Name Description
id - Int! The id of the GeoRegion.
code - String The GeoRegion code.
name - String The GeoRegion name in the active locale.
Example
{
  "id": 42,
  "code": "string",
  "name": "string"
}

GeoRegionsListedWithPagination

Description

A paginated list of GeoRegions.

Fields
Field Name Description
items - [GeoRegionListed] The GeoRegions in this page.
pagination - Pagination Pagination metadata for the GeoRegion list.
Example
{
  "items": [GeoRegionListed],
  "pagination": Pagination
}

ImageResolution

Description

Image resolution

Fields
Field Name Description
width - Int Image width
height - Int Image height
Example
{"width": 42, "height": 42}

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
42

LanguageTagContext

Description

A front-end flow grouping for related LanguageTags.

Fields
Field Name Description
language_tag_context - LanguageTagContextEnum The LanguageTag context identifier.
platform_contexts - [String] The platform contexts where this LanguageTag context is available.
title - String The human-facing title of the LanguageTag context.
description - String The human-facing description of the LanguageTag context.
language_tag_keys - [String] The LanguageTag keys belonging to this context.
Example
{
  "language_tag_context": "language_tag_context_login_create_account",
  "platform_contexts": ["string"],
  "title": "string",
  "description": "string",
  "language_tag_keys": ["string"]
}

LanguageTagContextEnum

Description

The LanguageTag context grouping used by front-end app flows.

Values
Enum Value Description

language_tag_context_login_create_account

Language tags used by login and account-creation views.

language_tag_context_single_sign_on

Language tags used by AudiencePlayer Single Sign-On authorization views.

language_tag_context_change_password

Language tags used by password-change views on the User profile.

language_tag_context_reset_password

Language tags used by password-reset request and validation views.

language_tag_context_change_email

Language tags used by e-mail-address change views on the User profile.

language_tag_context_delete_account

Language tags used by User account deletion and restore views.

language_tag_payment_method_change

Language tags used by User payment-method add, change, and subscription-switch views.

language_tag_context_checkout_cart

Language tags used by checkout-cart purchase views.

language_tag_context_cookie_bar

Language tags used by cookie-bar and privacy-preference views.
Example
"language_tag_context_login_create_account"

LocaleRegion

Description

A LocaleRegion

Fields
Field Name Description
id - Int! The id of the LocaleRegion.
code - String The LocaleRegion's code.
name - String The LocaleRegion's name.
Example
{
  "id": 42,
  "code": "string",
  "name": "string"
}

LocaleRegionListed

Description

A listed LocaleRegion

Fields
Field Name Description
id - Int! The id of the LocaleRegion.
code - String The LocaleRegion's code.
name - String The LocaleRegion's name.
Example
{
  "id": 42,
  "code": "string",
  "name": "string"
}

LocaleRegionsListedWithPagination

Description

LocaleRegions with pagination

Fields
Field Name Description
items - [LocaleRegionListed] LocaleRegions for the current page.
pagination - Pagination Pagination metadata for the LocaleRegion list.
Example
{
  "items": [LocaleRegionListed],
  "pagination": Pagination
}

LogicOperatorEnum

Description

Logic comparison operator

Values
Enum Value Description

equals

Equals comparison.

not_equals

Not-equals comparison.

greater_than

Greater-than comparison.

greater_than_or_equal

Greater-than-or-equal comparison.

less_than

Less-than comparison.

less_than_or_equal

Less-than-or-equal comparison.
Example
"equals"

MailTemplateFileInput

Description

Metadata for an existing File attached to a MailTemplate.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
mail_template_id - Int The id of the MailTemplate that owns the File.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "mail_template_id": 42
}

MenuComponentFileInput

Description

A File attached to a MenuComponent.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
menu_component_id - Int The MenuComponent id that owns this File.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "menu_component_id": 42
}

MenuComponentTypeEnum

Description

The navigation-control role a MenuComponent fulfils in a frontend app.

Values
Enum Value Description

button_url_link

A button that opens a relative or absolute url.

exit

A button that exits the app (typically used on TV apps).

footer

A container for a set of footer links.

footer_link

A single link within a footer container.

link

A generic navigational link.

locale

A locale-switcher control.

login

A button that opens the login flow. Only shown when the User is not logged in.

logout

A button that logs the User out. Only shown when the User is logged in.

page

A link to a specific Page (see "page_id"/"page_full_url_slug").

chromecast

A Chromecast casting control.

search

A search control.

user_credit_amount

Displays the authenticated User's available credit balance.
Example
"button_url_link"

MetaFormatEnum

Description

Metadata value format

Values
Enum Value Description

date

Date metadata format.

datetime

Date-time metadata format.

float

Floating-point metadata format.

integer

Integer metadata format.

string

String metadata format.

rich_text

Rich-text metadata format.

plain_text

Plain-text metadata format.
Example
"date"

MetaOutputTypeEnum

Description

Metadata output format

Values
Enum Value Description

html

Return metadata as HTML.

markdown

Return metadata as Markdown.

stripped_html

Return metadata as plain text stripped from HTML.
Example
"html"

MetaTypeEnum

Description

Metadata value type

Values
Enum Value Description

array

Array metadata value.

boolean

Boolean metadata value.

double

Floating-point metadata value.

integer

Integer metadata value.

object

Object metadata value.

string

String metadata value.
Example
"array"

MetricAction

Description

A MetricAction.

Fields
Field Name Description
id - Int! The id of the MetricAction.
project_id - Int! The Project id that owns this MetricAction.
name - String The MetricAction's name.
title - String The MetricAction's title.
content - String The MetricAction's content.
icons - [File] The MetricAction's icon Files.
images - [File] The MetricAction's image Files.
files - [File] The MetricAction's Files.
Arguments
type - FileTypeEnum

Filter by the File's type (icon, image, poster).

fulfilled_at - String The User fulfillment date (UTC) of the MetricAction.
acknowledged_at - String The User acknowledgement date (UTC) of the MetricAction.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "title": "string",
  "content": "string",
  "icons": [File],
  "images": [File],
  "files": [File],
  "fulfilled_at": "2000-12-31T12:34:56.000Z",
  "acknowledged_at": "2000-12-31T12:34:56.000Z"
}

MetricActionFileInput

Description

A MetricAction File input object.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
metric_action_id - Int The id of the MetricAction this File belongs to.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "metric_action_id": 42
}

MetricActionStatusEnum

Description

The MetricAction's publication status.

Values
Enum Value Description

inactive

Inactive MetricAction. It is not fulfilled for Users.

active

Active MetricAction. It may be fulfilled for eligible Users when its Metrics match.
Example
"inactive"

MetricActionTypeEnum

Description

The MetricAction's type.

Values
Enum Value Description

user_entitlement

Entitles eligible Users to the configured Products and/or Subscription installments when fulfilled.
Example
"user_entitlement"

MetricConditionTypeEnum

Description

The MetricCondition's type, the resource property it evaluates.

Values
Enum Value Description

appa

Article play percentage amount, evaluated as a numeric threshold.

appr

Article play percentage ratio, evaluated as a numeric threshold.

linked_type

Article linked-Asset type, evaluated against Asset linked-type values such as episode, film, preview, or trailer.

num_completed

Number of completed Article sessions, evaluated as a numeric threshold.

product_type

Product type, evaluated against Product type values.

purchase_num

Number of purchases, evaluated as a numeric threshold.

purchase_origin

Purchase origin, evaluated against UserPaymentAccountOrder purchase-origin values.

retention_day_num

Subscription retention duration in days, evaluated as a numeric threshold.

subscription_type

Subscription type, evaluated against Subscription type values.

telemetry_platform

Telemetry platform, evaluated against telemetry platform values.

term_num

Subscription term number, evaluated as a numeric threshold.
Example
"appa"

MetricStatusEnum

Description

The Metric's publication status.

Values
Enum Value Description

inactive

Inactive Metric. It is not evaluated for Users.

active

Active Metric. It may be evaluated for matching Users.
Example
"inactive"

MetricTypeEnum

Description

The Metric's type.

Values
Enum Value Description

article

Evaluates Users by Article viewing behaviour.

product

Evaluates Users by Product purchase or entitlement behaviour.

subscription

Evaluates Users by Subscription purchase behaviour and periodic Subscription activity.
Example
"article"

NodePivotActionEnum

Description

Node pivot action

Values
Enum Value Description

after

Place resource at the sibling position immediately after the resource with given "pivot_id".

before

Place resource at the sibling position immediately before the resource with given "pivot_id".

parent

Place resource as the last child of the resource with given "pivot_id".
Example
"after"

NotificationChannelContextEnum

Description

Notification delivery channel contexts.

Values
Enum Value Description

sms

Deliver through the SMS notification channel.

push

Deliver through the push notification channel.
Example
"sms"

NotificationDeliveryTypeEnum

Description

Notification delivery audience strategies.

Values
Enum Value Description

generic_users_on_topic

Send a generic Notification to Users subscribed to the linked NotificationTopics.

personalised_users_on_topic

Send a personalized Notification to Users subscribed to the linked NotificationTopics.

all_users

Send the Notification to all Users in the Project.
Example
"generic_users_on_topic"

NotificationFileInput

Description

A Notification File input object.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
notification_id - Int The id of the parent Notification.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "notification_id": 42
}

NotificationTopicTypeEnum

Description

NotificationTopic content types.

Values
Enum Value Description

general

A general NotificationTopic that Users can subscribe to.
Example
"general"

NotificationTypeEnum

Description

Notification lifecycle and behavior types.

Values
Enum Value Description

single

A one-time Notification scheduled or sent once.

recurring

A recurring Notification sent periodically by frequency and time unit.

reminder_after_article_inactivity

A recurring inactivity reminder Notification that can choose related Notifications or Categories based on User viewing activity.

related

A child Notification used as related content for an inactivity reminder Notification.
Example
"single"

OauthProviderStatusEnum

Description

The OAuth2 provider status.

Values
Enum Value Description

inactive

OAuth2 provider is configured but not published.

testing

OAuth2 provider is available for testing before publication.

active

OAuth2 provider is published.
Example
"inactive"

OauthProviderTypeEnum

Description

The OAuth2 provider type.

Values
Enum Value Description

google

Google OAuth2 provider.

microsoft

Microsoft Azure OAuth2 provider.

facebook

Facebook OAuth2 provider.

github

GitHub OAuth2 provider.

linkedin

LinkedIn OAuth2 provider.

twitter_x

X OAuth2 provider.

generic

Generic OAuth2 provider with manually configured endpoints.
Example
"google"

PageComponentDisplayTypeEnum

Description

The display style a PageComponent uses in a Page layout.

Values
Enum Value Description

sliding_carousel

Display the component's items as a horizontally sliding carousel.

paginator_grid

Display the component's items as a grid with pagination controls.

infinite_scroll_grid

Display the component's items as a grid that loads more items as the User scrolls.
Example
"sliding_carousel"

PageComponentElementFileInput

Description

A File attached to a PageComponentElement.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
page_component_element_id - Int The PageComponentElement id that owns this File.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "page_component_element_id": 42
}

PageComponentElementTypeEnum

Description

The presentation roles a PageComponentElement can configure. Each value determines which frontend-app element is rendered, such as a text block, button, slide, or account/profile form field.

Values
Enum Value Description

button_account_create

This element displays a button that when clicked, directly opens the registration flow. It is only displayed when a User is not logged in.

button_badge_page_link

This element displays a rounded button that when clicked, opens a give Page. It is typically used in a component of type "carousel".

button_badge_url_link

This element displays a round button that when clicked, opens a relative or absolute Url. It is typically used in a component of type "carousel".

button_login

This element displays button that when clicked, opens a login pop-up.

button_login_account_create

This element displays button that when clicked, opens a pop-up where a User can log in or create a new User account.

button_logout

This element displays button that when clicked, immediately logs out the User. It is only displayed when a User is logged in.

button_page_link

This element displays a button that when clicked, opens a give Page.

button_url_link

This element displays a button that when clicked, opens a relative or absolute Url.

button_product_purchase

This element displays a button that when clicked, opens the purchase flow for given Product.

button_subscription_purchase

This element displays a button that when clicked, opens the purchase flow for given Subscription.

button_play_article_video

This element displays a button that when clicked, opens the video player for given Article.

button_newsletter_subscribe

This element displays a button that when clicked, opens a registration pop-up for the given Newsletter List ID (configuration of a CRM-integration is required).

button_change_language

This element displays a button that when selected, allows the User to change the language of the TV-app.

carousel_slide

This element represents a single slide within the carousel component. It can be configured to display a poster or background video as well as multiple calls to action.

device_pairing_code

This element allows a User to enter the pairing code that is displayed on their TV app, thus linking that device/app to their User account.

device_pairing_list

This element displays an overview of the devices/apps that are linked to the User account, as well as the option to remove items from that list.

discover_filter_category

This element allows you to configure a parent filter Category, of which the child Categories are automatically presented to the User a s filter buttons.

payment_account_subscription_details

This element specifically displays the User Subscription status as well as options to purchase or switch Subscriptions.

payment_account_balance

This element displays the current amount balance, which is typically result of redeemed gift cards for a certain amount. When the Project is configured for credit usage, the credit balance is also displayed.

payment_account_voucher_redeem

This element allows the User to redeem a voucher code. If the User has an active Subscription, a voucher code suitable for Subscriptions may be immediately applied to that active User Subscription.

payment_account_payment_method

This element allows the User to see and/or change the current payment method that is configured for recurring payments. It is recommended to always display this element when the Project uses Subscriptions.

payment_account_subscription_suspend

This element allows the User to continue or discontinue their User Subscription by activating or suspending the recurring payment renewal.

payment_account_order_history

This element displays an overview of the order history. This overview includes single purchases as well as recurring payments.

profile_address

This element allows the User to modify their address (street name) of residence.

profile_birthday

This element allows the User to modify their birthday.

profile_city

This element allows the User to modify their city of residence.

profile_country

This element allows the User to modify their country of residence.

profile_email

This element allows the User to modify their e-mail address.

profile_first_name

This element allows the User to modify their first name.

profile_gender

This element allows the User to select their gender.

profile_height

This element allows the User to modify their body height.

profile_last_name

This element allows the User to modify their last/family name.

profile_name

This element allows the User to modify their full name (automatic detection of first/last name is implemented).

profile_newsletter_opt_in

This element allows the User to opt-in to receiving newsletters (configuration of a CRM-integration is required).

profile_terms_and_conditions_opt_in

This element allows the User to opt-in to the general terms and conditions as defined by the Project. When configured, User opt-in is always mandatory.

profile_notifiable

This element allows the User to select of they are notifiable via SMS text messages or push notifications (configured in the secion "Push notification").

profile_password

This element configures a secret-update presentation field in a frontend app's profile form. It stores only the field configuration, never a submitted value.

profile_phone

This element allows the User to modify their phone number.

profile_postal_code

This element allows the User to modify their zip/postal code of residence.

profile_user_consent

This element allows the User to select the cookie consents of their choice.

profile_user_notification_topics

This element allows the User select the push notification topics of their choice.

profile_weight

This element allows the User to modify their body address.

subscription

This element allows you to configure a single Subscription banner that is displayed inside the "subscriptions" component.

text

This type is reserved for legacy TV apps only, and is deprecated.

text_carousel_slide

This element represents a single slide within the text carousel component. It can be configured to display a small WYSIWYG text component.

usp_bullet

This element represents a single USP bullet. It can be configured to display a small WYSIWYG text component.

custom

This element is provided for the benefit of custom API-integrations, but has no practical application in the general CMS-context.

account_delete_request

This element displays the information and actual link a User can click to initiate deletion of their account.

account_delete_pending

This element informs the User that their account is scheduled for deletion, and allows the User to undo this.
Example
"button_account_create"

PageComponentFileInput

Description

A File attached to a PageComponent.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
page_component_id - Int The PageComponent id that owns this File.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "page_component_id": 42
}

PageComponentTypeEnum

Description

The presentation role a PageComponent fulfils in a Page layout.

Values
Enum Value Description

account_create

This component allows you to configure the registration form a User must fill out to create a User account.

account_create_not_allowed

This component allows you to configure the notification a User sees when registration is not allowed (typically due to geo-region restrictions).

account_delete

This component allows you to configure the "delete account" button on the payment account page, through which a User can initiate account deletion conform GDPR.

article_entitlements

This component displays all Articles a User is entitled to watch, either through purchase, rental or voucher redemption.

article_favourites

This component displays all Articles a User has marked as "favourite".

article_history

This component displays the most recent Articles a User has previously completely watched.

article_nomadics

This component displays the most recent Articles a User has not yet completely watched, so that they can continue watching.

call_to_action_page_link

This component allows you to configure a large click-area which you can fill with an image/poster and text. Clicking the area directs the User to a given Page.

call_to_action_url_link

This component allows you to configure a large click-area which you can fill with an image/poster and text. Clicking the area directs the User to a given Url.

carousel

This component allows you to configure a large carousel, typically displayed a the top of a Page. The carousel can contain multiple slides, which allow you to display large posters or videos, and configure calls to action.

categories

This component allows you to configure an overview of all the child-Categories for a given Category. Clicking a Category directs the User to an automatically generated Category detail Page.

category

This component allows you to configure a default carousel which displays all the Articles for a given Category.

custom_html

This component allows you to configure a block of custom HTML and/or JavaScript. AudiencePlayer is not responsible for included content that is broken, malicious, or otherwise misbehaves when using this component.

device_pairing

This component is the placeholder under which you can configure the pairing code input field, and overview of already paired devices.

discover_filter_selector

This component allows you to configure the main filter section, under which multiple filter categories can be placed. Typically one filter section is sufficient.

form_contact_support

This component displays a generic support form, which a User can fill out. The contents of the form are sent to your support e-mail address which you have configured in the MailService.

gamification_action_fulfilments

This component displays and overview of all fulfilled loyalty actions, i.e. their "achievements".

pages

This component allows you to configure an overview of all the child-Pages for given Page (of type "blog"). It is typically used to show all available blogs.

profile_edit

This component allows you to configure the main profile section that is displayed on the WEB/MOBILE profile page. There can be only component of this type on the Page.

random_page

This component allows you to configure a call-to-action which leads to a random sub-page, given a provided parent Page. The typicall use-case is to offer the User a random Blog page ("pick a card").

redirect_to_link

This component allows you to configure a relative or absolute Url, to which the User must be redirected.

redirect_to_random_subpage

This component allows you to configure a randomly selected Page, to which the User must be redirected.

single_tag_line

This component allows you to configure a pre-styled wide component well suited to display a short tag-line or quote.

payment_account_details

This component allows you to configure the main account detail section that is displayed on the WEB/MOBILE payment-account page. There can be only component of this type on the Page.

subscriptions

This component allows you to configure a pricing overview with one or more Subscription banners. When placed on a Page of type "pricing", it defines the default Subscriptions that are automatically offered in the purchase flow. When placed on a Page of type "text", it allows you to create specific landing pages that offer given Subscriptions.

text

This component is a basic multi-purpose component that allows you to place content on a Page using a WYSIWYG-editor.

text_carousel

This component allows you to display multiple text/content blocks in a carousel, e.g. a set of short news messages or testimonials.

usp_bullets

This component allows you to display a few (typically 1-3) small text/content blocks side-by-side, e.g. a set of unique selling points (USPs).
Example
"account_create"

PageFileInput

Description

A File attached to a Page.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
page_id - Int The Page id that owns this File.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "page_id": 42
}

PageListedAsResource

Description

A Page, as it appears within a generic resource listing.

Fields
Field Name Description
id - Int! The id of the resource
name - String The name of resource
visibility - ResourceVisibilityEnum The Page's visibility.
Example
{
  "id": 42,
  "name": "string",
  "visibility": "everyone"
}

PageMetaInput

Description

A metadata property on a Page.

Fields
Input Field Description
id - Int The metadata property id
key - String The metadata property key
value - String The metadata property value
type - MetaTypeEnum The metadata property type
format - MetaFormatEnum The metadata property rendering format
locale - String The metadata property locale
page_id - Int The Page id that owns this metadata property.
Example
{
  "id": 42,
  "key": "string",
  "value": "string",
  "type": "array",
  "format": "date",
  "locale": "string",
  "page_id": 42
}

PageMetaTranslation

Description

A single-locale translation of a PageMeta property.

Fields
Field Name Description
id - Int The metadata property translation id
value - String The metadata property translation value
locale - String The metadata property translation locale
page_meta_id - Int The PageMeta id that this translation belongs to.
Example
{
  "id": 42,
  "value": "string",
  "locale": "string",
  "page_meta_id": 42
}

PageTypeEnum

Description

The presentation role a Page fulfils in a frontend app.

Values
Enum Value Description

account_delete

A WEB/MOBILE page with this type is used to offer the User the option to delete their User account.

article_downloads

A MOBILE page with this type provides the User with an overview of all the Articles that have been downloaded within the native mobile app.

blog

A WEB/MOBILE page with this type can have multiple sub-pages, each sub-page then represents a single blog.

category

This type is reserved for legacy TV apps only, and is deprecated.

device_pairing

A WEB/MOBILE page with this type is used to allow the User to enter a pairing code and thus link a device.

discover

A WEB/MOBILE page with this type may contain multiple filter categories and allows for a filtered search experience.

home

A page with this type is used as the default landing/opening page. There can be only one page with this type per platform context.

pairing

The single TV page with this type allows you to display a pairing code, so that a User may link their device to their User account. There can be only one page with this type per platform context.

payment_account

The single WEB/MOBILE page with this type shows the User an overview of their main User account with active subscriptions, purchase overview, voucher redemption and more. There can be only one page with this type per platform context.

pricing

The single WEB/MOBILE page with this type is used by the purchase flow to offer subscriptions to Users. There can be only one page with this type per platform context.

profile

The single TV page with this type allows a User to see their general profile information such as name and e-mail address, as well as information specific to the TV app such as "version", which is often helpful for customer support queries. There can be only one page with this type per platform context.

profile_edit

The single WEB/MOBILE page with this type allows the User to edit their user profile information such as name and e-mail address, reset their password or change their e-mail address.

redirect

A WEB/MOBILE page with this type allows you to configure a redirect to another page or, an external URL. When this page is opened by a User, they are automatically redirected to the configured target.

register

The single WEB/MOBILE page with this type allows a User to fill out the registration form and create a User account. There can be only one page with this type per platform context.

search

The single TV page with this type allows the User to search and filter on specific Articles. There can be only one page with this type per platform context.

text

This is the most generic page type, intended for most content purposes.

welcome

The single TV page with this type is displayed to Users when first opening the TV app. There can be only one page with this type per platform context.
Example
"account_delete"

Pagination

Description

List pagination

Fields
Field Name Description
limit - Int The requested page size.
offset - Int The requested result offset.
count - Int The number of items returned in the current page.
total_count - Int The total number of matching items.
page_count - Int The total number of pages.
page_current - Int The current page number.
Example
{
  "limit": 42,
  "offset": 42,
  "count": 42,
  "total_count": 42,
  "page_count": 42,
  "page_current": 42
}

PaymentProviderConnectFlowStatusEnum

Description

The PaymentProvider connect-flow status.

Values
Enum Value Description

test_key

Payment provider connect flow has test credentials available.

live_key

Payment provider connect flow has live credentials available.

test_connected

Payment provider is connected in test mode.

live_connected

Payment provider is connected in live mode.
Example
"test_key"

PaymentProviderCurrencyEnum

Description

The currency used for payment with the PaymentProvider.

Values
Enum Value Description

CREDIT

General credit balance.

FREE

Free-article credit balance.

AUD

Australian dollar.

CAD

Canadian dollar.

DKK

Danish krone.

EUR

Euro.

GBP

British pound sterling.

HKD

Hong Kong dollar.

INR

Indian rupee.

ISK

Icelandic krona.

JPY

Japanese yen.

MYR

Malaysian ringgit.

NOK

Norwegian krone.

SEK

Swedish krona.

SGD

Singapore dollar.

THB

Thai baht.

USD

United States dollar.
Example
"CREDIT"

PaymentProviderListedAsRelation

Description

A PaymentProvider listed as a relation.

Fields
Field Name Description
id - Int! The id of the PaymentProvider.
name - String The PaymentProvider's name.
type - String The PaymentProvider's provider type.
Example
{
  "id": 42,
  "name": "string",
  "type": "string"
}

PaymentProviderRemoteProfileStatusEnum

Description

The PaymentProvider remote account profile status.

Values
Enum Value Description

not_applicable

Remote account profiles do not apply to this payment provider.

none_available

Remote account has no available profiles.

not_configured

Remote account profiles are available but no profile is configured.

configured_without_payment_methods

Configured remote profile has no available payment methods.

configured

Remote account profile is configured and has available payment methods.
Example
"not_applicable"

PaymentProviderStatusEnum

Description

The PaymentProvider status.

Values
Enum Value Description

active

Payment provider is active for compatible payment flows.

inactive

Payment provider is configured but inactive.
Example
"active"

PaymentSyndicateTypeEnum

Description

The PaymentSyndicate's type.

Values
Enum Value Description

internal

A PaymentSyndicate managed internally by the Project.

affiliate

A PaymentSyndicate representing a third-party affiliate.
Example
"internal"

PaymentSyndicateVoucherDiscountTypeEnum

Description

How a PaymentSyndicateVoucher's amount is applied to the resource price.

Values
Enum Value Description

percentage

Apply a percentage discount (0-100) equal to amount (e.g. amount 10 gives "price * (1 - 10 / 100)").

set_amount

Replace the resource price with amount (e.g. "price = amount").

gift_card

Subtract amount from the resource price (e.g. "price = price - amount").

gift_card_save_remainder

Same as gift_card, but any remaining negative amount is written to the User's account balance instead of being lost.
Example
"percentage"

PaymentSyndicateVoucherInstallmentTypeEnum

Description

A PaymentSyndicateVoucher's installment type.

Values
Enum Value Description

fixed_date

Issue installments periodically until issue_installments_until.

oneoff

Issue a single, one-off installment.
Example
"fixed_date"

PaymentSyndicateVoucherTypeEnum

Description

The resource type a PaymentSyndicateVoucher is applicable to.

Values
Enum Value Description

generic

Applicable to all resource types.

product

Applicable to Products (TVOD).

subscription

Applicable to Subscriptions (SVOD).
Example
"generic"

PaymentSyndicateVoucherUserSubscriptionStatusActionEnum

Description

The UserSubscription status a PaymentSyndicateVoucher forces upon successful claim.

Values
Enum Value Description

none

Leave the UserSubscription's status unchanged (subject to normal status transition rules).

activate

Force the UserSubscription's status to active.

suspend

Force the UserSubscription's status to suspended.
Example
"none"

PlatformContextEnum

Description

Platform context

Values
Enum Value Description

web

Web platform context.

mobile

Mobile platform context.

tv

TV platform context.

metrological

Metrological platform context.
Example
"web"

Product

Description

A Product.

Fields
Field Name Description
id - Int! The id of the Product.
project_id - Int! The Project id that owns the Product.
remote_product_id - String The Product's remote id (e.g. used for in-app purchases), prefixed per the Project's configuration.
name - String The Product's name.
title - String The Product's title.
description - String The Product's description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

description_short - String The Product's short description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

call_to_action_tag - String The Product's call-to-action tag.
type - ProductTypeEnum The Product's type.
credit_type - UserPaymentCreditTypeEnum The type of credit this Product issues, when type is "credit" or "service_recurring_credit".
currency - String The Product's currency code (e.g. "EUR").
currency_symbol - String The Product's currency symbol (e.g. "€").
price - Float The Product's price.
credit_price - Float The Product's price expressed in credits, as an alternative to price.
credit_amount - Float The quantity of credits this Product issues.
amount_balance - Float The monetary account balance amount this Product issues, when type is "amount_balance".
purchase_num - Int The number of times this Product has been purchased, in the context this Product is being resolved in (e.g. as part of a UserSubscription).
max_purchase_num - Int The maximum number of times a User may purchase this Product.
expires_in - Int The number of hours after purchase until entitlement from this Product expires (a "rental" window).
expires_at - String The fixed date (UTC) until which entitlement from this Product expires.
created_at - String The Product's creation date (UTC).
updated_at - String The Product's last modification date (UTC).
icons - [File] The Product's icon Files.
images - [File] The Product's image Files.
posters - [File] The Product's poster Files.
videos - [File] The Product's video Files.
articles - [ArticleListedAsRelation] The Articles this Product entitles the User to, when type is "article" or "free_article".
categories - [CategoryListedAsRelation] The Categories the Product belongs to.
Arguments
type - CategoryTypeEnum

The Category type to filter on.

sort_by - [SortByInput]

Sort and order by field(s).

parent_id - Int

The id of the parent Category to filter on.

Example
{
  "id": 42,
  "project_id": 42,
  "remote_product_id": "string",
  "name": "string",
  "title": "string",
  "description": "string",
  "description_short": "string",
  "call_to_action_tag": "string",
  "type": "article",
  "credit_type": "general",
  "currency": "EUR",
  "currency_symbol": "EUR",
  "price": 7.99,
  "credit_price": 1,
  "credit_amount": 1,
  "amount_balance": 987.65,
  "purchase_num": 42,
  "max_purchase_num": 1,
  "expires_in": 86400,
  "expires_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "articles": [ArticleListedAsRelation],
  "categories": [CategoryListedAsRelation]
}

ProductDiscoverabilityEnum

Description

How discoverable the Product is to Users.

Values
Enum Value Description

hidden

Hidden from all listing/browse/search surfaces, but still directly reachable by id or direct link.

discoverable

Discoverable through listing/browse/search surfaces.
Example
"hidden"

ProductFileInput

Description

A File update belonging to a Product.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
product_id - Int The Product id that owns the File.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "product_id": 42
}

ProductListedAsRelation

Description

A Product, as a relation on another resource.

Fields
Field Name Description
id - Int! The id of the Product.
project_id - Int! The Project id that owns the Product.
remote_product_id - String The Product's remote id (e.g. used for in-app purchases), prefixed per the Project's configuration.
name - String The Product's name.
title - String The Product's title.
description - String The Product's description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

description_short - String The Product's short description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

call_to_action_tag - String The Product's call-to-action tag.
type - ProductTypeEnum The Product's type.
credit_type - UserPaymentCreditTypeEnum The type of credit this Product issues, when type is "credit" or "service_recurring_credit".
currency - String The Product's currency code (e.g. "EUR").
currency_symbol - String The Product's currency symbol (e.g. "€").
price - Float The Product's price.
credit_price - Float The Product's price expressed in credits, as an alternative to price.
credit_amount - Float The quantity of credits this Product issues.
amount_balance - Float The monetary account balance amount this Product issues, when type is "amount_balance".
purchase_num - Int The number of times this Product has been purchased, in the context this Product is being resolved in (e.g. as part of a UserSubscription).
max_purchase_num - Int The maximum number of times a User may purchase this Product.
expires_in - Int The number of hours after purchase until entitlement from this Product expires (a "rental" window).
expires_at - String The fixed date (UTC) until which entitlement from this Product expires.
created_at - String The Product's creation date (UTC).
updated_at - String The Product's last modification date (UTC).
icons - [File] The Product's icon Files.
images - [File] The Product's image Files.
posters - [File] The Product's poster Files.
videos - [File] The Product's video Files.
articles - [ArticleListedAsRelation] The Articles this Product entitles the User to, when type is "article" or "free_article".
categories - [CategoryListedAsRelation] The Categories the Product belongs to.
Arguments
type - CategoryTypeEnum

The Category type to filter on.

sort_by - [SortByInput]

Sort and order by field(s).

parent_id - Int

The id of the parent Category to filter on.

Example
{
  "id": 42,
  "project_id": 42,
  "remote_product_id": "string",
  "name": "string",
  "title": "string",
  "description": "string",
  "description_short": "string",
  "call_to_action_tag": "string",
  "type": "article",
  "credit_type": "general",
  "currency": "EUR",
  "currency_symbol": "EUR",
  "price": 7.99,
  "credit_price": 1,
  "credit_amount": 1,
  "amount_balance": 123.45,
  "purchase_num": 42,
  "max_purchase_num": 1,
  "expires_in": 86400,
  "expires_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "articles": [ArticleListedAsRelation],
  "categories": [CategoryListedAsRelation]
}

ProductListedAsResource

Description

A Product, as a generic resource reference.

Fields
Field Name Description
id - Int! The id of the resource
name - String The name of resource
Example
{"id": 42, "name": "string"}

ProductStackInput

Description

A Product and its purchase quantity, as part of a stack of Products.

Fields
Input Field Description
id - Int The id of the Product.
purchase_num - Int The quantity of this Product in the stack.
product_price - Float A price override for this Product in the stack, replacing its own price.
Example
{"id": 42, "purchase_num": 42, "product_price": 123.45}

ProductStatusEnum

Description

The Product's publication status.

Values
Enum Value Description

unpublished

The Product is not published and cannot be purchased.

published

The Product is published and can be purchased, subject to its publish_interval.
Example
"unpublished"

ProductTypeEnum

Description

The Product's type.

Values
Enum Value Description

article

Entitles the User to the linked Articles upon purchase.

free_article

Entitles the User to the linked Articles at no cost.

text

A generic, non-recurring Product with no built-in entitlement beyond its own purchase.

credit

Issues a one-off amount of credits of a given credit_type to the User.

material

A generic, non-recurring Product with no built-in entitlement beyond its own purchase.

voucher_code

Issues a PaymentSyndicateVoucher Code from the linked PaymentSyndicateVoucher upon purchase.

amount_balance

Issues a monetary account balance top-up (e.g. a gift card) to the User.

service_recurring_amount

Recurring; only applicable in combination with a Subscription. Adjusts the price of each recurring Subscription installment by a fixed amount (negative for a discount, positive for a surcharge).

service_recurring_credit

Recurring; only applicable in combination with a Subscription. Issues a quantity of credits alongside each recurring Subscription installment.

service_recurring_notifiable_sms

Recurring; only applicable in combination with a Subscription. Entitles the User to receive SMS text notifications, when configured for the Project.
Example
"article"

ProjectConfigContextEnum

Description

A CMS settings context for ProjectConfigs

Values
Enum Value Description

branding_mobile_custom_css

Mobile custom CSS settings. Custom CSS is added as is, expert usage is strongly advised, it falls outside default support and maintenance, and template updates may break it.

branding_mobile_theme

Mobile app branding, logos, splash screen, grid image orientation, theme color, and font settings.

branding_tv_custom_css

TV custom CSS settings. Custom CSS is added as is, expert usage is strongly advised, it falls outside default support and maintenance, and template updates may break it.

branding_tv_theme

TV app branding, logos, splash screen, grid image orientation, theme color, and font settings.

branding_web_custom_css

Web custom CSS settings. Custom CSS is added as is, expert usage is strongly advised, it falls outside default support and maintenance, and template updates may break it.

branding_web_domain

Web domain and domain-request settings for the Project website.

branding_web_seo

Search-engine optimisation settings for the Project website.

branding_web_social

Social-sharing metadata and imagery settings for the Project website.

branding_web_theme

Web branding, logos, favicon, grid image orientation, visual theme, theme color, and font settings.

integrations_analytics

General analytics integration settings for the Project.

integrations_analytics_facebook

Facebook analytics and tracking integration settings.

integrations_analytics_google

Google analytics and tracking integration settings.

integrations_audienceplayer_api

AudiencePlayer API integration settings.

integrations_audienceplayer_wordpress

AudiencePlayer WordPress integration settings.

integrations_oauth_providers

OAuth provider integration settings.

integrations_oauth_clients

OAuth client integration settings.

integrations_webhooks

Webhook integration settings.

integrations_crm

CRM integration settings.

mail_credentials

SMTP sender credentials and mail transport settings.

mail_system_alert_address

System alert e-mail address settings.

mail_template_settings

Mail-template logo and link settings.

media_settings_bulk_upload

Bulk-upload storage and transfer settings for the active media provider.

media_settings_general

General media-service settings for source storage, thumbnails, and automatic Article creation.

media_settings_encoding

Default media-service encoding profile settings.

media_settings_publication

Default media-service publication and encryption profile settings.

media_settings_player

Media-player playback speed and skip-interval settings.

metadata_article_data_feed_settings

Article metadata settings used by data-feed output.

metadata_article_detail_settings

Article metadata display settings for Article detail pages.

metadata_article_embed_player_settings

Article metadata display settings for embedded players.

metadata_article_settings

Article metadata key and search-index settings.

metadata_article_tooltip_settings

Article metadata display settings for tooltips and carousel items.

payment_settings_affiliation_categories

Payment affiliation category settings.

payment_settings_affiliation_credits

Credit product and credit acquisition settings.

payment_settings_general

General payment settings for currency, payment-method change costs, purchase buttons, and checkout login behavior.

payment_settings_products

Entitlement and product fulfilment settings.

payment_settings_subscriptions

Subscription availability, registration, pricing, and switching settings.

payment_settings_vouchers

Voucher defaults, prefixes, and voucher-claimable product/subscription settings.

payment_settings_amount_balance

Amount-balance usage and purchasable product/subscription settings.

project_locale

Project locale and locale-translation settings.

project_settings_general_login_and_registration

Project login and account-registration availability settings per platform.

project_settings_general_terms_and_conditions

Project terms-and-conditions URL and controlled-access settings.
Example
"branding_mobile_custom_css"

ProjectConfigInput

Description

A ProjectConfig value update input

Fields
Input Field Description
id - Int The id of the ProjectConfig to update
value - String The ProjectConfig replacement value
Example
{"id": 42, "value": "string"}

ProjectConfigTypeEnum

Description

A ProjectConfig value type

Values
Enum Value Description

array

An array value with unconstrained item types.

array_array

An array whose items are arrays.

array_bool

An array whose items are boolean values.

array_float

An array whose items are floating-point numeric values.

array_int

An array whose items are integer numeric values.

array_object

An array whose items are object values.

array_string

An array whose items are string values.

associative_array

An associative array value keyed by string-like names.

binary

A binary file or binary payload value.

bool

A boolean true or false value.

float

A floating-point numeric value.

int

An integer numeric value.

object

An object value, usually represented as JSON.

string

A string value.
Example
"array"

RemoteAssetFileContextEnum

Description

The origin/purpose of a remote file not yet ingested as an Asset.

Values
Enum Value Description

bulk_upload

A source file uploaded via the bulk-upload flow, not yet ingested as an Asset.
Example
"bulk_upload"

ResourceAccessibilityEnum

Description

Resource accessibility type

Values
Enum Value Description

everyone

Accessible to everyone.

non_authenticated_only

Accessible only to unauthenticated visitors.

authenticated_only

Accessible only to authenticated Users.

authorized_only

Accessible only to authenticated Users with authorization for the resource.
Example
"everyone"

ResourceTypeEnum

Description

Resource type

Values
Enum Value Description

article

Article resource.

asset

Asset resource.

category

Category resource.

metric

Metric resource.

metric_condition

MetricAction resource.

page

Page resource.

page_component

PageComponent resource.

page_component_element

PageComponentElement resource.

payment_syndicate_voucher

PaymentSyndicateVoucher resource.

product

Product resource.

subscription

Subscription resource.
Example
"article"

ResourceVisibilityEnum

Description

Resource visibility type

Values
Enum Value Description

everyone

Visible to everyone.

non_authenticated_only

Visible only to unauthenticated visitors.

authenticated_only

Visible only to authenticated Users.

non_authorized_only

Visible only to authenticated Users without authorization for the resource.

authorized_only

Visible only to authenticated Users with authorization for the resource.
Example
"everyone"

Role

Description

The role

Fields
Field Name Description
id - Int! The id of the role
name - String The name of the role
type - RoleTypeEnum The type of the role
description - String The description of the role
Example
{
  "id": 42,
  "name": "string",
  "type": "root",
  "description": "string"
}

RoleTypeEnum

Description

Role type

Values
Enum Value Description

root

Super user

builder

Builder

reseller

Reseller

admin

Administrator

moderator

Moderator

user

End user
Example
"root"

SortByInput

Description

A sort input

Fields
Input Field Description
field - String The field to sort by.
direction - SortOrderEnum The sort direction.
Example
{"field": "string", "direction": "asc"}

SortOrderEnum

Description

Sort direction

Values
Enum Value Description

asc

Sort in ascending order.

desc

Sort in descending order.

random

Sort in random order.
Example
"asc"

SortPivotActionEnum

Description

Sort pivot action

Values
Enum Value Description

before

Place resource at the position immediately before the resource with given "pivot_id".

after

Place resource at the position immediately after the resource with given "pivot_id".
Example
"before"

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"string"

StructureKeyValueIntegerPair

Description

Structure key integer-value list pair type

Fields
Field Name Description
label - String The display label for this structure entry.
type - String The value type for this structure entry.
key - String The machine-readable key for this structure entry.
value - Int The typed value for this structure entry.
Example
{
  "label": "string",
  "type": "string",
  "key": "string",
  "value": 42
}

StructureKeyValueStringArrayPair

Description

Structure key string-array-value list pair type

Fields
Field Name Description
label - String The display label for this structure entry.
type - String The value type for this structure entry.
key - String The machine-readable key for this structure entry.
value - [String] The typed value for this structure entry.
Example
{
  "label": "string",
  "type": "string",
  "key": "string",
  "value": ["string"]
}

StructureKeyValueStringPair

Description

Structure key string-value list pair type

Fields
Field Name Description
label - String The display label for this structure entry.
type - String The value type for this structure entry.
key - String The machine-readable key for this structure entry.
value - String The typed value for this structure entry.
Example
{
  "label": "string",
  "type": "string",
  "key": "string",
  "value": "string"
}

Subscription

Description

A Subscription.

Fields
Field Name Description
id - Int! The id of the Subscription.
project_id - Int! The Project id that owns the Subscription.
remote_subscription_id - String The Subscription's remote id (e.g. used for in-app purchases), prefixed per the Project's configuration.
name - String The Subscription's name.
title - String The Subscription's title.
description - String The Subscription's description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

description_short - String The Subscription's short description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

type - SubscriptionTypeEnum The Subscription's type.
price - Float The Subscription's initial price (on first payment).
price_per_installment - Float The Subscription's price per recurring periodic installment.
time_unit - SubscriptionTimeUnitEnum The time unit of the Subscription's recurring periodic installment.
time_unit_translation - String The translated label of time_unit.
frequency - Float How often, in units of time_unit, the Subscription's recurring periodic installment repeats.
currency - String The Subscription's currency code (e.g. "EUR").
currency_symbol - String The Subscription's currency symbol (e.g. "€").
initial_installment_num - Int The Subscription's initial number of installments.
initial_installment_time_unit - SubscriptionTimeUnitEnum The time unit of the Subscription's initial installment.
allow_suspend_after_installment_num - Int The number of periodic installments after which a UserSubscription is allowed to be suspended.
max_concurrent_vod_stream_num - Int The maximum number of concurrent VOD streams allowed for a UserSubscription.
newsletter_list_id - String The id of the newsletter list a User is added to upon purchasing this Subscription.
entitlement_scope - SubscriptionEntitlementScopeEnum Which Articles the Subscription entitles.
is_credit_issuing - Boolean Whether the Subscription periodically issues credits through one of its Products.
purchase_num - Int The quantity of the Subscription in the context it is being resolved in. Always 1.
max_purchase_num - Int The maximum quantity that may be purchased of this Subscription. Always 1.
articles - [ArticleListedAsRelation] The Articles individually selected as part of the Subscription's entitlement_scope.
categories - [CategoryListedAsRelation] The Categories individually selected as part of the Subscription's entitlement_scope.
payment_providers - [PaymentProviderListedAsRelation] The PaymentProviders through which this Subscription may be purchased. Empty means all PaymentProviders are allowed.
icons - [File] The Subscription's icon Files.
images - [File] The Subscription's image Files.
posters - [File] The Subscription's poster Files.
videos - [File] The Subscription's video Files.
created_at - String The Subscription's creation date (UTC).
updated_at - String The Subscription's last modification date (UTC).
Example
{
  "id": 42,
  "project_id": 42,
  "remote_subscription_id": "string",
  "name": "string",
  "title": "string",
  "description": "string",
  "description_short": "string",
  "type": "svod",
  "price": 7.99,
  "price_per_installment": 7.99,
  "time_unit": "day",
  "time_unit_translation": "string",
  "frequency": 1,
  "currency": "EUR",
  "currency_symbol": "EUR",
  "initial_installment_num": 42,
  "initial_installment_time_unit": "day",
  "allow_suspend_after_installment_num": 42,
  "max_concurrent_vod_stream_num": 42,
  "newsletter_list_id": "string",
  "entitlement_scope": "partial_exclusive",
  "is_credit_issuing": false,
  "purchase_num": 42,
  "max_purchase_num": 1,
  "articles": [ArticleListedAsRelation],
  "categories": [CategoryListedAsRelation],
  "payment_providers": [PaymentProviderListedAsRelation],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

SubscriptionDiscoverabilityEnum

Description

How discoverable the Subscription is to Users.

Values
Enum Value Description

hidden

Hidden from all listing/browse/search surfaces, but still directly reachable by id or direct link.

discoverable

Discoverable through listing/browse/search surfaces.
Example
"hidden"

SubscriptionEntitlementScopeEnum

Description

Which Articles the Subscription entitles.

Values
Enum Value Description

partial_exclusive

The Subscription entitles all Articles except the individually selected Articles/Categories, which are excluded.

partial_inclusive

The Subscription entitles only the individually selected Articles/Categories.

all

The Subscription entitles all Articles, including those created in the future.
Example
"partial_exclusive"

SubscriptionFileInput

Description

A File update belonging to a Subscription.

Fields
Input Field Description
id - Int The id of the File.
type - FileTypeEnum The File's type (e.g. subtitle, screenshot).
duration - Int The File's duration in seconds, for an audio/video File.
locale - String The File's language locale code, for a subtitle or audio-track File.
subscription_id - Int The Subscription id that owns the File.
Example
{
  "id": 42,
  "type": "audio",
  "duration": 42,
  "locale": "string",
  "subscription_id": 42
}

SubscriptionListed

Description

A Subscription, as part of a list.

Fields
Field Name Description
id - Int! The id of the Subscription.
project_id - Int! The Project id that owns the Subscription.
remote_subscription_id - String The Subscription's remote id (e.g. used for in-app purchases), prefixed per the Project's configuration.
name - String The Subscription's name.
title - String The Subscription's title.
description - String The Subscription's description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

description_short - String The Subscription's short description.
Arguments
output - MetaOutputTypeEnum

The output format (html, stripped_html, markdown).

type - SubscriptionTypeEnum The Subscription's type.
price - Float The Subscription's initial price (on first payment).
price_per_installment - Float The Subscription's price per recurring periodic installment.
time_unit - SubscriptionTimeUnitEnum The time unit of the Subscription's recurring periodic installment.
time_unit_translation - String The translated label of time_unit.
frequency - Float How often, in units of time_unit, the Subscription's recurring periodic installment repeats.
currency - String The Subscription's currency code (e.g. "EUR").
currency_symbol - String The Subscription's currency symbol (e.g. "€").
initial_installment_num - Int The Subscription's initial number of installments.
initial_installment_time_unit - SubscriptionTimeUnitEnum The time unit of the Subscription's initial installment.
allow_suspend_after_installment_num - Int The number of periodic installments after which a UserSubscription is allowed to be suspended.
max_concurrent_vod_stream_num - Int The maximum number of concurrent VOD streams allowed for a UserSubscription.
newsletter_list_id - String The id of the newsletter list a User is added to upon purchasing this Subscription.
entitlement_scope - SubscriptionEntitlementScopeEnum Which Articles the Subscription entitles.
is_credit_issuing - Boolean Whether the Subscription periodically issues credits through one of its Products.
purchase_num - Int The quantity of the Subscription in the context it is being resolved in. Always 1.
max_purchase_num - Int The maximum quantity that may be purchased of this Subscription. Always 1.
articles - [ArticleListedAsRelation] The Articles individually selected as part of the Subscription's entitlement_scope.
categories - [CategoryListedAsRelation] The Categories individually selected as part of the Subscription's entitlement_scope.
payment_providers - [PaymentProviderListedAsRelation] The PaymentProviders through which this Subscription may be purchased. Empty means all PaymentProviders are allowed.
icons - [File] The Subscription's icon Files.
images - [File] The Subscription's image Files.
posters - [File] The Subscription's poster Files.
videos - [File] The Subscription's video Files.
created_at - String The Subscription's creation date (UTC).
updated_at - String The Subscription's last modification date (UTC).
is_pricing_highlighted - Boolean Whether the Subscription is highlighted as "recommended" in pricing overviews.
is_pricing_display_recurring_price - Boolean Whether the Subscription's recurring price is automatically displayed in pricing overviews.
Example
{
  "id": 42,
  "project_id": 42,
  "remote_subscription_id": "string",
  "name": "string",
  "title": "string",
  "description": "string",
  "description_short": "string",
  "type": "svod",
  "price": 7.99,
  "price_per_installment": 7.99,
  "time_unit": "day",
  "time_unit_translation": "string",
  "frequency": 1,
  "currency": "EUR",
  "currency_symbol": "EUR",
  "initial_installment_num": 42,
  "initial_installment_time_unit": "day",
  "allow_suspend_after_installment_num": 42,
  "max_concurrent_vod_stream_num": 42,
  "newsletter_list_id": "string",
  "entitlement_scope": "partial_exclusive",
  "is_credit_issuing": true,
  "purchase_num": 42,
  "max_purchase_num": 1,
  "articles": [ArticleListedAsRelation],
  "categories": [CategoryListedAsRelation],
  "payment_providers": [PaymentProviderListedAsRelation],
  "icons": [File],
  "images": [File],
  "posters": [File],
  "videos": [File],
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "is_pricing_highlighted": false,
  "is_pricing_display_recurring_price": true
}

SubscriptionListedAsResource

Description

A Subscription, as a generic resource reference.

Fields
Field Name Description
id - Int! The id of the resource
name - String The name of resource
Example
{"id": 42, "name": "string"}

SubscriptionStatusEnum

Description

The Subscription's publication status.

Values
Enum Value Description

inactive

The Subscription is not published and cannot be purchased.

active

The Subscription is published and can be purchased.
Example
"inactive"

SubscriptionTimeUnitEnum

Description

The time unit a periodical value is expressed in.

Values
Enum Value Description

day

A period of one day.

week

A period of one week.

month

A period of one month.

year

A period of one year.
Example
"day"

SubscriptionTypeEnum

Description

The Subscription's type.

Values
Enum Value Description

svod

A standard subscription-video-on-demand Subscription, billed periodically.

trial

A trial Subscription.
Example
"svod"

SubscriptionUserSubscriptionStatusActionEnum

Description

The UserSubscription status a Subscription forces upon purchase.

Values
Enum Value Description

activate

Force the resulting UserSubscription's status to active.

suspend

Force the resulting UserSubscription's status to suspended.
Example
"activate"

SystemLanguageTag

Description

A system LanguageTag with runtime template placeholders resolved.

Fields
Field Name Description
key - String The LanguageTag key.
value - String The LanguageTag value in the active locale.
format - MetaFormatEnum The rendering format to use for the LanguageTag value.
Example
{
  "key": "string",
  "value": "string",
  "format": "date"
}

Translation

Description

A translation

Fields
Field Name Description
locale - String The translation locale.
value - String The translated value.
Example
{
  "locale": "string",
  "value": "string"
}

TranslationInput

Description

A translation input

Fields
Input Field Description
locale - String The translation locale.
value - String The translated value.
Example
{
  "locale": "string",
  "value": "string"
}

Upload

Description

The Upload special type represents a file to be uploaded in the same HTTP request as specified by graphql-multipart-request-spec.

Example
Upload

User

Description

A User.

Fields
Field Name Description
id - Int! The id of the User.
project_id - Int The Project id that owns the User.
name - String The User's name.
display_name - String The User's display name, typically the User's first name or first part of the e-mail address.
email - String The User's e-mail address.
gender - UserGenderTypeEnum The User's gender.
locale - String The User's locale (language).
subtitle_locale - String The User's preferred subtitle locale (language).
audio_locale - String The User's preferred audio locale (language).
status - UserStatusEnum The User's verification status.
address - String The User's address.
postal_code - String The User's postal code.
city - String The User's city.
country - String The User's country.
geo_region_code - String The User's country code.
phone - String The User's phone number.
is_phone_verified - UserPhoneStatusEnum The User's phone number verification status.
birthday - String The User's birthday.
height - Float The User's height.
weight - Float The User's weight.
custom_data - String Custom data stored for the User.
is_newsletter_opt_in - Boolean Whether the User has opted in to the newsletter.
is_terms_and_conditions_opt_in - Boolean Whether the User has accepted the terms and conditions.
is_marked_for_deletion - Boolean Whether the User's account is marked for deletion.
delete_at - String The date (UTC) at which the User's account will be deleted, when is_marked_for_deletion is true.
notifiable - UserNotifiableTypeEnum How the User may be notified.
max_concurrent_vod_stream_num - Int The maximum number of concurrent VOD streams allowed for the User.
user_subscription_status - UserSubscriptionStatusEnum The status of the User's current UserSubscription, if any.
user_subscription_last_event_type - UserSubscriptionEventTypeEnum The most recent event of importance generated for the User's current UserSubscription, if any.
subscription_id - Int The Subscription id the User's current UserSubscription is an instance of, if any.
favourite_articles - [ArticleRelated] The Articles the User marked as favourite.
nomadic_articles - [ArticleRelated] The Articles the User has an active (in-progress) nomadic playback position for.
history_articles - [ArticleRelated] The Articles the User has completed.
entitled_articles - [ArticleRelated] The complete list of Articles the User is entitled to.
entitled_root_articles - [ArticleRelated] The root-level Articles the User is entitled to.
articles - [ArticleRelated] The Articles related to the User (favourite, nomadic, and/or history).
Arguments
is_exclude_stale_articles - Boolean

Whether to exclude Articles that are not nomadic, favourite, or history for the User.

latest_nomadic_article - ArticleRelated The User's latest active nomadic Article.
Arguments
root_id - Int

The parent/root Article id to scope the search to.

is_fallback_to_first_eligible_article - Boolean

Whether to fall back to the first eligible Article when no nomadic Article is found.

consents - [UserConsent] The User's cookie consent records.
metric_actions - [MetricAction] The MetricActions fulfilled by the User.
notification_profiles - [UserNotificationProfile] The User's notification delivery profiles.
notification_topics - [UserNotificationTopic] The NotificationTopics the User is subscribed to.
user_subscriptions - [UserSubscription] The User's UserSubscriptions.
user_products - [UserProduct] The User's purchased Products.
orders - [UserPaymentAccountOrder] The User's UserPaymentAccountOrders, excluding open, cancelled, aborted, and expired ones.
Arguments
sort_by - [SortByInput]

Sort and order by field(s).

user_payment_credit_amount - Float The User's available credit amount for the given credit type.
Arguments
type - UserPaymentCreditTypeEnum

The credit type to fetch the amount for.

user_payment_general_credit_amount - Float The User's available general credit amount.
user_payment_free_article_credit_amount - Float The User's available free-article credit amount.
user_payment_currency_amount - Float The User's available account balance amount, in the currency indicated by user_payment_currency.
user_payment_currency_symbol - String The currency symbol paired with user_payment_currency.
user_payment_currency - String The currency code user_payment_currency_amount is expressed in.
Example
{
  "id": 42,
  "project_id": 42,
  "name": "string",
  "display_name": "string",
  "email": "foo@example.com",
  "gender": "male",
  "locale": "string",
  "subtitle_locale": "string",
  "audio_locale": "string",
  "status": "string",
  "address": "string",
  "postal_code": "string",
  "city": "string",
  "country": "string",
  "geo_region_code": "nl",
  "phone": "string",
  "is_phone_verified": false,
  "birthday": "string",
  "height": 987.65,
  "weight": 987.65,
  "custom_data": "string",
  "is_newsletter_opt_in": true,
  "is_terms_and_conditions_opt_in": false,
  "is_marked_for_deletion": true,
  "delete_at": "2000-12-31T12:34:56.000Z",
  "notifiable": "none",
  "max_concurrent_vod_stream_num": 42,
  "user_subscription_status": "string",
  "user_subscription_last_event_type": "first_payment_error",
  "subscription_id": 42,
  "favourite_articles": [ArticleRelated],
  "nomadic_articles": [ArticleRelated],
  "history_articles": [ArticleRelated],
  "entitled_articles": [ArticleRelated],
  "entitled_root_articles": [ArticleRelated],
  "articles": [ArticleRelated],
  "latest_nomadic_article": ArticleRelated,
  "consents": [UserConsent],
  "metric_actions": [MetricAction],
  "notification_profiles": [UserNotificationProfile],
  "notification_topics": [UserNotificationTopic],
  "user_subscriptions": [UserSubscription],
  "user_products": [UserProduct],
  "orders": [UserPaymentAccountOrder],
  "user_payment_credit_amount": 1,
  "user_payment_general_credit_amount": 1,
  "user_payment_free_article_credit_amount": 1,
  "user_payment_currency_amount": "EUR",
  "user_payment_currency_symbol": "EUR",
  "user_payment_currency": "EUR"
}

UserArticleSession

Description

A User's Article view session.

Fields
Field Name Description
id - Int! The id of the UserArticleSession record.
user_id - Int The id of the authenticated User that generated this UserArticleSession record (null for an anonymous User, see anonymous_user_id).
anonymous_user_id - String The anonymous visitor id that generated this UserArticleSession record, for a User without an account (null for an authenticated User, see user_id).
article_id - Int The id of the Article this UserArticleSession record belongs to.
asset_id - Int The id of the Asset this UserArticleSession record belongs to.
linked_type - String The UserArticleSession's Article-Asset linked type.
time_watched - Int The UserArticleSession's amount of time watched (only meaningful for play-time event types).
time_delta - Float The UserArticleSession's elapsed time.
resolution_tag - String The UserArticleSession's displayed resolution.
protocol - String The UserArticleSession's streaming protocol.
encryption_type - String The UserArticleSession's encryption type.
event_type - String The UserArticleSession's event type (play-time event types: "play", "playing", "stop").
event_payload - String The UserArticleSession's recorded payload/message.
is_progress_marker1_completed - Boolean Whether the UserArticleSession fulfilled custom progress marker 1.
is_progress_marker2_completed - Boolean Whether the UserArticleSession fulfilled custom progress marker 2.
is_progress_marker3_completed - Boolean Whether the UserArticleSession fulfilled custom progress marker 3.
is_completed - Boolean Whether the UserArticleSession fulfilled the Asset's completion marker.
device_type - String The UserArticleSession's detected device type.
device_brand - String The UserArticleSession's detected device brand.
device_model - String The UserArticleSession's detected device model.
telemetry_platform - String The UserArticleSession's detected telemetry platform.
ip_address - String The UserArticleSession's IP address.
user_agent - String The User's user agent (browser/app) through which this Article-Asset was last watched.
geo_region_code - String The UserArticleSession's geo-region code.
audio_locale - String The UserArticleSession's audio language (ISO 639-1 code).
subtitle_locale - String The UserArticleSession's subtitle language (ISO 639-1 code).
started_at - String The UserArticleSession's start date (UTC).
article_name - String The Article's name.
Example
{
  "id": 42,
  "user_id": 42,
  "anonymous_user_id": "string",
  "article_id": 42,
  "asset_id": 42,
  "linked_type": "film",
  "time_watched": 42,
  "time_delta": 123.45,
  "resolution_tag": "string",
  "protocol": "string",
  "encryption_type": "string",
  "event_type": "string",
  "event_payload": "string",
  "is_progress_marker1_completed": false,
  "is_progress_marker2_completed": true,
  "is_progress_marker3_completed": false,
  "is_completed": true,
  "device_type": "string",
  "device_brand": "string",
  "device_model": "string",
  "telemetry_platform": "string",
  "ip_address": "string",
  "user_agent": "string",
  "geo_region_code": "nl",
  "audio_locale": "string",
  "subtitle_locale": "string",
  "started_at": "2000-12-31T12:34:56.000Z",
  "article_name": "string"
}

UserConsent

Description

A User consent property.

Fields
Field Name Description
id - Int The id of the User consent property.
user_id - Int The User id that owns the consent property.
value - Boolean The User consent property's boolean value.
type - UserConsentTypeEnum The User consent property's type.
created_at - String The User consent property's creation date in UTC.
updated_at - String The User consent property's last modification date in UTC.
Example
{
  "id": 42,
  "user_id": 42,
  "value": true,
  "type": "cookie_analytics",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

UserConsentInput

Description

A User's cookie consent record.

Fields
Input Field Description
value - Boolean Whether the User has given consent for this type.
type - UserConsentTypeEnum The cookie consent category this record applies to.
Example
{"value": true, "type": "cookie_analytics"}

UserConsentTypeEnum

Description

The cookie consent category a User's consent record applies to.

Values
Enum Value Description

cookie_analytics

Consent for analytics cookies (e.g. Google Analytics, Google Tag Manager, Facebook Pixel).

cookie_marketing

Consent for marketing/ad-storage cookies (e.g. targeted advertisement).

cookie_preferences

Consent for preference cookies (e.g. storage of the User's preferred language).
Example
"cookie_analytics"

UserGenderTypeEnum

Description

The User's gender.

Values
Enum Value Description

male

Male.

female

Female.

non_binary

Non-binary.

unknown

Unknown or unspecified.
Example
"male"

UserMetaInput

Description

A meta property update belonging to a User.

Fields
Input Field Description
id - Int The metadata property id
key - String The metadata property key
value - String The metadata property value
type - MetaTypeEnum The metadata property type
format - MetaFormatEnum The metadata property rendering format
locale - String The metadata property locale
user_id - Int The User id that owns the meta property.
Example
{
  "id": 42,
  "key": "string",
  "value": "string",
  "type": "array",
  "format": "date",
  "locale": "string",
  "user_id": 42
}

UserMetaTranslation

Description

A translated User meta property value.

Fields
Field Name Description
id - Int The id of the translated meta property value.
user_meta_id - Int The id of the User meta property this translation belongs to.
value - String The translated meta property value.
locale - String The translated meta property value's locale.
Example
{
  "id": 42,
  "user_meta_id": 42,
  "value": "string",
  "locale": "string"
}

UserNotifiableTypeEnum

Description

How the User may be notified.

Values
Enum Value Description

none

The User does not receive notifications.

sms

The User receives notifications via SMS.
Example
"none"

UserNotificationProfile

Description

A User notification profile.

Fields
Field Name Description
id - Int The id of the User notification profile.
user_id - Int The id of the User who owns this notification profile.
notification_token - String The device notification token linked to the User.
device_tag - String The human-readable device tag for this notification profile.
created_at - String The UTC datetime when the User notification profile was created.
updated_at - String The UTC datetime when the User notification profile was last updated.
Example
{
  "id": 42,
  "user_id": 42,
  "notification_token": "string",
  "device_tag": "string",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

UserNotificationProfileInput

Description

A User notification profile input object.

Fields
Input Field Description
notification_token - String The device notification token to link to the User.
device_tag - String The optional human-readable device tag for this notification profile.
Example
{
  "notification_token": "string",
  "device_tag": "string"
}

UserNotificationTopic

Description

A User NotificationTopic subscription.

Fields
Field Name Description
id - Int! The id of the NotificationTopic.
remote_notification_topic_id - String The remote id of the NotificationTopic used by push-notification providers.
project_id - Int! The Project id that owns the NotificationTopic.
name - String The NotificationTopic's internal name.
title - String The NotificationTopic's localized title.
description - String The NotificationTopic's localized description.
is_subscribed - Boolean Whether the User is subscribed to this NotificationTopic.
notify_at - String The preferred UTC time for notifying the User on this NotificationTopic.
notified_at - String The UTC datetime when the User was last notified on this NotificationTopic.
created_at - String The UTC datetime when the User NotificationTopic subscription was created.
updated_at - String The UTC datetime when the User NotificationTopic subscription was last updated.
Example
{
  "id": 42,
  "remote_notification_topic_id": "string",
  "project_id": 42,
  "name": "string",
  "title": "string",
  "description": "string",
  "is_subscribed": false,
  "notify_at": "2000-12-31T12:34:56.000Z",
  "notified_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z"
}

UserNotificationTopicInput

Description

A User NotificationTopic subscription input object.

Fields
Input Field Description
id - Int The id of the NotificationTopic.
notify_at - String The preferred UTC time for notifying the User on this NotificationTopic.
is_subscribed - Boolean Whether the User is subscribed to this NotificationTopic.
Example
{
  "id": 42,
  "notify_at": "string",
  "is_subscribed": false
}

UserPaymentAccount

Description

A UserPaymentAccount

Fields
Field Name Description
id - Int! The id of the UserPaymentAccount.
payment_provider_id - Int The id of the PaymentProvider linked to the UserPaymentAccount.
amount_balance - Float The amount balance of the account
method - String The payment method of the account
method_details - String The payment method details of the account
geo_region_code - String The GeoRegion code from which the UserPaymentAccount creation originated.
orders - [UserPaymentAccountOrder] The UserPaymentAccountOrders for this account.
Example
{
  "id": 42,
  "payment_provider_id": 42,
  "amount_balance": 987.65,
  "method": "string",
  "method_details": "string",
  "geo_region_code": "nl",
  "orders": [UserPaymentAccountOrder]
}

UserPaymentAccountOrder

Description

A UserPaymentAccountOrder

Fields
Field Name Description
id - Int! The id of the UserPaymentAccountOrder.
user_id - Int The id of the User that owns the UserPaymentAccountOrder.
user_subscription_id - String The id of the UserSubscription related to the UserPaymentAccountOrder.
payment_syndicate_voucher_id - Int The id of the PaymentSyndicateVoucher attached to the UserPaymentAccountOrder.
voucher_code - String The Voucher Code attached to the UserPaymentAccountOrder.
type - String The UserPaymentAccountOrder's type.
recurring_type - String The recurring type of the order
discount_type - String The discount type of the order
payment_provider_type - String The payment provider type of the order
amount - Float The UserPaymentAccountOrder's amount.
status - String The UserPaymentAccountOrder's payment status.
status_name - String The UserPaymentAccountOrder's translated payment status name.
description - String The UserPaymentAccountOrder's description.
installed_at - String The installation date (UTC) of the order
paid_at - String The payment fulfilment date (UTC) of the order
cancelled_at - String The cancellation date (UTC) of the order
refunded_at - String The refunded/charge-back date (UTC) of the order
created_at - String The creation date (UTC) of the order
updated_at - String The last modification date (UTC) of the order
installments - [Int] The order installments
currency - String The UserPaymentAccountOrder's currency.
currency_symbol - String The UserPaymentAccountOrder's currency symbol.
products - [ProductListedAsRelation] The Products related to the UserPaymentAccountOrder.
Example
{
  "id": 42,
  "user_id": 42,
  "user_subscription_id": "string",
  "payment_syndicate_voucher_id": 42,
  "voucher_code": "string",
  "type": "string",
  "recurring_type": "string",
  "discount_type": "string",
  "payment_provider_type": "string",
  "amount": 987.65,
  "status": "string",
  "status_name": "string",
  "description": "string",
  "installed_at": "2000-12-31T12:34:56.000Z",
  "paid_at": "2000-12-31T12:34:56.000Z",
  "cancelled_at": "2000-12-31T12:34:56.000Z",
  "refunded_at": "2000-12-31T12:34:56.000Z",
  "created_at": "2000-12-31T12:34:56.000Z",
  "updated_at": "2000-12-31T12:34:56.000Z",
  "installments": [42],
  "currency": "EUR",
  "currency_symbol": "EUR",
  "products": [ProductListedAsRelation]
}

UserPaymentAccountOrderPurchaseOriginEnum

Description

UserPaymentAccountOrder purchase origin

Values
Enum Value Description

currency

Purchase was fulfilled through a normal currency payment.

zero_sum

Purchase was fulfilled as a zero-sum order.

voucher_currency

Purchase used a voucher and still required a currency payment.

voucher_zero_sum

Purchase used a voucher and resulted in a zero-sum order.

amount_balance_currency

Purchase used account balance and still required a currency payment.

amount_balance_zero_sum

Purchase used account balance and resulted in a zero-sum order.

credit_general_single

Single purchase fulfilled with general credits.

credit_general_recurring

Recurring purchase fulfilled with general credits.

credit_free_article_single

Single purchase fulfilled with free-article credits.

credit_free_article_recurring

Recurring purchase fulfilled with free-article credits.
Example
"currency"

UserPaymentAccountOrderStatusEnum

Description

UserPaymentAccountOrder payment status

Values
Enum Value Description

open

Payment order is open at the PaymentProvider.

cancelled

Payment order was cancelled.

aborted

Payment order was aborted before completion.

expired

Payment order expired before completion.

failed

Payment order failed.

pending

Payment order is pending provider confirmation.

paid

Payment order was paid.

paidout

Payment order was paid out by the PaymentProvider.

refunded

Payment order was refunded.

charged_back

Payment order was charged back.
Example
"open"

UserPaymentAccountOrderTypeEnum

Description

UserPaymentAccountOrder type

Values
Enum Value Description

svod

Subscription video-on-demand payment order.

tvod

Transactional video-on-demand payment order.

pmc

Payment-method-change order.
Example
"svod"

UserPaymentCreditTypeEnum

Description

UserPaymentCredit type

Values
Enum Value Description

general

General-purpose User payment credits.

free_article

Credits that can fulfil eligible free-article Products.
Example
"general"

UserPhoneStatusEnum

Description

The User's phone number verification status.

Values
Enum Value Description

unverified

The User's phone number has not been verified.

verified

The User's phone number has been verified.
Example
"unverified"

UserProduct

Description

A Product purchased by a User.

Fields
Field Name Description
id - Int The id of the UserProduct.
product_id - Int The id of the purchased Product.
user_id - Int The User id that purchased the Product.
user_payment_account_order_id - Int The UserPaymentAccountOrder id through which the Product was purchased.
is_fulfilled - Boolean Whether the UserProduct's entitlement has been fulfilled.
fulfilment_expires_at - String The date (UTC) until which the UserProduct's fulfilled entitlement remains valid.
order - UserPaymentAccountOrder The UserPaymentAccountOrder through which the Product was purchased.
product - Product The purchased Product.
account - UserPaymentAccount The UserPaymentAccount the purchase was made through.
Example
{
  "id": 42,
  "product_id": 42,
  "user_id": 42,
  "user_payment_account_order_id": 42,
  "is_fulfilled": true,
  "fulfilment_expires_at": "2000-12-31T12:34:56.000Z",
  "order": UserPaymentAccountOrder,
  "product": Product,
  "account": UserPaymentAccount
}

UserStatusEnum

Description

The User's verification status.

Values
Enum Value Description

disabled

The User has been administratively disabled and can no longer authenticate.

unverified

The User has registered but has not yet verified their e-mail address.

verified

The User has verified their e-mail address.
Example
"disabled"

UserSubscription

Description

A UserSubscription.

Fields
Field Name Description
id - Int! The id of the UserSubscription.
user_id - Int! The User id that owns the UserSubscription.
project_id - Int! The Project id that owns the UserSubscription.
subscription_id - Int! The Subscription id the UserSubscription is an instance of.
switch_from_subscription_id - Int The Subscription id the UserSubscription was switched from, when applicable.
switch_to_subscription_id - Int The Subscription id the UserSubscription is scheduled to switch to at its next renewal, when status is "switch_at_renewal".
term - Int The UserSubscription's current term number (how many renewals it has completed).
acquired_at - String The UserSubscription's acquisition date (UTC).
expires_at - String The UserSubscription's current expiry date (UTC).
suspendable_at - String The date (UTC) from which the UserSubscription becomes eligible to be suspended.
suspended_at - String The date (UTC) at which the UserSubscription was suspended.
invoiced_at - String The UserSubscription's next invoice date (UTC).
status - UserSubscriptionStatusEnum The UserSubscription's status.
status_name - String The UserSubscription's status, as an upper-case label.
is_valid - Boolean Whether the UserSubscription is currently valid.
is_expired - Boolean Whether the UserSubscription's expires_at date has passed.
is_suspendable - Boolean Whether the UserSubscription is currently eligible to be suspended.
is_account_method_changeable - Boolean Whether the UserSubscription's payment account method may currently be changed.
is_switchable - Boolean Whether the UserSubscription may currently be switched to a different Subscription.
orders - [UserPaymentAccountOrder] The UserPaymentAccountOrders associated with the UserSubscription.
Arguments
sort_by - [SortByInput]

Sort and order by field(s).

subscription - Subscription The Subscription the UserSubscription is an instance of.
account - UserPaymentAccount The UserPaymentAccount the UserSubscription is billed through.
Example
{
  "id": 42,
  "user_id": 42,
  "project_id": 42,
  "subscription_id": 42,
  "switch_from_subscription_id": 42,
  "switch_to_subscription_id": 42,
  "term": 42,
  "acquired_at": "2000-12-31T12:34:56.000Z",
  "expires_at": "2000-12-31T12:34:56.000Z",
  "suspendable_at": "2000-12-31T12:34:56.000Z",
  "suspended_at": "2000-12-31T12:34:56.000Z",
  "invoiced_at": "2000-12-31T12:34:56.000Z",
  "status": "string",
  "status_name": "string",
  "is_valid": false,
  "is_expired": true,
  "is_suspendable": false,
  "is_account_method_changeable": true,
  "is_switchable": false,
  "orders": [UserPaymentAccountOrder],
  "subscription": Subscription,
  "account": UserPaymentAccount
}

UserSubscriptionEventTypeEnum

Description

The type of event that affected the UserSubscription.

Values
Enum Value Description

first_payment_error

An error occurred when trying to create the first payment to activate the user subscription.

payment_charged_back

A charge-back occurred, impacting the validity of the user subscription.

payment_refunded

A refund occurred, impacting the validity of the user subscription.

payment_unfulfilled

A previously fulfilled payment has become unfulfilled.

renewal_error

An error occurred when attempting the last renewal, impacting the continued validity of the user subscription.

renewal_mandate_missing

An error occurred when attempting the last renewal, a renewal mandate was expected but not found.

renewal_mandate_invalid

The renewal mandate was present but has been revoked or is no longer valid.

renewal_payment_unfulfilled

A renewal payment order has been generated, but it has not yet been fufilled.

renewal_payment_declined

The renewal payment was declined by the provider, e.g. due to insufficient funds.

voucher_claim_error

When attempting renewal, given voucher code could not be processed.
Example
"first_payment_error"

UserSubscriptionStatusEnum

Description

The UserSubscription's status.

Values
Enum Value Description

initialised

The UserSubscription has been created but not yet activated.

active

The UserSubscription is active and valid.

suspended

The UserSubscription is temporarily suspended, but still considered valid and eligible for Article playback.

disabled

The UserSubscription has been administratively disabled and is no longer valid.

demo

The UserSubscription was granted for demonstration purposes, without a real purchase, and is considered valid.

locked

The UserSubscription is valid, but not currently eligible for Article playback.

expired

The UserSubscription has lapsed and is no longer valid. This is a terminal state.

switch_at_renewal

The UserSubscription is marked to switch to a different Subscription at its next renewal, and remains valid until then.

error

The UserSubscription is in an error state.
Example
"initialised"