DataForSEO
SEO, search-engine results, keyword research, backlinks and AI visibility data.
Ресурсы OnPage API
Ресурсы, не являющиеся страницами, которые нашёл обход: изображения, скрипты, таблицы стилей — с их кодами состояния и размерами. Постраничная выдача через search_after_token. Читает завершённый обход, поэтому нужен id из post_dataforseo_on_page_submit, и возвращает crawl_progress и crawl_status со значениями max_crawl_pages, pages_in_queue и pages_crawled — проверяйте их, прежде чем доверять небольшому результату: у ещё идущего обхода просто меньше данных. Для ресурсов, до которых обходчик вообще не смог добраться, используйте post_dataforseo_on_page_uncrawlable_resources. 💰 Бесплатно на стороне upstream: запрос к завершённому обходу ничего не стоит, платить нужно только за сам обход.
Справочные цены
- Тарификация: стоимость ответа по данным провайдера.
- Справочная оценка запроса: USD 0.012.
- Справочный множитель для клиента: 1.0. Не применяйте его повторно к уже рассчитанной сумме клиента.
Справочные метаданные, а не коммерческое предложение для аккаунта, гарантированная цена или лимит расходов. Кредиты ресурсов — не кредиты Felo. Итоговые списания определяются записями биллинга Felo.
- Тип: array (object | null)[]
- filtersТип: array (object | null)[] | null
массив параметров фильтрации результатов
необязательное поле
можно добавить несколько фильтров одновременно (не более 8)
между условиями нужно указать логический операторandилиor
поддерживаются следующие операторы:regex,not_regex,<,<=,>,>=,=,<>,in,not_in,like,not_like
оператор%можно использовать сlikeиnot_likeдля сопоставления любой строки длиной от нуля символов
пример:["resource_type","=","stylesheet"][["resource_type","=","image"],
"and",["checks.is_https","=",false]][["fetch_timing.duration_time",">",1],"and",[["total_transfer_size",">",100],"or",["checks.high_loading_time","=",true]]]Пустой объект - idТип: string
- limitТип: integer | null
максимальное количество возвращаемых ресурсов
необязательное поле
значение по умолчанию:100
максимальное значение:1000 - offsetТип: integer | null
смещение в массиве результатов возвращаемых ресурсов
необязательное поле
значение по умолчанию:0
максимальное значение:2000000
если указать значение10, первые десять ресурсов в массиве результатов будут пропущены, а данные будут предоставлены для последующих ресурсов - orderТип: array string[] | null
_by правила сортировки результатов
необязательное поле
для сортировки результатов можно использовать те же значения, что и в массивеfilters
возможные типы сортировки:asc- результаты сортируются по возрастаниюdesc- результаты сортируются по убыванию
для задания типа сортировки следует использовать запятую
пример:["size,desc"]
обратите внимание, что в одном запросе можно задать не более трёх правил сортировки
для разделения нескольких правил сортировки следует использовать запятую
пример:["size,desc","fetch_timing.fetch_end,desc"] - relevantТип: array string[] | null
_pages _filters фильтрация ресурсов по соответствующим страницам
необязательное поле
это поле позволяет получить ресурсы со страниц, соответствующих заданным параметрам
здесь можно применять те же фильтры, что доступны для эндпоинта pages
можно добавить несколько фильтров одновременно (не более 8)
между условиями нужно указать логический операторandилиor
поддерживаются следующие операторы:regex,not_regex,<,<=,>,>=,=,<>,in,not_in,like,not_like
оператор%можно использовать сlikeиnot_likeдля сопоставления любой строки длиной от нуля символов
пример:["checks.no_image_title","=",true] - searchТип: string | null
_after _token токен для последующих запросов
необязательное поле
предоставляется в том же поле ответа на каждый запрос;
используйте этот параметр, чтобы избежать тайм-аутов при получении более20,000результатов в одном запросе;
указав уникальное значениеsearch_after_tokenиз массива ответа, вы получите последующие результаты исходной задачи;
значенияsearch_after_tokenуникальны для каждой последующей задачи;
Примечание: если в запросе указанsearch_after_token, все остальные параметры должны совпадать с предыдущим запросом - tagТип: string | null
пользовательский идентификатор задачи
необязательное поле
ограничение — 255 символов
этот параметр позволяет идентифицировать задачу и сопоставить её с результатом
указанное значениеtagвы найдёте в объектеdataответа - urlТип: string | null
URL страницы
необязательное поле
укажите это поле, если хотите получить ресурсы для конкретной страницы
обратите внимание, что для полученияmetaресурса с определённого URL нужно указать URL в этом поле;
если при создании задачи не указанurl,metaресурса в результатах будет возвращён на основе данных страницы, на которой наш краулер впервые обнаружил ресурс
- Тип: object | null · Response36Afe1097B20_OnPageResourcesResponseInfo200
- Тип: number | null Формат: doublecost
общая стоимость задач, USD
- Тип: integer | nullstatus
_code общий код состояния. Полный список кодов ответа можно найти здесь.
- Тип: string | nullstatus
_message общее информационное сообщение. Полный список общих информационных сообщений можно найти здесь.
- Тип: array (object | null)[] | nulltasks
массив задач
- Тип: object | null · Response36Afe1097B20_OnPageResourcesTaskInfo
- costТип: number | null Формат: double
общая стоимость задач, USD
- dataТип: object | null
содержит те же параметры, что вы указали в POST-запросе
- propertyТип: object | null
Name
- idТип: string | null
идентификатор задачи уникальный идентификатор задачи в нашей системе в формате UUID
- pathТип: array (string | null)[] | null
путь URL
- resultТип: array (object | null)[] | null
массив результатов
- crawlТип: string | null
_progress статус сеанса сканирования
возможные значения:in_progress,finished - crawlТип: object | null · Response36Afe1097B20_CrawlStatusInfo
_status сведения о сеансе сканирования
- maxТип: integer | null Формат: int64
_crawl _pages максимальное количество страниц для обхода указывает заданный при постановке задачи лимит max_crawl_pages
- pagesТип: integer | null Формат: int64
_crawled количество просканированных страниц
- pagesТип: integer | null Формат: int64
_in _queue количество страниц, которые сейчас находятся в очереди на сканирование
- currentТип: integer | null
_offset Integer numbers.
- itemsТип: array (object | null)[] | null
массив элементов
- cacheТип: object | null · Response36Afe1097B20_CacheControl
_control инструкции по кэшированию
- cachableТип: boolean | null
указывает, можно ли кэшировать страницу
- ttlТип: integer | null
время жизни, время кэширования ресурса браузером
- checksТип: object | null
проверки сайта, проверки на странице, связанные со страницей
- propertyТип: boolean | null
Name
- contentТип: string | null
_encoding тип кодировки
- encodedТип: integer | null
_size размер страницы после кодирования, указывает размер закодированной страницы в байтах
- fetchТип: string | null
_time дата и время получения ресурса, в формате UTC: “yyyy-mm-dd hh-mm-ss +00:00” пример: 2019-11-15 12:57:46 +00:00
- lastТип: object | null · Response36Afe1097B20_LastModified
_modified содержит данные об изменениях, связанных с ресурсом; если данных нет, значение будет null
- headerТип: string | null
дата и время последнего изменения заголовка. В формате UTC: "yyyy-mm-dd hh-mm-ss +00:00". Пример: 2019-11-15 12:57:46 +00:00. Если данных нет, значение будет null
- metaТип: string | null
_tag дата и время последнего изменения метатега. В формате UTC: "yyyy-mm-dd hh-mm-ss +00:00". Пример: 2019-11-15 12:57:46 +00:00. Если данных нет, значение будет null
- sitemapТип: string | null
дата и время последнего изменения карты сайта. В формате UTC: "yyyy-mm-dd hh-mm-ss +00:00". Пример: 2019-11-15 12:57:46 +00:00. Если данных нет, значение будет null
- locationТип: string | null
заголовок location, указывает URL для перенаправления страницы
- mediaТип: string | null
_type типы медиа, используемые для отображения страницы
- resourceТип: object | null · Response36Afe1097B20_OnPageResourceIssueInfo
_errors ошибки и предупреждения ресурса
- errorsТип: array (object | null)[] | null
ошибки ресурсов
- columnТип: integer | null
столбец, в котором обнаружена ошибка
- lineТип: integer | null
строка, в которой обнаружена ошибка
- messageТип: string | null
текстовое сообщение об ошибке. Полный список возможных ошибок HTML можно найти здесь
- statusТип: integer | null
_code общий код состояния. Полный список кодов ответа можно найти здесь. Примечание: мы настоятельно рекомендуем предусмотреть систему обработки связанных исключительных ситуаций и ошибок.
- warningsТип: array (object | null)[] | null
предупреждения по ресурсам
- columnТип: integer | null
столбец, в котором обнаружена ошибка
- lineТип: integer | null
строка, в которой обнаружена ошибка
- messageТип: string | null
текстовое сообщение об ошибке. Полный список возможных ошибок HTML можно найти здесь
- statusТип: integer | null
_code общий код состояния. Полный список кодов ответа можно найти здесь. Примечание: мы настоятельно рекомендуем предусмотреть систему обработки связанных исключительных ситуаций и ошибок.
- resourceТип: string | null
_type тип элемента
- serverТип: string | null
версия сервера
- sizeТип: integer | null
размер ресурса, указывает размер данной страницы в байтах
- statusТип: integer | null
_code общий код состояния. Полный список кодов ответа можно найти здесь. Примечание: мы настоятельно рекомендуем предусмотреть систему обработки связанных исключительных ситуаций и ошибок.
- totalТип: integer | null Формат: int64
_transfer _size размер сжатой страницы, указывает размер данной страницы после сжатия
- urlТип: string | null
URL страницы
- itemsТип: integer | null Формат: int64
_count количество элементов в массиве результатов
- searchТип: string | null
_after _token - totalТип: integer | null Формат: int64
_items _count общее количество просканированных релевантных элементов
- resultТип: integer | null Формат: int64
_count число элементов в массиве result
- statusТип: integer | null
_code код состояния задачи формируется DataForSEO, может находиться в диапазоне 10000-60000 Полный список кодов ответа можно найти здесь.
- statusТип: string | null
_message информационное сообщение задачи Полный список общих информационных сообщений можно найти здесь.
- timeТип: string | null
время выполнения, секунды
- Тип: integer | null Формат: int64tasks
_count число задач в массиве tasks
- Тип: integer | null Формат: int64tasks
_error число задач в массиве tasks, возвращённых с ошибкой
- Тип: string | nulltime
общее время выполнения, секунды
- Тип: string | nullversion
текущая версия API
application/json - 400
Запрос не удалось обработать. Проверьте параметры запроса.
- 401
Требуется действительный API-ключ Felo.
- 402
Запрос не может быть выполнен: не выполнено требование биллинга.
- 403
Аккаунту не разрешено выполнять эту операцию.
- 429
Достигнут лимит запросов или расходов.
- 502
Сервис не смог выполнить запрос.
- 503
API или сервис биллинга временно недоступны.
- 504
Истекло время ожидания обработки запроса.
- default
Ответ с ошибкой; сквозные ответы upstream могут использовать форматы провайдера
application/json
curl https://openapi.felo.ai/v1/beta/dataforseo/on_page/resources \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '[
{
"id": "07281559-0695-0216-0000-c269be8b7592",
"filters": [
[
"resource_type",
"=",
"image"
],
"and",
[
"size",
">",
100000
]
],
"order_by": [
"size,desc"
],
"limit": 10
}
]'
{
"version": null,
"status_code": null,
"status_message": null,
"time": null,
"cost": null,
"tasks_count": null,
"tasks_error": null,
"tasks": [
{
"id": null,
"status_code": null,
"status_message": null,
"time": null,
"cost": null,
"result_count": null,
"path": [
null
],
"data": null,
"result": [
{
"crawl_progress": null,
"crawl_status": {
"max_crawl_pages": null,
"pages_in_queue": null,
"pages_crawled": null
},
"search_after_token": null,
"current_offset": null,
"total_items_count": null,
"items_count": null,
"items": [
{
"resource_type": null,
"status_code": null,
"location": null,
"url": null,
"resource_errors": "[Max Depth Exceeded]",
"size": null,
"encoded_size": null,
"total_transfer_size": null,
"fetch_time": null,
"cache_control": "[Max Depth Exceeded]",
"checks": null,
"content_encoding": null,
"media_type": null,
"server": null,
"last_modified": "[Max Depth Exceeded]"
}
]
}
]
}
]
}