Download OpenAPI specification:Download
The SpaceCat API is used to manage edge delivery site directory and obtain audit information.
This endpoint is useful for retrieving all sites for an organization.
organizationId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The organization ID in uuid format |
[- {
- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "organizationId": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "deliveryType": "aem_edge",
- "goLiveDate": "2024-01-20T10:00:00Z",
- "config": {
- "slack": {
- "channel": "C1234567890",
- "workspace": "example-workspace"
}, - "handlers": {
- "404": {
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "broken-backlinks": {
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}, - "excludedURLs": {
- "description": "URLs to be excluded from the alert",
- "type": "array",
- "items": {
- "type": "string",
- "format": "uri'"
}
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
]
This endpoint is useful for creating a new site.
baseURL required | string <url> (URL) The base URL of the site |
deliveryType required | string (DeliveryType) Enum: "aem_edge" "aem_cs" "other" The type of the delivery this site is using |
gitHubURL | string <url> (URL) The optional GitHub URL of the site |
goLiveDate | string or null <date-time> (DateTime) The date and time when the site went live on AEM Edge |
{- "organizationId": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "deliveryType": "aem_cs"
}
{- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "organizationId": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "deliveryType": "aem_edge",
- "goLiveDate": "2024-01-20T10:00:00Z",
- "config": {
- "slack": {
- "channel": "C1234567890",
- "workspace": "example-workspace"
}, - "handlers": {
- "404": {
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "broken-backlinks": {
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}, - "excludedURLs": {
- "description": "URLs to be excluded from the alert",
- "type": "array",
- "items": {
- "type": "string",
- "format": "uri'"
}
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
This endpoint is useful for retrieving all sites.
[- {
- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "organizationId": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "deliveryType": "aem_edge",
- "goLiveDate": "2024-01-20T10:00:00Z",
- "config": {
- "slack": {
- "channel": "C1234567890",
- "workspace": "example-workspace"
}, - "handlers": {
- "404": {
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "broken-backlinks": {
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}, - "excludedURLs": {
- "description": "URLs to be excluded from the alert",
- "type": "array",
- "items": {
- "type": "string",
- "format": "uri'"
}
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
]
This endpoint is useful for retrieving all sites by delivery type.
deliveryType required | string (DeliveryType) Enum: "aem_edge" "aem_cs" "other" Example: aem_edge The type of the delivery this site is using |
[- {
- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "organizationId": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "deliveryType": "aem_edge",
- "goLiveDate": "2024-01-20T10:00:00Z",
- "config": {
- "slack": {
- "channel": "C1234567890",
- "workspace": "example-workspace"
}, - "handlers": {
- "404": {
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "broken-backlinks": {
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}, - "excludedURLs": {
- "description": "URLs to be excluded from the alert",
- "type": "array",
- "items": {
- "type": "string",
- "format": "uri'"
}
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
]
This endpoint is useful for retrieving a site when you only have its Base URL. The Base URL is a unique identifier for a site other than the Site ID. The base URL provided in the path must be base64 encoded. This is to allow for URLs with special characters to be used as path parameters.
base64BaseUrl required | string <base64url> Base64-encoded base URL |
{- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "organizationId": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "deliveryType": "aem_edge",
- "goLiveDate": "2024-01-20T10:00:00Z",
- "config": {
- "slack": {
- "channel": "C1234567890",
- "workspace": "example-workspace"
}, - "handlers": {
- "404": {
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "broken-backlinks": {
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}, - "excludedURLs": {
- "description": "URLs to be excluded from the alert",
- "type": "array",
- "items": {
- "type": "string",
- "format": "uri'"
}
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
This endpoint is useful for retrieving all sites including their latest audit. The latest audit is determined by the auditedAt property of the audit and included in the audits array of the site object.
auditType required | string (AuditType) Enum: "404" "apex" "cwv" "lhs" "lhs-desktop" "lhs-mobile" "broken-backlinks" "canonical" "sitemap" "structured-data" "costs" Example: cwv The type of the audit |
[- {
- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "organizationId": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "deliveryType": "aem_edge",
- "goLiveDate": "2024-01-20T10:00:00Z",
- "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z",
- "audits": [
- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "auditedAt": "2024-01-20T12:00:00Z",
- "expiresAt": "2024-07-20T12:00:00Z",
- "auditType": "cwv",
- "isError": false,
- "deliveryType": "aem_edge",
- "auditResult": {
- "someProperty": "someValue"
}, - "previousAuditResult": {
- "someProperty": "somePreviousValue"
}
}
]
}
]
This endpoint is useful for retrieving a site by its ID.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
{- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "organizationId": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "deliveryType": "aem_edge",
- "goLiveDate": "2024-01-20T10:00:00Z",
- "config": {
- "slack": {
- "channel": "C1234567890",
- "workspace": "example-workspace"
}, - "handlers": {
- "404": {
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "broken-backlinks": {
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}, - "excludedURLs": {
- "description": "URLs to be excluded from the alert",
- "type": "array",
- "items": {
- "type": "string",
- "format": "uri'"
}
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
This endpoint is useful for updating a site. Only the fields as per the request body schema will be updated. At least one field to update must be provided in the request body.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
deliveryType | string (DeliveryType) Enum: "aem_edge" "aem_cs" "other" The type of the delivery this site is using |
goLiveDate | string or null <date-time> (DateTime) The date and time when the site went live on AEM Edge |
object (SiteConfig) Optional. The configuration of the site |
{- "organizationId": "u7y6t5r4-e3w2-x1z0-z9y8-x7v6w5u4t3s2",
- "deliveryType": "other",
- "goLiveDate": "2024-01-20T10:00:00Z"
}
{- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "organizationId": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "deliveryType": "aem_edge",
- "goLiveDate": "2024-01-20T10:00:00Z",
- "config": {
- "slack": {
- "channel": "C1234567890",
- "workspace": "example-workspace"
}, - "handlers": {
- "404": {
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "broken-backlinks": {
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}, - "excludedURLs": {
- "description": "URLs to be excluded from the alert",
- "type": "array",
- "items": {
- "type": "string",
- "format": "uri'"
}
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
This endpoint is useful for updating the configuration for an audit, for example to set which URLs to skip from the audit.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
auditType required | string (AuditType) Enum: "404" "apex" "cwv" "lhs" "lhs-desktop" "lhs-mobile" "broken-backlinks" "canonical" "sitemap" "structured-data" "costs" Example: cwv The type of the audit |
excludedURLs | Array of strings Set of urls to exclude. If empty, will remove previously excluded URLs. |
{
}
{- "mentions": {
- "slack": [
- "string"
]
},
}
This endpoint returns key events for a site chronologically, starting from the most recent and descending to the least recent
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
[- {
- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "name": "Multiple 404s detected",
- "type": "seo",
- "time": "2023-12-15T09:30:00Z"
}
]
The endpoint for creating new key events for a site
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
name required | string Name of the key event |
type required | string (KeyEventType) Enum: "performance" "seo" "content" "code" "third party" "experimentation" "network" "status change" |
time | string <date-time> (DateTime) Time of the key event occurred (optional). Current time is used when the field is missing |
{- "name": "string",
- "type": "performance",
- "time": "2024-01-19T14:20:30Z"
}
{- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "name": "Multiple 404s detected",
- "type": "seo",
- "time": "2023-12-15T09:30:00Z"
}
The endpoint for deleting a key event
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
keyEventId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The key event ID in uuid format |
Not implemented yet. This endpoint is useful for retrieving top pages for a site. The top pages will be ordered in buckets by source and geo, and in descending order by traffic within these buckets.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "traffic": 360420000,
- "source": "ahrefs",
- "geo": "au",
- "importedAt": "2024-04-29T15:14:33.653Z"
}
]
Not implemented yet. This endpoint is useful for retrieving top pages for a site. The top pages will be ordered in buckets by geo, and in descending order by traffic within these buckets.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
source required | string Value: "ahrefs" Example: ahrefs The source of the top pages |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "traffic": 360420000,
- "source": "ahrefs",
- "geo": "au",
- "importedAt": "2024-04-29T15:14:33.653Z"
}
]
Not implemented yet. This endpoint is useful for retrieving top pages for a site. The top pages will be ordered in descending order by traffic.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
source required | string Value: "ahrefs" Example: ahrefs The source of the top pages |
geo required | string Example: au The geo of the top pages |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "traffic": 360420000,
- "source": "ahrefs",
- "geo": "au",
- "importedAt": "2024-04-29T15:14:33.653Z"
}
]
This endpoint provide a list of experiments obtained from RUM data for the given site along with all the experiment details.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "experimentId": "1012-home-page-optimization",
- "name": "1012 Home Page Optimization",
- "type": "AB",
- "status": "ACTIVE",
- "startDate": "2024-04-29T15:14:33.653Z",
- "endDate": "2024-05-29T15:14:33.653Z",
- "variants": [
- {
- "name": "challenger-1",
- "label": "Challenger 1",
- "split": 0.5,
- "views": 1000,
- "samples": 10,
- "interactionsCount": 200,
- "p_value": 0.04,
- "power": 97.6,
- "statsig": true,
- "metrics": [
- {
- "selector": ".add-to-cart",
- "value": 300,
- "samples": 3,
- "type": "click"
}
]
}
], - "updatedAt": "2024-05-31T15:14:33.653Z",
- "updatedBy": "admin",
- "conversionEventName": "click",
- "conversionEventValue": ".add-to-cart"
}
]
This endpoint is useful for retrieving all audits of a given type. Optionally, the results can be sorted in ascending order by audited at date.
auditType required | string (AuditType) Enum: "404" "apex" "cwv" "lhs" "lhs-desktop" "lhs-mobile" "broken-backlinks" "canonical" "sitemap" "structured-data" "costs" Example: cwv The type of the audit |
ascending | boolean Default: false Whether to sort ascending or descending |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "auditedAt": "2024-01-20T12:00:00Z",
- "expiresAt": "2024-07-20T12:00:00Z",
- "auditType": "cwv",
- "isError": false,
- "deliveryType": "aem_edge",
- "auditResult": {
- "someProperty": "someValue"
}, - "previousAuditResult": {
- "someProperty": "somePreviousValue"
}
}
]
This endpoint is useful for retrieving all audits for a site. Optionally, the results can be sorted in ascending order by audited at date.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
ascending | boolean Default: false Whether to sort ascending or descending |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "auditedAt": "2024-01-20T12:00:00Z",
- "expiresAt": "2024-07-20T12:00:00Z",
- "auditType": "cwv",
- "isError": false,
- "deliveryType": "aem_edge",
- "auditResult": {
- "someProperty": "someValue"
}, - "previousAuditResult": {
- "someProperty": "somePreviousValue"
}
}
]
This endpoint is useful for retrieving all audits of a given type for a site. Optionally, the results can be sorted in ascending order by audited at date.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
auditType required | string (AuditType) Enum: "404" "apex" "cwv" "lhs" "lhs-desktop" "lhs-mobile" "broken-backlinks" "canonical" "sitemap" "structured-data" "costs" Example: cwv The type of the audit |
ascending | boolean Default: false Whether to sort ascending or descending |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "auditedAt": "2024-01-20T12:00:00Z",
- "expiresAt": "2024-07-20T12:00:00Z",
- "auditType": "cwv",
- "isError": false,
- "deliveryType": "aem_edge",
- "auditResult": {
- "someProperty": "someValue"
}, - "previousAuditResult": {
- "someProperty": "somePreviousValue"
}
}
]
This endpoint is useful for retrieving a single audit for a site. The audit is identified by the auditedAt property of the audit and the audit type.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
auditType required | string (AuditType) Enum: "404" "apex" "cwv" "lhs" "lhs-desktop" "lhs-mobile" "broken-backlinks" "canonical" "sitemap" "structured-data" "costs" Example: cwv The type of the audit |
auditedAt required | string <date-time> (DateTime) Example: 2024-01-19T14:20:30Z The date and time of the audit in ISO 8601 format |
{- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "auditedAt": "2024-01-20T12:00:00Z",
- "expiresAt": "2024-07-20T12:00:00Z",
- "auditType": "cwv",
- "isError": false,
- "deliveryType": "aem_edge",
- "auditResult": {
- "someProperty": "someValue"
}, - "previousAuditResult": {
- "someProperty": "somePreviousValue"
}
}
This endpoint is useful for retrieving all audits for a site. Optionally, the results can be sorted in ascending order by audited at date.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
ascending | boolean Default: false Whether to sort ascending or descending |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "auditedAt": "2024-01-20T12:00:00Z",
- "expiresAt": "2024-07-20T12:00:00Z",
- "auditType": "cwv",
- "isError": false,
- "deliveryType": "aem_edge",
- "auditResult": {
- "someProperty": "someValue"
}, - "previousAuditResult": {
- "someProperty": "somePreviousValue"
}
}
]
This endpoint is useful for retrieving the latest audit for a site. The latest audit is determined by the given audit type and will be included in the audits array of the site object.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
auditType required | string (AuditType) Enum: "404" "apex" "cwv" "lhs" "lhs-desktop" "lhs-mobile" "broken-backlinks" "canonical" "sitemap" "structured-data" "costs" Example: cwv The type of the audit |
{- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "auditedAt": "2024-01-20T12:00:00Z",
- "expiresAt": "2024-07-20T12:00:00Z",
- "auditType": "cwv",
- "isError": false,
- "deliveryType": "aem_edge",
- "auditResult": {
- "someProperty": "someValue"
}, - "previousAuditResult": {
- "someProperty": "somePreviousValue"
}
}
This endpoint is useful for updating the configuration for an audit, for example to set which URLs to skip from the audit.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
auditType required | string (AuditType) Enum: "404" "apex" "cwv" "lhs" "lhs-desktop" "lhs-mobile" "broken-backlinks" "canonical" "sitemap" "structured-data" "costs" Example: cwv The type of the audit |
excludedURLs | Array of strings Set of urls to exclude. If empty, will remove previously excluded URLs. |
{
}
{- "mentions": {
- "slack": [
- "string"
]
},
}
This endpoint is useful for creating a new organization.
name required | string The name of the organization |
imsOrgId | string (ImsOrganizationId) Optional. The ID of the Adobe IMS organization |
object (OrganizationConfig) Optional. The configuration of the organization |
{- "name": "Example Organization",
- "imsOrgId": "1234567890ABCDEF12345678@AdobeOrg",
- "config": {
- "slack": {
- "channel": "#example-channel",
- "workspace": "example-workspace"
}, - "handlers": {
- "404": {
- "mentions": {
- "slack": [
- "@user3",
- "@user4"
]
}
}, - "cwv": {
- "byOrg": false,
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}
}
}
}
}
{- "id": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "name": "Example Organization",
- "imsOrgId": "1234567890ABCDEF12345678@AdobeOrg",
- "config": {
- "slack": {
- "channel": "#example-channel",
- "workspace": "example-workspace",
- "invitedUserCount": 5
}, - "handlers": {
- "404": {
- "byOrg": true,
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "cwv": {
- "byOrg": false,
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
This endpoint is useful for retrieving all organizations.
[- {
- "id": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "name": "Example Organization",
- "imsOrgId": "1234567890ABCDEF12345678@AdobeOrg",
- "config": {
- "slack": {
- "channel": "#example-channel",
- "workspace": "example-workspace",
- "invitedUserCount": 5
}, - "handlers": {
- "404": {
- "byOrg": true,
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "cwv": {
- "byOrg": false,
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
]
This endpoint is useful for retrieving an organization by its ID.
organizationId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The organization ID in uuid format |
{- "id": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "name": "Example Organization",
- "imsOrgId": "1234567890ABCDEF12345678@AdobeOrg",
- "config": {
- "slack": {
- "channel": "#example-channel",
- "workspace": "example-workspace",
- "invitedUserCount": 5
}, - "handlers": {
- "404": {
- "byOrg": true,
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "cwv": {
- "byOrg": false,
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
This endpoint is useful for updating an organization. Only the fields as per the request body schema will be updated. At least one field to update must be provided in the request body.
organizationId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The organization ID in uuid format |
name | string The name of the organization |
imsOrgId | string (ImsOrganizationId) Optional. The ID of the Adobe IMS organization |
object (OrganizationConfig) Optional. The configuration of the organization |
{- "name": "Example Organization",
- "imsOrgId": "1234567890ABCDEF12345678@AdobeOrg",
- "config": {
- "slack": {
- "channel": "#example-channel",
- "workspace": "example-workspace",
- "handlers": {
- "404": {
- "mentions": {
- "slack": [
- "@user3",
- "@user4"
]
}
}, - "cwv": {
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}
}
}
}
}
}
{- "id": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "name": "Example Organization",
- "imsOrgId": "1234567890ABCDEF12345678@AdobeOrg",
- "config": {
- "slack": {
- "channel": "#example-channel",
- "workspace": "example-workspace",
- "invitedUserCount": 5
}, - "handlers": {
- "404": {
- "byOrg": true,
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "cwv": {
- "byOrg": false,
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
This endpoint is useful for retrieving all sites for an organization.
organizationId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The organization ID in uuid format |
[- {
- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "organizationId": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "deliveryType": "aem_edge",
- "goLiveDate": "2024-01-20T10:00:00Z",
- "config": {
- "slack": {
- "channel": "C1234567890",
- "workspace": "example-workspace"
}, - "handlers": {
- "404": {
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "broken-backlinks": {
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}, - "excludedURLs": {
- "description": "URLs to be excluded from the alert",
- "type": "array",
- "items": {
- "type": "string",
- "format": "uri'"
}
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
]
This endpoint is useful for retrieving an organization by IMS Org ID.
imsOrgId required | string (ImsOrganizationId) Example: 1234567890ABCDEF12345678@AdobeOrg An IMS organization ID |
{- "id": "o1p2q3r4-s5t6-u7v8-w9x0-yz12x34y56z",
- "name": "Example Organization",
- "imsOrgId": "1234567890ABCDEF12345678@AdobeOrg",
- "config": {
- "slack": {
- "channel": "#example-channel",
- "workspace": "example-workspace",
- "invitedUserCount": 5
}, - "handlers": {
- "404": {
- "byOrg": true,
- "mentions": {
- "slack": [
- "@user1",
- "@user2"
]
}
}, - "cwv": {
- "byOrg": false,
- "mentions": {
- "slack": [
- "@user5",
- "@user6"
]
}
}
}
}, - "createdAt": "2023-12-15T09:30:00Z",
- "updatedAt": "2024-01-19T11:20:00Z"
}
This endpoint is useful for retrieving the Slack config of an organization by IMS Org ID.
imsOrgId required | string (ImsOrganizationId) Example: 1234567890ABCDEF12345678@AdobeOrg An IMS organization ID |
{- "channel": "C1234567890",
- "workspace": "example-workspace",
- "invitedUserCount": 5,
}
Warning: This API is deprecated, will be removed in future versions and should no longer be used or enhanced. Please use the Slack commands to trigger audits on-demand.
This endpoint is useful for triggering an audit. The audit will be run asynchronously and the response will be returned immediately.
The audit type is determined by the type parameter and must be one of the following:
The URL can be either a site ID or a base URL depending on the audit type.
url required | string The URL or Site ID to trigger the audit for |
type required | string (AuditType) Enum: "404" "apex" "cwv" "lhs" "lhs-desktop" "lhs-mobile" "broken-backlinks" "canonical" "sitemap" "structured-data" "costs" Example: type=cwv The type of the audit to trigger |
This endpoint can be used to process an array of fulfillment_completed events, in the format produced by the Fulfillment Gateway and delivered by the Hoolihan pipeline. In particular, it is intended to be used to handle contract fulfillment events which involve an Edge Delivery Services fulfillable item "code".
id required | string The Hoolihan ID of the event |
topic required | string The name of the Hoolihan topic that the event was received on |
required | object (HoolihanEventValue) Value of the event, which contains the message payload from the publishing system |
partition required | integer The partition index that the event was received on |
offset required | integer The offset of the event within the partition |
[- {
- "id": "b7fyJDj1bu5yrt82RxLX89a98a73KSqR4ptC5MRvlEoLshbgAB3emGKdjQleAMyINZcoAkM6cB7ma2aV",
- "topic": "example_fulfillment_topic",
- "partition": 0,
- "offset": 1234,
- "value": {
- "content": "ewogICAgImV4dGVybmFsX3JlcXVlc3RfaWQiOiAiMTIzNDUiLAogICAgInJlcXVlc3Rvcl9pZCI6ICIxMjM0NTY3ODkw\nQUJDREVGMTIzNDU2NzhAYWRvYmUuY29tIiwKICAgICJvd25lcl9pZCI6ICIxMjM0NTY3ODkwQUJDREVGMTIzNDU2NzhA\nQWRvYmVPcmciLAogICAgInJlcXVlc3RfdHlwZSI6ICJSRUdVTEFSIiwKICAgICJyZXF1ZXN0b3Jfc3lzdGVtIjogIkFB\nVUkiLAogICAgImZ1bGZpbGxtZW50X2lkIjogIjEyMzQ1Njc4OTBhYmNkZWYxMjM0NTY3ODkwYWJjZGVmMTIzNDU2Nzg5\nMGFiY2RlZjEyMzQ1Njc4OTBhYmNkZWYiLAogICAgImNyZWF0ZV9kYXRlIjogIjIwMjQtMDEtMjJUMDk6MjA6MDEuMTIz\nNDVaIiwKICAgICJpdGVtcyI6IFsKICAgICAgICB7CiAgICAgICAgICAgICJleHRlcm5hbF9pdGVtX2lkIjogIjEyMzQ1\nLWFiY2QtMTIzNC0xMjM0LTEyMzQ0MzIxIiwKICAgICAgICAgICAgInF1YW50aXR5IjogIlVOTElNSVRFRCIsCiAgICAg\nICAgICAgICJvZmZlcl9pZCI6ICIxMjM0NTY3ODkwQUJDREVGMTIzNDU2Nzg5MEFCQ0RFRiIsCiAgICAgICAgICAgICJh\nY2NlcHRlZF90ZXJtcyI6IHsKICAgICAgICAgICAgICAgICJjb250cmFjdF9pZCI6ICIxMjM0NTY3ODkwQUJDREVGMTIz\nNCIsCiAgICAgICAgICAgICAgICAiYWNjZXB0ZWRfYWdyZWVtZW50IjogIklOSVRJQUwiCiAgICAgICAgICAgIH0sCiAg\nICAgICAgICAgICJmdWxmaWxsYWJsZV9pdGVtc19jb21wbGV0ZWQiOiBbCiAgICAgICAgICAgICAgICB7CiAgICAgICAg\nICAgICAgICAgICAgImlkIjogIjEyM2U0NTY3LWU4OWItMTJkMy1hNDU2LTQyNjYxNDE3NDAwMCIsCiAgICAgICAgICAg\nICAgICAgICAgImNvZGUiOiAiZHhfZXhhbXBsZV9zb2x1dGlvbiIsCiAgICAgICAgICAgICAgICAgICAgImZ1bGZpbGxt\nZW50X2RldGFpbHMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJmdWxmaWxsYWJsZV9lbnRpdHlfcmVzb3VyY2Vf\nbG9jYXRvciI6ICJodHRwczovL2V4YW1wbGUuY29tLzEyMzQ1Njc4OTBBQkNERUYxMjM0NTY3OEBBZG9iZU9yZyIsCiAg\nICAgICAgICAgICAgICAgICAgICAgICJmdWxmaWxsYWJsZV9lbnRpdHlfcmVzb3VyY2VfbmFtZSI6ICJFeGFtcGxlIFNv\nbHV0aW9uIgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXQogICAgICAg\nIH0KICAgIF0KfQ==",
- "headers": {
- "x-request-id": [
- "123e4567-e89b-12d3-a456-426614174000"
], - "miso-trace-id": [
- "12345678abcdef12:12345678abcdef12:12345678abcdef12:1"
], - "com-adobe-hoolihan-source-partition": [
- "0"
], - "com-adobe-hoolihan-source-offset": [
- "1234"
], - "com-adobe-hoolihan-publish-time": [
- "1705915000000"
], - "x-api-key": [
- "example_publisher_client_id"
], - "com-adobe-hoolihan-publisher": [
- "example_publisher_client_id"
], - "com-adobe-hoolihan-source-topic": [
- "example_source_topic"
], - "com-adobe-hoolihan-on-behalf-of": [
- "example_other_client_id"
], - "Content-Type": [
- "application/json"
]
}
}
}
]
[- {
- "status": "accepted",
- "requestId": "123e4567-e89b-12d3-a456-426614174000"
}, - {
- "status": "rejected"
}
]
This endpoint processes hooks that include x-forwarded-host header value from CDN logs Upon receiving the incoming webhook, it initiates a sequence of validation and sanitization procedures Once successful sanitization and validation are completed, it proceeds to send a Slack message notifying about the discovered domain
hookSecret required | string Secret for the incoming webhook |
forwardedHost | string value of x-forwarded-host header in the CDN log which trggered the domain discovery alert |
property name* additional property | any |
{- "forwardedHost": "blog.adobe.com, main--blog--adobecom.hlx.live, main--blog--adobecom.hlx.live, main--blog--adobecom.hlx-fastly.page"
}
This endpoint processes hooks that include URL and domain information from RUM logs Upon receiving the incoming webhook, it initiates a sequence of validation and sanitization procedures Once successful sanitization and validation are completed, it proceeds to send a Slack message notifying about the discovered domain
hookSecret required | string Secret for the incoming webhook |
url | string <url> (URL) URL of the page which triggered the domain discovery alert |
domain | string <domain> (Domain) Domain of the page which triggered the domain discovery alert |
property name* additional property | any |
{- "domain": "www.example.com"
}
Not implemented yet (will be via https://github.com/adobe/spacecat-api-service/issues/237). Process setup completed events for site integration with analytics.
hookSecret required | string Secret for the incoming webhook |
required | object The reporting details |
required | object The configuration for the data collection to embed on the site. |
required | object The data store details |
object The data schema details | |
required | object The data mapping details |
property name* additional property | any |
{- "siteId": "a31fa5e4-90be-4440-a063-e6d6aa5a127a",
- "dataCollection": {
- "type": "adobe-tags",
- "environments": {
}
}, - "dataStore": {
- "type": "adobe-analytics",
- "id": "ageo1xxpnwexamplerumanalytics"
}, - "dataMapping": {
- "type": "adobe-analytics",
- "mappings": {
- "All Page Views": "event4",
- "Page URL": "evar2",
- "Data Source": "evar3",
- "Site Domain": "evar4"
}
}
}
This endpoint can be used to invite a user to their organization's Slack channel by IMS user ID, which is read from the IMS API via the provided user access token. As a prerequisite, there must be an existing Spacecat organization and Slack channel for the given IMS org ID.
imsOrgId required | string (ImsOrganizationId) The ID of the Adobe IMS organization |
imsUserAccessToken required | string (ImsUserAccessToken) The IMS access token of the user to invite to the Slack channel |
{- "imsOrgId": "1234567890ABCDEF12345678@AdobeOrg",
- "imsUserAccessToken": "eyJhbGciOiJIUzI1NiJ9.eyJpZCI6IjEyMzQ1IiwidHlwZSI6ImFjY2Vzc190b2tlbiIsImNsaWVudF9pZCI6ImV4YW1wbGVfYXBwIiwidXNlcl9pZCI6Ijk4NzY1NDc4OTBBQkNERUYxMjM0NTY3OEBhYmNkZWYxMjM0NTY3ODkuZSIsImFzIjoiaW1zLW5hMSIsImFhX2lkIjoiMTIzNDU2Nzg5MEFCQ0RFRjEyMzQ1Njc4QGFkb2JlLmNvbSIsImNyZWF0ZWRfYXQiOiIxNzEwMjQ3MDAwMDAwIn0.MRDpxgxSHDj4DmA182hPnjMAnKkly-VUJ_bXpQ-J8EQ"
}
Note: Not implemented yet.
This endpoint can be used to create a new API key with a set of scopes. The scoped API key will be returned in the response only once. The scoped API key can be used to authenticate the Spacecat APIs by including it in the x-api-key header.
x-gw-ims-org-id | string Example: 1234567890ABCDEF12345678@AdobeOrg IMS Organization Id of the client. |
name required | string The name of the API key |
features | Array of strings The features the API key is for |
domains required | Array of strings <domain> (Domain) [ items <domain > ] The domains the API key is allowed to access |
{- "name": "Example API Key",
- "features": [
- "imports"
], - "domains": [
- "example.com"
]
}
{- "id": "123e4567-e89b-12d3-a456-426614174000",
- "name": "string",
- "scopes": [
- {
- "name": "imports.write",
- "domains": [
- "www.example.com"
]
}
], - "createdAt": "2024-01-19T14:20:30Z",
- "expiresAt": "2024-01-19T14:20:30Z",
- "apiKey": "string"
}
Note: Not implemented yet.
This endpoint can be used to list all the API keys created by the client.
x-gw-ims-org-id | string Example: 1234567890ABCDEF12345678@AdobeOrg IMS Organization Id of the client. |
[- {
- "id": "123e4567-e89b-12d3-a456-426614174000",
- "name": "string",
- "scopes": [
- {
- "name": "imports.write",
- "domains": [
- "www.example.com"
]
}
], - "createdAt": "2024-01-19T14:20:30Z",
- "expiresAt": "2024-01-19T14:20:30Z"
}
]
Note: Not implemented yet.
This endpoint can be used to delete an API key. The API key will be marked as deleted in the system and will no longer be valid for authentication. Only keys created by this IMS client can be deleted by it.
apiKeyId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The API key ID in uuid format |
x-gw-ims-org-id | string Example: 1234567890ABCDEF12345678@AdobeOrg IMS Organization Id of the client. |
This endpoint can be used to start a new import job with a set of URLs, import API key, optional import.js mapping file, and optional custom headers. The import job will be processed asynchronously and the status of the job can be queried at the /tools/import/jobs/{jobId} endpoint. If there is no import queue available at the time of the request, a 503 Service Unavailable response will be returned. A single import job per client is permitted, otherwise a 429 Too Many Requests response will be returned.
x-api-key | string Client-specific import API key. This same key will be required to fetch the job status, and final .zip result. |
urls required | Array of strings <url> (URL) [ items <url > ] The URLs to import |
object (ImportOptions) Optional configuration params, defined as a JSON object | |
importScript | string <binary> Optional import.js mapping file |
customHeaders | object Optional custom headers to send with each HTTP request |
{- "id": "12d6ac8e-d5e4-4788-90eb-b69e10e745fd",
- "status": "RUNNING",
- "startTime": "2024-01-19T14:20:30Z",
- "urlCount": 25,
- "successCount": 15,
- "failedCount": 0
}
This endpoint can be used to query the status of an import job, given its jobId.
jobId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The job ID in uuid format |
x-api-key | string Client-specific import API key. Must match the key used to start the import job. |
{- "id": "12d6ac8e-d5e4-4788-90eb-b69e10e745fd",
- "status": "RUNNING",
- "startTime": "2024-01-19T14:20:30Z",
- "urlCount": 25,
- "successCount": 15,
- "failedCount": 0
}
This endpoint can be used to delete an import job, given its jobId. This operation will remove
all import URL entities in addition to the import job itself. The imports.delete
scope is
required on the API key used to delete the import job, and only jobs created by the provided
key can be deleted.
jobId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The job ID in uuid format |
x-api-key | string Client-specific import API key. Must match the key used to start the import job, and include the imports.delete scope. |
This endpoint can be used to query the progress of an import job, given its jobId.
jobId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The job ID in uuid format |
x-api-key | string Client-specific import API key. Must match the key used to start the import job. |
{- "pending": 0,
- "redirect": 0,
- "running": 0,
- "completed": 1,
- "failed": 0
}
This endpoint can be used to download an archive of an import job, which will include all the resulting documents that were generated as part of the import. It will also include the import-report.xlsx file, which contains a summary of the import job.
jobId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The job ID in uuid format |
x-api-key | string Client-specific import API key. Must match the key used to start the import job. |
{- "jobId": "12d6ac8e-d5e4-4788-90eb-b69e10e745fd",
}
Note: Not implemented yet.
This endpoint can be used to send prompts to the import assistant. Each prompt will make use of AI to analyze a URL and return choices in response to the request.
x-api-key | string Client-specific import API key. |
url required | string <url> (URL) The URL to analyze |
command required | string Assistant command to execute. Examples are 'start', 'cleanup', 'block', 'cells'. |
prompt | string Optional prompt to provide context for the analysis. |
options | object Optional configuration options required by the command. |
{- "command": "cleanup",
- "prompt": "breadcrumbs"
}
{- "choices": [
- {
- "message": {
- "content": ".breadcrumbs"
}
}
]
}
Warning: prototype endpoint. This endpoint allows you to scrape a set of URLs. The URLs are scraped in parallel and the results are returned in the same order as the input. The maximum number of URLs that can be scraped in a single request is 10.
urls required | Array of strings <url> (URL) [ items <url > ] The URLs to scrape. The URLs must be unique. Limit of 10 URLs per request. |
{
}
{- "id": "12d6ac8e-d5e4-4788-90eb-b69e10e745fd",
- "status": "COMPLETE",
- "startTime": "2024-01-19T14:20:30Z",
- "urlCount": 10,
- "successCount": 9,
- "failedCount": 1,
- "results": [
]
}
version required | string |
{- "version": "string",
- "jobs": [
- {
- "group": "string",
- "interval": "string",
- "type": "string"
}
], - "queues": {
- "audits": "string",
- "imports": "string",
- "reports": "string"
}
}
This endpoint returns key events for a site chronologically, starting from the most recent and descending to the least recent
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
[- {
- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "name": "Multiple 404s detected",
- "type": "seo",
- "time": "2023-12-15T09:30:00Z"
}
]
The endpoint for creating new key events for a site
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
name required | string Name of the key event |
type required | string (KeyEventType) Enum: "performance" "seo" "content" "code" "third party" "experimentation" "network" "status change" |
time | string <date-time> (DateTime) Time of the key event occurred (optional). Current time is used when the field is missing |
{- "name": "string",
- "type": "performance",
- "time": "2024-01-19T14:20:30Z"
}
{- "id": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "name": "Multiple 404s detected",
- "type": "seo",
- "time": "2023-12-15T09:30:00Z"
}
The endpoint for deleting a key event
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
keyEventId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The key event ID in uuid format |
Not implemented yet. This endpoint is useful for retrieving top pages for a site. The top pages will be ordered in buckets by source and geo, and in descending order by traffic within these buckets.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "traffic": 360420000,
- "source": "ahrefs",
- "geo": "au",
- "importedAt": "2024-04-29T15:14:33.653Z"
}
]
Not implemented yet. This endpoint is useful for retrieving top pages for a site. The top pages will be ordered in buckets by geo, and in descending order by traffic within these buckets.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
source required | string Value: "ahrefs" Example: ahrefs The source of the top pages |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "traffic": 360420000,
- "source": "ahrefs",
- "geo": "au",
- "importedAt": "2024-04-29T15:14:33.653Z"
}
]
Not implemented yet. This endpoint is useful for retrieving top pages for a site. The top pages will be ordered in descending order by traffic.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
source required | string Value: "ahrefs" Example: ahrefs The source of the top pages |
geo required | string Example: au The geo of the top pages |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "traffic": 360420000,
- "source": "ahrefs",
- "geo": "au",
- "importedAt": "2024-04-29T15:14:33.653Z"
}
]
This endpoint is useful for retrieving site metrics by source.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
source required | string Value: "ahrefs" Example: ahrefs The source of the top pages |
metric required | string Value: "organic-traffic" Example: organic-traffic The name of the site metric |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "source": "ahrefs",
- "name": "organic-traffic",
- "value": 37900,
- "time": "2024-04-29T00:00:00.000Z"
}
]
This endpoint provide a list of experiments obtained from RUM data for the given site along with all the experiment details.
siteId required | string <uuid> (Id) Example: 123e4567-e89b-12d3-a456-426614174000 The site ID in uuid format |
[- {
- "siteId": "a1b2c3d4-e5f6-7g8h-9i0j-k11l12m13n14",
- "experimentId": "1012-home-page-optimization",
- "name": "1012 Home Page Optimization",
- "type": "AB",
- "status": "ACTIVE",
- "startDate": "2024-04-29T15:14:33.653Z",
- "endDate": "2024-05-29T15:14:33.653Z",
- "variants": [
- {
- "name": "challenger-1",
- "label": "Challenger 1",
- "split": 0.5,
- "views": 1000,
- "samples": 10,
- "interactionsCount": 200,
- "p_value": 0.04,
- "power": 97.6,
- "statsig": true,
- "metrics": [
- {
- "selector": ".add-to-cart",
- "value": 300,
- "samples": 3,
- "type": "click"
}
]
}
], - "updatedAt": "2024-05-31T15:14:33.653Z",
- "updatedBy": "admin",
- "conversionEventName": "click",
- "conversionEventValue": ".add-to-cart"
}
]