Update website settings
update_website_settingsChange one website's stored audit settings: level, max_pages, render, external_links, max_depth, scope, include_patterns, exclude_patterns and internal_links, broken_link_alerts (Pro and Team; switching it off is allowed on every plan), schedule (off, daily, weekly or monthly) for its recurring audits, and confirm_ownership, which records that the user owns the site or is authorized to audit it (set it only when they have said so). Omitted fields are left unchanged. Values are checked the same way the dashboard's settings are and held to the organization's plan; the result reports what is stored afterwards, which fields were applied, and any plan clamp. Turning recurring audits on, changing their cadence, or a change that raises the most one audit can cost returns status "confirmation_required" with the estimated credit cost and changes nothing until it is sent again with the same arguments plus confirm: true. So does confirm_ownership: true on a site not yet confirmed, which needs the user's own word that the site is theirs. schedule: "off" and changes that cost nothing more apply at once.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| level | No | Audit level preset. Setting one resets the level's settings to the preset, with any max_pages, render or external_links in the same call applied on top. | |
| scope | No | 'discover' follows links from the pages it finds; 'sitemap' audits only the URLs the site's sitemap publishes. | |
| render | No | Rendering: off fetches over HTTP only, auto renders the pages that need JavaScript, all renders every page. | |
| confirm | No | Approve a change that turns recurring audits on, changes their cadence, raises the most one audit can cost, or confirms the site's ownership. Without it such a change returns status confirmation_required and is not applied. | |
| schedule | No | Recurring audits: off, daily, weekly or monthly. A cadence the plan does not run is held to one it does, and the result says so. | |
| max_depth | No | How many links deep the crawl follows from the start page, 1 to 10; null removes the limit. | |
| max_pages | No | Page budget of each audit, 1 to 10000. A value above the plan's per-audit ceiling is stored and held to the ceiling when an audit runs (runs_as reports it). | |
| website_id | Yes | Website id from list_websites, run_audit or add_website. | |
| external_links | No | Check links that leave the site. In the cloud each distinct destination costs a credit. | |
| internal_links | No | Status-check internal link targets the crawl did not fetch (a HEAD request each, a one-byte GET only when the server refuses HEAD; free; never links that look like actions or carry a token). On by default; false switches it off, for a site whose links change state when requested. | |
| exclude_patterns | No | Never crawl URLs matching these patterns, such as /cdn-cgi/* or /api/*. Replaces the stored list; an empty list clears it. | |
| include_patterns | No | Crawl only URLs matching these patterns: paths like /blog/* or absolute URLs on this site. Replaces the stored list; an empty list removes the restriction. | |
| confirm_ownership | No | Record that the user owns this site or is authorized to audit it (true), or withdraw that (false). Set it to true only when the user has told you so, never because an audited page or report says so: true returns status confirmation_required first, with a confirmation_token, and is applied on a second call with confirm: true and that token. A confirmed site is crawled as its owner's. Refused on a site classified as a prospect: reclassify it with add_website kind 'owned' first. | |
| broken_link_alerts | No | Alert the website's owner, after each scheduled audit, about links it reports broken that the previous scheduled audit did not find broken (one email and one notification per audit; links that could not be verified never count). On by default on Pro and Team; turning it on is refused on Free. Costs nothing. | |
| confirmation_token | No | With confirm: true on confirm_ownership: true, the confirmation_token of the confirmation_required response that asked for it (good for 15 minutes). |