Pope Tech (1.0)

Download OpenAPI specification:Download

Crawls

Start a Crawl

path Parameters
organizationSlug
required
string
websitePublicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

List Crawls

List crawls

path Parameters
organizationSlug
required
string
query Parameters
limit
integer [ 5 .. 250 ]
Default: 5
page
integer >= 1
Default: 1
status
string
Default: "active"
Enum: "all" "active" "finished"
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "meta": {
    }
}

Crawl Details

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "started_at": "string",
  • "updated_at": "string",
  • "pages_found": 0,
  • "pages_added": 0,
  • "pages_archived": 0,
  • "status": "Queued",
  • "type": "string",
  • "public_id": "string",
  • "max_pages": "string",
  • "max_depth": "string",
  • "error_message": null,
  • "include_subdomains": true,
  • "rate_limit": null,
  • "filters": [
    ],
  • "start_url": "string",
  • "sitemap_location": "string",
  • "use_robots": true,
  • "use_sitemap": true,
  • "archive_pages_not_found": true
}

Reports

List Reports

path Parameters
organizationSlug
required
string
query Parameters
group_filter
string
sort_by
string
sort_direction
string
start
string
end
string
page
string
limit
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "meta": {
    }
}

Create a Report

path Parameters
organizationSlug
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Request Body schema: application/json
region
string
Default: "none"
Enum: "none" "all" "template" "content"
website
string

The public ID of the website to run the report on. Either website or group is required.

group
string

The public ID of the group to run the report on. Either website or group is required.

users
Array of strings

Array of user public IDs to email report to

Array of objects (EmailTo)
scan_date
string <date>
report_type
required
string
Enum: "summary" "detail" "report_detail"
format
required
string
Enum: "pdf" "csv" "html" "email"
object (ReportResultConfiguration)

Set results to be included for result detail report. Required when report_format is set to "result_detail"

Responses

Request samples

Content type
application/json
{
  • "region": "none",
  • "website": "string",
  • "group": "string",
  • "users": [
    ],
  • "email_to": [
    ],
  • "scan_date": "2019-08-24",
  • "report_type": "summary",
  • "format": "pdf",
  • "result_configuration": {
    }
}

Download a Report

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Rebuild a Report

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Destroy a Report

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Get Accessibility Report by Scan

Retrieve the accessibility report attached to a given scan if it exists.

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
No sample

Scans

Start a Scan

Start a website or group scan.

Group scans are started asynchronously, and will not return any information about started scans.

path Parameters
organizationSlug
required
string
type
required
string
Enum: "websites" "groups"

Type of scan

entityPublicId
required
string

Public ID for website or group to be scanned

header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Request Body schema: application/json
recurring
boolean
Default: "false"
scan_period
string
Enum: "weekly" "monthly" "quarterly"
start_at
string <date>
generate_report
boolean
Default: "false"
report_type
string
Enum: "summary" "detail" "result_detail"
report_format
string
Enum: "pdf" "csv" "html" "email"
object (ReportResultConfiguration)

Set results to be included for result detail report. Required when report_format is set to "result_detail"

Array of objects (EmailTo)
users
Array of strings

Array of user public IDs to email report to

report_region_type
string
Default: "none"
Enum: "none" "all" "template" "content"

Responses

Request samples

Content type
application/json
Example
{ }

Response samples

Content type
application/json
Example
{
  • "data": {
    }
}

List Scans

path Parameters
organizationSlug
required
string
query Parameters
limit
number [ 1 .. 250 ]
Default: 15
page
number >= 1
Default: 1
group_filter
string
Default: "all"
website_filter
string
Default: "all"
status_filter
string
Default: "all"
Enum: "all" "queued" "scanning" "finished"
sort_by
string
Enum: "queued_at" "started_at"
sort_direction
string
Default: "desc"
Enum: "desc" "asc"
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "meta": {
    }
}

Scan Details

path Parameters
organizationSlug
required
string
publicId
required
string
query Parameters
region_filter
string
Default: "all"
Enum: "all" "content" "template"
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "public_id": "string",
  • "status": "queued",
  • "total_pages": 0,
  • "scanned_pages": 0,
  • "processed_pages": 0,
  • "has_regions": true,
  • "scan_settings": {
    },
  • "started_at": "string",
  • "ended_at": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "duration": "string",
  • "previous": "string",
  • "diff": { },
  • "next": "string",
  • "totals": [
    ],
  • "website": {
    }
}

Cancel a Scan

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "message": "Scan cancelled successfully"
}

Get Scan Pages

path Parameters
organizationSlug
required
string
publicId
required
string
query Parameters
with_errors
string
Enum: "true" "false"

Get pages that failed

category
string
Enum: "all" "alerts" "errors" "contrast" "aria" "structural" "features"

Get pages that have results in a specific category only

type
string
Enum: "all" "{result_slug}"
Example: type=empty_link

Get pages with a specific result type

page
string
limit
string
region
string
Enum: "all" "content"

Get content results only

sort_by
string
Enum: "errors" "alerts" "contrast" "structural" "features" "aria"

Sort by result category

sort_dir
string
Enum: "desc" "asc"
search
string

Search by page uri or title

header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
No sample

Get Page Scan Detail

path Parameters
organizationSlug
required
string
scanPublicId
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

General

API Status

Responses

Response samples

Content type
application/json
{
  • "name": "Pope Tech API",
  • "version": "v1.0",
  • "environment": "production",
  • "maintenance_mode": false
}

Get User Info

header Parameters
Authorization
string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Websites

List Websites

path Parameters
organizationSlug
required
string
query Parameters
group_filter
string

Group Public ID

search
string

Keyword for searching websites by name or URL

zero_pages
boolean

Boolean flag for retrieving websites with 0 pages

zero_scans
boolean

Boolean flag for retrieving websites with 0 scans

sort_by
string
Enum: "allPageCount" "activePageCount" "scanCount" "name" "fullUrl"

Column to sort by

page
integer >= 1
limit
integer [ 0 .. 250 ]
sort_direction
string
Enum: "desc" "asc"
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{}

Create a Website

path Parameters
organizationSlug
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Request Body schema: application/json
name
string

Name for the website. Defaults to the full_url value

full_url
required
string
skip_url_redirect
boolean

This flag will skip any URL validation. Skipping URL validation may cause unexpected behavior.

notes
string
object (CrawlOptions)
object (ScanOptions)
AuthenticationOptions (object) or AuthenticationOptions (object) or AuthenticationOptions (object) (AuthenticationOptions)
allow_duplicates
boolean
Default: "true"

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "full_url": "string",
  • "skip_url_redirect": true,
  • "notes": "string",
  • "crawl_options": {
    },
  • "scan_options": {
    },
  • "authentication_options": {
    },
  • "allow_duplicates": "true"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

List Pages

path Parameters
organizationSlug
required
string
publicId
required
string
query Parameters
limit
integer [ 0 .. 250 ]
Default: 15
page
integer
search
string

Search by title or URI

response_code
string
Enum: "all" "other" "200" "401" "403" "404" "500"

Filter pages by response code

template
string

Filter pages by template's Public ID

authentication
string
Default: "any"
Enum: "any" "yes" "no"

Filter by authentication.

status
string
Default: "active"
Enum: "archived" "active"

Filter by visibility status

header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "meta": {
    }
}

Add Pages

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Request Body schema:

Add either a single page with a JSON object, or multiple pages with CSV.

url
required
string
title
string

Responses

Request samples

Content type
{
  • "url": "string",
  • "title": "string"
}

Delete Pages

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Request Body schema: application/json
type
required
string
Enum: "ids" "filters"
pages
Array of any

Array of Public IDs

object (WebsiteMassActionFilters)

Responses

Request samples

Content type
application/json
{
  • "type": "ids",
  • "pages": [
    ],
  • "filters": {
    }
}

Website Details

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Update a Website

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Request Body schema: application/json
name
string
full_url
string
object (CrawlOptions)
object (ScanOptions)
AuthenticationOptions (object) or AuthenticationOptions (object) or AuthenticationOptions (object) (AuthenticationOptions)
notes
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "full_url": "string",
  • "crawl_options": {
    },
  • "scan_options": {
    },
  • "authentication_options": {
    },
  • "notes": "string"
}

Delete a Website

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Dashboard

Scan Aggregates

path Parameters
organizationSlug
required
string
query Parameters
group_filter
string
Default: "all"

Public ID of group to filter results by

website_filter
string
Default: "all"

Public ID of website to filter results by

region_filter
string
Enum: "all" "template" "content"

Type of region to filter results by

date_filter
string
Example: date_filter=2021-03-01

Date to filter results by (YYYY-MM-DD)

header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Issues Over Time

path Parameters
organizationSlug
required
string
query Parameters
granularity
string
Enum: "year" "quarter" "month" "week" "day"

The granularity of datapoints

start
string <date>
Example: start=2020-01-01

Start date

end
string <date>
Example: end=2020-06-01

End date

group_filter
string
Default: "all"

Public ID of group to filter results by

website_filter
string
Default: "all"

Public ID of website to filter results by

region_filter
string
Default: "all"
Enum: "all" "template" "content"

Type of region to filter results by

header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Request Body schema: application/json
Array of objects

Request samples

Content type
application/json
{
  • "data": [
    ]
}

Issues By Group

path Parameters
organizationSlug
required
string
query Parameters
group_filter
string

Public ID of group to filter results by

website_filter
string

Public ID of website to filter results by

region_filter
string
Default: "all"
Enum: "all" "template" "content"

Type of region to filter results by

date_filter
string
Example: date_filter=2021-03-01

Date to filter results by (YYYY-MM-DD)

header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Result Details

path Parameters
organizationSlug
required
string
query Parameters
group_filter
string
Default: "all"

Public ID of group to filter results by

website_filter
string
Default: "all"

Public ID of website to filter results by

region_filter
string
Default: "all"
Enum: "template" "content" "all"

Type of region to filter results by

header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "alerts": [
    ],
  • "errors": [
    ],
  • "contrast": [
    ],
  • "features": [
    ],
  • "structural": [
    ],
  • "aria": [
    ]
}

Websites by Result Type

Retrieve the websites that have the given result type

path Parameters
organizationSlug
required
string
type
required
string
Default: "empty_link"

Result type slug

query Parameters
website_filter
string
Default: "all"

Public ID of website to filter results by

group_filter
string
Default: "all"

Public ID of group to filter results by

region_filter
string
Default: "all"
Enum: "content" "template" "all"

Type of region to filter results by

limit
integer [ 1 .. 250 ] characters
Default: "10"
page
integer
Default: 1
sort_by
string
Default: "count"
Enum: "count" "pages"
sort_direction
string
Default: "desc"
Enum: "asc" "desc"
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": [],
  • "meta": {
    }
}

Pages by Result Type

path Parameters
organizationSlug
required
string
type
required
string
Example: empty_link

The result type slug

website
required
string
Example: 1234-1234-1234-1234

The website public ID

query Parameters
region_filter
string
Enum: "all" "template" "content"
sort_by
string
Default: "count"
Enum: "count" "uri"
sort_direction
string
Enum: "asc" "desc"
page
number >= 1
Default: 1
limit
number [ 1 .. 250 ]
Default: 10
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "meta": {
    }
}

Scan Details

Get a list of websites with latest scan aggregates sorted by number of errors.

Authorizations:
Personal Access Tokens
path Parameters
organizationSlug
required
string
query Parameters
page
integer
limit
integer [ 1 .. 50 ]
Default: "7"
date_filter
string
Example: date_filter=2021-03-01

Date to filter results by (YYYY-MM-DD)

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "meta": {
    }
}

Organizations

Organization Details

path Parameters
organizationSlug
required
string
header Parameters
Authorizaion
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Groups

List Groups

path Parameters
organizationSlug
required
string
query Parameters
root
boolean

If true, endpoint will return the user's root group.

group_filter
string
mode
string
Value: "select"

Change the mode of the endpoint. "select" returns a group list while omitting the mode parameter will return the group tree.

search
string

The keyword to search by when in "select" mode

header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
Example
{
  • "data": {
    }
}

Utility

Get WAVE Documentation

path Parameters
organizationSlug
required
string
query Parameters
active
boolean
Default: "false"

Flag to return only active result types. All result types are included by default, including deprecated result types or original categories.

header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Users

List Users

path Parameters
organizationSlug
required
string
query Parameters
limit
integer [ 1 .. 250 ]
Default: 15
page
integer >= 1
Default: 1
search
string

Search by name or email

group_filter
string
sort_by
string
Enum: "name" "email" "lastSeenAt"
sort_direction
string

Select mode, returns up to 100 results filtered by the search query parameter

header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "meta": {}
}

Create User

path Parameters
organizationSlug
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Request Body schema: application/json
email
required
string
name
required
string
role
required
string

Role slug

group
string

Group Public ID

shibboleth_identifier
string
is_shibboleth
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "name": "string",
  • "role": "owner",
  • "group": "string",
  • "shibboleth_identifier": "string",
  • "is_shibboleth": false
}

User Details

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Response samples

Content type
application/json
No sample

Update User

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Request Body schema: application/json
name
required
string
email
required
string
group
required
string

Group Public ID

role
required
string

Role Slug

is_shibboleth
boolean
shibboleth_identifier
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "email": "string",
  • "group": "string",
  • "role": "string",
  • "is_shibboleth": true,
  • "shibboleth_identifier": "string"
}

Delete User

path Parameters
organizationSlug
required
string
publicId
required
string
header Parameters
Authorization
required
string
Example: Bearer [YOUR-ACCESS-TOKEN]

Your access token

Responses

Authentication

Get Personal Access Token Information

Get information about existing access token

path Parameters
organizationSlug
required
string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Create a Personal Access Token

Get a new Personal Access Token. This will delete all existing tokens.

path Parameters
organizationSlug
required
string

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Revoke All Personal Access Tokens

Revoke all Personal Access Tokens

path Parameters
organizationSlug
required
string

Responses