Site Audit
Configure, start and inspect bounded crawls.
Enable SEO on a project first. Use the returned numeric id as campaign_id.
The project's folder_id is a different identifier.
semrush project-enable-seo --folder-id 123 --confirm
semrush audit-limits
semrush audit-info --campaign-id 456Create before starting
audit-create creates public-site settings and refuses an existing audit.
It does not launch a crawl. To replace an existing configuration, use
audit-configure with every option you want to retain. Omitted options use
the documented defaults. Its domain must match the project's projectDomain.
semrush audit-create \
--campaign-id 456 --name 'Example audit' --domain example.com \
--page-limit 100 --dry-run
semrush audit-create \
--campaign-id 456 --name 'Example audit' --domain example.com \
--page-limit 100 --confirmDefaults: manual scheduling, email disabled, no subdomains, mobile SiteAuditBot, website discovery, HTTPS, normal crawl delay and JavaScript rendering disabled. Robots.txt disallow rules remain respected.
Optional settings include allow/disallow paths, removed URL parameters, excluded
checks, sitemap discovery, user agent, JavaScript rendering and crawl speed.
Use audit-configure --help for the full list and your plan's audit-limits for
allowances. JavaScript rendering can require a higher plan.
schedule_day: 0 manual, 1-7 Monday-Sunday, 8 daily. Selecting a recurring schedule
creates future crawl runs. --notify explicitly enables completion emails.
Protected-site authentication and Google Analytics connections require the web UI. The CLI refuses to replace settings when those connections already exist.
Start and inspect
semrush audit-start --campaign-id 456 --dry-run
semrush audit-start --campaign-id 456 --confirm
semrush audit-status --campaign-id 456
semrush audit-info --campaign-id 456
semrush audit-snapshots --campaign-id 456
semrush audit-snapshot --campaign-id 456 --snapshot-id 789Starting consumes crawl allowance and uses the saved schedule and notification
settings. Inspect audit-info first when using an existing campaign.
Responses retain Semrush's native JSON fields. audit-start returns an opaque string
snapshot_id; an unfinished snapshot may not have final metrics yet. Historical
snapshots and summaries are available after Semrush finishes processing.
Use the web UI for detailed issue/page tables, abort/finalize controls and connected integrations. Deleting a project also deletes its attached audit.
Request evidence
The configuration and launch contracts come from the current Site Audit wizard, settings module and API client. A disposable account project verified configuration, launch, status and snapshot reads with manual scheduling, email disabled and a 10-page cap.