Skip to navigation

Launch broken link scans

View as MarkdownOpen in Claude

Starts a Broken Links Checker scan: a full crawl of the websites you list in sites (type: full), or a re-check of specific pages or issues (type: page). A scan takes from minutes to several hours: follow it with “List broken link scans” and read status.

type decides the rest, and the two scopes never mix. A page scan looks like this, with an empty companion list accepted alongside the other:

{
"type": "page",
"pages": [501],
"issues": []
}

The work finishes later: see Writes and asynchronous operations. Websites that cannot be processed are reported in meta.skipped, each with a reason_code and a message, and do not fail the call. Their scan_id is always null. For a page scan, a website left with nothing to re-check is skipped too. The codes are SITE_UNREACHABLE (not connected, or has not synchronized in the last 48 hours), UNSUPPORTED (no Broken Links Checker configuration assigned, or the website’s Modular Connector is too old to check links: update it), CONFLICT (a scan is already running for this website, including one that started while your request was being processed), NOT_FOUND (a named page or issue already resolved, or a website left with nothing to re-check because every page it was named through is gone or ignored) and PERMISSION_DENIED (a page or issue id outside your token’s reach, with a null site_name). A page you ignored is never re-checked: naming only ignored pages for a website skips that website as NOT_FOUND.

Your role must be allowed to launch Broken Links Checker scans; without it the request answers 404.

Body

  • type (full or page, required): what to scan.
  • sites (array of integers, required for full): ids of the websites to act on, 1 to 50. Not allowed for page.
  • pages (array of integers, only for page): ids from “List broken link pages”, 0 to 200. Required unless issues carries at least one id, and an empty array is accepted when issues has ids.
  • issues (array of integers, only for page): ids from “List broken link issues”, 0 to 200. Required unless pages carries at least one id, and an empty array is accepted when pages has ids. Each id resolves to the pages it was found on, and a page reached through several ids in the same call is scanned once.

Errors

  • 422: type is missing or invalid; sites is sent on a page scan, or is missing, empty or over 50 ids on a full one; pages or issues is sent on a full scan, or both are missing on a page one; an id does not exist.

Authentication

AuthorizationBearer

Personal access token created in the Modular DS dashboard; read-only tokens can only call GET endpoints.

Request

This endpoint expects an object.
siteslist of doublesOptional
typestringOptional

Response

202 Accepted - one scan launched, one website skipped / 202 Accepted - page scan, mixed skips

datalist of objectsOptional
jsonapiobjectOptional
metaobjectOptional

Errors

404
Not Found Error
422
Unprocessable Entity Error