synopackage_dotnet
synopackage_dotnet copied to clipboard
Synopackage API v2
Create v2 API that will:
- remove redundant paths i.e. /api/Changelogs/GetChangelogs -> /api/Changelogs
- add "v2" in url: i.e. /api/v2/*
- remove redundant data not displayed on the page. i.e. CustomUserAgent in /api/Sources/GetSource?sourceName=x
- document OpenAPI for all methods
- use [Required] & other attributes to validate the input
- the website will use v2 version
- Change OpenApi description
Check list: (This list does not include /v2/ in the URL, but it will be)
- [ ] add ApiVersioning
Changelogs
- [ ] /api/Changelogs/GetChangelogs -> /api/Changelogs
Downloads
- [ ] POST /api/Download/DownloadRequest -> POST /api/Download
Models
- [ ] GET /api/Models/GetAll -> /api/Models
- [ ] Remove "family" from the output /api/Models/GetAll
- [ ] GET /api/Models/GetDefaultModel -> /api/Models?default=true
News
- [ ] GET /api/News/GetNews -> /api/News
Packages
- [ ] /api/Packages/GetServerResponse -> /api/Packages
Repository
- no change except /v2/ in url for GET /api/Repository/info
Sources
- [ ] GET /api/Sources/GetAllSources -> /api/Sources/
- [ ] GET /api/Sources/GetAllActiveSources -> /api/Sources/Active
- [ ] GET /api/Sources/GetSource -> /api/Sources?source=x
- [ ] check where those methods are used in frontend and remove properties that are not used there
Versions
- [ ] GET /api/Versions/GetAll -> /api/Versions
- [ ] GET /api/Versions/GetDefaultVersion -> /api/Versions?default=true