Search
Get one Yandex results page, with every block in page order.
GET | POST /v1/yandex/searchSend parameters as a query string with GET, or as a JSON body with POST. Both are equivalent.
Request
curl "https://gateway.apinoa.com/v1/yandex/search?q=moscow+kremlin&type=images" \
-H "x-api-key: $APINOA_API_KEY"Parameters
| Parameter | Type | Required | Notes |
|---|---|---|---|
country | enum | The market, as an ISO 3166 country code. US RU TR KZ BY UA UZ DE GB FR | |
cursor | string | The previous page's cursor. Pass it alone for the next page. | |
device | enum | Which page to read: the desktop (default) or the mobile one. desktop mobile | |
image | string | An image URL: a reverse-image search instead of q (type=image). | |
lang | enum | Interface language: en (yandex.com, the default) or ru (yandex.ru). en ru | |
limit | integer 1–100 | Results wanted (default 20, at most 100). More than one page is charged per page. | |
q | string | The query, search operators included. | |
timeRange | enum | Only results from this past period. hour day week month year | |
type | enum | What to search: news, images, videos, or image for a reverse-image search. Yandex's web results are not offered. news images videos image |
The same parameters, and every response type, are in the OpenAPI document.
Response
Returns ResultsPage in data. A real response, shortened: arrays keep their first entries and long text is cut.
{
"success": true,
"data": {
"engine": "yandex",
"query": "moscow kremlin",
"type": "images",
"outcome": "results",
"country": "US",
"lang": "en",
"device": "desktop",
"page": 1,
"items": [
{
"type": "image",
"imageUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/c/c1/DSC07437-%D0%9C%D0%BE%D1%81%D0%BA%D0%BE%D0%B2%D1%81%D0%BA%D0%B8%D0%B9_%D0%9A%D1%80%D0%B5%D0%BC%D0%BB%D…",
"thumbnail": "https://avatars.mds.yandex.net/i?id=0478d2b2c1e3bc635da290a7ec93ed7a8389541d-4568991-images-thumbs&n=13",
"width": 1280,
"height": 854,
"title": "Кремль - Википедия",
"url": "https://ru.wikipedia.org/wiki/%D0%9A%D1%80%D0%B5%D0%BC%D0%BD%D0%B8%D0%BA",
"source": "ru.wikipedia.org",
"ext": {
"id": "c13a461cad3531a9d14e15d194b1f453",
"snippet": "Кремль — Википедия",
"copies": [
{
"url": "https://day.ru/public/styles/1920x1080_16_9_watermark/public/image/2026-07/screenshot_8.jpg.webp?itok=tgB7-t6o",
"width": 1920,
"height": 1080,
"bytes": 239798
},
{
"url": "https://apostrophe.ua/uploads/image/a2d88e4418642f7271777de4cf54216f.jpg",
"width": 1500,
"height": 1001,
"bytes": 1802215
}
]
},
"rank": 1
},
{
"type": "image",
"imageUrl": "https://cdn.culture.ru/c/367836.jpg",
"thumbnail": "https://avatars.mds.yandex.net/i?id=8b172529aea8e52da70a8539d9ee647e8646aea7-5338433-images-thumbs&n=13",
"width": 1350,
"height": 900,
"title": "Музеи Московского Кремля: история основания, экспозиции, соборы на территории Кр",
"url": "https://www.culture.ru/materials/94949/muzei-moskovskogo-kremlya-chto-i-gde?7",
"source": "culture.ru",
"ext": {
"id": "e07ff0761619f4d6f544159823e1163d",
"snippet": "Telegram.",
"copies": [
{"url": "https://cdn.culture.ru/c/367836.jpg", "width": 1350, "height": 900, "bytes": 152243},
{
"url": "https://moscowrussian.com/images/kremlin-church.jpg",
"width": 1200,
"height": 800,
"bytes": 263551
}
]
},
"rank": 2
},
{
"type": "image",
"imageUrl": "https://news.store.rambler.ru/img/b4d984f9a02f4f2f79bdc5a25fec1378?img-format=avif&img-1-resize=width:1280",
"thumbnail": "https://avatars.mds.yandex.net/i?id=2a6a772473ef11a574759d3c2ef99700d60d3073-12935885-images-thumbs&n=13",
"width": 1280,
"height": 720,
"title": "Что посмотреть в Московском Кремле: краткая история, достопримечательности и цен",
"url": "https://weekend.rambler.ru/tourism/56962355-chto-posmotret-v-moskovskom-kremle-kratkaya-istoriya-dostoprimechatelnosti-i-tseny-na-ekskursii/",
"source": "weekend.rambler.ru",
"ext": {
"id": "19300ddc2386aec2e7a879ec0a199c96",
"snippet": "© yulenochekk/iStock.com",
"copies": [
{
"url": "https://www.his-j.com/oe/up_img/LED0097/Tr00100420201016215043586.jpg",
"width": 4774,
"height": 3106,
"bytes": 5002584
},
{
"url": "https://cdn1.img.spnfa.ir/img/03/76/037659_0:139:3147:1909_1920x0_80_0_0_8aabe5681b4393b85463dc85a65e816a.jpg",
"width": 1920,
"height": 1080,
"bytes": 373184
}
]
},
"rank": 3
}
],
"fetchedAt": "2026-10-30T01:00:16.470Z"
}
}Errors
| Status | Code | Meaning |
|---|---|---|
| 400 | INVALID_CURSOR | The cursor is not one this operation returned. Start again without it. |
| 400 | INVALID_PARAMS | A parameter is missing, unknown or out of range, or the engine does not take it. The message names it. |
| 401 | UNAUTHORIZED | The x-api-key header is missing, or the key is revoked or unknown. |
| 402 | INSUFFICIENT_BALANCE | The balance does not cover this call. Top up in the dashboard. |
| 429 | MARKETPLACE_SATURATED | Too many concurrent calls. Retry after the Retry-After seconds. |
| 502 | UPSTREAM_ERROR | The engine answered with something unusable. Retry with backoff. |
| 503 | SERVICE_UNAVAILABLE | A temporary failure. Retry with backoff. |
Every code is listed in Errors. Failed calls are not billed.
Pricing
Price $0.0012 per call, plus $0.0012 for each extra call it makes — at most 4 more, so $0.006 in total. List price; the rate steps down above 1,000 calls a day.
Notes
- Pass
type: Yandex's web results are not offered. News comes from Yandex's Russian news edition and takes nocountryorlang. type=imagewith animageURL instead ofqruns a reverse-image search.limitabove one page reads further pages, one unit each.