Manage Yandex Webmaster Site Data
Yandex Webmaster API management: indexing, search queries, recrawl, sitemaps, feeds, and link diagnostics.
Why it matters
Automate the management of your website within Yandex Webmaster. This asset helps you understand search queries, indexing status, and sitemap information to improve your site's performance.
Outcomes
What it gets done
Access and analyze Yandex Webmaster data.
Monitor search query performance.
Review site indexing status.
Manage sitemap submissions.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/yandex-webmaster | bash Overview
Yandex Webmaster
Yandex Webmaster API v4 site management: indexing analysis, search query reports, page recrawl, internal/external link auditing, sitemap management, and YML feeds, with a non-destructive cache-first workflow. Use for managing a site's Yandex search presence - indexing, query performance, recrawl requests, link audits, sitemaps, or product feeds - for a site verified in Yandex Webmaster.
What it does
This skill manages websites through the Yandex Webmaster API v4, covering site management and verification, indexing analysis, search query performance, page recrawl requests, internal/external link auditing, sitemap management, and YML feed handling. Like its Wordstat and Metrika counterparts, it follows a cache-first philosophy for context-window hygiene: the site list and user ID are cached long-term, reports are cached by host and parameter combination, but diagnostics, quota status, and recrawl status are always fetched live since those change too frequently to cache safely. Full report data goes to TSV files rather than flooding stdout (capped at 30 lines), with the cache searchable via grep/rg.
Every script accepts a site either by --host <domain> (resolved via a cached hosts lookup) or a direct --host-id, and the skill is explicitly non-destructive - it never deletes sites, sitemaps, or feeds, only reads and adds. Its mandatory workflow before any analysis: list available sites, ask the user which site is in question if not obvious from context (searchable by domain text), and pull a site summary (SQI score, page counts, known issues) before running task-specific reports. Its script families cover: site management (hosts.sh, host_info.sh, add_site.sh, verify.sh with DNS/HTML-file/meta-tag verification methods); site statistics (summary.sh, sqi_history.sh, live diagnostics.sh); search queries (popular_queries.sh, queries_history.sh, and a POST-based query_analytics.sh for advanced filtered analytics); indexing (indexing.sh for history/samples, important_urls.sh, an archive_export.sh for exporting all pages); pages in search results (insearch.sh, search_events.sh for appearance/disappearance tracking); recrawl (recrawl.sh supporting submit/status/list/quota actions); links (internal_links.sh for broken internal links, external_links.sh); sitemaps (sitemaps.sh with list/info/add/recrawl actions); and feeds/PRO features (feeds.sh for YML feeds, search_export.sh for PRO SERP export, regions.sh as a region reference).
When to use - and when NOT to
Use this skill when managing a site's presence in Yandex search - checking indexing status, analyzing search query performance, requesting recrawls of updated pages, auditing internal or external links, managing sitemaps, or working with YML product feeds for a site verified in Yandex Webmaster.
It requires a YANDEX_WEBMASTER_TOKEN with webmaster:hostinfo and webmaster:verify scopes configured in config/.env, and operates under hard account limits: 10,000 query-analytics requests per hour per domain, a maximum of 1,703 sites per account, 5,000 feeds per site (50 per batch), and export limited to 100 date+URL combinations - the scripts handle 429 rate-limit responses automatically. It cannot delete sites, sitemaps, or feeds by design, so it's not the tool for cleanup or removal tasks - only for adding, reading, and monitoring.
Inputs and outputs
Input is a site identified by domain or host ID, plus the specific report or action requested - indexing history, query analytics, recrawl submission, link audit, sitemap/feed management. Output is the corresponding report data, summarized to stdout or exported to TSV for larger results, or a confirmation/status for action-based operations like recrawl submission or site verification.
bash scripts/recrawl.sh --action submit --url https://example.com/page
Integrations
Built on the Yandex Webmaster API v4, with a local cache directory (cache/host_*/) storing site lists, query/indexing/insearch/link report data, searchable via standard grep/rg tooling, and reference guides for site management, sitemaps, feeds, and PRO SERP export.
Who it's for
SEO specialists and site owners managing a domain's presence in Yandex search who need indexing, query performance, recrawl, link, and feed management without repeatedly re-resolving site identity or flooding their session with raw report data.
Source README
yandex-webmaster
Work with Yandex Webmaster API v4. Manage websites, analyze indexing, search queries, page recrawl, links, feeds.
Config
Requires YANDEX_WEBMASTER_TOKEN in config/.env.
Scope: webmaster:hostinfo + webmaster:verify.
Instructions: config/README.md.
Philosophy
- Cache-first - site list and user_id are cached long-term. Reports are cached by host+params key. Diagnostics, quotas, and statuses are always live.
- Context window hygiene - stdout limited to 30 lines. Full data in TSV/file. Cache accessible via grep/rg.
- Host resolution - all scripts accept
--host <domain>(search via hosts.tsv cache) or--host-id <id>(direct ID). First hosts.sh call auto-caches the list. - No destructive ops - skill does not delete sites, sitemaps, or feeds. Read and add only.
Workflow
STOP! Before any analysis:
Get site list:
bash scripts/hosts.shAsk the user (if site is not obvious from context):
"Which site are we talking about? Provide the domain or host_id from the list."To search the cache:
bash scripts/hosts.sh --search "example"Get site summary:
bash scripts/summary.sh --host example.comRun needed reports based on user task.
Scripts
General call pattern:
bash scripts/<script>.sh --host <domain> [--action <action>] [params...]
Site Management
| Script | Description | Key params |
|---|---|---|
hosts.sh |
Site list | --search "text", --no-cache |
host_info.sh |
Site info + owners | - |
add_site.sh |
Add site | --url <url> |
verify.sh |
Site verification | --action get|start, --method DNS|HTML_FILE|META_TAG |
Site Statistics
| Script | Description | Key params |
|---|---|---|
summary.sh |
Summary: SQI, pages, issues | - |
sqi_history.sh |
SQI history | --date-from, --date-to |
diagnostics.sh |
Site issues (live) | - |
Search Queries
| Script | Description | Key params |
|---|---|---|
popular_queries.sh |
Top queries | --order-by, --device, --limit |
queries_history.sh |
Query history | --query-id (opt.), --device |
query_analytics.sh |
Advanced analytics (POST) | --text-indicator, --filter-*, --region-ids |
Indexing
| Script | Description | Key params |
|---|---|---|
indexing.sh |
Indexing history/samples | --action history|samples |
important_urls.sh |
Important URLs | --action list|history, --url |
archive_export.sh |
Export all pages | --action start|status, --task-id |
Pages in Search
| Script | Description | Key params |
|---|---|---|
insearch.sh |
Pages in search results | --action history|samples |
search_events.sh |
Appearance/disappearance | --action history|samples |
Recrawl
| Script | Description | Key params |
|---|---|---|
recrawl.sh |
Recrawl URLs | --action submit|status|list|quota, --url, --task-id |
Links
| Script | Description | Key params |
|---|---|---|
internal_links.sh |
Broken internal links | --action samples|history, --indicator |
external_links.sh |
External links | --action samples|history |
Sitemaps
| Script | Description | Key params |
|---|---|---|
sitemaps.sh |
Sitemap management | --action list|user-list|info|add|recrawl-limit|recrawl |
Feeds and PRO
| Script | Description | Key params |
|---|---|---|
feeds.sh |
YML feeds | --action list|add|change|add-status, --type, --region-ids |
search_export.sh |
PRO SERP export | --action dates|limits|start|status |
regions.sh |
Region reference | --filter "moscow" |
Common Parameters
| Param | Description |
|---|---|
--host <domain> |
Domain/URL (search via hosts.tsv) |
--host-id <id> |
Direct host_id (format: http:example.com:80) |
--action <act> |
Script subcommand |
--date-from |
Period start YYYY-MM-DD (history: default 90 days ago) |
--date-to |
Period end YYYY-MM-DD |
--limit N |
Number of records |
--offset N |
Offset |
--no-cache |
Skip cache |
Cache Strategy
Cache in cache/:
user_id.txt- user ID (permanent)hosts.json+hosts.tsv- site list (permanent, invalidated on add/verify)host_*/queries/*.tsv- query results (session, hash-keyed)host_*/indexing/*.tsv- indexing data (session)host_*/insearch/*.tsv- search data (session)host_*/links/*.tsv- link data (session)- Diagnostics, quotas, recrawl statuses - not cached (always live)
Advanced Scenarios
- Adding and verifying sites
- Search queries and analytics
- Sitemap management
- Site statistics and indexing
- Pages in search
- Page recrawl
- Broken internal links
- External links
- YML feeds
- PRO SERP export
- Doctor schedule (specification)
API Limits
- Query Analytics: 10,000 requests/hour per domain
- Scripts auto-handle 429 (Retry-After ≤ 60s → retry, else fail)
- Site limit: 1,703 per account
- Feed limit: 5,000 per site, 50 per batch
- Export limit: max 100 date+URL combinations
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.