Concepts
Everything in the GraphQL Management API is reached from the viewer — the logged in user or API client — through two main branches of the graph:
- the media branch:
mediaHubs→assetRepositories→assetFolders→assets - the organization branch:
organizations→ CMS hubs and repositories, commerce repositories, content generation, teams and users, webhooks, and credits
For example, the following query walks the media branch and returns all the asset repositories that the logged in user or API client has access to. Results are returned using the edges and node structure defined by the Relay cursor connections specification — see Conventions for how connections and pagination work:
The viewerLink copied!
viewer is the top level query in the nested connections graph and returns an object of type User, which describes the logged in user or API client. From the viewer you can traverse to your mediaHubs and organizations.
Media HubsLink copied!
A Media Hub (MediaHub) is the space within which assets are produced and published.
A media hub can contain multiple asset repositories, and also holds the hub's metadata schemas and transformation templates.
Asset RepositoriesLink copied!
An Asset Repository (AssetRepository) is a collection of assets within a media hub.
Organising assets into repositories makes it possible to control who can view, create and edit the assets in each one — access is managed at the repository level in the Amplience app. One repository in each media hub is the default for asset uploads (isDefault).
Asset FoldersLink copied!
An Asset Folder (AssetFolder) organises assets within a repository. Folders can be nested: each folder exposes its sub-folders through children and the assets it contains through assets.
AssetsLink copied!
An Asset is an individual piece of media — an image, video, set or other file — held in an asset repository. Assets carry their publishing state, workflow status, locale, tags and metadata.
Assets have two identifiers: id, the globally unique ID used throughout this API (for example with the node query), and assetId, a shorter UUID used for compatibility with Dynamic Media assets, asset manifests and existing integrations.
OrganizationsLink copied!
An Organization is the top-level account container. From an organization you can reach its CMS hubs, teams and members, invitations, preview keys, credit balance and entitlements. Organization, hub and repository roles control what each user or team can do.
CMS Hubs and RepositoriesLink copied!
A CMS Hub (CMSHub) is a Dynamic Content hub as seen from this API. It exposes the hub's content repositories (CMSRepository) along with the newer capabilities attached to a hub: commerce repositories, content generation (sessions, brand voices, audiences, tones and models), content flows, content review tasks, extensions and webhook listeners. The userPermissions field on both types tells you what the current viewer is allowed to do.