Skip to main content

Extensions

Extensions are pre-built Custom Metric Containers that you can easily enable on your projects to unlock additional capabilities.

Available Extensions

Some of the popular extensions include:

  • Store HTML: Stores the HTML of each page as it appeared at the time of crawling.
  • Store Screenshots: Stores a screenshot of each page as it appeared at the time of crawling.

You can discover all available global extensions using the following query:

query GetGlobalContainers($globalContainersCursor: String) {
getGlobalCustomMetricContainers(first: 100, after: $globalContainersCursor) {
pageInfo {
hasNextPage
endCursor
}
edges {
node {
id
name
displayName
description
requiredAddons
costs {
moduleCode
cost
}
keyFeatures
relatedContainerNames
}
}
}
}

Try in explorer

Costs and Availability

Extensions may have associated costs. The costs field in the query response provides this information:

  • If costs is null, the extension is free and available for all project types.
  • If costs contains specific module codes (e.g., SEO), the price applies only to projects with those modules.
  • The cost field indicates the price.

Required Add-ons

Some extensions rely on specific platform features. Check the requiredAddons field to see if an extension needs any additional add-ons enabled on your account.

Enabling an Extension

To use an extension on your project, you need to link the container to your project.

mutation LinkContainerToProject($input: LinkCustomMetricContainerToProjectInput!) {
linkCustomMetricContainerToProject(input: $input) {
customMetricContainerProject {
project {
id
}
customMetricContainer {
id
}
enabled
}
}
}

Try in explorer

Listing Linked Extensions

You can find which extensions are already linked to your project using the following query:

query GetCrawlSettingsForExtensions($projectId: ObjectID!, $projectContainersCursor: String) {
getProject(id: $projectId) {
id
moduleCode
customMetricContainerProjects(first: 100, after: $projectContainersCursor) {
pageInfo {
hasNextPage
endCursor
}
edges {
node {
project {
id
}
customMetricContainer {
id
}
enabled
}
}
}
}
}

Try in explorer

Managing Extensions

Once an extension is linked to a project, you can toggle its status (enable/disable) without removing the link.

mutation UpdateContainerProject($input: UpdateCustomMetricContainerProjectInput!) {
updateCustomMetricContainerProject(input: $input) {
customMetricContainerProject {
project {
id
}
customMetricContainer {
id
}
enabled
}
}
}

Try in explorer