ScrepyDocs

Projects

List, create, update, and delete the Screpy projects available to your REST API key.

Discover project IDs first

List projects before calling project-specific endpoints. Use the returned project_uid, not a display name, for crawls, crawl data, comparisons, and health requests.

The list can include projects owned by the account and projects shared with it. Confirm the project scope before updating or deleting a project, especially in an automation that acts on more than one account. Use account when the workflow also depends on current allowances.

GET/projects

List projects available to the authenticated member, including shared team projects.

Authorization

bearerApiKey
AuthorizationBearer <token>

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

In: header

Query Parameters

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

curl -X GET "https://example.com/projects"
{  "data": [    {      "uid": "string",      "name": "string",      "domain": "string",      "role": "owner",      "crawler_enabled": true,      "crawl_count": 0,      "created_at": "2019-08-24T14:15:22Z",      "updated_at": "2019-08-24T14:15:22Z"    }  ],  "links": {    "first": "http://example.com",    "last": "http://example.com",    "prev": "http://example.com",    "next": "http://example.com"  },  "meta": {    "path": "http://example.com",    "per_page": 0,    "next_cursor": "string",    "prev_cursor": "string"  }}
POST/projects

Creates an owned project. Capacity, duplicate-domain, and plan checks run at request time.

Authorization

bearerApiKey
AuthorizationBearer <token>

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.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/projects" \  -H "Content-Type: application/json" \  -d '{    "name": "string",    "domain": "string"  }'
{  "data": {    "uid": "string",    "name": "string",    "domain": "string",    "role": "owner",    "crawler_enabled": true,    "crawl_count": 0,    "created_at": "2019-08-24T14:15:22Z",    "updated_at": "2019-08-24T14:15:22Z"  }}
GET/projects/{project_uid}

Returns the project, its latest completed crawl summary, and current 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}$

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/projects/string"
{  "data": {    "project": {      "uid": "string",      "name": "string",      "domain": "string",      "role": "owner",      "crawler_enabled": true,      "crawl_count": 0,      "created_at": "2019-08-24T14:15:22Z",      "updated_at": "2019-08-24T14:15:22Z"    },    "latest_completed_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      }    },    "on_page": {      "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      ]    }  }}
PATCH/projects/{project_uid}

Send only fields to update. Unknown fields and unsupported nested rule fields are rejected.

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}$

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Properties1 <= properties

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/projects/string" \  -H "Content-Type: application/json" \  -d '{}'
{  "data": {    "uid": "string",    "name": "string",    "domain": "string",    "role": "owner",    "crawler_enabled": true,    "crawl_count": 0,    "created_at": "2019-08-24T14:15:22Z",    "updated_at": "2019-08-24T14:15:22Z"  }}
DELETE/projects/{project_uid}

Only the project owner can delete a project.

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}$

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://example.com/projects/string"
Empty