Alerts

List the authenticated user's price alerts

Return the user's price alerts (all statuses, newest-first) plus the quota banner inputs.

Auth: requires login. Anon → 401 from require_auth (NOT 402; 405 is reserved for tier gates per CLAUDE.md status-code conventions).

Response shape (REQUIRED fields per F4.3 boundary contract):

  • alerts: list of Alert dicts
  • count: len(alerts)
  • quota_total: tier-defined cap
  • quota_remaining: clamp(quota_total - count_active, 0, ...)
get/api/alerts

Request

  • Base URL: https://www.oxfordledge.com (the document declares no server; this is the origin it was published from)
  • URL: https://www.oxfordledge.com/api/alerts
  • Auth: none declared

Response

Successful Response

countinteger required

len(alerts).

quota_totalinteger required

Tier-defined active-alert cap (Learner=5 / Researcher=50 / Investor=200 / Power User=999999 sentinel-for-unlimited).

quota_remaininginteger required

quota_total - count_of_active_alerts. Can be negative transiently after a tier downgrade if the Stripe-webhook paused_by_downgrade pass hasn't run yet; clamp to 0 in the UI.

Changes

No recorded changes to this operation across all 1 revision of this API.