Moz · Schema
Moz Api
SEOSearchMarketingAnalyticsKeywordsBacklinksLocal MarketingDomain AuthorityLink IndexJSON-RPCMCPCompany
JSON Schema
{
"all_actions": [
"AsyncCallLookupAction",
"BetaDataSiteMetricsBrandAuthorityFetchAction",
"DataGlobalTopDomainListAction",
"DataGlobalTopPageListAction",
"DataKeywordMetricsDifficultyFetchAction",
"DataKeywordMetricsFetchAction",
"DataKeywordMetricsOpportunityFetchAction",
"DataKeywordMetricsPriorityFetchAction",
"DataKeywordMetricsVolumeFetchAction",
"DataKeywordSearchIntentFetchAction",
"DataKeywordSuggestionsListAction",
"DataPingAsyncAction",
"DataPingAction",
"DataSiteAnchorTextListAction",
"DataSiteLinkFilterAnchorTextAction",
"DataSiteLinkFilterDomainAction",
"DataSiteLinkIntersectFetchAction",
"DataSiteLinkListAction",
"DataSiteLinkStatusFetchMultipleAction",
"DataSiteLinkStatusFetchAction",
"DataSiteLinkingDomainFilterRecentlyGainedAction",
"DataSiteLinkingDomainFilterRecentlyLostAction",
"DataSiteLinkingDomainListAction",
"DataSiteMetricsBrandAuthorityFetchAction",
"DataSiteMetricsDistributionsFetchAction",
"DataSiteMetricsFetchMultipleAction",
"DataSiteMetricsFetchAction",
"DataSiteMetricsHistoriesFetchAction",
"DataSiteRankingKeywordCountAction",
"DataSiteRankingKeywordListAction",
"DataSiteRedirectFetchAction",
"DataSiteTopPageListAction",
"DataTestQuotaAsyncAction",
"DataTestQuotaAction",
"MozbarPageDetailFetchAction",
"MozbarPageKeywordReportFetchAction",
"MozbarPageOverviewFetchMultipleAction",
"MozbarPageRankingKeywordListAction",
"QuotaLookupAction",
"QuotaUsageReportAction",
"QuotaUsageTotalAction",
"MetadataIndexFetchAction",
"LocalAccountCreateAction",
"LocalAccountListAction",
"LocalAccountLookupAction",
"LocalGroupCreateAction",
"LocalGroupFilterAccountAction",
"LocalGroupListAction",
"LocalGroupLocationAddAction",
"LocalGroupLocationListAction",
"LocalGroupLocationRemoveAction",
"LocalGroupLookupAction",
"LocalLocationCancelAction",
"LocalLocationCategoryListAction",
"LocalLocationCloseAction",
"LocalLocationCreateAction",
"LocalLocationFilterAccountAction",
"LocalLocationFilterStatusAction",
"LocalLocationInsightGbpImpressionHistoryFetchAction",
"LocalLocationInsightGbpImpressionTotalFetchAction",
"LocalLocationInsightGbpLeadHistoryFetchAction",
"LocalLocationLevelListAction",
"LocalLocationLevelUpdateAction",
"LocalLocationListAction",
"LocalLocationListingListAction",
"LocalLocationLocalGridHistoryFetchAction",
"LocalLocationLocalGridKeywordListAction",
"LocalLocationLookupAction",
"LocalLocationNetworkFieldIssueListAction",
"LocalLocationNetworkFieldStatusListAction",
"LocalLocationNetworkListAction",
"LocalLocationNetworkStatusListAction",
"LocalLocationRankingHistoryFetchAction",
"LocalLocationUpdateAction"
],
"public_actions": [
"DataGlobalTopDomainListAction",
"DataGlobalTopPageListAction",
"DataKeywordMetricsDifficultyFetchAction",
"DataKeywordMetricsFetchAction",
"DataKeywordMetricsOpportunityFetchAction",
"DataKeywordMetricsPriorityFetchAction",
"DataKeywordMetricsVolumeFetchAction",
"DataKeywordSearchIntentFetchAction",
"DataKeywordSuggestionsListAction",
"DataSiteAnchorTextListAction",
"DataSiteLinkFilterAnchorTextAction",
"DataSiteLinkFilterDomainAction",
"DataSiteLinkIntersectFetchAction",
"DataSiteLinkListAction",
"DataSiteLinkStatusFetchMultipleAction",
"DataSiteLinkStatusFetchAction",
"DataSiteLinkingDomainFilterRecentlyGainedAction",
"DataSiteLinkingDomainFilterRecentlyLostAction",
"DataSiteLinkingDomainListAction",
"DataSiteMetricsBrandAuthorityFetchAction",
"DataSiteMetricsDistributionsFetchAction",
"DataSiteMetricsFetchMultipleAction",
"DataSiteMetricsFetchAction",
"DataSiteMetricsHistoriesFetchAction",
"DataSiteRankingKeywordCountAction",
"DataSiteRankingKeywordListAction",
"DataSiteRedirectFetchAction",
"DataSiteTopPageListAction",
"QuotaLookupAction",
"MetadataIndexFetchAction",
"LocalAccountCreateAction",
"LocalAccountListAction",
"LocalAccountLookupAction",
"LocalGroupCreateAction",
"LocalGroupFilterAccountAction",
"LocalGroupListAction",
"LocalGroupLocationAddAction",
"LocalGroupLocationListAction",
"LocalGroupLocationRemoveAction",
"LocalGroupLookupAction",
"LocalLocationCancelAction",
"LocalLocationCategoryListAction",
"LocalLocationCloseAction",
"LocalLocationCreateAction",
"LocalLocationFilterAccountAction",
"LocalLocationFilterStatusAction",
"LocalLocationInsightGbpImpressionHistoryFetchAction",
"LocalLocationInsightGbpImpressionTotalFetchAction",
"LocalLocationInsightGbpLeadHistoryFetchAction",
"LocalLocationLevelListAction",
"LocalLocationLevelUpdateAction",
"LocalLocationListAction",
"LocalLocationListingListAction",
"LocalLocationLocalGridHistoryFetchAction",
"LocalLocationLocalGridKeywordListAction",
"LocalLocationLookupAction",
"LocalLocationNetworkFieldIssueListAction",
"LocalLocationNetworkFieldStatusListAction",
"LocalLocationNetworkListAction",
"LocalLocationNetworkStatusListAction",
"LocalLocationRankingHistoryFetchAction",
"LocalLocationUpdateAction"
],
"action_namespaces": {
"data": {
"_title": "Data",
"global": "Global",
"keyword": {
"_title": "Keyword",
"metrics": "Metrics"
},
"site": {
"_title": "Site",
"link": "Link",
"linking-domain": "Linking Domain",
"metrics": "Metrics"
}
},
"mozbar": {
"_title": "Mozbar"
},
"quota": "Quota",
"metadata": "Metadata",
"local": {
"_title": "Local",
"account": "Account",
"group": {
"_title": "Group",
"location": "Location"
},
"location": {
"_title": "Location",
"filter": "Filter",
"insight": "Google Insights",
"local": {
"_title": "Local Grid"
},
"network": {
"_title": "Network"
},
"ranking": "Ranking"
}
},
"async": "Async"
},
"definitions": {
"AsyncCallLookupActionPayload": {
"type": "object",
"properties": {
"auth": {
"$ref": "#/definitions/ValidAuthPayload"
},
"data": {
"$ref": "#/definitions/AsyncCallLookupActionData"
}
},
"required": [
"auth",
"data"
],
"additionalProperties": false
},
"ValidAuthPayload": {
"anyOf": [
{
"$ref": "#/definitions/SessionIdAuthPayload"
},
{
"$ref": "#/definitions/TokenIdAuthPayload"
},
{
"$ref": "#/definitions/ApiKeyAuthPayload"
}
],
"description": "ValidAuth is the most basic authenticated request expectation, and allows all levels higher than itself, but can be created from either a session or api key"
},
"SessionIdAuthPayload": {
"type": "object",
"properties": {
"session_id": {
"type": "string",
"description": "A session_id string to authenticate as a logged in user"
}
},
"required": [
"session_id"
],
"additionalProperties": false,
"description": "SessionIdAuth is simply a representation of a passed session_id parameter. This is meant to be used to make types (e.g. see other auths below), but can be used to restrict a type of auth for downstream services e.g. Extract<ValidAuth, SessionIdAuth> to only have session_id based auth accepted in the call"
},
"TokenIdAuthPayload": {
"type": "object",
"properties": {
"token_id": {
"type": "string",
"description": "A token_id string to authenticate as a logged in user"
}
},
"required": [
"token_id"
],
"additionalProperties": false,
"description": "TokenIdAuth is simply a representation of a passed token_id parameter. This is meant to be used to make types (e.g. see other auths below), but can be used to restrict a type of auth for downstream services e.g. Extract<ValidAuth, TokenIdAuth> to only have token_id based auth accepted in the call"
},
"ApiKeyAuthPayload": {
"type": "object",
"properties": {
"apikey_id": {
"type": "string",
"description": "An API key to use for authenticating a request"
}
},
"required": [
"apikey_id"
],
"additionalProperties": false,
"description": "ApiKeyAuth is simply a representation of a passed apikey_id parameter. This is meant to be used to make types (e.g. see other auths below), but can be used to restrict a type of auth for downstream services e.g. Extract<ValidAuth, ApiKeyAuth> to only have apikey_id based auth accepted in the call"
},
"AsyncCallLookupActionData": {
"type": "object",
"properties": {
"id": {
"$ref": "#/definitions/AsyncCallLookupActionDataId"
}
},
"required": [
"id"
],
"additionalProperties": false,
"examples": [
{
"id": "c3397e5a-ce31-42fb-8607-ed40487aea18"
}
]
},
"AsyncCallLookupActionDataId": {
"type": "string",
"description": "The ID of the `async_call` to lookup."
},
"AsyncCallLookupActionResult": {
"type": "object",
"properties": {
"async_call": {
"$ref": "#/definitions/AsyncCallObject"
}
},
"required": [
"async_call"
],
"additionalProperties": false,
"examples": [
{
"async_call": {
"id": "c3397e5a-ce31-42fb-8607-ed40487aea18",
"action": "data.ping.async",
"status": "pending",
"ttl": 30,
"result": null,
"error": null
}
},
{
"async_call": {
"id": "3d446f53-aaba-4bdb-9d47-b1d0754bfe90",
"action": "data.ping.async",
"status": "complete",
"ttl": 10,
"result": {
"message": "Hello, world."
},
"error": null
}
},
{
"async_call": {
"id": "18e5de71-af54-490d-8eb1-0596a4f68121",
"action": "data.ping.async",
"status": "complete",
"ttl": 10,
"result": null,
"error": {
"message": "An unexpected error occurred.",
"code": -32602,
"status": 500,
"data": {
"explanation": null,
"issue": null,
"key": null,
"value": null
}
}
}
}
]
},
"AsyncCallObject": {
"type": "object",
"properties": {
"id": {
"$ref": "#/definitions/AsyncCallObjectId"
},
"action": {
"$ref": "#/definitions/AsyncCallObjectActionName"
},
"status": {
"$ref": "#/definitions/AsyncCallObjectStatus"
},
"ttl": {
"$ref": "#/definitions/AsyncCallObjectTtl"
},
"result": {
"anyOf": [
{
"$ref": "#/definitions/JsonrpcResponseResult"
},
{
"type": "null"
}
]
},
"error": {
"anyOf": [
{
"$ref": "#/definitions/JsonrpcResponseError"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"action",
"status",
"ttl",
"result",
"error"
],
"additionalProperties": false,
"description": "Represents an asynchronous request. The `result` and `error` properties will be null if the call is still in progress. Once the status is `\"complete\"`, only one of `result` or `error` will be non-null depending on whether the request was successful."
},
"AsyncCallObjectId": {
"type": "string",
"description": "The ID of an async call. Use this to retrieve the call with `async.call.lookup`."
},
"AsyncCallObjectActionName": {
"type": "string",
"description": "The action being tracked by an async call."
},
"AsyncCallObjectStatus": {
"type": "string",
"enum": [
"initializing",
"pending",
"processing",
"complete"
],
"description": "The status of an async call. Expect either a `result` or `error` to be present once this is `complete`."
},
"AsyncCallObjectTtl": {
"type": "number",
"description": "The time to live for the call (in seconds)."
},
"JsonrpcResponseResult": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "object"
},
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object"
}
}
]
},
"description": "The result of a successful JSON-RPC request."
},
"JsonrpcResponseError": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "The error message."
},
"code": {
"type": "number",
"description": "Unique code tied to the type of error."
},
"status": {
"type": "number",
"description": "The relevant HTTP status code for the type of error."
},
"data": {
"$ref": "#/definitions/JsonrpcResponseErrorData"
}
},
"required": [
"message",
"code",
"status",
"data"
],
"additionalProperties": false,
"description": "A JSON-RPC error response."
},
"JsonrpcResponseErrorData": {
"type": "object",
"properties": {
"explanation": {
"type": "string",
"description": "A human-readable explanation of the error."
},
"issue": {
"type": "string",
"description": "A machine-readable string to represent why the error is being returned."
},
"key": {
"type": "string",
"description": "The path to the relevant input that caused the error."
},
"value": {
"description": "The value of the relevant input that triggered the error.",
"type": "object"
}
},
"additionalProperties": false,
"description": "Additional data to help describe the error."
},
"AsyncCallLookupActionQuota": {
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"type": "string",
"const": "free"
}
},
"required": [
"type"
],
"description": "Does not require any quota."
},
"AsyncCallLookupAction": {
"type": "object",
"properties": {
"payload": {
"$ref": "#/definitions/AsyncCallLookupActionPayload"
},
"result": {
"$ref": "#/definitions/AsyncCallLookupActionResult"
},
"quota": {
"$ref": "#/definitions/AsyncCallLookupActionQuota"
}
},
"required": [
"payload",
"result",
"quota"
],
"additionalProperties": false,
"description": "Fetch an `async_call` by ID to retrieve the result or error. If the call has not completed yet, both `result` and `error` will be null. Once the `status` of the call is `complete`, only one of `result` or `error` will be non-null.\n\nUpon retrieving an `async_call` that has been completed, the TTL will be updated to 10 seconds.\n\nWhile every action has a different processing time (and the documentation for each will suggest a polling interval), it is recommended to not poll the status of a call more frequently than once every 5 seconds.",
"default": "Fetch Async Call"
},
"BetaDataSiteMetricsBrandAuthorityFetchActionPayload": {
"type": "object",
"properties": {
"auth": {
"$ref": "#/definitions/ValidAuthPayload"
},
"data": {
"$ref": "#/definitions/BetaDataSiteMetricsBrandAuthorityFetchActionData"
},
"guid": {
"type": "string"
}
},
"required": [
"auth",
"data",
"guid"
],
"additionalProperties": false
},
"BetaDataSiteMetricsBrandAuthorityFetchActionData": {
"type": "object",
"properties": {
"target_query": {
"type": "object",
"properties": {
"query": {
"$ref": "#/definitions/DataTargetQueryInputQuery"
},
"scope": {
"$ref": "#/definitions/BrandAuthorityDataTargetQueryInputScope"
},
"locale": {
"$ref": "#/definitions/BrandAuthorityDataTargetQueryInputLocale"
}
},
"required": [
"locale",
"query",
"scope"
],
"additionalProperties": false
}
},
"required": [
"target_query"
],
"additionalProperties": false,
"examples": [
{
"target_query": {
"query": "https://moz.com",
"scope": "domain",
"locale": "en-US"
}
},
{
"target_query": {
"query": "https://en.wikipedia.org/wiki/Fundamental_analysis",
"scope": "domain",
"locale": "en-US"
}
}
]
},
"DataTargetQueryInputQuery": {
"type": "string",
"description": "A URL to query for."
},
"BrandAuthorityDataTargetQueryInputScope": {
"type": "string",
"const": "domain",
"description": "Brand Authority only supports the \"domain\" scope."
},
"BrandAuthorityDataTargetQueryInputLocale": {
"type": "string",
"const": "en-US",
"description": "Brand Authority currently only supports the \"en-US\" locale."
},
"BetaDataSiteMetricsBrandAuthorityFetchActionResult": {
"type": "object",
"properties": {
"metrics": {
"type": "object",
"properties": {
"brand_authority_score": {
"$ref": "#/definitions/BetaDataSiteMetricsBrandAuthorityFetchActionResultBrandAuthorityScore"
}
},
"required": [
"brand_authority_score"
],
"additionalProperties": false
},
"target_query": {
"$ref": "#/definitions/DataTargetQueryObject"
}
},
"required": [
"metrics",
"target_query"
],
"additionalProperties": false,
"examples": [
{
"metrics": {
"brand_authority_score": 57
},
"target_query": {
"query": "https://moz.com",
"scope": "domain",
"locale": "en-US",
"original_target_query": {
"query": "https://moz.com/blog",
"scope": "domain",
"locale": "en-US"
},
"suggestion": null
}
}
]
},
"BetaDataSiteMetricsBrandAuthorityFetchActionResultBrandAuthorityScore": {
"type": "number",
"description": "The Brand Authority score - a value ranging from 1 (worst) to 100 (best)."
},
"DataTargetQueryObject": {
"type": "object",
"properties": {
"query": {
"$ref": "#/definitions/DataTargetQueryInputQuery"
},
"scope": {
"$ref": "#/definitions/DataTargetQueryInputScopes"
},
"locale": {
"$ref": "#/definitions/DataTargetQueryInputLocales"
},
"original_target_query": {
"$ref": "#/definitions/DataTargetQueryObjectOriginalTargetQuery"
},
"suggestion": {
"anyOf": [
{
"$ref": "#/definitions/TargetSuggestionObject"
},
{
"type": "null"
}
]
}
},
"required": [
"locale",
"original_target_query",
"query",
"scope",
"suggestion"
],
"additionalProperties": false,
"description": "Represents a parsed target query."
},
"DataTargetQueryInputScopes": {
"type": "string",
"enum": [
"domain",
"subdomain",
"subfolder",
"url"
],
"description": "The scope to parse the query with. Providing a less detailed scope than the provided URL will alter the input. e.g. `moz.com/foo/bar` with a scope of `domain` will ultimately resolve to `moz.com`"
},
"DataTargetQueryInputLocales": {
"type": "string",
"enum": [
"en-US",
"en-GB",
"en-CA",
"en-AU"
],
"description": "The locale to search in. Only a limited subset of locales are supported for target queries - see the acceptable values below."
},
"DataTargetQueryObjectOriginalTargetQuery": {
"type": "object",
"additionalProperties": false,
"properties": {
"query": {
"$ref": "#/definitions/DataTargetQueryInputQuery"
},
"scope": {
"$ref": "#/definitions/DataTargetQueryInputScopes"
},
"locale": {
"$ref": "#/definitions/DataTargetQueryInputLocales"
}
},
"required": [
"locale",
"query",
"scope"
],
"description": "A TargetQuery provides a target URL along with several options to specify how the query is run. This is returned in the response in case the user-provided TargetQuery is modified during parsing for the data retrieval process."
},
"TargetSuggestionObject": {
"type": "object",
"properties": {
"query": {
"$ref": "#/definitions/TargetSuggestionObjectQuery"
},
"scope": {
"$ref": "#/definitions/TargetSuggestionObjectScopes"
},
"locale": {
"$ref": "#/definitions/TargetSuggestionObjectLocales"
},
"explanation": {
"$ref": "#/definitions/TargetSuggestionObjectExplanation"
},
"issue": {
"$ref": "#/definitions/TargetSuggestionObjectIssue"
}
},
"required": [
"query",
"scope",
"locale",
"explanation",
"issue"
],
"additionalProperties": false,
"description": "Represents a suggestion to the user for a target input in case it is determined that a better option may exist (e.g. due to redirects)."
},
"TargetSuggestionObjectQuery": {
"type": "string",
"description": "A suggested URL to query for."
},
"TargetSuggestionObjectScopes": {
"type": "string",
"enum": [
"domain",
"subdomain",
"subfolder",
"url"
],
"description": "The scope to parse the query with. Providing a less detailed scope than the provided URL will alter the input. e.g. `moz.com/foo/bar` with a scope of `domain` will ultimately resolve to `moz.com`"
},
"TargetSuggestionObjectLocales": {
"type": "string",
"enum": [
"en-US",
"en-GB",
"en-CA",
"en-AU"
],
"description": "The locale to search in."
},
"TargetSuggestionObjectExplanation": {
"type": "string",
"description": "A human readable explanation for why the suggestion is being made. e.g. \"The provided URL redirects to another page.\""
},
"TargetSuggestionObjectIssue": {
"type": "string",
"description": "A machine readable string to represent why the suggestion is being made. e.g. \"redirect\""
},
"BetaDataSiteMetricsBrandAuthorityFetchActionQuota": {
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "per_call"
},
"path": {
"type": "string",
"const": "api.limits.beta.rows"
},
"per_call_multiplier": {
"type": "number",
"const": 1
}
},
"required": [
"path",
"per_call_multiplier",
"type"
],
"additionalProperties": false,
"description": "Uses one row per call."
},
"BetaDataSiteMetricsBrandAuthorityFetchAction": {
"type": "object",
"properties": {
"payload": {
"$ref": "#/definitions/BetaDataSiteMetricsBrandAuthorityFetchActionPayload"
},
"result": {
"$ref": "#/definitions/BetaDataSiteMetricsBrandAuthorityFetchActionResult"
},
"quota": {
"$ref": "#/definitions/BetaDataSiteMetricsBrandAuthorityFetchActionQuota"
}
},
"required": [
"payload",
"result",
"quota"
],
"additionalProperties": false,
"description": "This endpoint returns a Brand Authority\u2122 score for the provided target. Use this metric to understand the strength of your website\u2019s brand, benchmark against competitors, and more.",
"default": "Fetch Brand Authority"
},
"DataGlobalTopDomainListActionPayload": {
"type": "object",
"properties": {
"auth": {
"$ref": "#/definitions/ValidAuthPayload"
},
"data": {
"$ref": "#/definitions/DataGlobalTopDomainListActionData"
},
"guid": {
"type": "string"
}
},
"required": [
"auth",
"data",
"guid"
],
"additionalProperties": false
},
"DataGlobalTopDomainListActionData": {
"type": "object",
"properties": {
"page": {
"$ref": "#/definitions/DataPageInput"
}
},
"required": [
"page"
],
"additionalProperties": false,
"examples": [
{},
{
"page": {
"limit": 50,
"n": 1
}
}
]
},
"DataPageInput": {
"type": "object",
"properties": {
"n": {
"$ref": "#/definitions/DataPageInputN"
},
"limit": {
"$ref": "#/definitions/DataPageInputLimit"
}
},
"additionalProperties": false,
"description": "Control how much data is returned by providing a specific page number (n) and limit to the number of results in a given page."
},
"DataPageInputN": {
"type": "number",
"description": "The page number to load.",
"default": 0
},
"DataPageInputLimit": {
"type": "number",
"description": "The number of results per page.",
"default": 50
},
"DataGlobalTopDomainListActionResult": {
"type": "object",
"properties": {
"page": {
"$ref": "#/definitions/DataPageObject"
},
"top_domains": {
"type": "array",
"items": {
"$ref": "#/definitions/DataSiteMetricsObject"
}
}
},
"required": [
"page",
"top_domains"
],
"additionalProperties": false,
"examples": [
{
"page": {
"limit": 1,
"n": 0
},
"top_domains": [
{
"page": "www.blogger.com/",
"subdomain": "www.blogger.com",
"root_domain": "www.blogger.com",
"title": "",
"last_crawled": "2025-04-07",
"http_code": 302,
"pages_to_page": 1565869660,
"nofollow_pages_to_page": 143563956,
"redirect_pages_to_page": 19919,
"external_pages_to_page": 1565869644,
"external_nofollow_pages_to_page": 143563956,
"external_redirect_pages_to_page": 19919,
"deleted_pages_to_page": 59175346,
"root_domains_to_page": 23761419,
"indirect_root_domains_to_page": 254134,
"deleted_root_domains_to_page": 286480,
"nofollow_root_domains_to_page": 3532975,
"pages_to_subdomain": 27664371074,
"nofollow_pages_to_subdomain": 6521309262,
"redirect_pages_to_subdomain": 1710576,
"external_pages_to_subdomain": 27664071600,
"external_nofollow_pages_to_subdomain": 6521309225,
"external_redirect_pages_to_subdomain": 1651010,
"deleted_pages_to_subdomain": 2948413789,
"root_domains_to_subdomain": 31698558,
"deleted_root_domains_to_subdomain": 370994,
"nofollow_root_domains_to_subdomain": 595361,
"pages_to_root_domain": 27664372095,
"nofollow_pages_to_root_domain": 6521309275,
"redirect_pages_to_root_domain": 1710582,
"external_pages_to_root_domain": 27664072621,
"external_indirect_pages_to_root_domain": 124960569,
"external_nofollow_pages_to_root_domain": 6521309238,
"external_redirect_pages_to_root_domain": 1651016,
"deleted_pages_to_root_domain": 2948414431,
"root_domains_to_root_domain": 31698567,
"indirect_root_domains_to_root_domain": 59294,
"deleted_root_domains_to_root_domain": 370995,
"nofollow_root_domains_to_root_domain": 595361,
"page_authority": 100,
"domain_authority": 100,
"link_propensity": 0.0001562269754,
"spam_score": -1,
"root_domains_from_page": 0,
"nofollow_root_domains_from_page": 0,
"pages_from_page": 0,
"nofollow_pages_from_page": 0,
"root_domains_from_root_domain": 7826,
"nofollow_root_domains_from_root_domain": 4704,
"pages_from_root_domain": 1627126,
"nofollow_pages_from_root_domain": 4937,
"pages_crawled_from_root_domain": 50093782
}
]
}
]
},
"DataPageObject": {
"type": "object",
"properties": {
"n": {
"$ref": "#/definitions/DataPageObjectN"
},
"limit": {
"$ref": "#/definitions/DataPageObjectLimit"
}
},
"additionalProperties": false,
"description": "Control how much data is returned by providing a specific page number (n) and limit to the number of results in a given page."
},
"DataPageObjectN": {
"type": "number",
"description": "The page number to load.",
"default": 0
},
"DataPageObjectLimit": {
"type": "number",
"description": "The number of results per page.",
"default": 50
},
"DataSiteMetricsObject": {
"type": "object",
"properties": {
"page": {
"$ref": "#/definitions/Page"
},
"subdomain": {
"$ref": "#/definitions/Subdomain"
},
"root_domain": {
"$ref": "#/definitions/RootDomain"
},
"title": {
"$ref": "#/definitions/Title"
},
"last_crawled": {
"$ref": "#/definitions/LastCrawled"
},
"http_code": {
"$ref": "#/definitions/HttpCode"
},
"pages_to_page": {
"$ref": "#/definitions/PagesToPage"
},
"nofollow_pages_to_page": {
"$ref": "#/definitions/NofollowPagesToPage"
},
"redirect_pages_to_page": {
"$ref": "#/definitions/RedirectPagesToPage"
},
"external_pages_to_page": {
"$ref": "#/definitions/ExternalPagesToPage"
},
"external_nofollow_pages_to_page": {
"$ref": "#/definitions/ExternalNofollowPagesToPage"
},
"external_redirect_pages_to_page": {
"$ref": "#/definitions/ExternalRedirectPagesToPage"
},
"deleted_pages_to_page": {
"$ref": "#/definitions/DeletedPagesToPage"
},
"root_domains_to_page": {
"$ref": "#/definitions/RootDomainsToPage"
},
"indirect_root_domains_to_page": {
"$ref": "#/definitions/IndirectRootDomainsToPage"
},
"deleted_roo
# --- truncated at 32 KB (584 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/moz/refs/heads/main/json-schema/moz-api-schema.json
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/moz-api"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.