Пагінація, фільтрація та сортування

Опануйте ефективне отримання даних за допомогою пагінації, фільтрації та сортування. Дізнайтеся, як оптимізувати запити та зменшити кількість API-викликів за допомогою параметрів запиту.

Пагінація

Smart Money API використовує курсорну пагінацію для ефективного отримання даних. Вкажіть номер сторінки та ліміт, щоб керувати наборами результатів.

Параметр Тип За замовчуванням Максимум
page integer 1 N/A
limit integer 50 500

Приклад пагінації

cURL
# Отримати перші 100 результатів curl "https://api.smartmoneyapi.com/v1/whales/events?page=1&limit=100" # Отримати другу сторінку curl "https://api.smartmoneyapi.com/v1/whales/events?page=2&limit=100"

Інформація про пагінацію у відповіді

JSON
{ "success": true, "data": {...}, "pagination": { "page": 1, "limit": 50, "total": 420, "total_pages": 9, "has_next": true, "has_prev": false } }

Фільтрація

Фільтруйте результати за символом, біржею, напрямком та іншими критеріями. Фільтри комбінуються за логікою AND.

Фільтр Значення Приклад
symbol Торгова пара BTCUSDT, ETHUSDT
exchange bybit, binance, hyperliquid bybit
direction long, short long
min_position_size Число 10.5
min_pnl_percent Число 2.0

Приклад фільтрації

cURL
# Фільтрація за символом та напрямком curl "https://api.smartmoneyapi.com/v1/whales/events?symbol=BTCUSDT&direction=long" # Фільтрація за біржею та мінімальним розміром позиції curl "https://api.smartmoneyapi.com/v1/whales/events?exchange=bybit&min_position_size=15"

Сортування

Сортуйте результати за розміром позиції, P&L або іншими полями. Вкажіть поле та напрямок (asc/desc).

cURL
# Сортування за розміром позиції за спаданням (найбільші спочатку) curl "https://api.smartmoneyapi.com/v1/whales/events?sort=position_sizeℴ=desc" # Сортування за P&L за зростанням curl "https://api.smartmoneyapi.com/v1/whales/events?sort=pnl_percentℴ=asc"

Повні приклади

Python: Ітерація по всіх сторінках

Python
import requests def get_all_whale_positions(api_key, symbol=None): """Отримати всі позиції китів з пагінацією""" all_positions = [] page = 1 while True: params = { "page": page, "limit": 100, # Максимальний розмір партії "sort": "position_size", "order": "desc" } if symbol: params["symbol"] = symbol response = requests.get( "https://api.smartmoneyapi.com/v1/whales/events", headers={"Authorization": f"Bearer {api_key}"}, params=params ) data = response.json() all_positions.extend(data["data"]["positions"]) # Перевірити, чи є ще сторінки if not data["pagination"]["has_next"]: break page += 1 return all_positions # Використання positions = get_all_whale_positions("sk_live_abc123xyz789", symbol="BTCUSDT") print(f"Знайдено {len(positions)} позицій китів")

Найкращі практики

1. Використовуйте максимальний ліміт (100-500): Менше API-викликів для отримання тієї ж кількості даних. Ефективне пакетне отримання результатів.

2. Фільтруйте на стороні сервера: Використовуйте параметри запиту для фільтрації на джерелі, а не в коді вашого додатка. Зменшує обсяг переданих даних.

3. Сортуйте на сервері: Запитуйте відсортовані результати з API. Сортування на великих обсягах даних ефективніше на сервері.

4. Кешуйте та використовуйте пагінацію: Кешуйте результати локально та використовуйте пагінацію для мінімізації API-викликів.

5. Зупиняйтеся раніше, якщо можливо: Не завжди отримуйте всі сторінки. Зупиняйтеся, коли отримали достатньо даних для вашого випадку використання.

Дізнатися більше

Ознайомтеся з повним довідником API для всіх опцій фільтрації та сортування.

Переглянути довідник REST API
Почніть безкоштовно — 100 викликів/день, без картки

Отримуйте дані про потоки китів, фандінг, відкриті позиції та ончейн-дані з 3 бірж з одного API. Безкоштовний тариф, без кредитної картки, оновлюйте будь-коли.

Почніть безкоштовно →
Спробуйте консоль API в реальному часі → (обліковий запис не потрібен)
Отримайте ваш API-ключ за 30 секунд

Готові до розробки? Отримайте безкоштовний API-ключ (100 викликів/день, без картки) та почніть отримувати дані про китів, фандінг та ончейн-дані в реальному часі.

Отримайте ваш API-ключ →