Перейти к содержанию

Public API Reference 🌐

Публичный API Gifty предназначен для использования внешним фронтендом (лендингом). Эти эндпоинты открыты и не требуют авторизации, но защищены от спама и злоупотреблений (Rate Limiting, Honeypot).


👥 Команда (Team)

1. Получить список команды (/team)

Возвращает список активных участников команды Gifty для отображения на лендинге.

  • URL: /api/v1/public/team
  • Метод: GET
  • Response: List[TeamMemberSchema]
    [
      {
        "id": "uuid",
        "slug": "ivan-ivanov",
        "name": "Иван Иванов",
        "role": "CEO",
        "bio": "...",
        "linkedin_url": "...",
        "photo_public_id": "...",
        "sort_order": 0
      }
    ]
    

📩 Лиды и Обратная связь (Contacts)

Все эндпоинты в этом разделе поддерживают Honeypot protection. Если поле hp заполнено, запрос считается спамом и игнорируется (возвращается успех, но данные не сохраняются).

1. Заявка инвестора (/investor-contact)

Триггерит уведомление в Telegram по топику investors. Сохраняет контакт в базу данных.

  • URL: /api/v1/public/investor-contact
  • Метод: POST
  • Body (InvestorContactCreate):
    • name (string, min 2): Имя инвестора.
    • company (string, optional): Название фонда или компании.
    • email (EmailStr): Контактная почта.
    • linkedin (HttpUrl, optional): Ссылка на профиль.
    • hp (string, optional): Honeypot (оставить пустым).

2. Заявка партнера (/partner-contact)

Триггерит уведомление в Telegram по топику partners и сохраняет данные в БД.

  • URL: /api/v1/public/partner-contact
  • Метод: POST
  • Body (PartnerContactCreate):
    • name (string): Имя представителя.
    • email (EmailStr): Почта.
    • message (string, min 10): Суть предложения.
    • website (HttpUrl, optional): Сайт компании.

3. Подписка на рассылку (/newsletter-subscribe)

Триггерит уведомление в Telegram по топику newsletter.

  • URL: /api/v1/public/newsletter-subscribe
  • Метод: POST
  • Body (NewsletterSubscribe):
    • email (EmailStr): Почта для подписки.

🎁 Рекомендации (Recommendations)

1. Генерация подборки (/generate)

Основной эндпоинт для работы квиза.

  • URL: /api/v1/recommendations/generate
  • Метод: POST
  • Headers: X-Anon-Id (UUID для анонимного отслеживания сессии).
  • Body: RecommendationRequest (ответы на вопросы квиза).
  • Response: RecommendationResponse (Hero-подарок и список альтернатив).

👉 Детальное описание логики работы движка см. в разделе Recommendation Engine.