Comparisons | Screpy
Comparisons
Compare Screpy projects and completed crawls to measure SEO changes, technical issue deltas, and performance differences.
Compare like with like
Use comparisons to investigate a change between selected projects or completed crawl baselines. Keep the target, crawl settings, and comparison period meaningful before interpreting a delta. Select the underlying snapshots through crawls.
A change in an issue count is evidence to investigate, not its cause. Use the related crawl data to find the affected URLs and validate the next action.
Compare two to five projects
POST /comparisons/projects
Uses the latest completed crawl by default, or a selected completed crawl for each supplied selection.
Authorization
bearerApiKey
AuthorizationBearer
Create a REST API key in Settings > Connected Apps. MCP credentials do not authenticate this API.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
project_uids*: array<ProjectUid>
Items 2 <= items <= 5
crawl_selections?: array<CrawlSelection>
Items items <= 5
Response Body
200 application/json
401 application/json
403 application/json
404 application/json
409 application/json
422 application/json
429 application/json
curl -X POST "https://api.screpy.com/v1/comparisons/projects" \
-H "Content-Type: application/json" \
-d '{\n "project_uids": [\
"string",\
"string"\
]\n }'
Example Response:
{
"data": {
"projects": [\
{\
"project": {\
"uid": "string",\
"name": "string",\
"domain": "string"\
},\
"crawl": {\
"crawl_uid": "string",\
"status": "string",\
"state": "string",\
"status_label": "string",\
"started_at": "2019-08-24T14:15:22Z",\
"finished_at": "2019-08-24T14:15:22Z",\
"last_synced_at": "2019-08-24T14:15:22Z",\
"progress": {\
"pages_crawled": 0,\
"pages_total": 0,\
"max_pages": 0,\
"current_depth": 0\
},\
"health": {\
"score": 0,\
"confidence": 0,\
"coverage": 0\
},\
"issues": {\
"critical": 0,\
"warnings": 0,\
"notices": 0,\
"total": 0\
},\
"totals": {\
"pages": 0,\
"indexable_pages": 0,\
"noindex_pages": 0,\
"links": 0,\
"images": 0,\
"unique_urls": 0\
}\
}\
}\
]\
}\
}
Compare two completed crawls
POST /comparisons/crawls
Deltas are calculated as second - first.
Authorization
bearerApiKey
AuthorizationBearer
Create a REST API key in Settings > Connected Apps. MCP credentials do not authenticate this API.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
first*: CrawlSelection
second*: object
crawl_uid must differ from first.crawl_uid.
Response Body
200 application/json
401 application/json
403 application/json
404 application/json
409 application/json
422 application/json
429 application/json
curl -X POST "https://api.screpy.com/v1/comparisons/crawls" \
-H "Content-Type: application/json" \
-d '{\n "first": {\
"project_uid": "string",\
"crawl_uid": "string"\
},\
"second": {\
"project_uid": "string",\
"crawl_uid": "string"\
}\
}'
Example Response:
{
"data": {
"first": {
"crawl_uid": "string",
"status": "string",
"state": "string",
"status_label": "string",
"started_at": "2019-08-24T14:15:22Z",
"finished_at": "2019-08-24T14:15:22Z",
"last_synced_at": "2019-08-24T14:15:22Z",
"progress": {
"pages_crawled": 0,
"pages_total": 0,
"max_pages": 0,
"current_depth": 0
},
"health": {
"score": 0,
"confidence": 0,
"coverage": 0
},
"issues": {
"critical": 0,
"warnings": 0,
"notices": 0,
"total": 0
},
"totals": {
"pages": 0,
"indexable_pages": 0,
"noindex_pages": 0,
"links": 0,
"images": 0,
"unique_urls": 0
},
"project_uid": "string"
},
"second": {
"crawl_uid": "string",
"status": "string",
"state": "string",
"status_label": "string",
"started_at": "2019-08-24T14:15:22Z",
"finished_at": "2019-08-24T14:15:22Z",
"last_synced_at": "2019-08-24T14:15:22Z",
"progress": {
"pages_crawled": 0,
"pages_total": 0,
"max_pages": 0,
"current_depth": 0
},
"health": {
"score": 0,
"confidence": 0,
"coverage": 0
},
"issues": {
"critical": 0,
"warnings": 0,
"notices": 0,
"total": 0
},
"totals": {
"pages": 0,
"indexable_pages": 0,
"noindex_pages": 0,
"links": 0,
"images": 0,
"unique_urls": 0
},
"project_uid": "string"
},
"deltas": {
"property1": 0,
"property2": 0
}
}
}