serpstatr
The aim of serpstatr is to provide a wrapper for the latest version
of Serpstat
API. The main purpose of this API is automation of common SEO and
PPC tasks like keywords research and competitors analysis in Google.
All package functions names have the same structure:
- sst_ prefix to distinguish from other packages
- Serpstat modules prefix (for example, sa_ for search analytics)
- API function name
How to use
Get your API
key. It is required in all package functions. Set it as a
SERPSTAT_API_TOKEN system variable. All functions are using it by
default.
Search analytics
Check if you have enough limits to make API calls
sst_sa_stats()$summary_info$left_lines
Get database ID to make requests:
sst_sa_database_info()$data
Call functions to get keywords data:
- sst_sa_domains_info() - domain summary stats
- sst_sa_domain_keywords() - domain keywords with stats
- sst_sa_domain_history() - domain historical metrics
- sst_sa_domain_top_pages() - domain top pages (V2)
- sst_sa_domain_organic_competitors() - domain organic
competitors
- sst_sa_domain_regions_count() - number of keywords per region for a
domain
- sst_sa_keywords_info() - keywords summary stats
- sst_sa_keywords() - search Serpstat database for keywords with
stats
- sst_sa_related_keywords() - semantically related keywords for a
given keyword
- sst_sa_keyword_top() - get list of URLs from SERP for a keyword
- sst_sa_keyword_trends() - monthly search volume trends for a list of
keywords
- sst_sa_domain_competitors() - domain competitors in organic search
(V2)
- sst_sa_domain_ad_keywords() - domain advertising keywords
- sst_sa_domain_export_positions() - export domain positions
report
- sst_sa_domain_ad_competitors() - domain advertising competitors
- sst_sa_domain_all_regions_traffic() - traffic in all regions for a
domain
- sst_sa_domain_urls() - list of URLs within domain
- sst_sa_domains_intersection() - intersection of domains
- sst_sa_domains_unique_keywords() - unique keywords of domains
- sst_sa_market_categories() - market research categories
- sst_sa_category_top_domains() - top domains in market category
- sst_sa_domains_rating_data() - rating data for domains
- sst_sa_domain_keywords_by_language() - domain keywords by
language
- sst_sa_domain_aio_summary() - AI Overview brand summary
- sst_sa_domain_aio_brand_opportunities() - AI Overview brand
opportunities
- sst_sa_keyword_get_suggestions() - suggestions for keyword
- sst_sa_keyword_get_competitors() - competitors for keyword (V2)
- sst_sa_keyword_get_ad_keywords() - advertising keywords for
keyword/domains
- sst_sa_keyword_get_ads_competitors() - advertising competitors for
keyword
- sst_sa_keyword_get_top_urls() - top URLs for keyword
- sst_sa_keyword_export_suggestions() - export keyword
suggestions
- sst_sa_keyword_get_keyword_top() - list of URLs from SERP for
keyword
- sst_sa_keyword_export_keywords_phrase() - export keywords
report
- sst_sa_url_get_summary_traffic() - summary traffic data for URL
- sst_sa_url_get_url_competitors() - competing URLs
- sst_sa_url_get_url_keywords() - keywords for URL
- sst_sa_url_get_url_missing_keywords() - missing keywords for
URL
sst_sa_keywords_info(
keywords = c('seo', 'ppc', 'serpstat'),
se = 'g_us',
sort = list(cost = 'asc'),
return_method = 'df'
)$data
- Backlinks
Call functions to get the data on the backlinks:
- sst_bl_domain_summary() - backlinks summary stats for the
domain
- sst_bl_referring_domains() - referring domains stats for the
domain
- sst_bl_anchors() - referring anchors of backlinks
- sst_bl_top_anchors() - top anchors
- sst_bl_domains_intersection() - intersecting referring domains
- sst_bl_domains_intersection_summary() - intersecting referring
domains summary
- sst_bl_sdr_distribution() - SDR distribution of referring
domains
- sst_bl_tld_distribution() - TLD distribution of referring
domains
- sst_bl_changes_history() - backlinks changes history
- sst_bl_lost_backlinks() - lost backlinks
- sst_bl_new_backlinks() - new backlinks
- sst_bl_outlinks() - outgoing links from domain/page
- sst_bl_lost_outlinks() - lost outgoing links
- sst_bl_out_domains() - outgoing domains
- sst_bl_redirected_domains() - redirected domains
- sst_bl_threats() - domain-level malicious/vulnerability threats
- sst_bl_threats_links() - link-level malicious/vulnerability
threats
- sst_bl_out_threats() - outgoing malicious/vulnerability threats at
domain level
- sst_bl_out_threats_links() - outgoing malicious/vulnerability
threats at link level
- sst_bl_top_pages() - top pages of domain by backlinks count
sst_bl_domain_summary(
domain = 'serpstat.com',
search_type = 'domain',
return_method = 'list'
)$data
- Rank tracker
Call functions to get the data on your rankings:
- sst_rt_project_regions() - all regions for a project
- sst_rt_serp_history() - search results history in search region by
keyword
- sst_rt_positions_history() - ranking history for the domain or URL
in selected search region
- sst_rt_competitors() - data on competitors in search results
- sst_rt_get_rt_project() - get Rank Tracker project details
- sst_rt_add_rt_project() - add a new Rank Tracker project
- sst_rt_get_projects() - list all Rank Tracker projects
- sst_rt_get_project_status() - get project crawling status
- sst_rt_add_project_keywords() - add keywords to project
- sst_rt_get_project_keywords() - list keywords in project
- sst_rt_update_project_keywords() - update project keywords
configuration
- sst_rt_delete_project_keywords() - delete project keywords
- sst_rt_create_project_tags() - create tags for project
- sst_rt_delete_project_tags() - delete project tags
- sst_rt_get_project_tags() - list project tags
- sst_rt_add_project_competitor() - add competitor to project
- sst_rt_get_project_competitors() - list project competitors
- sst_rt_delete_project_competitor() - delete project competitor
- sst_rt_get_project_positions() - get positions data for project
keywords
- sst_rt_get_rt_schedule() - get Rank Tracker schedule settings
- sst_rt_set_rt_schedule() - configure Rank Tracker schedule
- sst_rt_delete_project_mirror() - delete mirror domain
- sst_rt_add_project_mirror() - add mirror domain
- sst_rt_get_project_mirrors() - list project mirror domains
- sst_rt_delete_project_region() - delete crawling region from
project
- sst_rt_add_project_region() - add crawling region to project
- sst_rt_get_cities() - list cities for location targeting
- sst_rt_get_districts() - list districts for location targeting
- sst_rt_get_countries() - list countries for location targeting
- sst_rt_create_and_run_project_tracking() - create project and run
tracking immediately
- sst_rt_run_project_tracking() - trigger project rank tracking
crawl
sst_rt_positions_history(
project_id = project_id,
region_id = region_id,
date_from = '2020-12-01',
date_to = '2020-12-30',
keywords = c('seo', 'ppc', 'serpstat'),
url = 'serpstat.com',
sort = 'keyword',
order = 'desc',
page = 1,
size = 100,
return_method = 'list'
)$data$keywords
- Audit
Call functions to audit your website for technical issues:
- sst_au_start() - start website audit
- sst_au_get_summary() - get website audit summary
- sst_au_get_report_without_details() - get audit report overview
- sst_au_get_error_elements() - get error elements list
- sst_au_get_sub_elements_by_crc() - get sub-elements details by
crc
- sst_au_get_categories_statistic() - get audit category
statistics
- sst_au_get_history_by_count_error() - get error count history
- sst_au_get_list() - list audit reports for project
- sst_au_get_scan_user_url_list() - list user urls to scan
- sst_au_get_default_settings() - get default audit settings
- sst_au_get_settings() - get audit settings for project
- sst_au_set_settings() - configure audit settings for project
- sst_au_stop_site() - stop running site audit
- sst_au_export() - export audit report
- sst_au_scan() - scan single page
- sst_au_rescan() - rescan single page
- sst_au_stop_page() - stop page audit
- sst_au_remove() - remove page audit project
- sst_au_get_page_audit() - get page audit report details
- sst_au_get_audit() - get full page audit data
- sst_au_get_error_rows() - get specific error rows from page
audit
- sst_au_get_pages_list() - list single page audit projects
- sst_au_get_reports_list_by_page() - list reports for page audit
project
- sst_au_page_names() - list page names in team
- sst_au_user_log() - view user action log
sst_au_start(
project_id = project_id
)$data$reportId
- Project management
Call functions to manage your projects:
- sst_pm_create_project() - create a new project
- sst_pm_delete_project() - delete an existing project
- sst_pm_list_projects() - list all projects available for the
user
sst_pm_create_project(
domain = 'serpstat.com',
name = 'Serpstat'
)$data$project_id
- SERP Crawling (Scraper)
Call functions to parse and crawl search engine results:
- sst_sc_add_task() - add a crawling task
- sst_sc_get_task_result() - get crawling task result
- sst_sc_add_keyword_list() - submit batch of keywords for
crawling
- sst_sc_get_keyword_serp() - retrieve raw SERP HTML/data for
keyword
- sst_sc_get_parsing_balance() - check SERP crawling balance
- sst_sc_get_list() - list past crawling tasks
sst_sc_add_task(
keywords = c("explain the gauss rifle principle", "why iphone better than samsung"),
country_id = 23
)$data$taskId
- Credits
Call functions to get your API limits and usage:
- sst_cr_get_audit_stats() - get site audit API limits and usage
stats
- Domain classification
Call functions to classify domains by categories:
- sst_dc_add_task() - add domain classification task
- sst_dc_get_task() - get domain classification task result
- sst_dc_get_task_list() - list domain classification tasks
- Team management
Call functions to manage team members:
- sst_tm_activate_user() - activate team member
- sst_tm_add_user() - add new team member
- sst_tm_get_list() - list team members
- sst_tm_deactivate_user() - deactivate team member
- sst_tm_remove_user() - remove team member from team
- Volume checker
Call functions to check search volumes of keywords:
- sst_vc_add_keyword_list_freq() - submit batch of keywords to check
search volume
- sst_vc_get_task_result() - get volume check task results
- sst_vc_get_task_status() - get volume check task status
Installation
To get the current development version from GitLab:
devtools::install_gitlab('alexdanilin/serpstatr')
Issues
Send all issues on GitLab
page.