Анализ сайта API 2.0
Обновленная версия API.
Данные, полученные через API анализа, можно использовать для создания новых сервисов, приложений и виджетов. API предоставляет данные более чем по 70 тестам, историю данных и возможность их обновления.
Стоимость получения данных из базы (данные могут быть не актуальными) — 1 лимит.
Стоимость обновления всех тестов и данных — 5 лимитов (актуально для тарифов с августа 2024 года).
Как использовать API?
ЧЧтобы получить данные по домену, сначала рекомендуется сделать запрос на статус — "Получение статуса базового анализа". Это позволит вам узнать актуальность данных по последнему обновлению отчета. Этот запрос не имеет лимитов.
Если данные свежие, то есть были обновлены в течение последних 30 дней, просто выполните запрос на "Получение базового анализа". Если данные устарели, вы можете сразу запросить их обновление. Учтите, что процесс обновления занимает от 1 до 5 минут, но в часы пик может занять больше времени.
Проверить, обновился ли отчет, можно также через запрос статуса. После обновления статуса и данных вы сможете получить полные данные анализа.
Как получить данные
Данные отдаются в формате JSON. Для получения данных необходимо сделать соответствующий запрос.
Получение базового анализа (GET-запрос)
https://apis.pr-cy.ru/api/v1.1.0/analysis/base/%DOMAIN%?key=%KEY%
Получение статуса базового анализа (GET-запрос)
https://apis.pr-cy.ru/api/v1.1.0/analysis/status/base/%DOMAIN%?key=%KEY%
Обновление базового анализа (POST запрос)
https://apis.pr-cy.ru/api/v1.1.0/analysis/update/base/%DOMAIN%?key=%KEY%
Получение расширенного анализа (GET-запрос)
https://apis.pr-cy.ru/api/v1.1.0/analysis/advanced/%DOMAIN%?key=%KEY%
Получение статуса расширенного анализа (GET-запрос)
https://apis.pr-cy.ru/api/v1.1.0/analysis/status/advanced/%DOMAIN%?key=%KEY%
Обновление расширенного анализа (POST-запрос)
https://apis.pr-cy.ru/api/v1.1.0/analysis/update/advanced/%DOMAIN%?key=%KEY%
При необходимости можно ограничить список тестов только необходимыми, а также скрыть историю результатов. Для этого следует использовать параметры в GET-запросе: tests
, excludeHistory
.
https://apis.pr-cy.ru/api/v1.1.0/analysis/base/%DOMAIN%?key=%KEY%&excludeHistory=1&tests=%TESTS%
%KEY%
— ваш ключ. Который можно получить в настройках.
%DOMAIN%
— проверяемый домен.
%TESTS%
— список тестов через запятую. Например: page404StatusCode,robotsTxt
.
Playground (необходим API-ключ):
Примеры и использование
Наше API чаще всего используются студиями для быстрого анализа, мониторинга и создания отчётов.
Как можно использовать:
White-label анализ сайта
Полностью рабочий анализ сайта в вашем оформлении у вас на сайте.
Помощь для создания клиентского аудита сайта
Вы получаете все данные по сайту клиента и пишите свои тексты на каждый тест. После, аудит передаётся клиенту.
Массовый мониторинг
Через API вы получаете данные по списку ваших сайтов, смотрите историю и отслеживаете показания на своей стороне.
Другое
Различные боты для мессенджеров, виджеты, создание отчётов и другое.
Пример скрипта, для вывода нескольких тестов из анализа.
Доступные тесты:
Test | Results | Description |
---|---|---|
adultContent | adultContent false | trueadultWords null | (found words) | Adult words on page |
analysisBotDisallowed | isDisallowed bool | The website is closed for indexing (for PR-CY BOT) |
avgVisitDuration | avgVisitDuration number | Traffic — Avg Visit Duration (sec) |
bounceRate | bounceRate number | Traffic — Bounce Rate (%) |
category | categoryTopName string | Category web-site |
countryRank | countryCode Code countrycountryRank number | Rating of sites by traffic on country |
facebookSocial | coverSource string (url)groupName stringlikes numberlink string (url)picture string (url) | Facebook Social Page info |
favicon | faviconSrc string (url) | Favicon |
globalRank | globalRank number | Rating of sites by traffic |
googleIndex | googleIndex number | Google Index Page (site:) |
googleTransparencyReport | googleTransparencyReportStatus success | fail | Google Safe Browsing |
httpStatusCode | allStatusCodes array redirectsfinalStatusCode number (final code)isCyclicRedirect true | false | Final Http Status Code |
ip | ip string | Domain IP |
ipCountry | ipCountryCode string (code) | IP Country |
ipIsp | ipIspName ISP NameipOrganizationName Organization Name | ISP IP |
loadTime | connectionTimeout true | falseloadTime number (sec)percent number (Better than) | Load Time |
mainPageDescription | description stringdescriptionIsGood true | falsedescriptionLength number | Website Meta Description |
mainPageEncoding | encoding string | Website Encoding |
mainPageExternalLinks | externalCount numberexternalIndexCount number | Website External Links (single main page) |
mainPageHeaders | headers array: [text, type: (h1-h5)]headersAreGood true | falseheadersCount array | Website Page Headers (single main page) |
mainPageInternalLinks | internalCount numberinternalIndexCount number | Website Page Internal Links (single main page) |
mainPagePageSize | pageSize number | Website Page Size (KB) |
mainPageSickness | sickness number | Text sickness on main page |
mainPageTechs | browserTechs array | MainPage used Techs |
mainPageTextLength | textLength number | MainPage Text Length |
mainPageTitle | title stringtitleIsGood true | falsetitleLength number | Main Page Meta Title |
mainPageWordsCount | wordsCount number | Main Page Words Count |
megaindexBacklinks | megaindexBacklinks array | Backlinks (Megaindex) |
megaindexDomainsCount | megaindexDomainsCount number | Backlinks Domains Count (Megaindex) |
megaindexElinks | megaindexElinks number | Elinks (Megaindex) |
megaindexElinksUniq | megaindexElinksUniq number | Elinks Uniq (Megaindex) |
megaindexGoogle | megaindexGoogle array | Website keyword from Google (Megaindex) |
megaindexHistoryGoogle | effVolume numbervolume numberwords numberwords3 numberwords5 numberwords10 numberwords20 numberwords50 number | Keywords History Google (Megaindex) |
megaindexHistoryYandex | effVolume numbervolume numberwords numberwords3 numberwords5 numberwords10 numberwords20 numberwords50 number | Keywords History Yandex (Megaindex) |
megaindexLinksCount | megaindexLinksCount number | Links Count (Megaindex) |
megaindexOrganicLinks | megaindexOrgPercent numbermegaindexSeoPercent numbermegaindexSeoPercentDiff number | Organic Links (Megaindex) |
megaindexRank | megaindexDomainRankLog numbermegaindexTrustRankLog number | Rank (Megaindex) |
megaindexYandex | megaindexYandex array | Website keyword from yandex (Megaindex) |
microdataOpenGraph | ogDescription stringogFound true | falseogImage stringogTitle string | Microdata Open Graph |
microdataSchemaOrg | microdataSchemaOrgExists true | false | Microdata Schema.Org |
page404BackLink | backLink true | false | 404 page backlink to homepage |
page404StatusCode | statusCode number | 404 page status code |
pageSpeedAvoidPlugins | pageSpeedAvoidPlugins true | false | Google page Speed Avoid Plugins |
pageSpeedConfigureViewport | pageSpeedConfigureViewport true | false | Google page Speed Configure Viewport |
pageSpeedDesktop | cumulativeLayoutShift {score: number, value: number}largestContentfulPaint {score: number, value: number}pageSpeed {score: number, value: number} | Google page Speed Desktop |
pageSpeedEnableGzipCompression | pageSpeedEnableGzipCompression true | false | Google page Speed Enable Gzip Compression |
pageSpeedLeverageBrowserCaching | pageSpeedLeverageBrowserCaching {resourcesCount: number, items: Array} | Google page Speed Leverage Browser Caching |
pageSpeedMinifyResources | pageSpeedMinifyResources {css: 'true | false', js: 'true | false'} | Google page Speed Minify Resources |
pageSpeedMobile | cumulativeLayoutShift {score: number, value: number}largestContentfulPaint {score: number, value: number}pageSpeed {score: number, value: number} | Google page Speed Mobile |
pageSpeedOptimizeImages | pageSpeedOptimizeImages true | false | Google pageSpeedOptimizeImages |
pageSpeedSizeContentToViewport | pageSpeedSizeContentToViewport true | false | Google page Speed Size Content To Viewport |
pageSpeedUnusedCssRules | pageSpeedUnusedCssRules true | false | Google page Speed Unused Css Rules |
pageSpeedUseLegibleFontSizes | pageSpeedUseLegibleFontSizes true | false | Google page speed use legible font sizes |
pagesPerVisit | pagesPerVisit number | Pages Per Visit (Traffic) |
prcyRank | prcyGrade numberprcyRankLinksFactor stringprcyRankTotal numberprcyRankTrafficFactor stringprcyRankTrustFactor string | PRCY Rank ("high", "medium", "low") |
publicStatistics | publicStatisticsAlexaVisits numberpublicStatisticsAlexaVisitsMonthly numberpublicStatisticsLiveInternetVisits numberpublicStatisticsLiveInternetVisitsMonthly numberpublicStatisticsMetrikaVisits numberpublicStatisticsMetrikaVisitsMonthly numberpublicStatisticsPageViewsDaily numberpublicStatisticsPageViewsMonthly numberpublicStatisticsPageViewsWeekly numberpublicStatisticsPrcyDate datepublicStatisticsPrcyVisits numberpublicStatisticsPrcyVisitsMonthly numberpublicStatisticsSourceLink stringpublicStatisticsSourceType stringpublicStatisticsVisitsDaily numberpublicStatisticsVisitsMonthly numberpublicStatisticsVisitsWeekly number | Website traffic info |
robotsTxt | robotsFileExists true | falserobotsFileHash stringrobotsFileMainPageDisallowedRobots array[] | Robots.txt |
roskomnadzor | roskomnadzorDomainForbidden true | falseroskomnadzorIpForbidden true | false | Russian Federal Service for Supervision |
sameCounters | sameCountersActualFound numbersameCountersTotalFound numbersameCountersWithDomains {} | Domain with same counters |
sameIps | sameIpsTotalFound numbersameIpsWithDomains {ip: {dateFound: {}, dateLost: {}, linkedDomains: Array}} | Domains with same IP |
screenshotDesktop | src string | Screenshot Desktop |
screenshotSmartphone | src string | Screenshot Smartphone |
sitemap | sitemapUrl string | Website |
socialCounters | facebookLinkShareCount numberoverallCount numbervkontakteShareCount number | All Social Share Counters |
socialTraffic | socialTraffic[socials] array[ domain: string, percent: number] | Traffic Social |
ssl | certValidTo datesslAccess true | false | Website SSL |
statisticsSystems | statisticsSystems array | Website Analytics Systems |
totalBytes | items arrayitemsCount numberpageSize number | Google Speed Test Total Bytes Resources |
trafficSources | trafficSourcesDirect numbertrafficSourcesMail numbertrafficSourcesReferral numbertrafficSourcesSocial numbertrafficSourcesOrganicSearch numbertrafficSourcesPaidSearch numbertrafficSourcesAds number | Website |
twitterSocial | followers numberfollowing numberlink stringprofileDescription stringprofileImageUrl stringprofileName stringtweets number | Twitter account info |
vkontakteSocial | groupCity stringgroupCounters [market_services: number, articles: number, narratives: number]groupCountry stringgroupDescription stringgroupMembersCount numbergroupName stringgroupPhoto stringgroupPhotoBig stringgroupPhotoMedium stringgroupStatus stringgroupType stringgroupVerified numberlink string | VK.com info |
whoisCreationDate | whoisCreationDate date | Whois Creation Date |
whoisExpirationDate | whoisExpirationDate date | Whois Expiration Date |
wwwRedirect | wwwRedirect true | false | Www Redirect to without www |
yandexAchievements | yandexAchievementsOfficial true | falseyandexAchievementsMarketRating numberyandexAchievementsHttps true | falseyandexAchievementsTurbo true | false | Yandex Achievements |
yandexAgs | yandexAgs true | false | Website |
yandexIndex | yandexIndex number | Yandex Index pages |
yandexSafeBrowsing | yandexSafeBrowsing true | false | Yandex Safe Browsing |
yandexSqi | yandexSqi number | Yandex Sqi |