Reddit Search API

Створіть застосунок для пошуку в історичних обговореннях

Спроєктуйте фільтри, відображення неповних результатів і бюджет звернень для історичного пошуку Reddit, не припускаючи повного охоплення архіву.

Отримати API-ключ

Перетворіть дослідницьке запитання на поля форми

Почніть із запитання, на яке має відповідати інтерфейс. Досліднику ремонту можуть бути потрібні обговорення заміни акумуляторів в одній спільноті за обраний період. Розділіть фразу, спільноту й дати на самостійні поля. Показуйте надіслані значення разом із результатами, щоб зміна фільтра не змінювала сенсу порівняння непомітно для читача. Назву власного робочого набору краще пов'язувати саме з умовами запиту, а не з обіцянкою повного опису цієї теми на Reddit.

Звертайтеся до /v1/search з q та документованими фільтрами, не створюючи довільної мови запитів. Значення from і to є датами UTC у форматі YYYY-MM-DD, причому to включається. Оберіть kind=post або kind=comment, якщо дописи й коментарі вирішують різні частини завдання. Поріг min_score визначає включення запису, а не релевантність результату. Незалежний історичний архів не описує поточної активності й не представляє офіційного погляду Reddit на питання, яке досліджується.

Зробіть відсутній контекст помітним

Перша відповідь містить обмежений набір плоских записів. Відображайте початковий текст як дані, а не виконуйте його як розмітку застосунку. Зберігайте доступні ідентифікатори й дати поряд із власними обчисленими позначками. Якщо є parent_id або link_id, локальне групування допомагає показати зв'язки між уже отриманими елементами. Воно не додає пропущених повідомлень і не гарантує повної розмови. Позначайте власні висновки окремо, щоб користувач не приймав їх за поля чи оцінки, розраховані самим сервісом.

Будуйте пагінацію навколо реальних меж: до 100 записів за звернення та до 100 сторінок для одного запиту. Показуйте, чи є підсумок точним числом, нижньою оцінкою або невідомим значенням. Досягнення ліміту потребує пояснення, а не твердження, що збіги закінчилися. Вужчі проміжки дат можуть упорядкувати роботу клієнта, проте саме розбиття не доводить ані повноти збору, ані відсутності повторів. У своєму робочому наборі перевіряйте ідентифікатори перед об'єднанням результатів кількох окремих звернень.

Відрізняйте порожній успішний результат від помилки

У стані клієнта розділяйте порожній успішний пошук і невдале звернення. Порожня та непорожня успішні відповіді коштують по одному кредиту. За 400 виправте параметри, за 401 перевірте ключ, за 402 врахуйте недостатній баланс, за 429 зменште частоту або зробіть паузу. Помилка джерела повертає резерв. Відповідь відкритого маршруту статусу не доводить справності пошукового джерела, навіть коли HTTP-застосунок доступний. Повтор після усунення причини є окремим зверненням зі звичайними правилами оплати успішного отримання даних.

Для локального досліду зберігайте обрані фільтри, наслідки запитів і повернуті ідентифікатори відповідно до власних правил поводження з даними. Такі нотатки пояснюють спостереження, але не обіцяють однакових результатів у майбутньому чи постійного доступу до архівних матеріалів. Рахуйте додаткові сторінки та успішні повтори окремо. За ціни $1 за 1000 успішних запитів порівнюйте заплановану кількість звернень із балансом перед запуском розкладу; платне поповнення $50 дає 50 000 кредитів.