ScrepyDocs

Crawl data

Retrieve Screpy crawl pages, links, images, on-page findings, and Quick Wins through the REST API.

Read one completed crawl at a time

Choose the data endpoint that answers the decision you are making: use overview data for a broad status check, then pages, links, images, on-page findings, or Quick Wins for the underlying work. Select the completed crawl first through crawls.

Always keep the project and crawl scope together. Paginate through large result sets and do not combine rows from different crawls when reporting a single audit result. Use comparisons when the question is about change between baselines.

GET/projects/{project_uid}/crawls/{crawl_uid}/on-page-overview

Authorization

bearerApiKey
AuthorizationBearer <token>

Create a REST API key in Settings > Connected Apps. MCP credentials do not authenticate this API.

In: header

Path Parameters

project_uid*string

Accessible project UID. Discover it with GET /projects; do not guess it.

Match^[a-z0-9]{10}$
crawl_uid*string

Crawl UID belonging to the selected project. Discover it with GET /projects/{project_uid}/crawls.

Match^[a-z0-9]{16}$

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/projects/string/crawls/string/on-page-overview"
{  "data": {    "summary": {      "status": "string",      "finished_at": "2019-08-24T14:15:22Z",      "health_score": 0,      "health_score_version": 0,      "health_score_confidence": 0,      "health_score_coverage": 0,      "health_score_groups": [        null      ],      "health_score_delta": 0,      "pages_total": 0,      "critical_issues": 0,      "warnings": 0,      "notices": 0,      "issues_total": 0,      "avg_response_time_ms": 0,      "duration_seconds": 0,      "broken_links": 0,      "total_images_count": 0,      "missing_metadata": 0,      "issues_added": 0,      "issues_fixed": 0    },    "trends": [      null    ],    "groups": [      null    ],    "coverage": [      null    ]  }}
GET/projects/{project_uid}/crawls/{crawl_uid}/quick-wins

The selected crawl verifies access and completion. Result rows vary by quick-win type.

Authorization

bearerApiKey
AuthorizationBearer <token>

Create a REST API key in Settings > Connected Apps. MCP credentials do not authenticate this API.

In: header

Path Parameters

project_uid*string

Accessible project UID. Discover it with GET /projects; do not guess it.

Match^[a-z0-9]{10}$
crawl_uid*string

Crawl UID belonging to the selected project. Discover it with GET /projects/{project_uid}/crawls.

Match^[a-z0-9]{16}$

Query Parameters

type?string

Value in

  • "strikingDistancePages"
  • "ctrOpportunities"
  • "newContentOpportunities"
  • "secondPageKeywords"
  • "lostQueries"
  • "risingQueries"
  • "fallingQueries"
  • "risingPages"
  • "fallingPages"
range?string

Value in

  • "7d"
  • "28d"
  • "3m"
  • "6m"
limit?integer

Maximum records to return. Defaults to 50.

Range1 <= value <= 100
Default50
cursor?string

Opaque cursor returned by the prior response. Do not construct or alter it.

Lengthlength <= 512

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/projects/string/crawls/string/quick-wins"
{  "data": [    {}  ],  "links": {    "next": "http://example.com"  },  "meta": {    "next_cursor": "string",    "range": "7d",    "warnings": [      "string"    ]  }}
GET/projects/{project_uid}/crawls/{crawl_uid}/pages

Lists pages from a completed crawl. Send filters as indexed PHP-style query arrays, such as filters[0][field]=status_code&filters[0][operator]=eq&filters[0][value]=440.

Authorization

bearerApiKey
AuthorizationBearer <token>

Create a REST API key in Settings > Connected Apps. MCP credentials do not authenticate this API.

In: header

Path Parameters

project_uid*string

Accessible project UID. Discover it with GET /projects; do not guess it.

Match^[a-z0-9]{10}$
crawl_uid*string

Crawl UID belonging to the selected project. Discover it with GET /projects/{project_uid}/crawls.

Match^[a-z0-9]{16}$

Query Parameters

filters?

Up to 20 indexed PHP-style filter objects. Example: filters[0][field]=status_code&filters[0][operator]=eq&filters[0][value]=440.

Propertiesproperties <= 20
limit?integer

Maximum records to return. Defaults to 50.

Range1 <= value <= 100
Default50
cursor?string

Opaque cursor returned by the prior response. Do not construct or alter it.

Lengthlength <= 512

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/projects/string/crawls/string/pages"
{  "data": [    {      "url": "http://example.com",      "final_url": "http://example.com",      "domain": "string",      "status_code": 0,      "content_type": "string",      "title": "string",      "title_length": 0,      "description": "string",      "description_length": 0,      "h1": "string",      "h1_count": 0,      "h2_count": 0,      "words_count": 0,      "content_ratio": 0,      "depth": 0,      "response_time_ms": 0,      "response_bytes": 0,      "canonical": "string",      "canonical_present": true,      "canonical_matches_final_url": true,      "json_ld_count": 0,      "og_required_tags_present": true,      "twitter_card_present": true,      "total_links_count": 0,      "external_links_count": 0,      "internal_links_count": 0,      "total_images_count": 0,      "missing_alt_images_count": 0,      "fetched_at": "2019-08-24T14:15:22Z"    }  ],  "links": {    "next": "http://example.com"  },  "meta": {    "limit": 0,    "next_cursor": "string"  }}
GET/projects/{project_uid}/crawls/{crawl_uid}/pages/detail

Authorization

bearerApiKey
AuthorizationBearer <token>

Create a REST API key in Settings > Connected Apps. MCP credentials do not authenticate this API.

In: header

Path Parameters

project_uid*string

Accessible project UID. Discover it with GET /projects; do not guess it.

Match^[a-z0-9]{10}$
crawl_uid*string

Crawl UID belonging to the selected project. Discover it with GET /projects/{project_uid}/crawls.

Match^[a-z0-9]{16}$

Query Parameters

url*string

Exact crawled HTTP or HTTPS page URL.

Match^https?://
Formaturi
Lengthlength <= 2048

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/projects/string/crawls/string/pages/detail?url=http%3A%2F%2Fexample.com"
{  "data": {    "url": "http://example.com",    "final_url": "http://example.com",    "domain": "string",    "status_code": 0,    "content_type": "string",    "title": "string",    "title_length": 0,    "description": "string",    "description_length": 0,    "h1": "string",    "h1_count": 0,    "h2_count": 0,    "words_count": 0,    "content_ratio": 0,    "depth": 0,    "response_time_ms": 0,    "response_bytes": 0,    "canonical": "string",    "canonical_present": true,    "canonical_matches_final_url": true,    "json_ld_count": 0,    "og_required_tags_present": true,    "twitter_card_present": true,    "total_links_count": 0,    "external_links_count": 0,    "internal_links_count": 0,    "total_images_count": 0,    "missing_alt_images_count": 0,    "fetched_at": "2019-08-24T14:15:22Z"  }}
GET/projects/{project_uid}/crawls/{crawl_uid}/links

Authorization

bearerApiKey
AuthorizationBearer <token>

Create a REST API key in Settings > Connected Apps. MCP credentials do not authenticate this API.

In: header

Path Parameters

project_uid*string

Accessible project UID. Discover it with GET /projects; do not guess it.

Match^[a-z0-9]{10}$
crawl_uid*string

Crawl UID belonging to the selected project. Discover it with GET /projects/{project_uid}/crawls.

Match^[a-z0-9]{16}$

Query Parameters

filters?

Up to 20 indexed PHP-style filter objects.

Propertiesproperties <= 20
limit?integer

Maximum records to return. Defaults to 50.

Range1 <= value <= 100
Default50
cursor?string

Opaque cursor returned by the prior response. Do not construct or alter it.

Lengthlength <= 512

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/projects/string/crawls/string/links"
{  "data": [    {      "destination_url": "string",      "target_domain": "string",      "is_external": true,      "link_count": 0,      "source_pages": 0,      "broken_link_count": 0,      "nofollow_link_count": 0    }  ],  "links": {    "next": "http://example.com"  },  "meta": {    "limit": 0,    "next_cursor": "string"  }}
GET/projects/{project_uid}/crawls/{crawl_uid}/links/sources

Authorization

bearerApiKey
AuthorizationBearer <token>

Create a REST API key in Settings > Connected Apps. MCP credentials do not authenticate this API.

In: header

Path Parameters

project_uid*string

Accessible project UID. Discover it with GET /projects; do not guess it.

Match^[a-z0-9]{10}$
crawl_uid*string

Crawl UID belonging to the selected project. Discover it with GET /projects/{project_uid}/crawls.

Match^[a-z0-9]{16}$

Query Parameters

destination_url*string

Exact HTTP or HTTPS destination URL.

Match^https?://
Formaturi
Lengthlength <= 2048
limit?integer

Maximum records to return. Defaults to 50.

Range1 <= value <= 100
Default50
cursor?string

Opaque cursor returned by the prior response. Do not construct or alter it.

Lengthlength <= 512

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/projects/string/crawls/string/links/sources?destination_url=http%3A%2F%2Fexample.com"
{  "data": [    {      "source_url": "string",      "source_status_code": 0,      "anchor_text": "string",      "fetch_status_code": 0,      "is_nofollow": true,      "target_blank": true    }  ],  "links": {    "next": "http://example.com"  },  "meta": {    "limit": 0,    "next_cursor": "string"  }}
GET/projects/{project_uid}/crawls/{crawl_uid}/images

Authorization

bearerApiKey
AuthorizationBearer <token>

Create a REST API key in Settings > Connected Apps. MCP credentials do not authenticate this API.

In: header

Path Parameters

project_uid*string

Accessible project UID. Discover it with GET /projects; do not guess it.

Match^[a-z0-9]{10}$
crawl_uid*string

Crawl UID belonging to the selected project. Discover it with GET /projects/{project_uid}/crawls.

Match^[a-z0-9]{16}$

Query Parameters

filters?

Up to 20 indexed PHP-style filter objects.

Propertiesproperties <= 20
limit?integer

Maximum records to return. Defaults to 50.

Range1 <= value <= 100
Default50
cursor?string

Opaque cursor returned by the prior response. Do not construct or alter it.

Lengthlength <= 512

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/projects/string/crawls/string/images"
{  "data": [    {      "image_url": "string",      "alt": "string",      "width": 0,      "height": 0,      "fetch_status_code": 0,      "is_external": true,      "is_data_uri": true,      "is_svg": true,      "has_srcset": true,      "source_pages": 0    }  ],  "links": {    "next": "http://example.com"  },  "meta": {    "limit": 0,    "next_cursor": "string"  }}
GET/projects/{project_uid}/crawls/{crawl_uid}/images/sources

Authorization

bearerApiKey
AuthorizationBearer <token>

Create a REST API key in Settings > Connected Apps. MCP credentials do not authenticate this API.

In: header

Path Parameters

project_uid*string

Accessible project UID. Discover it with GET /projects; do not guess it.

Match^[a-z0-9]{10}$
crawl_uid*string

Crawl UID belonging to the selected project. Discover it with GET /projects/{project_uid}/crawls.

Match^[a-z0-9]{16}$

Query Parameters

image_url*string

Exact HTTP or HTTPS image URL.

Match^https?://
Formaturi
Lengthlength <= 2048
limit?integer

Maximum records to return. Defaults to 50.

Range1 <= value <= 100
Default50
cursor?string

Opaque cursor returned by the prior response. Do not construct or alter it.

Lengthlength <= 512

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/projects/string/crawls/string/images/sources?image_url=http%3A%2F%2Fexample.com"
{  "data": [    {      "source_url": "string",      "source_status_code": 0,      "alt": "string",      "width": 0,      "height": 0,      "fetch_status_code": 0    }  ],  "links": {    "next": "http://example.com"  },  "meta": {    "limit": 0,    "next_cursor": "string"  }}