All notable changes to the asolytics-api skill. Versions here are skill versions (skills/asolytics-api/VERSION), not API versions — the Asolytics Public API itself is still 1.0.0-alpha.
The format follows Keep a Changelog, and this project adheres to Semantic Versioning.
Synced against the API docs as of 2026-08-04.
POST /v1/keywords/ranking/force-recheck— order an on-demand re-scan of the store top for up to 500 phrases in one (store, country). Returns{"status": "accepted"}as soon as the re-check is queued; fresh positions land inkeywords/ranking/applications/rankingminutes later. Optional per-phrase webhook (webhook.url,webhook.headers,webhook.include_positions). Costs 15 tokens per unique phrase, +1 with a webhook, +1 more withinclude_positions.- Cross-country tracking folders — folders now carry
settings.cross_country(trueby default). A cross-country folder spans every country of the project; a country-scoped folder (false) keeps its membership per country. Toggle it viaPATCH /v1/tracking/folders/{folder}. - Optional
country_codeonDELETE /v1/tracking/folders/{folder}/keywords— omit it to remove the keyword from the folder in every country, pass it to remove only that country's membership of a country-scoped folder. - New filters on
GET /v1/tracking/keywords—filters[folder_ids][](max 100 folder ids) andfilters[deduplicate_modificators](collapse phrases differing only by case or leading/trailing punctuation; off by default). - Project access levels —
GET /v1/projects/listnow returns projects the caller owns, projects shared with them, and (for enterprise team leads/owners) projects owned by members below them. Each project carriesaccess.owner.emailandaccess.level(read/edit/owner). 403"Access to the project is denied" documented on every project-scoped endpoint (tracking, folders, recommended keywords, competitors, per-country counters).
- Breaking (API response): ranking positions in
GET /v1/keywords/rankingare now{position, item: {origin_id, title}}— the previousapp_infokey is gone. POST /v1/tracking/keywordscan now answer402with either the plan-limit error or the project-access error.- Dropped the stale "async rank tracking jobs" wording from
SKILL.md— the real, documented endpoint iskeywords/ranking/force-recheck.
- Regenerated
references/openapi.jsonandreferences/endpoints.mdviascripts/sync_openapi.py. - Updated
SKILL.md,references/api-overview.md, andREADME.md; bumpedVERSION,SKILL.md,.claude-plugin/plugin.json, and.claude-plugin/marketplace.jsonto 1.2.0.
GET /v1/applications/ranking/latest-by-keywords— latest known position per keyword in one call.GET /v1/projects/countries-keywords-counts— per-country tracked / recommended / ranking keyword counters with day-over-daydynamic(reflects the previous day).GET /v1/subscription/limits— plantotalvsusedfor keywords, apps, archived apps, and public API tokens (newSubscriptiontag).
- Breaking (API):
GET /v1/recommended-keywordsis now paginated (page/per_page, 100–1000) withfilters[recommended_keyword_state][]andfilters[sources][]. - Regenerated the API reference snapshot; updated
SKILL.md,references/api-overview.md, andREADME.md.
- Claude Code plugin marketplace (
.claude-plugin/) for one-line install.
- Hardened
scripts/update.sh: download validation, timestamped backups (last 3 kept),rsync --deletesync with an overlay fallback. - Hardened
scripts/sync_openapi.py: explicit User-Agent, request timeout, and actionable error messages; refuses to overwrite references when the fetched spec has nopaths.
- Initial
asolytics-apiagent skill:SKILL.md,references/api-overview.md, generatedreferences/endpoints.md, the rawreferences/openapi.jsonsnapshot,scripts/sync_openapi.py,scripts/update.sh, and the version self-check.