Project-Stage-Academy / UA-1131_Forum-PS

0 stars 0 forks source link

Implement Subscription Functionality for Investors to Follow Startups #35

Open mehalyna opened 9 months ago

mehalyna commented 9 months ago

Sub-Tasks:

  1. Design Subscription Data Model:

    • Define a model for managing subscriptions, which includes relationships between investors and startups, subscription dates, and any relevant preferences for notifications.
    • Add migrations to update DB.
  2. Create Subscription API Endpoint:

    • Develop an API endpoint that allows investors to create a subscription to a startup. This endpoint should handle POST requests to create new subscription records in the database.
  3. Develop Unsubscribe API Endpoint:

    • Implement an API endpoint to handle DELETE requests, allowing investors to unsubscribe from startups. This endpoint should securely authenticate the investor and remove the relevant subscription record.
  4. List Subscriptions API Endpoint:

    • Create an API endpoint for investors to GET their subscriptions list. This endpoint should return information about the startups they are subscribed to.
  5. Implement Notification Preferences API:

    • Develop an API endpoint that allows investors to set and update their notification preferences for each subscription, such as the frequency and types of updates they wish to receive.
  6. Subscription Notification System:

    • Design a system to trigger notifications to investors based on their subscriptions and preferences. This might involve scheduled jobs or event-driven mechanisms to send updates about subscribed startups.
  7. Secure API Authentication and Authorization:

    • Implement robust authentication and authorization mechanisms to ensure that subscription actions are securely processed, protecting the privacy of both investors and startups.