synopackage_dotnet icon indicating copy to clipboard operation
synopackage_dotnet copied to clipboard

Synopackage API v2

Open szyb opened this issue 4 years ago • 0 comments

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

szyb avatar Mar 31 '22 20:03 szyb