API для поиска
Как работает поиск в AACsearch — простой REST API для товаров, управление индексом и настройка фильтров.
API поиска AACsearch
AACsearch предоставляет простой REST API для поиска товаров. Вы можете использовать его с помощью готовых SDK или делать HTTP-запросы напрямую.
Основное назначение
Поиск товаров — основная функция API. Отправляйте запрос с названием товара, фильтрами и параметрами сортировки, получайте результаты для вывода в приложении.
Как работает поиск
Простой поиск товаров
POST https://app.aacsearch.com/api/search
Authorization: Bearer ss_search_your_key
Content-Type: application/json
{
"indexSlug": "products",
"q": "laptop"
}Ответ содержит найденные товары:
{
"found": 42,
"hits": [
{ "id": "doc_1", "title": "MacBook Pro", "price": 2499 },
{ "id": "doc_2", "title": "Dell XPS", "price": 1299 }
],
"page": 1,
"perPage": 10
}Фильтрация результатов
Ограничьте результаты по цене, бренду или доступности:
{
"indexSlug": "products",
"q": "laptop",
"filterBy": "price:[500..2000] && brand:=Apple"
}Сортировка
Упорядочьте результаты по цене, дате или релевантности:
{
"indexSlug": "products",
"q": "laptop",
"sortBy": "price:asc"
}Пагинация
Выводите результаты постранично:
{
"indexSlug": "products",
"q": "laptop",
"page": 2,
"perPage": 20
}Ключи доступа
Используйте ключи поиска (ss_search_*), чтобы отправлять поисковые запросы из браузера или приложения. Создавайте и управляйте ключами в панели управления AACsearch.
Полная документация по параметрам
- Фильтры, сортировка и пагинация — как использовать filterBy, sortBy, page, perPage
- Мультипоиск и сложные запросы — выполнить несколько поисков в одном запросе
- Скопированные токены — ограничить поиск для определённого клиента
- Ошибки и лимиты — что делать при ошибках
Использование SDK
Вместо HTTP-запросов вы можете использовать готовую библиотеку:
- Python SDK — для скриптов и бэкенда
- Node.js SDK — для JavaScript и TypeScript приложений
- Другие языки — Go, Swift и т.д.
Примеры
JavaScript / TypeScript
import { SearchClient } from "@aacsearch/client";
const client = new SearchClient({
baseUrl: "https://app.aacsearch.com",
apiKey: "ss_search_...",
indexSlug: "products",
});
const results = await client.search({
q: "laptop",
filterBy: "price:[500..2000]",
sortBy: "price:asc",
});Python
from aacsearch import SearchClient
client = SearchClient(
base_url="https://app.aacsearch.com",
api_key="ss_search_...",
index_slug="products",
)
results = client.search(q="laptop", filter_by="price:[500..2000]")curl / HTTP
curl -X POST https://app.aacsearch.com/api/search \
-H "Authorization: Bearer ss_search_..." \
-H "Content-Type: application/json" \
-d '{
"indexSlug": "products",
"q": "laptop",
"filterBy": "price:[500..2000]"
}'