C# SDK engine

Google Play Books

Книги и аудиокниги Google Play: поиск по фразе, категориям, plain search, чарты, секции и пагинация.

engine: google_play_books constant: XylopSearchEngines.GooglePlayBooks GET /search
C# пример

Вызов через XylopSearchClient

using Xylop.Api.Client;

var client = new XylopSearchClient(new HttpClient(), "YOUR_API_KEY");

using var response = await client.SearchJsonAsync(
    XylopSearchEngines.GooglePlayBooks,
    new Dictionary<string, string?>
    {
        ["q"] = "coffee",
        ["books_category"] = "coll_1689",
        ["gl"] = "us",
        ["hl"] = "en",
        ["price"] = "1",
    });

Для типизированного режима используйте `SearchAsync<TResponse>` и response-модель из `Xylop.Logic.SerpApiResponses.*`, которая входит в пакет C# SDK.

Endpoint

HTTP контракт

URL
https://api.xylop.ru/search
Engine
google_play_books
API key
Передается SDK автоматически из настроек клиента.
Входные параметры

Параметры запроса

Параметр Тип Обязателен Значение Описание
api_key SDK string Да Ключ Xylop API. В C# SDK задается один раз в XylopSearchClientOptions.ApiKey или в конструкторе клиента.
engine SDK string Да google_play_books Движок Google Play Books.
q string Нет coffee Поисковая фраза. Можно не указывать для plain search или category search.
books_category string Нет coll_1689 Категория Google Play Books.
gl string Нет us Код страны Google Play.
hl string Нет en Язык интерфейса.
price number Нет 1 Фильтр цены для q: 1 free, 2 paid.
age string Нет AGE_RANGE2 Возрастной фильтр для children's books.
chart string Нет topselling_free Значение из chart_options для top charts.
next_page_token string Нет pagination.next_page_token Токен следующей страницы.
section_page_token string Нет section token Токен пагинации внутри отдельной секции.
see_more_token string Нет see_more_token Токен раскрытия отдельной секции.
Выходные параметры

Поля ответа

Поле Тип Источник Описание
search_metadata object пример ответа Метаданные запроса: статус, идентификатор, время выполнения и служебная информация провайдера.
search_parameters object пример ответа Нормализованные параметры, с которыми upstream-поиск выполнил запрос.
chart_options array пример ответа Типизированное поле ответа для этого engine; структура зависит от upstream-провайдера и параметров запроса.
organic_results array пример ответа Основные органические результаты выдачи: позиции, заголовки, ссылки и сниппеты.
pagination object пример ответа Данные пагинации или токены для перехода к следующей странице.
JSON

Пример ответа

{
  "search_metadata": {
    "status": "Success",
    "google_play_books_url": "https://play.google.com/store/search?q=coffee&c=books&hl=en&gl=us"
  },
  "search_parameters": {
    "engine": "google_play_books",
    "q": "coffee",
    "hl": "en",
    "gl": "us"
  },
  "chart_options": [
    {
      "text": "Top selling",
      "value": "topselling_paid"
    }
  ],
  "organic_results": [
    {
      "title": "Books about coffee",
      "see_more_token": "...",
      "items": [
        {
          "title": "The World Atlas of Coffee",
          "link": "https://play.google.com/store/books/details?id=...",
          "product_id": "...",
          "rating": 4.6,
          "author": "James Hoffmann",
          "category": "Cooking",
          "price": "$14.99",
          "extracted_price": 14.99,
          "thumbnail": "https://books.google.com/books/publisher/content/images/frontcover/...",
          "description": "A guide to coffee from beans to brewing."
        }
      ]
    }
  ],
  "pagination": {
    "next_page_token": "..."
  }
}