WUX API GraqhQL Reference
This is Ryte's WUX API GraphQL reference. It includes the complete set of GraphQL types, queries, mutations, and their parameters.
Terms of Service
API Endpoints
# Testing:
https://wux-api.ryte-test.com/graphql
# Production:
https://wux-api.ryte.com/graphql
Headers
Authorization: Bearer <YOUR_TOKEN_HERE>
Credentials
This API is currently not available for direct use by Ryte customers
Required Validation
An accessible projectHash is required in request's body, e.g {variables: {projectHash: PROJECT_HASH}}
Queries
allIdFieldsByIssueType
Response
Returns [String!]!
Arguments
Name | Description |
---|---|
issueType - IssueType
|
The Issue Type to get id fields |
Example
Query
query AllIdFieldsByIssueType($issueType: IssueType) {
allIdFieldsByIssueType(issueType: $issueType)
}
Variables
{"issueType": "broken_images"}
Response
{
"data": {
"allIdFieldsByIssueType": ["xyz789"]
}
}
allIgnoreRulesByProject
Description
Retrieve all the rules to ignore issue for a project
Response
Returns [IgnoreRule!]!
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
Example
Query
query AllIgnoreRulesByProject($projectHash: String!) {
allIgnoreRulesByProject(projectHash: $projectHash) {
ruleId
filterJson
createdAt
createdBy
createdByName
updatedAt
updatedBy
updatedByName
}
}
Variables
{"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040"}
Response
{
"data": {
"allIgnoreRulesByProject": [
{
"ruleId": "6b2ba948-39a5-48d4-b8a7-2f07b75a760b",
"filterJson": {
"field": "status",
"operator": "equal",
"value": "unresolved"
},
"createdAt": 1702928220,
"createdBy": "abcdefghijklmnopqrstuz0123456789",
"createdByName": "Golden Silver",
"updatedAt": 1702928220,
"updatedBy": "abcdefghijklmnopqrstuz0123456789",
"updatedByName": "Golden Silver 2"
}
]
}
}
gscConnectionInfo
Description
Retrieve Google Search Console (GSC) connection Information for a project
Response
Returns a GscConnectionInfo!
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
Example
Query
query GscConnectionInfo($projectHash: String!) {
gscConnectionInfo(projectHash: $projectHash) {
projectHash
connectionStatus
}
}
Variables
{"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040"}
Response
{
"data": {
"gscConnectionInfo": {
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"connectionStatus": "CONNECTED"
}
}
}
gscImportingInfo
Description
Retrieve Google Search Console (GSC) import information for a project
Response
Returns a GscImportingInfo!
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
Example
Query
query GscImportingInfo($projectHash: String!) {
gscImportingInfo(projectHash: $projectHash) {
virgin {
status
progressBarData {
...GscVirginProgressBarFragment
}
}
extraImport {
status
completedPercent
dateImportFinish
}
daily {
status
errorCode
errorMessage
}
}
}
Variables
{"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040"}
Response
{
"data": {
"gscImportingInfo": {
"virgin": GscImportingInfoVirgin,
"extraImport": GscImportingInfoExtraImport,
"daily": GscImportingInfoDaily
}
}
}
gscSetting
Description
Retrieve Google Search Console (GSC) related settings for a project
Response
Returns a GscSetting
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
Example
Query
query GscSetting($projectHash: String!) {
gscSetting(projectHash: $projectHash) {
projectHash
siteUrl
globalFilter {
country {
...GlobalFilterFilterByFragment
}
device {
...GlobalFilterFilterByFragment
}
}
}
}
Variables
{"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040"}
Response
{
"data": {
"gscSetting": {
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"siteUrl": "sc-domain:ryte.com",
"globalFilter": GlobalFilterItem
}
}
}
issueByTypeDelta
Response
Returns [IssueByTypeDelta!]!
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
filter - IssueLogicalFilter
|
Logical filter to filter issues |
currentTimestamp - AWSTimestamp!
|
The current timestamp for which to query data |
previousTimestamp - AWSTimestamp!
|
The previous timestamp for which to query data |
Example
Query
query IssueByTypeDelta(
$projectHash: String!,
$filter: IssueLogicalFilter,
$currentTimestamp: AWSTimestamp!,
$previousTimestamp: AWSTimestamp!
) {
issueByTypeDelta(
projectHash: $projectHash,
filter: $filter,
currentTimestamp: $currentTimestamp,
previousTimestamp: $previousTimestamp
) {
issueType
totalImpact
count
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"filter": IssueLogicalFilter,
"currentTimestamp": 1702928220,
"previousTimestamp": 1702928220
}
Response
{
"data": {
"issueByTypeDelta": [
{"issueType": "broken_images", "totalImpact": 1.78, "count": 671}
]
}
}
issueGroups
Description
Retrieve grouped Issues for a project
Response
Returns [IssueGroup!]!
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
groupBy - IssueGroupBy!
|
The attribute by which to group the Issues |
filter - IssueLogicalFilter
|
Logical filter to filter issues |
timeTravelTo - AWSTimestamp
|
The timestamp for which to query historical data, if not provided, the latest data is used |
Example
Query
query IssueGroups(
$projectHash: String!,
$groupBy: IssueGroupBy!,
$filter: IssueLogicalFilter,
$timeTravelTo: AWSTimestamp
) {
issueGroups(
projectHash: $projectHash,
groupBy: $groupBy,
filter: $filter,
timeTravelTo: $timeTravelTo
) {
issueType
totalImpact
count
issuePriority
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"groupBy": "issueType",
"filter": IssueLogicalFilter,
"timeTravelTo": 1702928220
}
Response
{
"data": {
"issueGroups": [
{
"issueType": "broken_images",
"totalImpact": 1.78,
"count": 671,
"issuePriority": 4
}
]
}
}
issueStatistics
Description
Retrieve historic Issue Statistics and count of unresolved Issues, ignored Issues for a project
Response
Returns [IssueStatistic!]!
Arguments
Name | Description |
---|---|
projectHash - String!
|
Required. The identifier of the Ryte project |
filter - IssueLogicalFilter
|
Logical filter to filter issue statistics |
startTimestamp - AWSTimestamp
|
The start time to query data based on ts field. If not provided, the default is no start time |
endTimestamp - AWSTimestamp
|
The end time to query data based on ts field. If not provided, the default is the current time |
limit - Int
|
Limit the number of results returned. If not provided, there is no limit |
Example
Query
query IssueStatistics(
$projectHash: String!,
$filter: IssueLogicalFilter,
$startTimestamp: AWSTimestamp,
$endTimestamp: AWSTimestamp,
$limit: Int
) {
issueStatistics(
projectHash: $projectHash,
filter: $filter,
startTimestamp: $startTimestamp,
endTimestamp: $endTimestamp,
limit: $limit
) {
unresolvedIssues
unresolvedIgnoredIssues
totalImpact
ignoredImpact
ts
issueType
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"filter": IssueLogicalFilter,
"startTimestamp": 1702928220,
"endTimestamp": 1706316820,
"limit": 30
}
Response
{
"data": {
"issueStatistics": [
{
"unresolvedIssues": 671,
"unresolvedIgnoredIssues": 25,
"totalImpact": 9.82,
"ignoredImpact": 0.69,
"ts": 1702928220,
"issueType": "broken_images"
}
]
}
}
issues
Description
Retrieve individual Issues for a project (Version 2)
Response
Returns an Issues!
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
filter - IssueLogicalFilter
|
Logical filter to filter issues |
timeTravelTo - AWSTimestamp
|
The timestamp for which to query historical data, if not provided, the latest data is used |
limit - Int
|
The total number of Issues to return, if not provided the default limit is 30 |
pageSize - Int
|
The number of Issues per page to return, if not provided the default page size is 10, max value is 1000 |
nextCursor - String
|
The next cursor to retrieve the next page of Issues, if provided then filter, timeTravelTo and limit are ignored |
Example
Query
query Issues(
$projectHash: String!,
$filter: IssueLogicalFilter,
$timeTravelTo: AWSTimestamp,
$limit: Int,
$pageSize: Int,
$nextCursor: String
) {
issues(
projectHash: $projectHash,
filter: $filter,
timeTravelTo: $timeTravelTo,
limit: $limit,
pageSize: $pageSize,
nextCursor: $nextCursor
) {
totalCount
issues {
issueId
projectHash
type
firstDetection
recentDetection
resolvedAt
affectedPage {
...PageTypeFragment
}
impact
status
ignored
context
}
nextCursor
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"filter": IssueLogicalFilter,
"timeTravelTo": 1702928220,
"limit": 30,
"pageSize": 10,
"nextCursor": "eyJ0eXBlIjoiZmlyc3RDb3"
}
Response
{
"data": {
"issues": {
"totalCount": 987,
"issues": [Issue],
"nextCursor": "xyz789"
}
}
}
projectStatus
Description
Retrieve information for a project whether Issue data is currently being processed
Response
Returns a ProjectStatus!
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
Example
Query
query ProjectStatus($projectHash: String!) {
projectStatus(projectHash: $projectHash) {
processingStatus
}
}
Variables
{"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040"}
Response
{"data": {"projectStatus": {"processingStatus": "processing"}}}
wuxStatistics
Description
Retrieve historic WUX Statistics and count of unresolved Issues, ignored Issues for a project
Response
Returns [WuxStatistics!]!
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
periodStart - AWSTimestamp
|
The first timestamp for which to query data |
periodEnd - AWSTimestamp
|
The last timestamp for which to query data |
Example
Query
query WuxStatistics(
$projectHash: String!,
$periodStart: AWSTimestamp,
$periodEnd: AWSTimestamp
) {
wuxStatistics(
projectHash: $projectHash,
periodStart: $periodStart,
periodEnd: $periodEnd
) {
globalWuxScore
ts
unresolvedIssues
ignoredImpact
unresolvedIgnoredIssues
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"periodStart": 1702928220,
"periodEnd": 1706316820
}
Response
{
"data": {
"wuxStatistics": [
{
"globalWuxScore": 79.82,
"ts": 1702928220,
"unresolvedIssues": 671,
"ignoredImpact": 0.69,
"unresolvedIgnoredIssues": 25
}
]
}
}
Mutations
createGscSetting
Description
Create Google Search Console (GSC) related settings for a project
Response
Returns a GscSetting
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
siteUrl - String!
|
The identifier of the GSC property |
globalFilter - GlobalFilterItemInput
|
A definition of filters which restrict the imported data |
Example
Query
mutation CreateGscSetting(
$projectHash: String!,
$siteUrl: String!,
$globalFilter: GlobalFilterItemInput
) {
createGscSetting(
projectHash: $projectHash,
siteUrl: $siteUrl,
globalFilter: $globalFilter
) {
projectHash
siteUrl
globalFilter {
country {
...GlobalFilterFilterByFragment
}
device {
...GlobalFilterFilterByFragment
}
}
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"siteUrl": "sc-domain:ryte.com",
"globalFilter": GlobalFilterItemInput
}
Response
{
"data": {
"createGscSetting": {
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"siteUrl": "sc-domain:ryte.com",
"globalFilter": GlobalFilterItem
}
}
}
createIgnoreRule
Response
Returns a ResponseCreateIgnoreRule
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
filter - IgnoredIssueFilter!
|
A condition to filter issues to ignore |
Example
Query
mutation CreateIgnoreRule(
$projectHash: String!,
$filter: IgnoredIssueFilter!
) {
createIgnoreRule(
projectHash: $projectHash,
filter: $filter
) {
statusCode
ruleId
errorMessage
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"filter": "[{field: \"issueType\", operator: \"equal\", value: \"broken_images\"}]"
}
Response
{
"data": {
"createIgnoreRule": {
"statusCode": 201,
"ruleId": "6b2ba948-39a5-48d4-b8a7-2f07b75a760b",
"errorMessage": "Error message"
}
}
}
deleteGscSetting
Description
Delete Google Search Console (GSC) related settings for a project
Response
Returns a GscSetting
Arguments
Name | Description |
---|---|
projectHash - String!
|
Project hash of Google Search Console (GSC) related settings for a project that should be deleted |
Example
Query
mutation DeleteGscSetting($projectHash: String!) {
deleteGscSetting(projectHash: $projectHash) {
projectHash
siteUrl
globalFilter {
country {
...GlobalFilterFilterByFragment
}
device {
...GlobalFilterFilterByFragment
}
}
}
}
Variables
{"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040"}
Response
{
"data": {
"deleteGscSetting": {
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"siteUrl": "sc-domain:ryte.com",
"globalFilter": GlobalFilterItem
}
}
}
deleteIgnoreRule
Response
Returns a ResponseInterface
Example
Query
mutation DeleteIgnoreRule(
$projectHash: String!,
$ruleId: String!
) {
deleteIgnoreRule(
projectHash: $projectHash,
ruleId: $ruleId
) {
statusCode
errorMessage
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"ruleId": "6b2ba948-39a5-48d4-b8a7-2f07b75a760b"
}
Response
{
"data": {
"deleteIgnoreRule": {
"statusCode": 987,
"errorMessage": "xyz789"
}
}
}
ignoreIssues
Response
Returns a ResponseInterface
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
issueIds - [String!]
|
A list of issues identifier id that consumer want to ignore |
filter - IgnoredIssueFilter
|
A condition to filter issues to ignore |
Example
Query
mutation IgnoreIssues(
$projectHash: String!,
$issueIds: [String!],
$filter: IgnoredIssueFilter
) {
ignoreIssues(
projectHash: $projectHash,
issueIds: $issueIds,
filter: $filter
) {
statusCode
errorMessage
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"issueIds": "435cff5fb5288a1f8ec8002ee2e79761",
"filter": "[{field: \"issueType\", operator: \"equal\", value: \"broken_images\"}]"
}
Response
{
"data": {
"ignoreIssues": {
"statusCode": 987,
"errorMessage": "abc123"
}
}
}
unignoreIssues
Response
Returns a ResponseInterface
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
issueIds - [String!]
|
A list of issues identifier id that consumer want to remove from ignore |
filter - IgnoredIssueFilter
|
A condition to filter issues to remove from ignore |
Example
Query
mutation UnignoreIssues(
$projectHash: String!,
$issueIds: [String!],
$filter: IgnoredIssueFilter
) {
unignoreIssues(
projectHash: $projectHash,
issueIds: $issueIds,
filter: $filter
) {
statusCode
errorMessage
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"issueIds": "d1f810066a39322333015ea3933ce9e6",
"filter": "[{field: \"issueType\", operator: \"equal\", value: \"broken_images\"}]"
}
Response
{
"data": {
"unignoreIssues": {
"statusCode": 123,
"errorMessage": "abc123"
}
}
}
updateIgnoreRule
Response
Returns a ResponseInterface
Arguments
Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
ruleId - String!
|
An unique identifier (uuid) of the rule |
filter - IgnoredIssueFilter!
|
A condition to filter issues to ignore |
Example
Query
mutation UpdateIgnoreRule(
$projectHash: String!,
$ruleId: String!,
$filter: IgnoredIssueFilter!
) {
updateIgnoreRule(
projectHash: $projectHash,
ruleId: $ruleId,
filter: $filter
) {
statusCode
errorMessage
}
}
Variables
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"ruleId": "6b2ba948-39a5-48d4-b8a7-2f07b75a760b",
"filter": "[{field: \"issueType\", operator: \"equal\", value: \"broken_images\"}]"
}
Response
{
"data": {
"updateIgnoreRule": {
"statusCode": 123,
"errorMessage": "abc123"
}
}
}
Types
AWSJSON
Example
{"field": "status", "operator": "equal", "value": "unresolved"}
AWSTimestamp
Description
Unix timestamp in seconds (UTC)
Example
1702928220
Boolean
Description
The Boolean
scalar type represents true
or false
.
Example
true
FilterOperator
Description
Defines the operators that can be used for the IssueLogicalFilter
Values
Enum Value | Description |
---|---|
|
Used for equality checks |
|
Used for inequality checks |
|
Used for greater than checks |
|
Used for greater than or equal checks |
|
Used for less than checks |
|
Used for less than or equal checks |
|
Used for string contains checks |
|
Used for string not contains checks |
|
Used for string regex matching expression checks |
|
Used for string not regex matching expression checks |
|
Used for checking whether an element exists in an array. |
|
Used for checking whether an element does not exist in an array. |
Example
"equal"
Float
Description
The Float
scalar type represents signed double-precision fractional values as specified by IEEE 754.
Example
123.45
GSCConnectionStatus
Values
Enum Value | Description |
---|---|
|
The project is linked to a GSC property, the connection is 'healthy' |
|
The project is not linked to any GSC property |
|
The project is linked to a GSC property, the connection has a permission issue and currently cannot be used to import data |
|
The project is currently not linked to a GSC property but was linked before |
Example
"CONNECTED"
GSCDailyStatus
Values
Enum Value | Description |
---|---|
|
The nightly import of GSC data increments was successful |
|
There was an error during nightly import of GSC data |
Example
"HEALTHY"
GSCExtraImportStatus
Values
Enum Value | Description |
---|---|
|
The extra data (16 months data) GSC data import has finished and data is available to the platform |
|
The extra data (16 months data) GSC data import is currently running |
|
The extra data (16 months data) GSC data import is queued for import - extra data for another project using the same Google Account is currently being imported |
|
The extra data (16 months data) GSC data import is queued for import - initial (90days) data for a project within the same Google Account is being imported |
Example
"DONE"
GSCVirginStatus
Values
Enum Value | Description |
---|---|
|
The initial (90 days data) GSC data import has finished and data is available to the platform |
|
The initial (90 days data) GSC data import is currently running |
|
The initial (90 days data) GSC data import has finished data is not yet available to the platform since it is still being processed |
|
The initial (90 days data) GSC data import has just been saved and soon be operated in few minutes |
|
The initial (90 days data) GSC data import has chained to run after another project with same GSC property |
Example
"DONE"
GlobalFilterByInput
Fields
Input Field | Description |
---|---|
value - [String]!
|
A list of filter conditions for countries, specified by 3-letter-code (ISO 3166-1 alpha-3) |
operator - GlobalFilterOperatorInput!
|
Operator can be contains, notContains, is, isNot |
Example
{
"value": ["xyz789"],
"operator": "contains"
}
GlobalFilterFilterBy
GlobalFilterItem
Description
A definition of one or multiple filter conditions which restrict the imported data
Fields
Field Name | Description |
---|---|
country - GlobalFilterFilterBy
|
A definition of one or multiple filter conditions for countries, specified by 3-letter-code (ISO 3166-1 alpha-3) |
device - GlobalFilterFilterBy
|
A definition of one or multiple filter conditions for countries |
Example
{
"country": GlobalFilterFilterBy,
"device": GlobalFilterFilterBy
}
GlobalFilterItemInput
Fields
Input Field | Description |
---|---|
country - GlobalFilterByInput
|
A list of filter conditions for countries, specified by 3-letter-code (ISO 3166-1 alpha-3) |
device - GlobalFilterByInput
|
A list of filter conditions for device types |
Example
{
"country": GlobalFilterByInput,
"device": GlobalFilterByInput
}
GlobalFilterOperatorInput
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
Example
"contains"
GscConnectionInfo
Description
Google Search Console (GSC) connection information for a project
Fields
Field Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
connectionStatus - GSCConnectionStatus!
|
The connection status of the project |
Example
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"connectionStatus": "CONNECTED"
}
GscImportingInfo
Description
Information regarding the Google Search Console (GSC) data import for a project
Fields
Field Name | Description |
---|---|
virgin - GscImportingInfoVirgin
|
The virgin import information (90 days of data) |
extraImport - GscImportingInfoExtraImport
|
The extra import information (16 months of data) |
daily - GscImportingInfoDaily
|
The daily import information (nightly increments) |
Example
{
"virgin": GscImportingInfoVirgin,
"extraImport": GscImportingInfoExtraImport,
"daily": GscImportingInfoDaily
}
GscImportingInfoDaily
Description
Information regarding the status of the daily incremental Google Search Console (GSC) data import for a project
Fields
Field Name | Description |
---|---|
status - GSCDailyStatus!
|
The status of the daily import |
errorCode - String
|
The error code of the daily import, empty if there is no error |
errorMessage - String
|
The error message of the daily import, empty if there is no error |
Example
{
"status": "ERROR",
"errorCode": "GG_NO_PERMISSION",
"errorMessage": "Error code: 403, Error message: User does not have sufficient permission for site ‘sc-domain:ryte.com’. See also: https://support.google.com/webmasters/answer/2451999"
}
GscImportingInfoExtraImport
Description
Information regarding the status of the initial 16-months Google Search Console (GSC) data import for a project
Fields
Field Name | Description |
---|---|
status - GSCExtraImportStatus!
|
The status of the extra import |
completedPercent - Float
|
The percentage of extra importing status, based on the number of days that have been imported |
dateImportFinish - String
|
The date of the last imported day |
Example
{"status": "DONE", "completedPercent": 66.5, "dateImportFinish": "2017-03-01"}
GscImportingInfoVirgin
Description
Information regarding the status of the initial 90-days Google Search Console (GSC) data import for a project
Fields
Field Name | Description |
---|---|
status - GSCVirginStatus!
|
The status of the virgin import |
progressBarData - GscVirginProgressBar!
|
Extended information on the progress of the import |
Example
{
"status": "DONE",
"progressBarData": GscVirginProgressBar
}
GscSetting
Description
Google Search Console (GSC) related settings for a project
Fields
Field Name | Description |
---|---|
projectHash - String!
|
The identifier of the Ryte project |
siteUrl - String!
|
The identifier of the Google Search Console (GSC) property |
globalFilter - GlobalFilterItem
|
(optional) A definition of one or multiple filter conditions which restrict the imported data |
Example
{
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"siteUrl": "sc-domain:ryte.com",
"globalFilter": GlobalFilterItem
}
GscVirginProgressBar
Description
Extended information regarding the progress of the initial 90-days Google Search Console (GSC) data import for a project
Example
{"percent": 66.5, "remainSeconds": 987}
IgnoreRule
Description
The rule to ignore issue
Fields
Field Name | Description |
---|---|
ruleId - String
|
The unique identifier (uuid) of the rule |
filterJson - AWSJSON
|
A filter condition to ignore issues, under format of stringified JSON |
createdAt - Int
|
Time of the rule creation |
createdBy - String
|
Id of the rule creator in 32 characters |
createdByName - String
|
Full name of the rule creator |
updatedAt - Int
|
Time of the rule last updated |
updatedBy - String
|
Id of the rule updater in 32 characters |
updatedByName - String
|
Full name of the rule creator |
Example
{
"ruleId": "6b2ba948-39a5-48d4-b8a7-2f07b75a760b",
"filterJson": {"field": "status", "operator": "equal", "value": "unresolved"},
"createdAt": 1702928220,
"createdBy": "abcdefghijklmnopqrstuz0123456789",
"createdByName": "Golden Silver",
"updatedAt": 1702928220,
"updatedBy": "abcdefghijklmnopqrstuz0123456789",
"updatedByName": "Golden Silver 2"
}
IgnoredIssueFilter
Fields
Input Field | Description |
---|---|
field - String
|
The field to filter issues to ignore |
operator - FilterOperator
|
The operator to compare with the value (e.g. equal, greater, lessOrEqual, ... ) |
value - String
|
The value to compare with |
AND - [IgnoredIssueFilter]
|
Add condition AND with the next filter |
OR - [IgnoredIssueFilter]
|
Add condition OR with the next filter |
Example
{
"field": "issueType",
"operator": "equal",
"value": "unresolved",
"AND": ["[{field: \"status\", operator: \"equal\", value: \"unresolved\"}]"],
"OR": ["[{field: \"status\", operator: \"equal\", value: \"resolved\"}]"]
}
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
Issue
Description
An Issue is something that potentially negatively affects a website in regards to Website User Experience (WUX).
Fields
Field Name | Description |
---|---|
issueId - String!
|
The identifier of an individual issue |
projectHash - String!
|
The identifier of the Ryte project |
type - String!
|
The type of the Issue |
firstDetection - AWSTimestamp!
|
The timestamp when the Issue was initially detected |
recentDetection - AWSTimestamp!
|
The timestamp when the Issue was last detected |
resolvedAt - AWSTimestamp
|
The timestamp when the Issue was resolved |
affectedPage - PageType!
|
The page affected by the Issue |
impact - Float!
|
The Impact of the Issue on the WUX Score |
status - Status!
|
The status of issue at the corresponding recent detection |
ignored - Boolean!
|
Indicates whether the issue is ignored |
context - AWSJSON
|
The context of the Issue |
Example
{
"issueId": "435cff5fb5288a1f8ec8002ee2e79761",
"projectHash": "p5ce7324c9aa4504ad3d85c9c1fce040",
"type": "broken_images",
"firstDetection": 1702928220,
"recentDetection": 1706316820,
"resolvedAt": 1706316820,
"affectedPage": PageType,
"impact": 0.04,
"status": "resolved",
"ignored": "True",
"context": {
"contextHash": "30564268106696",
"contextCssUrl": "https://example.com/pagea8/assets/css/empty.css",
"contextCssHeaderStatus": "401"
}
}
IssueByTypeDelta
Description
A group of Issues by type to compare the amount of Issues and its impact between two timestamps
Example
{"issueType": "broken_images", "totalImpact": 1.78, "count": 671}
IssueGroup
Description
A group of Issues
Example
{
"issueType": "broken_images",
"totalImpact": 1.78,
"count": 671,
"issuePriority": 4
}
IssueGroupBy
Description
Defines the attribute(s) by which an IssueGroup should be grouped by
Values
Enum Value | Description |
---|---|
|
The Issue Type to group by |
Example
"issueType"
IssueLogicalFilter
Fields
Input Field | Description |
---|---|
field - String
|
The field to filter by |
operator - FilterOperator
|
The operator to compare with the value (e.g. equal, greater, lessOrEqual, ... ) |
value - String
|
The value to compare with |
AND - [IssueLogicalFilter]
|
Add condition AND with the next filter |
OR - [IssueLogicalFilter]
|
Add condition OR with the next filter |
Example
{
"field": "status",
"operator": "equal",
"value": "unresolved",
"AND": ["[{field: \"status\", operator: \"equal\", value: \"unresolved\"}]"],
"OR": ["[{field: \"status\", operator: \"equal\", value: \"resolved\"}]"]
}
IssueStatistic
Description
The breakdown of the WUX Score into its individual issue types
Fields
Field Name | Description |
---|---|
unresolvedIssues - Int!
|
The amount of unresolved Issues at that point in time |
unresolvedIgnoredIssues - Int
|
The amount of unresolved ignored Issues at that point in time |
totalImpact - Float!
|
The total impact of all unresolved Issues at that point in time |
ignoredImpact - Float
|
The total impact of all unresolved ignored issues at that point in time |
ts - AWSTimestamp!
|
The timestamp when the issue statistic was measured |
issueType - String!
|
The type of the Issue |
Example
{
"unresolvedIssues": 671,
"unresolvedIgnoredIssues": 25,
"totalImpact": 9.82,
"ignoredImpact": 0.69,
"ts": 1702928220,
"issueType": "broken_images"
}
IssueType
Values
Enum Value | Description |
---|---|
|
Issue: Blocked CSS. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Example
"blocked_css"
Issues
Description
A list of Issues
Example
{
"totalCount": 987,
"issues": [Issue],
"nextCursor": "xyz789"
}
PageType
ProcessingStatus
Values
Enum Value | Description |
---|---|
|
Crawl data is currently being processed - Issues/WUX Score might be inconsistent during this state |
|
No crawl data is currently being processed |
Example
"processing"
ProjectStatus
Description
Project related information
Fields
Field Name | Description |
---|---|
processingStatus - ProcessingStatus
|
Indicates whether analysis data of a project is currently being processed. During this process Issues/WUX Score might be inconsistent. |
Example
{"processingStatus": "processing"}
ResponseCreateIgnoreRule
Example
{
"statusCode": 201,
"ruleId": "6b2ba948-39a5-48d4-b8a7-2f07b75a760b",
"errorMessage": "Error message"
}
ResponseInterface
Status
Values
Enum Value | Description |
---|---|
|
At the timestamp for which to query data, the issue was not resolved |
|
The issue was resolved |
|
The issue could no longer be tracked and evaluated for more than 30 days (e.g. because the page it affected was removed or redirected) |
|
The issue could no longer be tracked and evaluated during the last 30 days (e.g. because the page it affected was removed or redirected) |
Example
"unresolved"
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
"xyz789"
WuxStatistics
Description
The WUX Statistics indicates by which degree a website is optimized regarding Website User Experience (WUX). It is obtained by subtracting the total Impact of all unresolved Issues affecting a website from 100
Fields
Field Name | Description |
---|---|
globalWuxScore - Float!
|
The WUX Score at a certain point in time |
ts - AWSTimestamp!
|
The timestamp when the WUX Score was measured |
unresolvedIssues - Int!
|
The amount of unresolved Issues at that point in time |
ignoredImpact - Float
|
The total impact of all unresolved ignored issues at that point in time |
unresolvedIgnoredIssues - Int
|
The amount of unresolved ignored Issues at that point in time |
Example
{
"globalWuxScore": 79.82,
"ts": 1702928220,
"unresolvedIssues": 671,
"ignoredImpact": 0.69,
"unresolvedIgnoredIssues": 25
}