Skip to content

[feature] Add REST API to manage notification preferences of other users #255

Closed
@nemesifier

Description

@nemesifier

We need a REST API endpoint which will allow administrators to change the notification settings of other users.

The API endpoint path could be: /api/v1/users/user/{id}/notification-setting/ or if that proves to be hard to implement due to the modular structure of OpenWISP, we could use /api/v1/notifications/user/{id}/setting/.

Only the following users can access this endpoint:

  • superusers
  • org manager (load only notification settings of the orgs managed which match the orgs the user is member of, if the user being viewed is not member of any organization managed by the org manager, return 403)
  • authenticated users who match the user id (any user wishing to change their own preferences).

The logic of this API endpoint must be shared with the logic of the existing /api/v1/notification/user-settings/ and avoid duplication.

We need to return the organization name in the API output (let's make sure we use select_related() to avoid generating too many queries when loading this data from the DB).

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions