C# SDK engine
Google Reverse Image
Обратный поиск по изображению: размеры похожих изображений, inline images, knowledge graph и страницы, где найдено изображение.
C# пример
Вызов через XylopSearchClient
using Xylop.Api.Client;
var client = new XylopSearchClient(new HttpClient(), "YOUR_API_KEY");
using var response = await client.SearchJsonAsync(
XylopSearchEngines.GoogleReverseImage,
new Dictionary<string, string?>
{
["image_url"] = "https://i.imgur.com/5bGzZi7.jpg",
["q"] = "optional text query",
["location"] = "Austin, Texas, United States",
["uule"] = "w+CAIQICINVW5pdGVkIFN0YXRlcw",
["google_domain"] = "google.com",
});
Для типизированного режима используйте `SearchAsync<TResponse>` и response-модель из `Xylop.Logic.SerpApiResponses.*`, которая входит в пакет C# SDK.
Endpoint
HTTP контракт
- URL
https://api.xylop.ru/search- Engine
google_reverse_image- API key
- Передается SDK автоматически из настроек клиента.
Входные параметры
Параметры запроса
| Параметр | Тип | Обязателен | Значение | Описание |
|---|---|---|---|---|
api_key
SDK
|
string | Да | — | Ключ Xylop API. В C# SDK задается один раз в XylopSearchClientOptions.ApiKey или в конструкторе клиента. |
engine
SDK
|
string | Да |
google_reverse_image
|
Движок Google Reverse Image. |
image_url
|
string | Да | https://i.imgur.com/5bGzZi7.jpg | Публичный URL изображения для обратного поиска. |
q
|
string | Нет | optional text query | Дополнительная поисковая фраза. |
location
|
string | Нет | Austin, Texas, United States | Город или регион поиска. Нельзя использовать вместе с uule. |
uule
|
string | Нет | w+CAIQICINVW5pdGVkIFN0YXRlcw | Google encoded location. Нельзя использовать вместе с location. |
google_domain
|
string | Нет |
google.com
|
Региональный домен Google. |
gl
|
string | Нет |
us
|
Код страны. |
hl
|
string | Нет |
en
|
Язык интерфейса. |
lr
|
string | Нет | lang_en | Ограничение языка результатов, например lang_fr|lang_de. |
start
|
number | Нет |
0
|
Смещение результатов: 0, 10, 20 и так далее. |
safe
|
string | Нет | active | Фильтр explicit-контента: active или off. |
tbs
|
string | Нет | qdr:d | Расширенные фильтры Google, например по дате или размеру. |
device
|
string | Нет |
desktop
|
desktop, tablet или mobile. |
Выходные параметры
Поля ответа
| Поле | Тип | Источник | Описание |
|---|---|---|---|
search_metadata |
object | пример ответа | Метаданные запроса: статус, идентификатор, время выполнения и служебная информация провайдера. |
search_parameters |
object | пример ответа | Нормализованные параметры, с которыми upstream-поиск выполнил запрос. |
search_information |
object | пример ответа | Сводка по выдаче: примерное число результатов, время поиска и дополнительные статусы. |
image_sizes |
array | пример ответа | Типизированное поле ответа для этого engine; структура зависит от upstream-провайдера и параметров запроса. |
inline_images |
array | пример ответа | Изображения и связанные с ними ссылки, превью и источники. |
image_results |
array | пример ответа | Изображения и связанные с ними ссылки, превью и источники. |
JSON
Пример ответа
{
"search_metadata": {
"status": "Success",
"google_reverse_image_url": "https://www.google.com/searchbyimage?image_url=https://i.imgur.com/5bGzZi7.jpg"
},
"search_parameters": {
"engine": "google_reverse_image",
"image_url": "https://i.imgur.com/5bGzZi7.jpg",
"google_domain": "google.com"
},
"search_information": {
"organic_results_state": "Results for exact spelling",
"query_displayed": "example image"
},
"image_sizes": [
{
"title": "All sizes",
"link": "https://www.google.com/search?tbs=simg:..."
}
],
"inline_images": [
{
"title": "Example image source",
"source": "https://example.com/source",
"thumbnail": "https://example.com/thumb.jpg",
"original": "https://example.com/original.jpg"
}
],
"image_results": [
{
"position": 1,
"title": "Example page with matching image",
"link": "https://example.com/page",
"displayed_link": "example.com",
"snippet": "A page where this image appears."
}
]
}