ReVanced / revanced-releases-api

🚀 JSON API for ReVanced Releases
https://releases.revanced.app
GNU Affero General Public License v3.0
78 stars 17 forks source link

feat: Implement authorized clients for protected endpoints #4

Closed alexandreteles closed 1 year ago

alexandreteles commented 1 year ago

Is your feature request related to a problem? Please describe.

As described in the linked milestone, before we can implement a proper announcement system for the API, we need a system to create, edit and delete (or deactivate) clients/consumers that'll access protected endpoints in the API.

Describe the solution you'd like

Ideally the implementation will make use of our existing infrastructure and grow on top of it. Clients will be stored in their own Redis database in our current instance as well as any banned PASETO tokens or tokens pertaining to deleted/deactivated accounts.

Describe alternatives you've considered

We considered using CouchDB to store client information, but the scope of this project does not require a secondary, specialized database.

Additional context

None. We just have to get to work.