Skip to content

Rituals

service_omni — Endpoints: Rituals

Location: backend/service_omni/app/api/v1/endpoints/rituals.py

Summary

  • Endpoints to manage scraping of Rituals Outlet product pages, to retrieve stored products and to manage the monitor cron job.

Routes

  • GET /rituals/outlets/products — Paginated retrieval of stored Rituals Outlet products.
  • Query params: page (int, default=1), page_size (int, default=50), search (optional), sort_by (price|name|updated_at), sort_order (asc|desc).

Example:

curl "http://localhost:8000/api/v1/rituals/outlets/products?page=1&page_size=20&search=cream"
  • POST /rituals/outlets/scan — Trigger a manual scan. Optional query param discord_webhook to forward notifications.

Example:

curl -X POST "http://localhost:8000/api/v1/rituals/outlets/scan?discord_webhook=https://hooks.example.com/xxx"
  • POST /rituals/outlets/cron/start — Schedule or update the Rituals cron job. Query param: schedule (cron expression, default 0 * * * *), optional discord_webhook.

Example (schedule at 03:00 daily):

curl -X POST "http://localhost:8000/api/v1/rituals/outlets/cron/start?schedule=0%203%20*%20*%20*&discord_webhook=https://hooks.example.com/xxx"
  • POST /rituals/outlets/cron/stop — Stop the scheduled job.
  • GET /rituals/outlets/cron/status — Return scheduling status.

Implementation & notes