Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] API Consumer Notifications #2928

Open
msm1992 opened this issue May 31, 2024 · 6 comments
Open

[Feature] API Consumer Notifications #2928

msm1992 opened this issue May 31, 2024 · 6 comments

Comments

@msm1992
Copy link

msm1992 commented May 31, 2024

Problem

Problem

  • APIM currently offers a notification mechanism that operates through the database.
  • APIM users might want to use different notification modes (ex: email, sms etc) and to support such requirements current design would require extensive modifications.

Solution

Affected Component

APIM

Version

4.4.0

Implementation

No response

Related Issues

No response

Suggested Labels

No response

@npamudika
Copy link

@npamudika
Copy link

@npamudika
Copy link

@npamudika
Copy link

@npamudika
Copy link

npamudika commented Jul 1, 2024

Sub Tasks -

  • Finalize the design - https://docs.google.com/document/d/1hVELgd-hkIIXBzIT6CGx58r4Jy0pBJ8Bz7Pzuiihvp0/edit?usp=sharing
  • Finalize the list of operations to be used - https://docs.google.com/document/d/1Hn6eb25000SZWEOsnDTsVf6e9aKFsmvKAwC2ljRLRtE/edit?usp=sharing
  • Do the async API definition - https://docs.google.com/document/d/1OHNWqiLt8w_oEfbvzxImMukCBEcOFYT_Ots0JHPAxvo/edit?usp=sharing
  • Check and refactor the implementations for Notifications Pages (with the bell icon) in Publisher and DevPortal, Notifications retrieval from the DB, Rest API changes
  • Do the UX design of the topic subscription page in the Admin portal - https://excalidraw.com/#json=cGXEqu0FxOIn8L53LnwWY,WeQcq4IYdi1Htn-yXiIaWg
  • Do the implementation for the topic subscription UI
  • Do the implementation for the topic subscription backend part - To send topic subscriptions to the Hub when a user subscribes to a topic via the UI
  • Do the implementation for the event publishing from the UI portals
  • Do the Ballerina WebSub Hub implementation to support topic subscriptions and send event notifications to the DB WebSub Server
  • Do the implementation for the DB WebSub Server to save the events to the DB
  • Do the implementation for the notifications retrieval - Should retrieve the notifications based on the logged in user + the notifications based on the subscribed topics
  • Complete the implementation to cover the full flow (Users subscribe to topics, Ballerina Hub publishes event notifications to DB websub server when an event for APIs/applications/API products related operations occurs, WebSub server saves notifications to DB, User sends a Http request via the notifications page to DB websub server to retreive the event notifications from the DB, WebSub server sends notifications to notifications page, Users view the notifications + read/unread/delete them)
  • Test the implementation for the default DB websub server
  • Test the implementation with the Ballerina websub Hub
  • Do the documentation
  • Write tests

@thisaltennakoon
Copy link

Draft PR - REST APIs required for the feature

@nandika nandika added this to the APIM 4.5.0 milestone Jul 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants