Cognitive Cloud API

Cognitive Cloud is the world's largest provider of stateless services, referred to as "Actions". This guide is intended to help you discover and use our core API.

API Endpoints
https://graph.cognitivecloud.com/graph

Key Concepts

Actions

An Action is a stateless service that may be invoked via an API. Cognitive Cloud provides reliable, cost-effective access to more than 100,000 Actions, covering a broad set of use cases. This includes:

  • AI Actions (e.g. image generation, text classification, speech recognition)
  • Non-AI Actions (e.g. file conversion, email verification, database backup).

Actions are powered by a wide range of open source models and libraries, as well as third-party APIs.

Jobs

A Job is a particular invocation of an Action. Each Job consists of an Action ID, a Project ID, and configurable job parameters.

Users may use either the Dashboard or the API to view the status of any given Job, and to view the status and outcome of historical jobs.

Artifacts

Artifacts are temporary files created by certain Actions during execution. For example, if you use an Action to resize a given image, the resized image will be stored as an Artifact, and returned as an Artifact URL.

Artifacts are stored for a period of 24 hours, after which they may be deleted. If you need to access an Artifact for more than 24 hours, you should download it using the artifact URL.

Projects

Projects are a top-level construct used to organize Jobs, billing, and user / API key access. Every Job must run in the context of a Project. There are no limits on the number of Projects a user can create.

Team Members

Each Project may have multiple Team Members. These are human users with varying degrees of permissions. For more information, see the Permissions section of this documentation.

API Keys

API Keys allow you to invoke Actions programmatically via an API. For more information, see the Authentication section of this documentation.

Webhooks

When creating a Job, you may optionally specify a webhook URL. This webhook URL will receive a single POST update when the Job either completes or fails. This can be useful for long-running Actions that take more than a few seconds to complete.


Introspection

You can use GraphQL introspection to explore the Cognitive Cloud GraphQL API.

  • The easiest way to do this is to use Apollo's Sandbox Explorer using this link.

  • You can also use Postman and other services.


Authentication

To use actions through our API, you need a Cognitive Cloud project and a corresponding API key.

Generating keys

To create an API key, following the following steps

  1. Log in to the dashboard - Access the Cognitive Cloud dashboard and log in with your credentials.

  2. Create an API key - Navigate to the API Keys section, click on "Create Key", and follow the prompts to generate a new API key. Refer to Roles & Access for more information on API key access permissions.

Authenticating requests

Once you have an API key, include it in the request headers to authenticate your API requests.

Using REST

Include the API key in the headers of your request as follows:

headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
}

Using CURL

Here is an example of how to make an authenticated API request using curl:

curl --request POST \
    --header 'content-type: application/json' \
    --header 'Authorization: Bearer YOUR_API_KEY' \
    --url 'https://graph.cognitivecloud.com/graph' \
    --data '...'

Security Tips

  • Treat your API key like a password - keep it secure, and don't expose it in client-side code.
  • Pass API keys using environment variables - don't store keys in code.
  • If you suspect your key may be compromised, disable it through the dashboard, or contact support.
  • Cycle keys regularly.

Permissions

Cognitive Cloud uses a permission system built around the concept of Roles. Each human user (or API key) has a single Role in each project.

Roles

The current list of supported roles includes:

  • ADMIN - provides read and write access to all functionality
  • DEVELOPER - provides read and write access to most functionality, excluding the ability to manage team, keys, and billing
  • READONLY - provides read-only access to most functionality, excluding teams, keys, and billing
  • FINANCE - provides read and write access to billing functionality only

Permissions

Roles have different permissions, as detailed in the table below:

Permission Roles
Projects
Edit a project's details ADMIN
View a project's dashboard ADMIN, DEVELOPER, READONLY, FINANCE
Actions
View jobs ADMIN, DEVELOPER, READONLY, FINANCE
Create jobs ADMIN, DEVELOPER
API Keys
View API keys ADMIN, DEVELOPER
Create API keys ADMIN, DEVELOPER
Edit API keys ADMIN, DEVELOPER
Delete API keys ADMIN, DEVELOPER
Team Members
View team members ADMIN, DEVELOPER, READONLY, FINANCE
Invite team members ADMIN
Edit team members ADMIN
Remove team members ADMIN
Billing Info
View billing info ADMIN, FINANCE
Edit billing info ADMIN, FINANCE
Clear billing info ADMIN, FINANCE
Invoices
View invoices ADMIN, DEVELOPER, READONLY, FINANCE
Pay invoices ADMIN, FINANCE

Queries

get_action

Description

Returns detail of an action

Response

Returns an Action!

Arguments
Name Description
id - String! Id of action user wants to fetch

Example

Query
query get_action($id: String!) {
  get_action(id: $id) {
    id
    name
    description
    category
    created_at
    updated_at
    is_featured
    is_popular
    is_trending
    is_new
    is_highly_rated
    popular_score
    trending_score
    rating_count
    rating_total
    cost_unit
    cost_amount
    json_schema
    model
    trigger_word
    success_rate
    average_duration
    average_cost
    total_count
    deprecated
    jobs {
      ...JobFragment
    }
    ratings {
      ...ActionRatingFragment
    }
    rating_stats {
      ...ActionRatingStatFragment
    }
    category_details {
      ...ActionCategoryFragment
    }
    user_rating {
      ...ActionRatingFragment
    }
    project_job_statistics {
      ...JobStatisticFragment
    }
    total_job_statistics {
      ...JobStatisticFragment
    }
  }
}
Variables
{"id": "xyz789"}
Response
{
  "data": {
    "get_action": {
      "id": "abc123",
      "name": "abc123",
      "description": "abc123",
      "category": "xyz789",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "2007-12-03T10:15:30Z",
      "is_featured": false,
      "is_popular": false,
      "is_trending": true,
      "is_new": false,
      "is_highly_rated": false,
      "popular_score": 987.65,
      "trending_score": 987.65,
      "rating_count": 987.65,
      "rating_total": 987.65,
      "cost_unit": "abc123",
      "cost_amount": 987.65,
      "json_schema": {},
      "model": "xyz789",
      "trigger_word": "abc123",
      "success_rate": 123.45,
      "average_duration": 987.65,
      "average_cost": 987.65,
      "total_count": 987.65,
      "deprecated": true,
      "jobs": [Job],
      "ratings": [ActionRating],
      "rating_stats": [ActionRatingStat],
      "category_details": ActionCategory,
      "user_rating": ActionRating,
      "project_job_statistics": JobStatistic,
      "total_job_statistics": JobStatistic
    }
  }
}

get_asset

Description

Retrieve a media library asset by its unique identifier

Response

Returns an Asset!

Arguments
Name Description
id - String! The unique identifier of the asset to fetch

Example

Query
query get_asset($id: String!) {
  get_asset(id: $id) {
    id
    created_at
    updated_at
    library_id
    name
    content_type
    duration
    size
    status
    total_count
    library {
      ...LibraryFragment
    }
    asset_enhancements {
      ...AssetEnhancementFragment
    }
  }
}
Variables
{"id": "xyz789"}
Response
{
  "data": {
    "get_asset": {
      "id": "xyz789",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "2007-12-03T10:15:30Z",
      "library_id": "abc123",
      "name": "xyz789",
      "content_type": "abc123",
      "duration": 987.65,
      "size": 987.65,
      "status": "xyz789",
      "total_count": 123.45,
      "library": Library,
      "asset_enhancements": [AssetEnhancement]
    }
  }
}

get_certificate

Description

Retrieve a certificate and its certificate chain

Response

Returns a Certificate!

Arguments
Name Description
id - String! The certificate identifier

Example

Query
query get_certificate($id: String!) {
  get_certificate(id: $id) {
    certificate
    certificateChain
  }
}
Variables
{"id": "abc123"}
Response
{
  "data": {
    "get_certificate": {
      "certificate": "abc123",
      "certificateChain": "xyz789"
    }
  }
}

get_certificate_details

Description

Get metadata about certificate

Response

Returns a CertificateDetail!

Arguments
Name Description
id - String! The certificate identifier

Example

Query
query get_certificate_details($id: String!) {
  get_certificate_details(id: $id) {
    identifier
    certificate_arn
    certificate_authority_arn
    created_at
    domain_name
    domain_validation_options {
      ...DomainValidationFragment
    }
    failure_reason
    imported_at
    in_use_by
    issued_at
    issuer
    key_algorithm
    not_after
    not_before
    status
  }
}
Variables
{"id": "abc123"}
Response
{
  "data": {
    "get_certificate_details": {
      "identifier": "xyz789",
      "certificate_arn": "xyz789",
      "certificate_authority_arn": "abc123",
      "created_at": "2007-12-03T10:15:30Z",
      "domain_name": "abc123",
      "domain_validation_options": [DomainValidation],
      "failure_reason": "abc123",
      "imported_at": "2007-12-03T10:15:30Z",
      "in_use_by": ["xyz789"],
      "issued_at": "2007-12-03T10:15:30Z",
      "issuer": "abc123",
      "key_algorithm": "xyz789",
      "not_after": "2007-12-03T10:15:30Z",
      "not_before": "2007-12-03T10:15:30Z",
      "status": "abc123"
    }
  }
}

get_distribution

Description

Get a distribution by id

Response

Returns a Distribution!

Arguments
Name Description
distribution_id - String!

Example

Query
query get_distribution($distribution_id: String!) {
  get_distribution(distribution_id: $distribution_id) {
    id
    arn
    status
    last_modified_time
    domain_name
    config {
      ...DistributionConfigFragment
    }
  }
}
Variables
{"distribution_id": "xyz789"}
Response
{
  "data": {
    "get_distribution": {
      "id": "abc123",
      "arn": "xyz789",
      "status": "xyz789",
      "last_modified_time": "2007-12-03T10:15:30Z",
      "domain_name": "xyz789",
      "config": DistributionConfig
    }
  }
}

get_distribution_invalidation

Description

Get an invalidation by id

Response

Returns an Invalidation!

Arguments
Name Description
invalidation_id - String!
distribution_id - String!

Example

Query
query get_distribution_invalidation(
  $invalidation_id: String!,
  $distribution_id: String!
) {
  get_distribution_invalidation(
    invalidation_id: $invalidation_id,
    distribution_id: $distribution_id
  ) {
    id
    create_time
    status
    paths
  }
}
Variables
{
  "invalidation_id": "xyz789",
  "distribution_id": "xyz789"
}
Response
{
  "data": {
    "get_distribution_invalidation": {
      "id": "abc123",
      "create_time": "2007-12-03T10:15:30Z",
      "status": "xyz789",
      "paths": ["xyz789"]
    }
  }
}

get_invoice

Description

Returns invoice details

Response

Returns an Invoice!

Arguments
Name Description
invoice_id - String! The invoice ID

Example

Query
query get_invoice($invoice_id: String!) {
  get_invoice(invoice_id: $invoice_id) {
    id
    project_id
    total_amount
    payment_card_id
    payment_date
    period_start
    period_end
    due_date
    month_id
    is_paid
    stripe_invoice_id
    items {
      ...InvoiceItemFragment
    }
    payment_card {
      ...PaymentCardFragment
    }
    status
    download_link
  }
}
Variables
{"invoice_id": "abc123"}
Response
{
  "data": {
    "get_invoice": {
      "id": "abc123",
      "project_id": "abc123",
      "total_amount": 987.65,
      "payment_card_id": "abc123",
      "payment_date": "2007-12-03T10:15:30Z",
      "period_start": "2007-12-03T10:15:30Z",
      "period_end": "2007-12-03T10:15:30Z",
      "due_date": "2007-12-03T10:15:30Z",
      "month_id": "xyz789",
      "is_paid": false,
      "stripe_invoice_id": "abc123",
      "items": [InvoiceItem],
      "payment_card": PaymentCard,
      "status": "abc123",
      "download_link": "xyz789"
    }
  }
}

get_job

Description

Returns the job details by ID

Response

Returns a Job

Arguments
Name Description
id - String! The job ID

Example

Query
query get_job($id: String!) {
  get_job(id: $id) {
    id
    action_id
    project_id
    status
    started_at
    finished_at
    request
    response
    error_message
    created_at
    total_count
    billing_request_cost
    billing_request_quantity
    action {
      ...ActionFragment
    }
  }
}
Variables
{"id": "xyz789"}
Response
{
  "data": {
    "get_job": {
      "id": "abc123",
      "action_id": "abc123",
      "project_id": "xyz789",
      "status": "abc123",
      "started_at": "2007-12-03T10:15:30Z",
      "finished_at": "2007-12-03T10:15:30Z",
      "request": {},
      "response": {},
      "error_message": {},
      "created_at": "2007-12-03T10:15:30Z",
      "total_count": 123.45,
      "billing_request_cost": 987.65,
      "billing_request_quantity": 987.65,
      "action": Action
    }
  }
}

get_library

Description

Get a library by ID

Response

Returns a Library!

Arguments
Name Description
id - String! The id of the library to fetch

Example

Query
query get_library($id: String!) {
  get_library(id: $id) {
    id
    created_at
    name
    description
    project_id
    asset_type
    assets {
      ...AssetFragment
    }
    custom_domains {
      ...CustomDomainFragment
    }
    total_media_assets
  }
}
Variables
{"id": "xyz789"}
Response
{
  "data": {
    "get_library": {
      "id": "xyz789",
      "created_at": "2007-12-03T10:15:30Z",
      "name": "abc123",
      "description": "abc123",
      "project_id": "xyz789",
      "asset_type": "abc123",
      "assets": [Asset],
      "custom_domains": [CustomDomain],
      "total_media_assets": 987.65
    }
  }
}

get_me

Description

Returns info of logged in user

Response

Returns a User!

Example

Query
query get_me {
  get_me {
    id
    created_at
    updated_at
    first_name
    last_name
    email
    picture
    default_project_id
    default_project {
      ...ProjectFragment
    }
    projects {
      ...ProjectFragment
    }
    ratings {
      ...ActionRatingFragment
    }
  }
}
Response
{
  "data": {
    "get_me": {
      "id": "abc123",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "abc123",
      "first_name": "xyz789",
      "last_name": "abc123",
      "email": "yourname@example.com",
      "picture": "abc123",
      "default_project_id": "xyz789",
      "default_project": Project,
      "projects": [Project],
      "ratings": [ActionRating]
    }
  }
}

get_project

Description

Returns the project details

Response

Returns a Project!

Arguments
Name Description
id - String! The project ID

Example

Query
query get_project($id: String!) {
  get_project(id: $id) {
    id
    name
    created_at
    updated_at
    owner_user_id
    description
    my_role
    owner {
      ...UserFragment
    }
    members {
      ...ProjectMemberFragment
    }
    list_recently_used_api_keys {
      ...KeyFragment
    }
    total_api_keys
    current_spend
    billing_link
  }
}
Variables
{"id": "abc123"}
Response
{
  "data": {
    "get_project": {
      "id": "abc123",
      "name": "abc123",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "abc123",
      "owner_user_id": "xyz789",
      "description": "abc123",
      "my_role": "ADMIN",
      "owner": User,
      "members": [ProjectMember],
      "list_recently_used_api_keys": [Key],
      "total_api_keys": 987.65,
      "current_spend": 987.65,
      "billing_link": "abc123"
    }
  }
}

get_project_billing_info

Description

Returns billing info for this project

Response

Returns a BillingInfo!

Arguments
Name Description
project_id - String! The project ID

Example

Query
query get_project_billing_info($project_id: String!) {
  get_project_billing_info(project_id: $project_id) {
    id
    name
    email
    address_city
    address_country
    address_line_1
    address_line_2
    address_postal_code
    address_state
    address_country_details {
      ...CountryFragment
    }
  }
}
Variables
{"project_id": "xyz789"}
Response
{
  "data": {
    "get_project_billing_info": {
      "id": "xyz789",
      "name": "xyz789",
      "email": "abc123",
      "address_city": "abc123",
      "address_country": "xyz789",
      "address_line_1": "abc123",
      "address_line_2": "abc123",
      "address_postal_code": "abc123",
      "address_state": "abc123",
      "address_country_details": Country
    }
  }
}

get_project_job_statistics

Description

Returns the job statistics for the project

Response

Returns a JobStatistic

Arguments
Name Description
project_id - String! The project ID

Example

Query
query get_project_job_statistics($project_id: String!) {
  get_project_job_statistics(project_id: $project_id) {
    total_jobs
    total_completed_jobs
    total_failed_jobs
    total_queued_jobs
    total_in_progress_jobs
    average_execution_time
    total_execution_time
    total_cost
    average_cost
  }
}
Variables
{"project_id": "abc123"}
Response
{
  "data": {
    "get_project_job_statistics": {
      "total_jobs": "xyz789",
      "total_completed_jobs": "abc123",
      "total_failed_jobs": "xyz789",
      "total_queued_jobs": "xyz789",
      "total_in_progress_jobs": "abc123",
      "average_execution_time": "abc123",
      "total_execution_time": "xyz789",
      "total_cost": 123.45,
      "average_cost": 123.45
    }
  }
}

get_user_action_rating

Description

Get user rating for action

Response

Returns an ActionRating

Arguments
Name Description
action_id - String! Id of action

Example

Query
query get_user_action_rating($action_id: String!) {
  get_user_action_rating(action_id: $action_id) {
    id
    action_id
    user_id
    rating
    comment
    created_at
    updated_at
    action {
      ...ActionFragment
    }
    user {
      ...PublicUserFragment
    }
  }
}
Variables
{"action_id": "xyz789"}
Response
{
  "data": {
    "get_user_action_rating": {
      "id": "abc123",
      "action_id": "xyz789",
      "user_id": "abc123",
      "rating": 987.65,
      "comment": "xyz789",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "2007-12-03T10:15:30Z",
      "action": Action,
      "user": PublicUser
    }
  }
}

is_valid_api_key

Description

Checks if the API key is valid

Response

Returns a Boolean!

Example

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

list_action_categories

Description

Returns the list of action categories

Response

Returns [ActionCategory!]!

Example

Query
query list_action_categories {
  list_action_categories {
    id
    background_color
    stroke_color
  }
}
Response
{
  "data": {
    "list_action_categories": [
      {
        "id": "xyz789",
        "background_color": "abc123",
        "stroke_color": "xyz789"
      }
    ]
  }
}

list_actions

Description

Returns the list of actions

Response

Returns [Action!]!

Arguments
Name Description
offset - Float The number of items to skip before starting to collect the result set (optional)
limit - Float The total number of actions to fetch (optional)
collection - Collection The collection to filter and sort actions (optional)
categories - [String!] The category to filter actions (optional)
search_keyword - String The search keyword to filter actions (optional)

Example

Query
query list_actions(
  $offset: Float,
  $limit: Float,
  $collection: Collection,
  $categories: [String!],
  $search_keyword: String
) {
  list_actions(
    offset: $offset,
    limit: $limit,
    collection: $collection,
    categories: $categories,
    search_keyword: $search_keyword
  ) {
    id
    name
    description
    category
    created_at
    updated_at
    is_featured
    is_popular
    is_trending
    is_new
    is_highly_rated
    popular_score
    trending_score
    rating_count
    rating_total
    cost_unit
    cost_amount
    json_schema
    model
    trigger_word
    success_rate
    average_duration
    average_cost
    total_count
    deprecated
    jobs {
      ...JobFragment
    }
    ratings {
      ...ActionRatingFragment
    }
    rating_stats {
      ...ActionRatingStatFragment
    }
    category_details {
      ...ActionCategoryFragment
    }
    user_rating {
      ...ActionRatingFragment
    }
    project_job_statistics {
      ...JobStatisticFragment
    }
    total_job_statistics {
      ...JobStatisticFragment
    }
  }
}
Variables
{
  "offset": 123.45,
  "limit": 987.65,
  "collection": "POPULAR",
  "categories": ["abc123"],
  "search_keyword": "abc123"
}
Response
{
  "data": {
    "list_actions": [
      {
        "id": "xyz789",
        "name": "xyz789",
        "description": "xyz789",
        "category": "xyz789",
        "created_at": "2007-12-03T10:15:30Z",
        "updated_at": "2007-12-03T10:15:30Z",
        "is_featured": true,
        "is_popular": true,
        "is_trending": false,
        "is_new": false,
        "is_highly_rated": true,
        "popular_score": 987.65,
        "trending_score": 123.45,
        "rating_count": 987.65,
        "rating_total": 987.65,
        "cost_unit": "abc123",
        "cost_amount": 123.45,
        "json_schema": {},
        "model": "abc123",
        "trigger_word": "abc123",
        "success_rate": 123.45,
        "average_duration": 123.45,
        "average_cost": 987.65,
        "total_count": 987.65,
        "deprecated": false,
        "jobs": [Job],
        "ratings": [ActionRating],
        "rating_stats": [ActionRatingStat],
        "category_details": ActionCategory,
        "user_rating": ActionRating,
        "project_job_statistics": JobStatistic,
        "total_job_statistics": JobStatistic
      }
    ]
  }
}

list_api_keys

Description

Lists all project API keys

Response

Returns [Key!]!

Arguments
Name Description
project_id - String! The project ID

Example

Query
query list_api_keys($project_id: String!) {
  list_api_keys(project_id: $project_id) {
    id
    created_at
    project_id
    name
    masked_key
    last_used_at
    role
    project {
      ...ProjectFragment
    }
  }
}
Variables
{"project_id": "abc123"}
Response
{
  "data": {
    "list_api_keys": [
      {
        "id": "abc123",
        "created_at": "2007-12-03T10:15:30Z",
        "project_id": "abc123",
        "name": "xyz789",
        "masked_key": "xyz789",
        "last_used_at": "2007-12-03T10:15:30Z",
        "role": "abc123",
        "project": Project
      }
    ]
  }
}

list_assets

Description

List all assets within a specified media library

Response

Returns [Asset!]!

Arguments
Name Description
search_keyword - String The search keyword to filter assets (optional)
offset - Float The number of items to skip before starting to collect the result set (optional)
limit - Float The total number of assets to fetch (optional)
library_id - String! The unique identifier of the library to list assets from

Example

Query
query list_assets(
  $search_keyword: String,
  $offset: Float,
  $limit: Float,
  $library_id: String!
) {
  list_assets(
    search_keyword: $search_keyword,
    offset: $offset,
    limit: $limit,
    library_id: $library_id
  ) {
    id
    created_at
    updated_at
    library_id
    name
    content_type
    duration
    size
    status
    total_count
    library {
      ...LibraryFragment
    }
    asset_enhancements {
      ...AssetEnhancementFragment
    }
  }
}
Variables
{
  "search_keyword": "xyz789",
  "offset": 123.45,
  "limit": 987.65,
  "library_id": "abc123"
}
Response
{
  "data": {
    "list_assets": [
      {
        "id": "xyz789",
        "created_at": "2007-12-03T10:15:30Z",
        "updated_at": "2007-12-03T10:15:30Z",
        "library_id": "xyz789",
        "name": "abc123",
        "content_type": "xyz789",
        "duration": 987.65,
        "size": 123.45,
        "status": "xyz789",
        "total_count": 987.65,
        "library": Library,
        "asset_enhancements": [AssetEnhancement]
      }
    ]
  }
}

list_cache_policies

Description

List cache policies

Response

Returns [CachePolicy!]!

Example

Query
query list_cache_policies {
  list_cache_policies {
    id
    last_modified_time
    config {
      ...CachePolicyConfigFragment
    }
  }
}
Response
{
  "data": {
    "list_cache_policies": [
      {
        "id": "abc123",
        "last_modified_time": "2007-12-03T10:15:30Z",
        "config": CachePolicyConfig
      }
    ]
  }
}

list_certificates

Description

List certificates owned by the project

Response

Returns [CertificateSummary!]!

Arguments
Name Description
project_id - String! The project ID

Example

Query
query list_certificates($project_id: String!) {
  list_certificates(project_id: $project_id) {
    identifier
    certificate_arn
    domain_name
    subject_alternative_name_summaries
    has_additional_subject_alternative_names
    status
    type
    key_algorithm
    key_usages
    extended_key_usages
    in_use
    renewal_eligibility
    not_before
    not_after
    created_at
    issued_at
  }
}
Variables
{"project_id": "xyz789"}
Response
{
  "data": {
    "list_certificates": [
      {
        "identifier": "xyz789",
        "certificate_arn": "abc123",
        "domain_name": "xyz789",
        "subject_alternative_name_summaries": [
          "xyz789"
        ],
        "has_additional_subject_alternative_names": false,
        "status": "abc123",
        "type": "abc123",
        "key_algorithm": "xyz789",
        "key_usages": ["abc123"],
        "extended_key_usages": ["abc123"],
        "in_use": false,
        "renewal_eligibility": "xyz789",
        "not_before": "2007-12-03T10:15:30Z",
        "not_after": "2007-12-03T10:15:30Z",
        "created_at": "2007-12-03T10:15:30Z",
        "issued_at": "2007-12-03T10:15:30Z"
      }
    ]
  }
}

list_cities

Description

Retuns list of cities

Response

Returns [City!]!

Arguments
Name Description
state_id - String! The state ID

Example

Query
query list_cities($state_id: String!) {
  list_cities(state_id: $state_id) {
    id
    country_id
    state_id
    name
  }
}
Variables
{"state_id": "xyz789"}
Response
{
  "data": {
    "list_cities": [
      {
        "id": "xyz789",
        "country_id": "abc123",
        "state_id": "abc123",
        "name": "abc123"
      }
    ]
  }
}

list_countries

Description

Retuns list of countries

Response

Returns [Country!]!

Example

Query
query list_countries {
  list_countries {
    id
    name
    iso2
    iso3
    emoji
    states {
      ...StateFragment
    }
  }
}
Response
{
  "data": {
    "list_countries": [
      {
        "id": "xyz789",
        "name": "abc123",
        "iso2": "abc123",
        "iso3": "abc123",
        "emoji": "xyz789",
        "states": [State]
      }
    ]
  }
}

list_custom_domains

Description

Retuns list of custom domain for a library

Response

Returns [CustomDomain!]!

Arguments
Name Description
library_id - String! The id of the library to fetch custom domain

Example

Query
query list_custom_domains($library_id: String!) {
  list_custom_domains(library_id: $library_id) {
    id
    domain
    library_id
    is_primary
    library {
      ...LibraryFragment
    }
  }
}
Variables
{"library_id": "xyz789"}
Response
{
  "data": {
    "list_custom_domains": [
      {
        "id": "xyz789",
        "domain": "xyz789",
        "library_id": "abc123",
        "is_primary": true,
        "library": Library
      }
    ]
  }
}

list_distribution_aliases

Description

List aliases

Response

Returns [String!]!

Arguments
Name Description
distribution_id - String!

Example

Query
query list_distribution_aliases($distribution_id: String!) {
  list_distribution_aliases(distribution_id: $distribution_id)
}
Variables
{"distribution_id": "xyz789"}
Response
{
  "data": {
    "list_distribution_aliases": ["xyz789"]
  }
}

list_distribution_cache_behaviors

Description

List cache behaviors

Response

Returns [CacheBehavior!]!

Arguments
Name Description
distribution_id - String!

Example

Query
query list_distribution_cache_behaviors($distribution_id: String!) {
  list_distribution_cache_behaviors(distribution_id: $distribution_id) {
    path_pattern
    target_origin_id
    trusted_signers {
      ...TrustedSignersOrKeyGroupsFragment
    }
    trusted_key_groups {
      ...TrustedSignersOrKeyGroupsFragment
    }
    viewer_protocol_policy
    allowed_methods {
      ...AllowedMethodsFragment
    }
    smooth_streaming
    compress
    lambda_function_associations {
      ...LambdaFunctionAssociationFragment
    }
    function_associations {
      ...FunctionAssociationFragment
    }
    field_level_encryption_id
    realtime_log_config_arn
    cache_policy_id
    origin_request_policy_id
    response_headers_policy_id
  }
}
Variables
{"distribution_id": "abc123"}
Response
{
  "data": {
    "list_distribution_cache_behaviors": [
      {
        "path_pattern": "xyz789",
        "target_origin_id": "abc123",
        "trusted_signers": TrustedSignersOrKeyGroups,
        "trusted_key_groups": TrustedSignersOrKeyGroups,
        "viewer_protocol_policy": "allow_all",
        "allowed_methods": AllowedMethods,
        "smooth_streaming": true,
        "compress": true,
        "lambda_function_associations": [
          LambdaFunctionAssociation
        ],
        "function_associations": [FunctionAssociation],
        "field_level_encryption_id": "xyz789",
        "realtime_log_config_arn": "abc123",
        "cache_policy_id": "abc123",
        "origin_request_policy_id": "abc123",
        "response_headers_policy_id": "xyz789"
      }
    ]
  }
}

list_distribution_error_responses

Description

List error responses

Response

Returns [ErrorResponse!]!

Arguments
Name Description
distribution_id - String!

Example

Query
query list_distribution_error_responses($distribution_id: String!) {
  list_distribution_error_responses(distribution_id: $distribution_id) {
    error_code
    response_page_path
    response_code
    error_caching_min_ttl
  }
}
Variables
{"distribution_id": "xyz789"}
Response
{
  "data": {
    "list_distribution_error_responses": [
      {
        "error_code": 123.45,
        "response_page_path": "abc123",
        "response_code": "abc123",
        "error_caching_min_ttl": 987.65
      }
    ]
  }
}

list_distribution_invalidations

Description

List invalidations

Response

Returns [Invalidation!]!

Arguments
Name Description
distribution_id - String!

Example

Query
query list_distribution_invalidations($distribution_id: String!) {
  list_distribution_invalidations(distribution_id: $distribution_id) {
    id
    create_time
    status
    paths
  }
}
Variables
{"distribution_id": "abc123"}
Response
{
  "data": {
    "list_distribution_invalidations": [
      {
        "id": "abc123",
        "create_time": "2007-12-03T10:15:30Z",
        "status": "abc123",
        "paths": ["xyz789"]
      }
    ]
  }
}

list_distribution_origins

Description

List origins

Response

Returns [Origin!]!

Arguments
Name Description
distribution_id - String!

Example

Query
query list_distribution_origins($distribution_id: String!) {
  list_distribution_origins(distribution_id: $distribution_id) {
    id
    domain_name
    origin_path
    s3_oac
    connection_attempts
    connection_timeout
    custom_origin_https_port
    custom_origin_http_port
    custom_origin_origin_protocol_policy
    custom_origin_origin_ssl_protocols
    custom_origin_origin_read_timeout
    custom_origin_origin_keepalive_timeout
    custom_headers {
      ...OriginCustomHeaderFragment
    }
  }
}
Variables
{"distribution_id": "xyz789"}
Response
{
  "data": {
    "list_distribution_origins": [
      {
        "id": "xyz789",
        "domain_name": "abc123",
        "origin_path": "abc123",
        "s3_oac": "abc123",
        "connection_attempts": 987.65,
        "connection_timeout": 987.65,
        "custom_origin_https_port": 123.45,
        "custom_origin_http_port": 123.45,
        "custom_origin_origin_protocol_policy": "http_only",
        "custom_origin_origin_ssl_protocols": ["SSLv3"],
        "custom_origin_origin_read_timeout": 123.45,
        "custom_origin_origin_keepalive_timeout": 987.65,
        "custom_headers": [OriginCustomHeader]
      }
    ]
  }
}

list_distribution_tags

Description

List distribution tags

Response

Returns [DistributionTag!]!

Arguments
Name Description
distribution_id - String!

Example

Query
query list_distribution_tags($distribution_id: String!) {
  list_distribution_tags(distribution_id: $distribution_id) {
    key
    value
  }
}
Variables
{"distribution_id": "abc123"}
Response
{
  "data": {
    "list_distribution_tags": [
      {
        "key": "xyz789",
        "value": "xyz789"
      }
    ]
  }
}

list_distributions

Description

List all the distributions in the project

Response

Returns [Distribution!]!

Arguments
Name Description
project_id - String! The project ID

Example

Query
query list_distributions($project_id: String!) {
  list_distributions(project_id: $project_id) {
    id
    arn
    status
    last_modified_time
    domain_name
    config {
      ...DistributionConfigFragment
    }
  }
}
Variables
{"project_id": "xyz789"}
Response
{
  "data": {
    "list_distributions": [
      {
        "id": "abc123",
        "arn": "xyz789",
        "status": "abc123",
        "last_modified_time": "2007-12-03T10:15:30Z",
        "domain_name": "xyz789",
        "config": DistributionConfig
      }
    ]
  }
}

list_jobs

Description

Returns the list of jobs run in the project

Response

Returns [Job!]!

Arguments
Name Description
filter - String
offset - Float
limit - Float
project_id - String! The project ID

Example

Query
query list_jobs(
  $filter: String,
  $offset: Float,
  $limit: Float,
  $project_id: String!
) {
  list_jobs(
    filter: $filter,
    offset: $offset,
    limit: $limit,
    project_id: $project_id
  ) {
    id
    action_id
    project_id
    status
    started_at
    finished_at
    request
    response
    error_message
    created_at
    total_count
    billing_request_cost
    billing_request_quantity
    action {
      ...ActionFragment
    }
  }
}
Variables
{
  "filter": "xyz789",
  "offset": 123.45,
  "limit": 123.45,
  "project_id": "abc123"
}
Response
{
  "data": {
    "list_jobs": [
      {
        "id": "abc123",
        "action_id": "xyz789",
        "project_id": "xyz789",
        "status": "xyz789",
        "started_at": "2007-12-03T10:15:30Z",
        "finished_at": "2007-12-03T10:15:30Z",
        "request": {},
        "response": {},
        "error_message": {},
        "created_at": "2007-12-03T10:15:30Z",
        "total_count": 123.45,
        "billing_request_cost": 123.45,
        "billing_request_quantity": 987.65,
        "action": Action
      }
    ]
  }
}

list_libraries

Description

List all the libraries in the project

Response

Returns [Library!]!

Arguments
Name Description
project_id - String! The project ID

Example

Query
query list_libraries($project_id: String!) {
  list_libraries(project_id: $project_id) {
    id
    created_at
    name
    description
    project_id
    asset_type
    assets {
      ...AssetFragment
    }
    custom_domains {
      ...CustomDomainFragment
    }
    total_media_assets
  }
}
Variables
{"project_id": "abc123"}
Response
{
  "data": {
    "list_libraries": [
      {
        "id": "xyz789",
        "created_at": "2007-12-03T10:15:30Z",
        "name": "abc123",
        "description": "xyz789",
        "project_id": "xyz789",
        "asset_type": "abc123",
        "assets": [Asset],
        "custom_domains": [CustomDomain],
        "total_media_assets": 987.65
      }
    ]
  }
}

list_origin_request_policies

Description

List origin request policies

Response

Returns [OriginRequestPolicy!]!

Example

Query
query list_origin_request_policies {
  list_origin_request_policies {
    id
    last_modified_time
    config {
      ...OriginRequestPolicyConfigFragment
    }
  }
}
Response
{
  "data": {
    "list_origin_request_policies": [
      {
        "id": "abc123",
        "last_modified_time": "2007-12-03T10:15:30Z",
        "config": OriginRequestPolicyConfig
      }
    ]
  }
}

list_project_invoices

Description

Returns invoice list of this project

Response

Returns [Invoice!]!

Arguments
Name Description
project_id - String! The project ID

Example

Query
query list_project_invoices($project_id: String!) {
  list_project_invoices(project_id: $project_id) {
    id
    project_id
    total_amount
    payment_card_id
    payment_date
    period_start
    period_end
    due_date
    month_id
    is_paid
    stripe_invoice_id
    items {
      ...InvoiceItemFragment
    }
    payment_card {
      ...PaymentCardFragment
    }
    status
    download_link
  }
}
Variables
{"project_id": "abc123"}
Response
{
  "data": {
    "list_project_invoices": [
      {
        "id": "abc123",
        "project_id": "abc123",
        "total_amount": 123.45,
        "payment_card_id": "xyz789",
        "payment_date": "2007-12-03T10:15:30Z",
        "period_start": "2007-12-03T10:15:30Z",
        "period_end": "2007-12-03T10:15:30Z",
        "due_date": "2007-12-03T10:15:30Z",
        "month_id": "xyz789",
        "is_paid": true,
        "stripe_invoice_id": "abc123",
        "items": [InvoiceItem],
        "payment_card": PaymentCard,
        "status": "abc123",
        "download_link": "xyz789"
      }
    ]
  }
}

list_project_members

Description

Returns a list of project members

Response

Returns [ProjectMember!]!

Arguments
Name Description
project_id - String! The project ID to get list of members

Example

Query
query list_project_members($project_id: String!) {
  list_project_members(project_id: $project_id) {
    id
    created_at
    updated_at
    user_id
    project_id
    role
    project {
      ...ProjectFragment
    }
    user {
      ...UserFragment
    }
  }
}
Variables
{"project_id": "abc123"}
Response
{
  "data": {
    "list_project_members": [
      {
        "id": "abc123",
        "created_at": "2007-12-03T10:15:30Z",
        "updated_at": "2007-12-03T10:15:30Z",
        "user_id": "abc123",
        "project_id": "xyz789",
        "role": "xyz789",
        "project": Project,
        "user": User
      }
    ]
  }
}

list_project_payment_cards

Description

Returns the payment cards for a project

Response

Returns [PaymentCard!]!

Arguments
Name Description
project_id - String! The project ID

Example

Query
query list_project_payment_cards($project_id: String!) {
  list_project_payment_cards(project_id: $project_id) {
    id
    brand
    last4
    exp_month
    exp_year
    is_default
  }
}
Variables
{"project_id": "abc123"}
Response
{
  "data": {
    "list_project_payment_cards": [
      {
        "id": "xyz789",
        "brand": "abc123",
        "last4": "xyz789",
        "exp_month": 987.65,
        "exp_year": 987.65,
        "is_default": true
      }
    ]
  }
}

list_project_tax_identifiers

Description

Returns tax identifiers added to this project

Response

Returns [TaxIdentifier!]!

Arguments
Name Description
project_id - String! The project ID

Example

Query
query list_project_tax_identifiers($project_id: String!) {
  list_project_tax_identifiers(project_id: $project_id) {
    id
    country
    type
    value
    country_details {
      ...CountryFragment
    }
    type_name
  }
}
Variables
{"project_id": "abc123"}
Response
{
  "data": {
    "list_project_tax_identifiers": [
      {
        "id": "xyz789",
        "country": "xyz789",
        "type": "abc123",
        "value": "abc123",
        "country_details": Country,
        "type_name": "abc123"
      }
    ]
  }
}

list_response_header_policies

Description

List response header policies

Response

Returns [OriginRequestPolicy!]!

Example

Query
query list_response_header_policies {
  list_response_header_policies {
    id
    last_modified_time
    config {
      ...OriginRequestPolicyConfigFragment
    }
  }
}
Response
{
  "data": {
    "list_response_header_policies": [
      {
        "id": "abc123",
        "last_modified_time": "2007-12-03T10:15:30Z",
        "config": OriginRequestPolicyConfig
      }
    ]
  }
}

list_role_permissions

Description

List all role permissions

Response

Returns [RolePermission!]!

Example

Query
query list_role_permissions {
  list_role_permissions {
    id
    role_id
    permission_id
  }
}
Response
{
  "data": {
    "list_role_permissions": [
      {
        "id": "abc123",
        "role_id": "xyz789",
        "permission_id": "xyz789"
      }
    ]
  }
}

list_states

Description

Retuns list of states for a country

Response

Returns [State!]!

Arguments
Name Description
country_id - String! The country ID

Example

Query
query list_states($country_id: String!) {
  list_states(country_id: $country_id) {
    id
    country_id
    name
    iso2
    country {
      ...CountryFragment
    }
    cities {
      ...CityFragment
    }
  }
}
Variables
{"country_id": "abc123"}
Response
{
  "data": {
    "list_states": [
      {
        "id": "xyz789",
        "country_id": "abc123",
        "name": "abc123",
        "iso2": "xyz789",
        "country": Country,
        "cities": [City]
      }
    ]
  }
}

list_tax_identifier_types

Description

Returns tax identifier types permitted by Stripe

Response

Returns [TaxIdentifierType!]!

Example

Query
query list_tax_identifier_types {
  list_tax_identifier_types {
    type
    country
    name
    example
  }
}
Response
{
  "data": {
    "list_tax_identifier_types": [
      {
        "type": "abc123",
        "country": "abc123",
        "name": "abc123",
        "example": "abc123"
      }
    ]
  }
}

list_user_action_ratings

Description

Returns the list of action ratings for logged in user

Response

Returns [ActionRating!]!

Example

Query
query list_user_action_ratings {
  list_user_action_ratings {
    id
    action_id
    user_id
    rating
    comment
    created_at
    updated_at
    action {
      ...ActionFragment
    }
    user {
      ...PublicUserFragment
    }
  }
}
Response
{
  "data": {
    "list_user_action_ratings": [
      {
        "id": "abc123",
        "action_id": "abc123",
        "user_id": "xyz789",
        "rating": 123.45,
        "comment": "xyz789",
        "created_at": "2007-12-03T10:15:30Z",
        "updated_at": "2007-12-03T10:15:30Z",
        "action": Action,
        "user": PublicUser
      }
    ]
  }
}

list_user_projects

Description

Returns a list of ProjectMember the user is member of

Response

Returns [ProjectMember!]!

Example

Query
query list_user_projects {
  list_user_projects {
    id
    created_at
    updated_at
    user_id
    project_id
    role
    project {
      ...ProjectFragment
    }
    user {
      ...UserFragment
    }
  }
}
Response
{
  "data": {
    "list_user_projects": [
      {
        "id": "xyz789",
        "created_at": "2007-12-03T10:15:30Z",
        "updated_at": "2007-12-03T10:15:30Z",
        "user_id": "abc123",
        "project_id": "xyz789",
        "role": "abc123",
        "project": Project,
        "user": User
      }
    ]
  }
}

login_with_email_otp

Description

Second step of login, verifies the otp and returns JWT token

Response

Returns a String!

Arguments
Name Description
otp - Float! The verification otp
email - String! The email address of the user

Example

Query
query login_with_email_otp(
  $otp: Float!,
  $email: String!
) {
  login_with_email_otp(
    otp: $otp,
    email: $email
  )
}
Variables
{"otp": 987.65, "email": "xyz789"}
Response
{"data": {"login_with_email_otp": "xyz789"}}

suggest_actions_for_prompt

Description

Suggests actions for a given user prompt

Response

Returns [Action!]!

Arguments
Name Description
prompt - String! The prompt for which actions are suggested

Example

Query
query suggest_actions_for_prompt($prompt: String!) {
  suggest_actions_for_prompt(prompt: $prompt) {
    id
    name
    description
    category
    created_at
    updated_at
    is_featured
    is_popular
    is_trending
    is_new
    is_highly_rated
    popular_score
    trending_score
    rating_count
    rating_total
    cost_unit
    cost_amount
    json_schema
    model
    trigger_word
    success_rate
    average_duration
    average_cost
    total_count
    deprecated
    jobs {
      ...JobFragment
    }
    ratings {
      ...ActionRatingFragment
    }
    rating_stats {
      ...ActionRatingStatFragment
    }
    category_details {
      ...ActionCategoryFragment
    }
    user_rating {
      ...ActionRatingFragment
    }
    project_job_statistics {
      ...JobStatisticFragment
    }
    total_job_statistics {
      ...JobStatisticFragment
    }
  }
}
Variables
{"prompt": "xyz789"}
Response
{
  "data": {
    "suggest_actions_for_prompt": [
      {
        "id": "xyz789",
        "name": "abc123",
        "description": "xyz789",
        "category": "abc123",
        "created_at": "2007-12-03T10:15:30Z",
        "updated_at": "2007-12-03T10:15:30Z",
        "is_featured": false,
        "is_popular": true,
        "is_trending": false,
        "is_new": false,
        "is_highly_rated": false,
        "popular_score": 987.65,
        "trending_score": 123.45,
        "rating_count": 123.45,
        "rating_total": 987.65,
        "cost_unit": "xyz789",
        "cost_amount": 987.65,
        "json_schema": {},
        "model": "xyz789",
        "trigger_word": "xyz789",
        "success_rate": 123.45,
        "average_duration": 123.45,
        "average_cost": 123.45,
        "total_count": 123.45,
        "deprecated": true,
        "jobs": [Job],
        "ratings": [ActionRating],
        "rating_stats": [ActionRatingStat],
        "category_details": ActionCategory,
        "user_rating": ActionRating,
        "project_job_statistics": JobStatistic,
        "total_job_statistics": JobStatistic
      }
    ]
  }
}

Mutations

add_action_rating

Description

Add rating

Response

Returns an ActionRating!

Arguments
Name Description
comment - String Comment
rating - Float! Rating value
action_id - String! Id of action

Example

Query
mutation add_action_rating(
  $comment: String,
  $rating: Float!,
  $action_id: String!
) {
  add_action_rating(
    comment: $comment,
    rating: $rating,
    action_id: $action_id
  ) {
    id
    action_id
    user_id
    rating
    comment
    created_at
    updated_at
    action {
      ...ActionFragment
    }
    user {
      ...PublicUserFragment
    }
  }
}
Variables
{
  "comment": "xyz789",
  "rating": 123.45,
  "action_id": "xyz789"
}
Response
{
  "data": {
    "add_action_rating": {
      "id": "abc123",
      "action_id": "abc123",
      "user_id": "xyz789",
      "rating": 123.45,
      "comment": "abc123",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "2007-12-03T10:15:30Z",
      "action": Action,
      "user": PublicUser
    }
  }
}

add_distribution_cache_behavior

Description

Add a cache behavior

Response

Returns a Boolean!

Arguments
Name Description
cache_behavior - CacheBehaviorInput!
distribution_id - String!

Example

Query
mutation add_distribution_cache_behavior(
  $cache_behavior: CacheBehaviorInput!,
  $distribution_id: String!
) {
  add_distribution_cache_behavior(
    cache_behavior: $cache_behavior,
    distribution_id: $distribution_id
  )
}
Variables
{
  "cache_behavior": CacheBehaviorInput,
  "distribution_id": "xyz789"
}
Response
{"data": {"add_distribution_cache_behavior": false}}

add_distribution_error_response

Description

Create a new error response

Response

Returns a Boolean!

Arguments
Name Description
error_response - ErrorResponseInput!
distribution_id - String!

Example

Query
mutation add_distribution_error_response(
  $error_response: ErrorResponseInput!,
  $distribution_id: String!
) {
  add_distribution_error_response(
    error_response: $error_response,
    distribution_id: $distribution_id
  )
}
Variables
{
  "error_response": ErrorResponseInput,
  "distribution_id": "abc123"
}
Response
{"data": {"add_distribution_error_response": true}}

add_distribution_origin

Description

Add an origin

Response

Returns a Boolean!

Arguments
Name Description
origin - OriginInput!
distribution_id - String!

Example

Query
mutation add_distribution_origin(
  $origin: OriginInput!,
  $distribution_id: String!
) {
  add_distribution_origin(
    origin: $origin,
    distribution_id: $distribution_id
  )
}
Variables
{
  "origin": OriginInput,
  "distribution_id": "abc123"
}
Response
{"data": {"add_distribution_origin": true}}

add_distribution_tag

Description

Create a distribution tag

Response

Returns a Boolean!

Arguments
Name Description
tag - DistributionTagInput!
distribution_id - String!

Example

Query
mutation add_distribution_tag(
  $tag: DistributionTagInput!,
  $distribution_id: String!
) {
  add_distribution_tag(
    tag: $tag,
    distribution_id: $distribution_id
  )
}
Variables
{
  "tag": DistributionTagInput,
  "distribution_id": "abc123"
}
Response
{"data": {"add_distribution_tag": true}}

add_project_member

Description

Adds a user to a project

Response

Returns a ProjectMember!

Arguments
Name Description
role - Role! Role to assign the user, can be either ADMIN, DEVELOPER, READONLY OR FINANCE
email - String! The email address of member
project_id - String! The project ID

Example

Query
mutation add_project_member(
  $role: Role!,
  $email: String!,
  $project_id: String!
) {
  add_project_member(
    role: $role,
    email: $email,
    project_id: $project_id
  ) {
    id
    created_at
    updated_at
    user_id
    project_id
    role
    project {
      ...ProjectFragment
    }
    user {
      ...UserFragment
    }
  }
}
Variables
{
  "role": "ADMIN",
  "email": "abc123",
  "project_id": "xyz789"
}
Response
{
  "data": {
    "add_project_member": {
      "id": "xyz789",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "2007-12-03T10:15:30Z",
      "user_id": "abc123",
      "project_id": "abc123",
      "role": "abc123",
      "project": Project,
      "user": User
    }
  }
}

add_project_tax_identifier

Description

Adds a tax identifier to this project

Response

Returns a Boolean!

Arguments
Name Description
value - String! The tax identifier value
type - String! The tax identifier type
project_id - String! The project ID

Example

Query
mutation add_project_tax_identifier(
  $value: String!,
  $type: String!,
  $project_id: String!
) {
  add_project_tax_identifier(
    value: $value,
    type: $type,
    project_id: $project_id
  )
}
Variables
{
  "value": "xyz789",
  "type": "abc123",
  "project_id": "abc123"
}
Response
{"data": {"add_project_tax_identifier": true}}

create_api_key

Description

Creates a new project API key

Response

Returns a String!

Arguments
Name Description
role - Role Role to assign the key, can be either ADMIN, DEVELOPER, READONLY OR FINANCE
name - String! A user-defined name for the key
project_id - String! The project ID

Example

Query
mutation create_api_key(
  $role: Role,
  $name: String!,
  $project_id: String!
) {
  create_api_key(
    role: $role,
    name: $name,
    project_id: $project_id
  )
}
Variables
{
  "role": "ADMIN",
  "name": "abc123",
  "project_id": "xyz789"
}
Response
{"data": {"create_api_key": "abc123"}}

create_asset_multipart_upload

Description

Initiate a new multipart upload process for an asset to the specified media library (In general, when the asset size reaches 100 MB, you should consider using multipart uploads)

Response

Returns a MultiPartUpload!

Arguments
Name Description
parts - Float! The number of parts comprising the multipart upload
content_type - String! The MIME type of the asset content
name - String! The user-provided name for the assett
library_id - String! The unique identifier of the library to upload the asset

Example

Query
mutation create_asset_multipart_upload(
  $parts: Float!,
  $content_type: String!,
  $name: String!,
  $library_id: String!
) {
  create_asset_multipart_upload(
    parts: $parts,
    content_type: $content_type,
    name: $name,
    library_id: $library_id
  ) {
    asset_id
    key
    bucket
    uploadId
    signedUrls
  }
}
Variables
{
  "parts": 987.65,
  "content_type": "abc123",
  "name": "abc123",
  "library_id": "abc123"
}
Response
{
  "data": {
    "create_asset_multipart_upload": {
      "asset_id": "abc123",
      "key": "xyz789",
      "bucket": "abc123",
      "uploadId": "xyz789",
      "signedUrls": ["abc123"]
    }
  }
}

create_asset_upload

Description

Initiate a new upload process for an asset to the specified media library

Response

Returns a SignedUpload!

Arguments
Name Description
name - String! The user-provided name for the asset
content_type - String! The MIME type of the asset content
library_id - String! The unique identifier of the library to upload the asset

Example

Query
mutation create_asset_upload(
  $name: String!,
  $content_type: String!,
  $library_id: String!
) {
  create_asset_upload(
    name: $name,
    content_type: $content_type,
    library_id: $library_id
  ) {
    asset_id
    upload_url
    download_url
  }
}
Variables
{
  "name": "xyz789",
  "content_type": "xyz789",
  "library_id": "xyz789"
}
Response
{
  "data": {
    "create_asset_upload": {
      "asset_id": "xyz789",
      "upload_url": "abc123",
      "download_url": "xyz789"
    }
  }
}

create_custom_domain

Description

Add custom domain to library

Response

Returns a CustomDomain!

Arguments
Name Description
library_id - String! Id of library
domain - String! The domain

Example

Query
mutation create_custom_domain(
  $library_id: String!,
  $domain: String!
) {
  create_custom_domain(
    library_id: $library_id,
    domain: $domain
  ) {
    id
    domain
    library_id
    is_primary
    library {
      ...LibraryFragment
    }
  }
}
Variables
{
  "library_id": "xyz789",
  "domain": "abc123"
}
Response
{
  "data": {
    "create_custom_domain": {
      "id": "abc123",
      "domain": "abc123",
      "library_id": "xyz789",
      "is_primary": true,
      "library": Library
    }
  }
}

create_distribution

Description

Create a new distribution

Response

Returns a Distribution!

Arguments
Name Description
config - DistributionConfigInput!
project_id - String! The project ID

Example

Query
mutation create_distribution(
  $config: DistributionConfigInput!,
  $project_id: String!
) {
  create_distribution(
    config: $config,
    project_id: $project_id
  ) {
    id
    arn
    status
    last_modified_time
    domain_name
    config {
      ...DistributionConfigFragment
    }
  }
}
Variables
{
  "config": DistributionConfigInput,
  "project_id": "abc123"
}
Response
{
  "data": {
    "create_distribution": {
      "id": "xyz789",
      "arn": "xyz789",
      "status": "abc123",
      "last_modified_time": "2007-12-03T10:15:30Z",
      "domain_name": "abc123",
      "config": DistributionConfig
    }
  }
}

create_distribution_invalidation

Description

Create a new invalidation

Response

Returns a Boolean!

Arguments
Name Description
paths - [String!]!
distribution_id - String!

Example

Query
mutation create_distribution_invalidation(
  $paths: [String!]!,
  $distribution_id: String!
) {
  create_distribution_invalidation(
    paths: $paths,
    distribution_id: $distribution_id
  )
}
Variables
{
  "paths": ["abc123"],
  "distribution_id": "xyz789"
}
Response
{"data": {"create_distribution_invalidation": false}}

create_library

Description

Create a new library

Response

Returns a Library!

Arguments
Name Description
asset_type - AssetType! The type of asset this library contains ie video, audio or image
description - String A description for the new library
name - String! A name for the new library
project_id - String! The project ID

Example

Query
mutation create_library(
  $asset_type: AssetType!,
  $description: String,
  $name: String!,
  $project_id: String!
) {
  create_library(
    asset_type: $asset_type,
    description: $description,
    name: $name,
    project_id: $project_id
  ) {
    id
    created_at
    name
    description
    project_id
    asset_type
    assets {
      ...AssetFragment
    }
    custom_domains {
      ...CustomDomainFragment
    }
    total_media_assets
  }
}
Variables
{
  "asset_type": "IMAGE",
  "description": "abc123",
  "name": "xyz789",
  "project_id": "abc123"
}
Response
{
  "data": {
    "create_library": {
      "id": "xyz789",
      "created_at": "2007-12-03T10:15:30Z",
      "name": "xyz789",
      "description": "abc123",
      "project_id": "xyz789",
      "asset_type": "abc123",
      "assets": [Asset],
      "custom_domains": [CustomDomain],
      "total_media_assets": 123.45
    }
  }
}

create_profile_picture_upload

Description

Generates and returns a pre-signed upload url for user profile picture

Response

Returns a String!

Arguments
Name Description
content_type - String! The MIME type of the picture content

Example

Query
mutation create_profile_picture_upload($content_type: String!) {
  create_profile_picture_upload(content_type: $content_type)
}
Variables
{"content_type": "abc123"}
Response
{
  "data": {
    "create_profile_picture_upload": "xyz789"
  }
}

create_project

Description

Creates a project

Response

Returns a Project!

Arguments
Name Description
description - String The project description
name - String! The project name

Example

Query
mutation create_project(
  $description: String,
  $name: String!
) {
  create_project(
    description: $description,
    name: $name
  ) {
    id
    name
    created_at
    updated_at
    owner_user_id
    description
    my_role
    owner {
      ...UserFragment
    }
    members {
      ...ProjectMemberFragment
    }
    list_recently_used_api_keys {
      ...KeyFragment
    }
    total_api_keys
    current_spend
    billing_link
  }
}
Variables
{
  "description": "xyz789",
  "name": "xyz789"
}
Response
{
  "data": {
    "create_project": {
      "id": "abc123",
      "name": "abc123",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "abc123",
      "owner_user_id": "abc123",
      "description": "abc123",
      "my_role": "ADMIN",
      "owner": User,
      "members": [ProjectMember],
      "list_recently_used_api_keys": [Key],
      "total_api_keys": 123.45,
      "current_spend": 987.65,
      "billing_link": "abc123"
    }
  }
}

delete_action_rating

Description

Delete rating

Response

Returns a Boolean!

Arguments
Name Description
id - String! Id of rating

Example

Query
mutation delete_action_rating($id: String!) {
  delete_action_rating(id: $id)
}
Variables
{"id": "abc123"}
Response
{"data": {"delete_action_rating": false}}

delete_api_key

Description

Deletes an existing project API key

Response

Returns a Boolean!

Arguments
Name Description
id - String! The API key ID

Example

Query
mutation delete_api_key($id: String!) {
  delete_api_key(id: $id)
}
Variables
{"id": "xyz789"}
Response
{"data": {"delete_api_key": true}}

delete_asset

Description

Delete a specified asset

Response

Returns a Boolean!

Arguments
Name Description
id - String! The unique identifier of the asset to delete

Example

Query
mutation delete_asset($id: String!) {
  delete_asset(id: $id)
}
Variables
{"id": "xyz789"}
Response
{"data": {"delete_asset": true}}

delete_certificate

Description

Deletes a certificate

Response

Returns a Boolean!

Arguments
Name Description
id - String! The certificate identifier

Example

Query
mutation delete_certificate($id: String!) {
  delete_certificate(id: $id)
}
Variables
{"id": "abc123"}
Response
{"data": {"delete_certificate": false}}

delete_custom_domain

Description

Delete custom domain from library

Response

Returns a Boolean!

Arguments
Name Description
library_id - String! The library ID
domain - String! Domain name

Example

Query
mutation delete_custom_domain(
  $library_id: String!,
  $domain: String!
) {
  delete_custom_domain(
    library_id: $library_id,
    domain: $domain
  )
}
Variables
{
  "library_id": "xyz789",
  "domain": "abc123"
}
Response
{"data": {"delete_custom_domain": false}}

delete_distribution

Description

Deletes a distribution

Response

Returns a Boolean!

Arguments
Name Description
distribution_id - String!

Example

Query
mutation delete_distribution($distribution_id: String!) {
  delete_distribution(distribution_id: $distribution_id)
}
Variables
{"distribution_id": "xyz789"}
Response
{"data": {"delete_distribution": true}}

delete_library

Description

Deletes an existing library

Response

Returns a Boolean!

Arguments
Name Description
id - String! The id of the library to delete

Example

Query
mutation delete_library($id: String!) {
  delete_library(id: $id)
}
Variables
{"id": "abc123"}
Response
{"data": {"delete_library": false}}

enable_or_disable_distribution

Description

Enables/Disables a distribution

Response

Returns a Boolean!

Arguments
Name Description
enable - Boolean!
distribution_id - String!

Example

Query
mutation enable_or_disable_distribution(
  $enable: Boolean!,
  $distribution_id: String!
) {
  enable_or_disable_distribution(
    enable: $enable,
    distribution_id: $distribution_id
  )
}
Variables
{
  "enable": false,
  "distribution_id": "abc123"
}
Response
{"data": {"enable_or_disable_distribution": false}}

finish_asset_multipart_upload

Description

Complete a multipart upload process for a specified asset

Response

Returns a String!

Arguments
Name Description
etags - [String!]! The ETags of the individual parts comprising the multipart upload
upload_id - String! The unique identifier of the multipart upload you get when creating a multipart upload
key - String! The bucket key you get when creating a multipart upload

Example

Query
mutation finish_asset_multipart_upload(
  $etags: [String!]!,
  $upload_id: String!,
  $key: String!
) {
  finish_asset_multipart_upload(
    etags: $etags,
    upload_id: $upload_id,
    key: $key
  )
}
Variables
{
  "etags": ["abc123"],
  "upload_id": "xyz789",
  "key": "xyz789"
}
Response
{
  "data": {
    "finish_asset_multipart_upload": "xyz789"
  }
}

import_asset

Description

Import an asset from an external source into a specified media library

Response

Returns an Asset!

Arguments
Name Description
name - String! The user-provided name for the imported asset
source_url - String! The URL of the external source containing the asset to import
library_id - String! The unique identifier of the library to import the asset into

Example

Query
mutation import_asset(
  $name: String!,
  $source_url: String!,
  $library_id: String!
) {
  import_asset(
    name: $name,
    source_url: $source_url,
    library_id: $library_id
  ) {
    id
    created_at
    updated_at
    library_id
    name
    content_type
    duration
    size
    status
    total_count
    library {
      ...LibraryFragment
    }
    asset_enhancements {
      ...AssetEnhancementFragment
    }
  }
}
Variables
{
  "name": "xyz789",
  "source_url": "xyz789",
  "library_id": "xyz789"
}
Response
{
  "data": {
    "import_asset": {
      "id": "abc123",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "2007-12-03T10:15:30Z",
      "library_id": "abc123",
      "name": "xyz789",
      "content_type": "abc123",
      "duration": 123.45,
      "size": 987.65,
      "status": "xyz789",
      "total_count": 987.65,
      "library": Library,
      "asset_enhancements": [AssetEnhancement]
    }
  }
}

logout

Description

Logs out the user and invalidates the token

Response

Returns a Boolean!

Example

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

pay_invoice

Description

Pay invoice using default payment method/card

Response

Returns a Boolean!

Arguments
Name Description
invoice_id - String! The invoice ID

Example

Query
mutation pay_invoice($invoice_id: String!) {
  pay_invoice(invoice_id: $invoice_id)
}
Variables
{"invoice_id": "xyz789"}
Response
{"data": {"pay_invoice": true}}

remove_distribution_cache_behavior

Description

Remove a cache behavior

Response

Returns a Boolean!

Arguments
Name Description
path_pattern - String!
distribution_id - String!

Example

Query
mutation remove_distribution_cache_behavior(
  $path_pattern: String!,
  $distribution_id: String!
) {
  remove_distribution_cache_behavior(
    path_pattern: $path_pattern,
    distribution_id: $distribution_id
  )
}
Variables
{
  "path_pattern": "xyz789",
  "distribution_id": "xyz789"
}
Response
{"data": {"remove_distribution_cache_behavior": false}}

remove_distribution_error_response

Description

Remove an error response

Response

Returns a Boolean!

Arguments
Name Description
error_code - Float!
distribution_id - String!

Example

Query
mutation remove_distribution_error_response(
  $error_code: Float!,
  $distribution_id: String!
) {
  remove_distribution_error_response(
    error_code: $error_code,
    distribution_id: $distribution_id
  )
}
Variables
{
  "error_code": 123.45,
  "distribution_id": "xyz789"
}
Response
{"data": {"remove_distribution_error_response": true}}

remove_distribution_origin

Description

Remove an origin

Response

Returns a Boolean!

Arguments
Name Description
origin - String!
distribution_id - String!

Example

Query
mutation remove_distribution_origin(
  $origin: String!,
  $distribution_id: String!
) {
  remove_distribution_origin(
    origin: $origin,
    distribution_id: $distribution_id
  )
}
Variables
{
  "origin": "abc123",
  "distribution_id": "abc123"
}
Response
{"data": {"remove_distribution_origin": false}}

remove_distribution_tag

Description

Remove a distribution tag

Response

Returns a Boolean!

Arguments
Name Description
key - String!
distribution_id - String!

Example

Query
mutation remove_distribution_tag(
  $key: String!,
  $distribution_id: String!
) {
  remove_distribution_tag(
    key: $key,
    distribution_id: $distribution_id
  )
}
Variables
{
  "key": "xyz789",
  "distribution_id": "abc123"
}
Response
{"data": {"remove_distribution_tag": false}}

remove_project_member

Description

Removes a user from a project

Response

Returns a Boolean!

Arguments
Name Description
project_id - String! The project ID
user_id - String! The user ID

Example

Query
mutation remove_project_member(
  $project_id: String!,
  $user_id: String!
) {
  remove_project_member(
    project_id: $project_id,
    user_id: $user_id
  )
}
Variables
{
  "project_id": "abc123",
  "user_id": "abc123"
}
Response
{"data": {"remove_project_member": true}}

remove_project_payment_card

Description

Removes a payment card from a project

Response

Returns a Boolean!

Arguments
Name Description
id - String! The card ID
project_id - String! The project ID

Example

Query
mutation remove_project_payment_card(
  $id: String!,
  $project_id: String!
) {
  remove_project_payment_card(
    id: $id,
    project_id: $project_id
  )
}
Variables
{
  "id": "xyz789",
  "project_id": "xyz789"
}
Response
{"data": {"remove_project_payment_card": true}}

remove_project_tax_identifier

Description

Adds a tax identifier to this project

Response

Returns a Boolean!

Arguments
Name Description
id - String! The tax identifier ID
project_id - String! The project ID

Example

Query
mutation remove_project_tax_identifier(
  $id: String!,
  $project_id: String!
) {
  remove_project_tax_identifier(
    id: $id,
    project_id: $project_id
  )
}
Variables
{
  "id": "abc123",
  "project_id": "abc123"
}
Response
{"data": {"remove_project_tax_identifier": false}}

request_certificate

Description

Request a certificate

Response

Returns a String!

Arguments
Name Description
domainName - String! A fully qualified domain name (FQDN), such as www.example.com
project_id - String! The project ID

Example

Query
mutation request_certificate(
  $domainName: String!,
  $project_id: String!
) {
  request_certificate(
    domainName: $domainName,
    project_id: $project_id
  )
}
Variables
{
  "domainName": "abc123",
  "project_id": "xyz789"
}
Response
{"data": {"request_certificate": "abc123"}}

run_job

Description

Runs a job and return the job ID

Response

Returns a Job!

Arguments
Name Description
wait_for_result - Boolean If set to true, the API will wait for the job to complete and return the final status and response. If set to false, the API will return the job immediately with status QUEUED and continue processing it in the background.
webhook_url - String The webhook URL
payload - JSON The payload (parameters) required to run the job
action_id - String! The action ID
project_id - String The project ID, (nullable only when using an API key)

Example

Query
mutation run_job(
  $wait_for_result: Boolean,
  $webhook_url: String,
  $payload: JSON,
  $action_id: String!,
  $project_id: String
) {
  run_job(
    wait_for_result: $wait_for_result,
    webhook_url: $webhook_url,
    payload: $payload,
    action_id: $action_id,
    project_id: $project_id
  ) {
    id
    action_id
    project_id
    status
    started_at
    finished_at
    request
    response
    error_message
    created_at
    total_count
    billing_request_cost
    billing_request_quantity
    action {
      ...ActionFragment
    }
  }
}
Variables
{
  "wait_for_result": false,
  "webhook_url": "xyz789",
  "payload": {},
  "action_id": "xyz789",
  "project_id": "abc123"
}
Response
{
  "data": {
    "run_job": {
      "id": "abc123",
      "action_id": "xyz789",
      "project_id": "abc123",
      "status": "abc123",
      "started_at": "2007-12-03T10:15:30Z",
      "finished_at": "2007-12-03T10:15:30Z",
      "request": {},
      "response": {},
      "error_message": {},
      "created_at": "2007-12-03T10:15:30Z",
      "total_count": 123.45,
      "billing_request_cost": 123.45,
      "billing_request_quantity": 123.45,
      "action": Action
    }
  }
}

send_email_otp

Description

First step of login using email, sends an OTP to login

Response

Returns a Boolean!

Arguments
Name Description
email - String! The email address of the user

Example

Query
mutation send_email_otp($email: String!) {
  send_email_otp(email: $email)
}
Variables
{"email": "abc123"}
Response
{"data": {"send_email_otp": true}}

set_asset_status

Description

Set the upload process status for a specified asset

Response

Returns an Asset!

Arguments
Name Description
status - AssetStatus! The new status to set for the asset
id - String! The unique identifier of the asset to update

Example

Query
mutation set_asset_status(
  $status: AssetStatus!,
  $id: String!
) {
  set_asset_status(
    status: $status,
    id: $id
  ) {
    id
    created_at
    updated_at
    library_id
    name
    content_type
    duration
    size
    status
    total_count
    library {
      ...LibraryFragment
    }
    asset_enhancements {
      ...AssetEnhancementFragment
    }
  }
}
Variables
{
  "status": "UPLOAD_PROCESSING",
  "id": "xyz789"
}
Response
{
  "data": {
    "set_asset_status": {
      "id": "xyz789",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "2007-12-03T10:15:30Z",
      "library_id": "xyz789",
      "name": "xyz789",
      "content_type": "abc123",
      "duration": 123.45,
      "size": 987.65,
      "status": "abc123",
      "total_count": 987.65,
      "library": Library,
      "asset_enhancements": [AssetEnhancement]
    }
  }
}

set_default_project

Description

Set default project for the user

Response

Returns a Boolean!

Arguments
Name Description
project_id - String! The project ID

Example

Query
mutation set_default_project($project_id: String!) {
  set_default_project(project_id: $project_id)
}
Variables
{"project_id": "abc123"}
Response
{"data": {"set_default_project": true}}

set_distribution_aliases

Description

Set an alias

Response

Returns a Boolean!

Arguments
Name Description
certificate_arn - String!
aliases - [String!]!
distribution_id - String!

Example

Query
mutation set_distribution_aliases(
  $certificate_arn: String!,
  $aliases: [String!]!,
  $distribution_id: String!
) {
  set_distribution_aliases(
    certificate_arn: $certificate_arn,
    aliases: $aliases,
    distribution_id: $distribution_id
  )
}
Variables
{
  "certificate_arn": "xyz789",
  "aliases": ["xyz789"],
  "distribution_id": "abc123"
}
Response
{"data": {"set_distribution_aliases": false}}

set_project_billing_info

Description

Sets billing info for this project

Response

Returns a BillingInfo!

Arguments
Name Description
address_state - String The invoice state
address_postal_code - String The invoice postal code
address_line_2 - String The invoice street address 2
address_line_1 - String! The invoice street address 1
address_country - String! The invoice country
address_city - String The invoice city
email - String! The email address to send invoices
name - String! The customer name on invoices
project_id - String! The project ID

Example

Query
mutation set_project_billing_info(
  $address_state: String,
  $address_postal_code: String,
  $address_line_2: String,
  $address_line_1: String!,
  $address_country: String!,
  $address_city: String,
  $email: String!,
  $name: String!,
  $project_id: String!
) {
  set_project_billing_info(
    address_state: $address_state,
    address_postal_code: $address_postal_code,
    address_line_2: $address_line_2,
    address_line_1: $address_line_1,
    address_country: $address_country,
    address_city: $address_city,
    email: $email,
    name: $name,
    project_id: $project_id
  ) {
    id
    name
    email
    address_city
    address_country
    address_line_1
    address_line_2
    address_postal_code
    address_state
    address_country_details {
      ...CountryFragment
    }
  }
}
Variables
{
  "address_state": "xyz789",
  "address_postal_code": "xyz789",
  "address_line_2": "abc123",
  "address_line_1": "xyz789",
  "address_country": "xyz789",
  "address_city": "xyz789",
  "email": "xyz789",
  "name": "abc123",
  "project_id": "abc123"
}
Response
{
  "data": {
    "set_project_billing_info": {
      "id": "xyz789",
      "name": "xyz789",
      "email": "abc123",
      "address_city": "abc123",
      "address_country": "xyz789",
      "address_line_1": "abc123",
      "address_line_2": "xyz789",
      "address_postal_code": "abc123",
      "address_state": "xyz789",
      "address_country_details": Country
    }
  }
}

set_project_default_payment_card

Description

Sets a payment card as default for a project

Response

Returns a Boolean!

Arguments
Name Description
id - String! The card ID
project_id - String! The project ID

Example

Query
mutation set_project_default_payment_card(
  $id: String!,
  $project_id: String!
) {
  set_project_default_payment_card(
    id: $id,
    project_id: $project_id
  )
}
Variables
{
  "id": "abc123",
  "project_id": "abc123"
}
Response
{"data": {"set_project_default_payment_card": true}}

update_api_key

Description

Updates name and role of the API key

Response

Returns a Key!

Arguments
Name Description
role - Role! Role to assign the key, can be either ADMIN, DEVELOPER, READONLY OR FINANCE
name - String! A new name for the key
id - String! The API key ID

Example

Query
mutation update_api_key(
  $role: Role!,
  $name: String!,
  $id: String!
) {
  update_api_key(
    role: $role,
    name: $name,
    id: $id
  ) {
    id
    created_at
    project_id
    name
    masked_key
    last_used_at
    role
    project {
      ...ProjectFragment
    }
  }
}
Variables
{
  "role": "ADMIN",
  "name": "abc123",
  "id": "xyz789"
}
Response
{
  "data": {
    "update_api_key": {
      "id": "xyz789",
      "created_at": "2007-12-03T10:15:30Z",
      "project_id": "abc123",
      "name": "abc123",
      "masked_key": "abc123",
      "last_used_at": "2007-12-03T10:15:30Z",
      "role": "xyz789",
      "project": Project
    }
  }
}

update_distribution_cache_behavior

Description

Update a cache behavior

Response

Returns a Boolean!

Arguments
Name Description
cache_behavior - CacheBehaviorInput!
distribution_id - String!

Example

Query
mutation update_distribution_cache_behavior(
  $cache_behavior: CacheBehaviorInput!,
  $distribution_id: String!
) {
  update_distribution_cache_behavior(
    cache_behavior: $cache_behavior,
    distribution_id: $distribution_id
  )
}
Variables
{
  "cache_behavior": CacheBehaviorInput,
  "distribution_id": "xyz789"
}
Response
{"data": {"update_distribution_cache_behavior": false}}

update_distribution_cache_behaviors_order

Description

Update order of cache behaviors

Response

Returns a Boolean!

Arguments
Name Description
path_patterns - [String!]! The array of path patterns of cache behaviors
distribution_id - String! The distribution ID

Example

Query
mutation update_distribution_cache_behaviors_order(
  $path_patterns: [String!]!,
  $distribution_id: String!
) {
  update_distribution_cache_behaviors_order(
    path_patterns: $path_patterns,
    distribution_id: $distribution_id
  )
}
Variables
{
  "path_patterns": ["xyz789"],
  "distribution_id": "abc123"
}
Response
{"data": {"update_distribution_cache_behaviors_order": false}}

update_distribution_error_response

Description

Remove an error response

Response

Returns a Boolean!

Arguments
Name Description
error_response - ErrorResponseInput!
distribution_id - String!

Example

Query
mutation update_distribution_error_response(
  $error_response: ErrorResponseInput!,
  $distribution_id: String!
) {
  update_distribution_error_response(
    error_response: $error_response,
    distribution_id: $distribution_id
  )
}
Variables
{
  "error_response": ErrorResponseInput,
  "distribution_id": "xyz789"
}
Response
{"data": {"update_distribution_error_response": false}}

update_distribution_origin

Description

Update an origin

Response

Returns a Boolean!

Arguments
Name Description
origin - OriginInput!
distribution_id - String!

Example

Query
mutation update_distribution_origin(
  $origin: OriginInput!,
  $distribution_id: String!
) {
  update_distribution_origin(
    origin: $origin,
    distribution_id: $distribution_id
  )
}
Variables
{
  "origin": OriginInput,
  "distribution_id": "xyz789"
}
Response
{"data": {"update_distribution_origin": false}}

update_distribution_settings

Description

Updates distribution settings

Response

Returns a Boolean!

Arguments
Name Description
minimum_protocol_version - MinimumProtocolVersion
certificate_arn - String
aliases - [String!]
comment - String!
is_ip_v6_enabled - Boolean!
default_root_object - String
http_version - HttpVersion!
price_class - PriceClass!
distribution_id - String!

Example

Query
mutation update_distribution_settings(
  $minimum_protocol_version: MinimumProtocolVersion,
  $certificate_arn: String,
  $aliases: [String!],
  $comment: String!,
  $is_ip_v6_enabled: Boolean!,
  $default_root_object: String,
  $http_version: HttpVersion!,
  $price_class: PriceClass!,
  $distribution_id: String!
) {
  update_distribution_settings(
    minimum_protocol_version: $minimum_protocol_version,
    certificate_arn: $certificate_arn,
    aliases: $aliases,
    comment: $comment,
    is_ip_v6_enabled: $is_ip_v6_enabled,
    default_root_object: $default_root_object,
    http_version: $http_version,
    price_class: $price_class,
    distribution_id: $distribution_id
  )
}
Variables
{
  "minimum_protocol_version": "TLSv1_2_2021",
  "certificate_arn": "abc123",
  "aliases": ["abc123"],
  "comment": "abc123",
  "is_ip_v6_enabled": false,
  "default_root_object": "xyz789",
  "http_version": "http1_1",
  "price_class": "PriceClass_100",
  "distribution_id": "xyz789"
}
Response
{"data": {"update_distribution_settings": false}}

update_library

Description

Update an existing

Response

Returns a Library!

Arguments
Name Description
description - String! New description for the library
name - String! A new name for the library
id - String! The id of the library to update

Example

Query
mutation update_library(
  $description: String!,
  $name: String!,
  $id: String!
) {
  update_library(
    description: $description,
    name: $name,
    id: $id
  ) {
    id
    created_at
    name
    description
    project_id
    asset_type
    assets {
      ...AssetFragment
    }
    custom_domains {
      ...CustomDomainFragment
    }
    total_media_assets
  }
}
Variables
{
  "description": "abc123",
  "name": "abc123",
  "id": "abc123"
}
Response
{
  "data": {
    "update_library": {
      "id": "abc123",
      "created_at": "2007-12-03T10:15:30Z",
      "name": "abc123",
      "description": "abc123",
      "project_id": "xyz789",
      "asset_type": "abc123",
      "assets": [Asset],
      "custom_domains": [CustomDomain],
      "total_media_assets": 123.45
    }
  }
}

update_project

Description

Updates a project name

Response

Returns a Project!

Arguments
Name Description
description - String The project description
name - String! The new project name
project_id - String! The project ID

Example

Query
mutation update_project(
  $description: String,
  $name: String!,
  $project_id: String!
) {
  update_project(
    description: $description,
    name: $name,
    project_id: $project_id
  ) {
    id
    name
    created_at
    updated_at
    owner_user_id
    description
    my_role
    owner {
      ...UserFragment
    }
    members {
      ...ProjectMemberFragment
    }
    list_recently_used_api_keys {
      ...KeyFragment
    }
    total_api_keys
    current_spend
    billing_link
  }
}
Variables
{
  "description": "abc123",
  "name": "xyz789",
  "project_id": "xyz789"
}
Response
{
  "data": {
    "update_project": {
      "id": "xyz789",
      "name": "xyz789",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "xyz789",
      "owner_user_id": "abc123",
      "description": "abc123",
      "my_role": "ADMIN",
      "owner": User,
      "members": [ProjectMember],
      "list_recently_used_api_keys": [Key],
      "total_api_keys": 987.65,
      "current_spend": 123.45,
      "billing_link": "xyz789"
    }
  }
}

update_project_member

Description

Updates a project member role

Response

Returns a ProjectMember!

Arguments
Name Description
role - Role! User role you want to update, can be either ADMIN, READWRITE, READ OR FINANCE
project_id - String! The project ID
user_id - String! The user ID

Example

Query
mutation update_project_member(
  $role: Role!,
  $project_id: String!,
  $user_id: String!
) {
  update_project_member(
    role: $role,
    project_id: $project_id,
    user_id: $user_id
  ) {
    id
    created_at
    updated_at
    user_id
    project_id
    role
    project {
      ...ProjectFragment
    }
    user {
      ...UserFragment
    }
  }
}
Variables
{
  "role": "ADMIN",
  "project_id": "abc123",
  "user_id": "xyz789"
}
Response
{
  "data": {
    "update_project_member": {
      "id": "abc123",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "2007-12-03T10:15:30Z",
      "user_id": "xyz789",
      "project_id": "abc123",
      "role": "abc123",
      "project": Project,
      "user": User
    }
  }
}

update_user_profile

Description

Updates user profile data, for now only first name and last name

Response

Returns a User!

Arguments
Name Description
set_profile_picture_null - Boolean Set profile picture as null
last_name - String! The first name of user
first_name - String! The first name of user

Example

Query
mutation update_user_profile(
  $set_profile_picture_null: Boolean,
  $last_name: String!,
  $first_name: String!
) {
  update_user_profile(
    set_profile_picture_null: $set_profile_picture_null,
    last_name: $last_name,
    first_name: $first_name
  ) {
    id
    created_at
    updated_at
    first_name
    last_name
    email
    picture
    default_project_id
    default_project {
      ...ProjectFragment
    }
    projects {
      ...ProjectFragment
    }
    ratings {
      ...ActionRatingFragment
    }
  }
}
Variables
{
  "set_profile_picture_null": true,
  "last_name": "abc123",
  "first_name": "xyz789"
}
Response
{
  "data": {
    "update_user_profile": {
      "id": "abc123",
      "created_at": "2007-12-03T10:15:30Z",
      "updated_at": "abc123",
      "first_name": "xyz789",
      "last_name": "abc123",
      "email": "yourname@example.com",
      "picture": "abc123",
      "default_project_id": "abc123",
      "default_project": Project,
      "projects": [Project],
      "ratings": [ActionRating]
    }
  }
}

Types

Action

Fields
Field Name Description
id - String!
name - String The name of the action
description - String The description of the action
category - String The category of the action
created_at - DateTimeISO The date the action was created
updated_at - DateTimeISO The date the action was last updated
is_featured - Boolean! Indicates if the action is featured
is_popular - Boolean! Indicates if the action is popular
is_trending - Boolean! Indicates if the action is trending
is_new - Boolean! Indicates if the action is new
is_highly_rated - Boolean Indicates if the action is highly rated
popular_score - Float Score indicating popularity of the action
trending_score - Float Score indicating trending status of the action
rating_count - Float Total number of ratings for the action
rating_total - Float Sum of all ratings for calculating average
cost_unit - String The cost unit of the action
cost_amount - Float The cost amount of the action
json_schema - JSON The json schema payload (parameters) for the action
model - String The underlying model powering this action (if any)
trigger_word - String The trigger word for this action (if any)
success_rate - Float Average success rate of the action
average_duration - Float Average success duration of the action
average_cost - Float Average cost of the action
total_count - Float The total number of actions, supports filter ie total count after search filter
deprecated - Boolean Indicates whether the action is deprecated
jobs - [Job!] Fetch the jobs associated with this action and project.
Arguments
filter - String
offset - Float
limit - Float
project_id - String!
ratings - [ActionRating!] Fetch ratings list for this action.
rating_stats - [ActionRatingStat!] Fetch rating statistics for this action, showing the count of ratings for each star level.
category_details - ActionCategory Fetch category details for this action.
user_rating - ActionRating Fetch the rating given by the logged in user for this action.
project_job_statistics - JobStatistic Fetch job statistics for this action within a specific project.
Arguments
project_id - String!
total_job_statistics - JobStatistic Fetch overall job statistics for this action across all projects.
Example
{
  "id": "xyz789",
  "name": "xyz789",
  "description": "abc123",
  "category": "xyz789",
  "created_at": "2007-12-03T10:15:30Z",
  "updated_at": "2007-12-03T10:15:30Z",
  "is_featured": false,
  "is_popular": true,
  "is_trending": false,
  "is_new": false,
  "is_highly_rated": true,
  "popular_score": 123.45,
  "trending_score": 987.65,
  "rating_count": 987.65,
  "rating_total": 123.45,
  "cost_unit": "xyz789",
  "cost_amount": 987.65,
  "json_schema": {},
  "model": "xyz789",
  "trigger_word": "abc123",
  "success_rate": 123.45,
  "average_duration": 123.45,
  "average_cost": 123.45,
  "total_count": 987.65,
  "deprecated": false,
  "jobs": [Job],
  "ratings": [ActionRating],
  "rating_stats": [ActionRatingStat],
  "category_details": ActionCategory,
  "user_rating": ActionRating,
  "project_job_statistics": JobStatistic,
  "total_job_statistics": JobStatistic
}

ActionCategory

Fields
Field Name Description
id - String! The unique identifier of the action category
background_color - String The unique background color for the category, added specifically for frontend
stroke_color - String The unique stroke color for the category, added specifically for frontend
Example
{
  "id": "xyz789",
  "background_color": "abc123",
  "stroke_color": "xyz789"
}

ActionRating

Fields
Field Name Description
id - String! The unique identifier of the action rating
action_id - String! The unique identifier of the action being rated
user_id - String! The unique identifier of the user who rated the action
rating - Float! The rating value given by the user
comment - String The comment given by the user
created_at - DateTimeISO! The date the rating was created
updated_at - DateTimeISO The date the rating was last updated
action - Action! Fetch the action associated with this rating.
user - PublicUser! Fetch the user who created this rating.
Example
{
  "id": "abc123",
  "action_id": "xyz789",
  "user_id": "xyz789",
  "rating": 987.65,
  "comment": "abc123",
  "created_at": "2007-12-03T10:15:30Z",
  "updated_at": "2007-12-03T10:15:30Z",
  "action": Action,
  "user": PublicUser
}

ActionRatingStat

Fields
Field Name Description
star - Int! The star rating (e.g., 1 to 5)
count - Int! The number of users who gave this rating
Example
{"star": 987, "count": 123}

AllowedMethods

Fields
Field Name Description
items - [Method!]!
cached_methods - [Method!]!
Example
{"items": ["DELETE"], "cached_methods": ["DELETE"]}

AllowedMethodsInput

Fields
Input Field Description
items - [Method!]!
cached_methods - [Method!]!
Example
{"items": ["DELETE"], "cached_methods": ["DELETE"]}

Asset

Description

Represents a media asset stored within a library

Fields
Field Name Description
id - String! The unique identifier for this asset
created_at - DateTimeISO! The date and time when this asset was first uploaded/imported
updated_at - DateTimeISO! The date and time when this asset was last modified
library_id - String! The identifier of the library that owns this asset
name - String The filename of the asset
content_type - String The MIME type of the asset content
duration - Float The duration of this asset in seconds, if it is an audio or video file
size - Float The size of the original file in bytes
status - String! The status of the asset, indicating its imported/uploaded
total_count - Float The total number of assets, supports filter ie total count after search filter
library - Library! The library this asset belongs to
asset_enhancements - [AssetEnhancement!]! The ehnancements that run on the asset
Example
{
  "id": "xyz789",
  "created_at": "2007-12-03T10:15:30Z",
  "updated_at": "2007-12-03T10:15:30Z",
  "library_id": "xyz789",
  "name": "abc123",
  "content_type": "xyz789",
  "duration": 123.45,
  "size": 123.45,
  "status": "xyz789",
  "total_count": 987.65,
  "library": Library,
  "asset_enhancements": [AssetEnhancement]
}

AssetEnhancement

Description

Represents an enhancement performed on a specific asset

Fields
Field Name Description
id - String! The unique identifier for this asset enhancement
asset_id - String! The unique identifier of the asset on which this enhancement was performed
enhancement_id - String! The unique identifier of the enhancement performed on the asset
thumbnail_count - Float The total number of thumbnails generated if the enhancement is to generate thumbnails
status - String The status of the enhancement
file_size - String The size of the response media, if applicable
enhancement - Enhancement! The enhancement details
asset - Asset! The asset details
image_tags - [Tag!] The asset enhancement image tags if the enhancement is generate tags for image
image_moderation_labels - [ImageModerationLabel!] The asset enhancement moderation labels if the enhancement is moderate image
Example
{
  "id": "xyz789",
  "asset_id": "xyz789",
  "enhancement_id": "xyz789",
  "thumbnail_count": 987.65,
  "status": "abc123",
  "file_size": "abc123",
  "enhancement": Enhancement,
  "asset": Asset,
  "image_tags": [Tag],
  "image_moderation_labels": [ImageModerationLabel]
}

AssetStatus

Values
Enum Value Description

UPLOAD_PROCESSING

UPLOAD_COMPLETE

UPLOAD_FAILED

IMPORT_PROCESSING

IMPORT_COMPLETE

IMPORT_FAILED

Example
"UPLOAD_PROCESSING"

AssetType

Description

Asset types (Image, video or audio)

Values
Enum Value Description

IMAGE

AUDIO

VIDEO

Example
"IMAGE"

BillingInfo

Fields
Field Name Description
id - String! The project ID
name - String! The billing name
email - String! The billing email
address_city - String The billing city
address_country - String The billing country
address_line_1 - String The billing street address (1)
address_line_2 - String The billing street address (2)
address_postal_code - String The billing postal code
address_state - String The billing state or province
address_country_details - Country The country details
Example
{
  "id": "abc123",
  "name": "abc123",
  "email": "abc123",
  "address_city": "xyz789",
  "address_country": "xyz789",
  "address_line_1": "abc123",
  "address_line_2": "xyz789",
  "address_postal_code": "xyz789",
  "address_state": "abc123",
  "address_country_details": Country
}

Boolean

Description

The Boolean scalar type represents true or false.

CacheBehavior

Fields
Field Name Description
path_pattern - String!
target_origin_id - String!
trusted_signers - TrustedSignersOrKeyGroups
trusted_key_groups - TrustedSignersOrKeyGroups
viewer_protocol_policy - ViewerProtocolPolicy!
allowed_methods - AllowedMethods!
smooth_streaming - Boolean
compress - Boolean
lambda_function_associations - [LambdaFunctionAssociation!]
function_associations - [FunctionAssociation!]
field_level_encryption_id - String
realtime_log_config_arn - String
cache_policy_id - String!
origin_request_policy_id - String
response_headers_policy_id - String
Example
{
  "path_pattern": "abc123",
  "target_origin_id": "abc123",
  "trusted_signers": TrustedSignersOrKeyGroups,
  "trusted_key_groups": TrustedSignersOrKeyGroups,
  "viewer_protocol_policy": "allow_all",
  "allowed_methods": AllowedMethods,
  "smooth_streaming": false,
  "compress": false,
  "lambda_function_associations": [
    LambdaFunctionAssociation
  ],
  "function_associations": [FunctionAssociation],
  "field_level_encryption_id": "xyz789",
  "realtime_log_config_arn": "xyz789",
  "cache_policy_id": "xyz789",
  "origin_request_policy_id": "abc123",
  "response_headers_policy_id": "abc123"
}

CacheBehaviorInput

Fields
Input Field Description
path_pattern - String!
target_origin_id - String!
trusted_signers - TrustedSignersOrKeyGroupsInput
trusted_key_groups - TrustedSignersOrKeyGroupsInput
viewer_protocol_policy - ViewerProtocolPolicy!
allowed_methods - AllowedMethodsInput!
smooth_streaming - Boolean
compress - Boolean
lambda_function_associations - [LambdaFunctionAssociationInput!]
function_associations - [FunctionAssociationInput!]
field_level_encryption_id - String
realtime_log_config_arn - String
cache_policy_id - String!
origin_request_policy_id - String
response_headers_policy_id - String
Example
{
  "path_pattern": "xyz789",
  "target_origin_id": "abc123",
  "trusted_signers": TrustedSignersOrKeyGroupsInput,
  "trusted_key_groups": TrustedSignersOrKeyGroupsInput,
  "viewer_protocol_policy": "allow_all",
  "allowed_methods": AllowedMethodsInput,
  "smooth_streaming": true,
  "compress": true,
  "lambda_function_associations": [
    LambdaFunctionAssociationInput
  ],
  "function_associations": [FunctionAssociationInput],
  "field_level_encryption_id": "xyz789",
  "realtime_log_config_arn": "abc123",
  "cache_policy_id": "xyz789",
  "origin_request_policy_id": "abc123",
  "response_headers_policy_id": "abc123"
}

CachePolicy

Fields
Field Name Description
id - String!
last_modified_time - DateTimeISO!
config - CachePolicyConfig!
Example
{
  "id": "xyz789",
  "last_modified_time": "2007-12-03T10:15:30Z",
  "config": CachePolicyConfig
}

CachePolicyConfig

Fields
Field Name Description
min_ttl - Float!
name - String!
comment - String
default_ttl - Float
max_ttl - Float
Example
{
  "min_ttl": 987.65,
  "name": "xyz789",
  "comment": "abc123",
  "default_ttl": 123.45,
  "max_ttl": 987.65
}

Certificate

Fields
Field Name Description
certificate - String!
certificateChain - String!
Example
{
  "certificate": "xyz789",
  "certificateChain": "xyz789"
}

CertificateDetail

Fields
Field Name Description
identifier - String
certificate_arn - String
certificate_authority_arn - String
created_at - DateTimeISO
domain_name - String
domain_validation_options - [DomainValidation!]
failure_reason - String
imported_at - DateTimeISO
in_use_by - [String!]
issued_at - DateTimeISO
issuer - String
key_algorithm - String
not_after - DateTimeISO
not_before - DateTimeISO
status - String
Example
{
  "identifier": "abc123",
  "certificate_arn": "abc123",
  "certificate_authority_arn": "xyz789",
  "created_at": "2007-12-03T10:15:30Z",
  "domain_name": "xyz789",
  "domain_validation_options": [DomainValidation],
  "failure_reason": "xyz789",
  "imported_at": "2007-12-03T10:15:30Z",
  "in_use_by": ["abc123"],
  "issued_at": "2007-12-03T10:15:30Z",
  "issuer": "xyz789",
  "key_algorithm": "xyz789",
  "not_after": "2007-12-03T10:15:30Z",
  "not_before": "2007-12-03T10:15:30Z",
  "status": "xyz789"
}

CertificateSummary

Fields
Field Name Description
identifier - String
certificate_arn - String
domain_name - String
subject_alternative_name_summaries - [String!]
has_additional_subject_alternative_names - Boolean
status - String
type - String
key_algorithm - String
key_usages - [String!]
extended_key_usages - [String!]
in_use - Boolean
renewal_eligibility - String
not_before - DateTimeISO
not_after - DateTimeISO
created_at - DateTimeISO
issued_at - DateTimeISO
Example
{
  "identifier": "xyz789",
  "certificate_arn": "xyz789",
  "domain_name": "xyz789",
  "subject_alternative_name_summaries": [
    "abc123"
  ],
  "has_additional_subject_alternative_names": false,
  "status": "abc123",
  "type": "abc123",
  "key_algorithm": "xyz789",
  "key_usages": ["xyz789"],
  "extended_key_usages": ["abc123"],
  "in_use": true,
  "renewal_eligibility": "xyz789",
  "not_before": "2007-12-03T10:15:30Z",
  "not_after": "2007-12-03T10:15:30Z",
  "created_at": "2007-12-03T10:15:30Z",
  "issued_at": "2007-12-03T10:15:30Z"
}

City

Fields
Field Name Description
id - String! The city indetifier
country_id - String! The country ID this city belongs to
state_id - String! The state ID this city belongs to
name - String! The city name
Example
{
  "id": "abc123",
  "country_id": "abc123",
  "state_id": "xyz789",
  "name": "xyz789"
}

Collection

Values
Enum Value Description

POPULAR

TRENDING

NEW

HIGHLY_RATED

FEATURED

Example
"POPULAR"

Country

Fields
Field Name Description
id - String! The country indetifier
name - String! The country name
iso2 - String The two-letter ISO country code
iso3 - String The three-letter ISO country code
emoji - String The three-letter ISO country code
states - [State!]! The list of states belong to this country
Example
{
  "id": "abc123",
  "name": "abc123",
  "iso2": "xyz789",
  "iso3": "abc123",
  "emoji": "xyz789",
  "states": [State]
}

CustomDomain

Description

Domain added to library

Fields
Field Name Description
id - String! The ID for this custom domain
domain - String! The domain
library_id - String! The ID of the library that linked to domain
is_primary - Boolean! Whether domain is primary
library - Library! The library this custom domain belongs to
Example
{
  "id": "abc123",
  "domain": "xyz789",
  "library_id": "abc123",
  "is_primary": true,
  "library": Library
}

DateTimeISO

Description

A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the date-time format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.This scalar is serialized to a string in ISO 8601 format and parsed from a string in ISO 8601 format.

Example
"2007-12-03T10:15:30Z"

Distribution

Fields
Field Name Description
id - String!
arn - String!
status - String!
last_modified_time - DateTimeISO!
domain_name - String!
config - DistributionConfig!
Example
{
  "id": "abc123",
  "arn": "xyz789",
  "status": "abc123",
  "last_modified_time": "2007-12-03T10:15:30Z",
  "domain_name": "abc123",
  "config": DistributionConfig
}

DistributionConfig

Fields
Field Name Description
default_root_object - String
comment - String!
price_class - PriceClass
enabled - Boolean!
http_version - HttpVersion
caller_reference - String
is_ip_v6_enabled - Boolean
errorResponses - [ErrorResponse!]!
distribution_aliases - [String!]!
certificate_arn - String
minimum_protocol_version - MinimumProtocolVersion
origins - [Origin!]!
cache_behaviors - [CacheBehavior!]!
Example
{
  "default_root_object": "abc123",
  "comment": "abc123",
  "price_class": "PriceClass_100",
  "enabled": true,
  "http_version": "http1_1",
  "caller_reference": "abc123",
  "is_ip_v6_enabled": true,
  "errorResponses": [ErrorResponse],
  "distribution_aliases": ["xyz789"],
  "certificate_arn": "abc123",
  "minimum_protocol_version": "TLSv1_2_2021",
  "origins": [Origin],
  "cache_behaviors": [CacheBehavior]
}

DistributionConfigInput

Fields
Input Field Description
default_root_object - String
comment - String!
price_class - PriceClass
enabled - Boolean!
http_version - HttpVersion
caller_reference - String
is_ip_v6_enabled - Boolean
errorResponses - [ErrorResponseInput!]!
distribution_aliases - [String!]!
certificate_arn - String
minimum_protocol_version - MinimumProtocolVersion
origins - [OriginInput!]!
cache_behaviors - [CacheBehaviorInput!]!
Example
{
  "default_root_object": "abc123",
  "comment": "xyz789",
  "price_class": "PriceClass_100",
  "enabled": true,
  "http_version": "http1_1",
  "caller_reference": "xyz789",
  "is_ip_v6_enabled": true,
  "errorResponses": [ErrorResponseInput],
  "distribution_aliases": ["xyz789"],
  "certificate_arn": "abc123",
  "minimum_protocol_version": "TLSv1_2_2021",
  "origins": [OriginInput],
  "cache_behaviors": [CacheBehaviorInput]
}

DistributionTag

Fields
Field Name Description
key - String!
value - String!
Example
{
  "key": "xyz789",
  "value": "abc123"
}

DistributionTagInput

Fields
Input Field Description
key - String!
value - String!
Example
{
  "key": "abc123",
  "value": "xyz789"
}

DomainValidation

Fields
Field Name Description
domain_name - String!
resource_record - ResourceRecord
validation_status - String
validation_method - String
Example
{
  "domain_name": "abc123",
  "resource_record": ResourceRecord,
  "validation_status": "abc123",
  "validation_method": "abc123"
}

Enhancement

Description

An enhancement represents a task or operation that can be performed on a media asset within the system

Fields
Field Name Description
id - String! The unique identifier for this enhancement. This ID is also used as the actual name of the enhancement in batch jobs
created_at - DateTimeISO! The date and time when this enhancement was created
updated_at - DateTimeISO! The date and time when this enhancement was last modified
display_name - String! The display name for this enhancement
name - String The filename associated with this enhancement, or the filename for response media
asset_type - String! The type of asset this enhancement can be performed on, such as IMAGE, AUDIO, or VIDEO
response_type - String The type of file that this enhancement will receive once it is completed
Example
{
  "id": "xyz789",
  "created_at": "2007-12-03T10:15:30Z",
  "updated_at": "2007-12-03T10:15:30Z",
  "display_name": "xyz789",
  "name": "xyz789",
  "asset_type": "abc123",
  "response_type": "abc123"
}

ErrorResponse

Fields
Field Name Description
error_code - Float!
response_page_path - String!
response_code - String!
error_caching_min_ttl - Float!
Example
{
  "error_code": 987.65,
  "response_page_path": "abc123",
  "response_code": "xyz789",
  "error_caching_min_ttl": 987.65
}

ErrorResponseInput

Fields
Input Field Description
error_code - Float!
response_page_path - String!
response_code - String!
error_caching_min_ttl - Float!
Example
{
  "error_code": 123.45,
  "response_page_path": "abc123",
  "response_code": "abc123",
  "error_caching_min_ttl": 987.65
}

EventType

Description

Event Types

Values
Enum Value Description

origin_request

origin_response

viewer_request

viewer_response

Example
"origin_request"

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
987.65

FunctionAssociation

Fields
Field Name Description
event_type - EventType!
function_arn - String!
Example
{
  "event_type": "origin_request",
  "function_arn": "abc123"
}

FunctionAssociationInput

Fields
Input Field Description
event_type - EventType!
function_arn - String!
Example
{
  "event_type": "origin_request",
  "function_arn": "abc123"
}

HttpVersion

Description

Http Version

Values
Enum Value Description

http1_1

http2

http2and3

http3

Example
"http1_1"

ImageModerationLabel

Description

Represents a moderation label associated with an image

Fields
Field Name Description
id - String! The unique identifier for this label
name - String! The name of the label
confidence - Float The confidence score associated with the label
Example
{
  "id": "abc123",
  "name": "xyz789",
  "confidence": 987.65
}

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
987

Invalidation

Fields
Field Name Description
id - String!
create_time - DateTimeISO!
status - String!
paths - [String!]
Example
{
  "id": "abc123",
  "create_time": "2007-12-03T10:15:30Z",
  "status": "xyz789",
  "paths": ["xyz789"]
}

Invoice

Fields
Field Name Description
id - String! The invoice ID
project_id - String The project ID
total_amount - Float! The total invoice amount
payment_card_id - String The payment card ID, used to pay the invoice, if PAID
payment_date - DateTimeISO The date on which payment was done
period_start - DateTimeISO! Start of the usage period during which invoice items were added to this invoice
period_end - DateTimeISO! End of the usage period during which invoice items were added to this invoice
due_date - DateTimeISO The date on which payment for this invoice is due
month_id - String The month id used to complement the invoice ID
is_paid - Boolean Says if an invoice has been paid true or not false
stripe_invoice_id - String The ID of the invoice in Stripe
items - [InvoiceItem!]! The list of invoice items belong to this invoice
payment_card - PaymentCard The payment card used to pay the invoice, if Paid
status - String The status of the invoice, either PAID, OVERDUE, UPCOMING, DUE, NO CHARGE, or CURRENT
download_link - String A downloadable link to the invoice
Example
{
  "id": "abc123",
  "project_id": "xyz789",
  "total_amount": 123.45,
  "payment_card_id": "xyz789",
  "payment_date": "2007-12-03T10:15:30Z",
  "period_start": "2007-12-03T10:15:30Z",
  "period_end": "2007-12-03T10:15:30Z",
  "due_date": "2007-12-03T10:15:30Z",
  "month_id": "xyz789",
  "is_paid": true,
  "stripe_invoice_id": "xyz789",
  "items": [InvoiceItem],
  "payment_card": PaymentCard,
  "status": "xyz789",
  "download_link": "abc123"
}

InvoiceItem

Fields
Field Name Description
id - String The invoice item ID
invoice_id - String! The invoice ID
name - String! The service name
unit_name - String! The billing unit ie minute, second, image, gigabyte etc
unit_price - Float! The price per unit for the service
quantity - Float! The quanity
amount - Float! The amount spent on this service
Example
{
  "id": "abc123",
  "invoice_id": "xyz789",
  "name": "abc123",
  "unit_name": "xyz789",
  "unit_price": 123.45,
  "quantity": 987.65,
  "amount": 987.65
}

JSON

Description

The JSON scalar type represents JSON values as specified by ECMA-404.

Example
{}

Job

Fields
Field Name Description
id - String! A unique ID for the job
action_id - String! The action ID
project_id - String! The project ID for which user run the jobs
status - String The status of the job
started_at - DateTimeISO The timestamp when job started
finished_at - DateTimeISO The timestamp when job completed
request - JSON The parameters used for the job to run
response - JSON The parameters used to save the response
error_message - JSON An error message for job (if any)
created_at - DateTimeISO
total_count - Float The total number of jobs, supports filter ie total count after search filter
billing_request_cost - Float The billing cost for the job
billing_request_quantity - Float The billing quantity for the job
action - Action! Fetches the action associated with this job
Example
{
  "id": "xyz789",
  "action_id": "abc123",
  "project_id": "abc123",
  "status": "xyz789",
  "started_at": "2007-12-03T10:15:30Z",
  "finished_at": "2007-12-03T10:15:30Z",
  "request": {},
  "response": {},
  "error_message": {},
  "created_at": "2007-12-03T10:15:30Z",
  "total_count": 987.65,
  "billing_request_cost": 987.65,
  "billing_request_quantity": 123.45,
  "action": Action
}

JobStatistic

Fields
Field Name Description
total_jobs - String The total count of jobs run in last 30 days
total_completed_jobs - String The total count of completed jobs run in last 30 days
total_failed_jobs - String The total count of failed jobs run in last 30 days
total_queued_jobs - String The total count of queued jobs run in last 30 days
total_in_progress_jobs - String The total count of in-progress jobs run in last 30 days
average_execution_time - String The average execution time of jobs run in last 30 days
total_execution_time - String The total execution time of jobs run in last 30 days
total_cost - Float The total cost of jobs run in last 30 days
average_cost - Float The average cost of jobs run in last 30 days
Example
{
  "total_jobs": "abc123",
  "total_completed_jobs": "xyz789",
  "total_failed_jobs": "abc123",
  "total_queued_jobs": "xyz789",
  "total_in_progress_jobs": "xyz789",
  "average_execution_time": "xyz789",
  "total_execution_time": "xyz789",
  "total_cost": 987.65,
  "average_cost": 123.45
}

Key

Fields
Field Name Description
id - String! A unique ID for the project API key
created_at - DateTimeISO!
project_id - String! The project ID for which the API key has created
name - String A user-defined name of the API key
masked_key - String Masked API key
last_used_at - DateTimeISO The last time the API key was used
role - String! The role assigned to key, can be either ADMIN, DEVELOPER, READONLY OR FINANCE
project - Project! The project this key belongs to
Example
{
  "id": "abc123",
  "created_at": "2007-12-03T10:15:30Z",
  "project_id": "abc123",
  "name": "abc123",
  "masked_key": "abc123",
  "last_used_at": "2007-12-03T10:15:30Z",
  "role": "abc123",
  "project": Project
}

LambdaFunctionAssociation

Fields
Field Name Description
event_type - EventType!
lambda_function_arn - String!
include_body - Boolean
Example
{
  "event_type": "origin_request",
  "lambda_function_arn": "abc123",
  "include_body": false
}

LambdaFunctionAssociationInput

Fields
Input Field Description
event_type - EventType!
lambda_function_arn - String!
include_body - Boolean
Example
{
  "event_type": "origin_request",
  "lambda_function_arn": "abc123",
  "include_body": true
}

Library

Fields
Field Name Description
id - String! The ID for this media library
created_at - DateTimeISO! The date this library was created
name - String! The user-provided name for this media library
description - String The user-provided description for this media library
project_id - String! The ID of the project that owns this library
asset_type - String! The type of asset this media library contains ie video, audio or image
assets - [Asset!]! The assets list this library contains
Arguments
search_keyword - String

The search keyword to filter assets (optional)

offset - Float

The number of items to skip before starting to collect the result set (optional)

limit - Float

The total number of assets to fetch (optional)

custom_domains - [CustomDomain!]! The custom domains for this library
total_media_assets - Float! The total number of assets this library contains
Example
{
  "id": "xyz789",
  "created_at": "2007-12-03T10:15:30Z",
  "name": "xyz789",
  "description": "xyz789",
  "project_id": "xyz789",
  "asset_type": "abc123",
  "assets": [Asset],
  "custom_domains": [CustomDomain],
  "total_media_assets": 123.45
}

Method

Description

Methods

Values
Enum Value Description

DELETE

GET

HEAD

OPTIONS

PATCH

POST

PUT

Example
"DELETE"

MinimumProtocolVersion

Description

Minimum Protocol Version

Values
Enum Value Description

TLSv1_2_2021

TLSv1_2_2019

TLSv1_2_2018

TLSv1_2016

TLSv1_1_2016

TLSv1

SSLv3

Example
"TLSv1_2_2021"

MultiPartUpload

Description

Represents a multipart upload operation for an asset

Fields
Field Name Description
asset_id - String! The unique identifier for the asset being uploaded
key - String! The key associated with the multipart upload
bucket - String! The name of the bucket where the asset will be uploaded
uploadId - String! The unique identifier for the multipart upload process
signedUrls - [String!]! An array of signed URLs for each part of the multipart upload
Example
{
  "asset_id": "abc123",
  "key": "abc123",
  "bucket": "xyz789",
  "uploadId": "abc123",
  "signedUrls": ["xyz789"]
}

Origin

Fields
Field Name Description
id - String!
domain_name - String!
origin_path - String
s3_oac - String
connection_attempts - Float
connection_timeout - Float
custom_origin_https_port - Float
custom_origin_http_port - Float
custom_origin_origin_protocol_policy - OriginProtocolPolicy
custom_origin_origin_ssl_protocols - [SslProtocol!]
custom_origin_origin_read_timeout - Float
custom_origin_origin_keepalive_timeout - Float
custom_headers - [OriginCustomHeader!]
Example
{
  "id": "xyz789",
  "domain_name": "xyz789",
  "origin_path": "abc123",
  "s3_oac": "xyz789",
  "connection_attempts": 123.45,
  "connection_timeout": 987.65,
  "custom_origin_https_port": 123.45,
  "custom_origin_http_port": 987.65,
  "custom_origin_origin_protocol_policy": "http_only",
  "custom_origin_origin_ssl_protocols": ["SSLv3"],
  "custom_origin_origin_read_timeout": 123.45,
  "custom_origin_origin_keepalive_timeout": 987.65,
  "custom_headers": [OriginCustomHeader]
}

OriginCustomHeader

Fields
Field Name Description
name - String!
value - String!
Example
{
  "name": "abc123",
  "value": "abc123"
}

OriginCustomHeaderInput

Fields
Input Field Description
name - String!
value - String!
Example
{
  "name": "abc123",
  "value": "xyz789"
}

OriginInput

Fields
Input Field Description
id - String!
domain_name - String!
origin_path - String
s3_oac - String
connection_attempts - Float
connection_timeout - Float
custom_origin_https_port - Float
custom_origin_http_port - Float
custom_origin_origin_protocol_policy - OriginProtocolPolicy
custom_origin_origin_ssl_protocols - [SslProtocol!]
custom_origin_origin_read_timeout - Float
custom_origin_origin_keepalive_timeout - Float
custom_headers - [OriginCustomHeaderInput!]
Example
{
  "id": "xyz789",
  "domain_name": "xyz789",
  "origin_path": "xyz789",
  "s3_oac": "abc123",
  "connection_attempts": 123.45,
  "connection_timeout": 123.45,
  "custom_origin_https_port": 123.45,
  "custom_origin_http_port": 123.45,
  "custom_origin_origin_protocol_policy": "http_only",
  "custom_origin_origin_ssl_protocols": ["SSLv3"],
  "custom_origin_origin_read_timeout": 987.65,
  "custom_origin_origin_keepalive_timeout": 987.65,
  "custom_headers": [OriginCustomHeaderInput]
}

OriginProtocolPolicy

Description

Origin Protocol Policy

Values
Enum Value Description

http_only

https_only

match_viewer

Example
"http_only"

OriginRequestPolicy

Fields
Field Name Description
id - String!
last_modified_time - DateTimeISO!
config - OriginRequestPolicyConfig!
Example
{
  "id": "abc123",
  "last_modified_time": "2007-12-03T10:15:30Z",
  "config": OriginRequestPolicyConfig
}

OriginRequestPolicyConfig

Fields
Field Name Description
name - String!
comment - String
Example
{
  "name": "xyz789",
  "comment": "abc123"
}

PaymentCard

Fields
Field Name Description
id - String! The Stripe ID for this payment card
brand - String! The brand of this card
last4 - String The last 4 digits of this card
exp_month - Float! The expiry month of this card
exp_year - Float! The expiry year of this card
is_default - Boolean! Whether this is the project default source
Example
{
  "id": "xyz789",
  "brand": "abc123",
  "last4": "abc123",
  "exp_month": 123.45,
  "exp_year": 123.45,
  "is_default": true
}

PriceClass

Description

Price Classe

Values
Enum Value Description

PriceClass_100

PriceClass_200

PriceClass_All

Example
"PriceClass_100"

Project

Fields
Field Name Description
id - String
name - String The name of the project
created_at - DateTimeISO
updated_at - String
owner_user_id - String
description - String The description of the project
my_role - Role! Role of logged in user in that project the project
owner - User! Role of logged in user in that project the project
members - [ProjectMember!]! The list of members belonging to the project
list_recently_used_api_keys - [Key!]!
total_api_keys - Float The total number of API keys created for this project
current_spend - Float The total amount spent for the project that will be due at the end of current month.
billing_link - String Returns the Stripe billing link for this project
Example
{
  "id": "abc123",
  "name": "xyz789",
  "created_at": "2007-12-03T10:15:30Z",
  "updated_at": "abc123",
  "owner_user_id": "xyz789",
  "description": "abc123",
  "my_role": "ADMIN",
  "owner": User,
  "members": [ProjectMember],
  "list_recently_used_api_keys": [Key],
  "total_api_keys": 123.45,
  "current_spend": 123.45,
  "billing_link": "xyz789"
}

ProjectMember

Fields
Field Name Description
id - String!
created_at - DateTimeISO!
updated_at - DateTimeISO!
user_id - String!
project_id - String!
role - String! The role assigned to user, can be either ADMIN, DEVELOPER, READONLY OR FINANCE
project - Project! Retrieves the project details the user is a member of
user - User! Retrieves the user details
Example
{
  "id": "xyz789",
  "created_at": "2007-12-03T10:15:30Z",
  "updated_at": "2007-12-03T10:15:30Z",
  "user_id": "xyz789",
  "project_id": "abc123",
  "role": "xyz789",
  "project": Project,
  "user": User
}

PublicUser

Fields
Field Name Description
first_name - String The first name of the user
picture - String The picture of the user
Example
{
  "first_name": "abc123",
  "picture": "abc123"
}

ResourceRecord

Fields
Field Name Description
name - String!
type - String!
value - String!
Example
{
  "name": "xyz789",
  "type": "xyz789",
  "value": "abc123"
}

Role

Values
Enum Value Description

ADMIN

DEVELOPER

READONLY

FINANCE

Example
"ADMIN"

RolePermission

Fields
Field Name Description
id - String!
role_id - String! The role id
permission_id - String! The permission id
Example
{
  "id": "abc123",
  "role_id": "abc123",
  "permission_id": "abc123"
}

SignedUpload

Description

Represents a signed upload URL for an asset

Fields
Field Name Description
asset_id - String! The unique identifier for the asset
upload_url - String! The URL to which the asset should be uploaded
download_url - String! The URL from which the asset can be downloaded after uploading
Example
{
  "asset_id": "abc123",
  "upload_url": "xyz789",
  "download_url": "xyz789"
}

SslProtocol

Description

Ssl Protocol

Values
Enum Value Description

SSLv3

TLSv1

TLSv1_1

TLSv1_2

Example
"SSLv3"

State

Fields
Field Name Description
id - String! The state indetifier
country_id - String! The country ID this state belongs to
name - String! The state name
iso2 - String The ISO state code
country - Country! The country details
cities - [City!]! The list of cities belong to this state
Example
{
  "id": "abc123",
  "country_id": "xyz789",
  "name": "abc123",
  "iso2": "abc123",
  "country": Country,
  "cities": [City]
}

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
"abc123"

Tag

Description

Represents a tag associated with a media asset, currently only for IMAGE

Fields
Field Name Description
id - String! The unique identifier for this tag
name - String! The name of the tag
confidence - Float The confidence score associated with the tag
Example
{
  "id": "abc123",
  "name": "abc123",
  "confidence": 987.65
}

TaxIdentifier

Fields
Field Name Description
id - String! The tax identifier
country - String! The country of the identifier
type - String! The type ID of the identifier
value - String The value of the identifier
country_details - Country The country details
type_name - String The tax identofier type name
Example
{
  "id": "xyz789",
  "country": "abc123",
  "type": "xyz789",
  "value": "abc123",
  "country_details": Country,
  "type_name": "abc123"
}

TaxIdentifierType

Fields
Field Name Description
type - String! The tax identifier type
country - String! The country this identifier belongs to
name - String! The name of this identifier
example - String An example of this identifier
Example
{
  "type": "xyz789",
  "country": "abc123",
  "name": "xyz789",
  "example": "abc123"
}

TrustedSignersOrKeyGroups

Fields
Field Name Description
enabled - Boolean!
items - [String!]
Example
{"enabled": false, "items": ["xyz789"]}

TrustedSignersOrKeyGroupsInput

Fields
Input Field Description
enabled - Boolean!
items - [String!]
Example
{"enabled": true, "items": ["abc123"]}

User

Fields
Field Name Description
id - String!
created_at - DateTimeISO!
updated_at - String!
first_name - String The first name of the logged in user
last_name - String The last name of the logged in user
email - String! The email address of the logged in user
picture - String The picture of the logged in user
default_project_id - String The default project of the logged in user
default_project - Project! The default project that the user has selected
projects - [Project!]! The list of projects belonging to the user
ratings - [ActionRating!]! The list of ratings given by the user
Example
{
  "id": "xyz789",
  "created_at": "2007-12-03T10:15:30Z",
  "updated_at": "abc123",
  "first_name": "xyz789",
  "last_name": "xyz789",
  "email": "yourname@example.com",
  "picture": "abc123",
  "default_project_id": "xyz789",
  "default_project": Project,
  "projects": [Project],
  "ratings": [ActionRating]
}

ViewerProtocolPolicy

Description

Viewer Protocol Policy

Values
Enum Value Description

allow_all

https_only

redirect_to_https

Example
"allow_all"