Files
javier 428eedd89d Implemented the Services and Database GET endpoints (#2)
This PR contains the work done to include the define the information sections of the `OpenAPI` specification document and all the `GET` endpoints of the _Service_ and _Database_ categories.

The following endpoints have been defined in the document, and also tested manually with `Swift`:
* GET `/`
* GET `/artists/{artist_id}`
* GET `/artists/{artist_id}/releases`
* GET `/labels/{label_id}`
* GET `/labels/{label_id}/releases`
* GET `/masters/{master_id}`
* GET `/masters/{master_id}/versions`
* GET `/releases/{release_id}`
* GET `/releases/{release_id}/rating`
* GET `/releases/{release_id}/rating/{username}`
* GET `/releases/{release_id}/stats`
* GET `/database/search`

In addition, a first version of the _Github Pages_ documentation has been generated from the `DocC` documentation catalog, and the generated Swift code from the `openapi.yaml` file.

Reviewed-on: #2
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Co-committed-by: Javier Cicchelli <javier@rock-n-code.com>
2025-10-09 23:51:39 +00:00

1 line
8.3 KiB
JSON

{"metadata":{"modules":[{"name":"DiscogsService"}],"externalID":"s:14DiscogsService10OperationsO17getArtistReleasesO5InputV5QueryV4pageSiSgvp","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"page"},{"kind":"text","text":": "},{"preciseIdentifier":"s:14DiscogsService10ComponentsO","kind":"typeIdentifier","text":"Components"},{"kind":"text","text":"."},{"preciseIdentifier":"s:14DiscogsService10ComponentsO10ParametersO","kind":"typeIdentifier","text":"Parameters"},{"kind":"text","text":"."},{"preciseIdentifier":"s:14DiscogsService10ComponentsO10ParametersO4Pagea","kind":"typeIdentifier","text":"Page"},{"kind":"text","text":"?"}],"title":"page","symbolKind":"property","role":"symbol","roleHeading":"Instance Property"},"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/DiscogsService\/documentation\/DiscogsService","doc:\/\/DiscogsService\/documentation\/DiscogsService\/Operations","doc:\/\/DiscogsService\/documentation\/DiscogsService\/Operations\/getArtistReleases","doc:\/\/DiscogsService\/documentation\/DiscogsService\/Operations\/getArtistReleases\/Input","doc:\/\/DiscogsService\/documentation\/DiscogsService\/Operations\/getArtistReleases\/Input\/Query-swift.struct"]]},"identifier":{"url":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Operations\/getArtistReleases\/Input\/Query-swift.struct\/page","interfaceLanguage":"swift"},"variants":[{"paths":["\/documentation\/discogsservice\/operations\/getartistreleases\/input\/query-swift.struct\/page"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"page"},{"kind":"text","text":": "},{"preciseIdentifier":"s:14DiscogsService10ComponentsO","kind":"typeIdentifier","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Components","text":"Components"},{"kind":"text","text":"."},{"preciseIdentifier":"s:14DiscogsService10ComponentsO10ParametersO","kind":"typeIdentifier","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Components\/Parameters","text":"Parameters"},{"kind":"text","text":"."},{"preciseIdentifier":"s:14DiscogsService10ComponentsO10ParametersO4Pagea","kind":"typeIdentifier","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Components\/Parameters\/Page","text":"Page"},{"kind":"text","text":"?"}],"platforms":["macOS"]}],"kind":"declarations"},{"content":[{"level":2,"anchor":"discussion","type":"heading","text":"Discussion"},{"style":"note","type":"aside","name":"Remark","content":[{"inlineContent":[{"text":"Generated from ","type":"text"},{"code":"#\/paths\/artists\/{artist_id}\/releases\/GET\/query\/page","type":"codeVoice"},{"text":".","type":"text"}],"type":"paragraph"}]}],"kind":"content"}],"abstract":[{"type":"text","text":"A number of page of results to return."}],"sections":[],"references":{"doc://DiscogsService/documentation/DiscogsService/Operations":{"navigatorTitle":[{"kind":"identifier","text":"Operations"}],"fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Operations"}],"url":"\/documentation\/discogsservice\/operations","role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Operations","abstract":[{"text":"API operations, with input and output types, generated from ","type":"text"},{"code":"#\/paths","type":"codeVoice"},{"text":" in the OpenAPI document.","type":"text"}],"title":"Operations"},"doc://DiscogsService/documentation/DiscogsService/Components/Parameters":{"navigatorTitle":[{"text":"Parameters","kind":"identifier"}],"abstract":[{"type":"text","text":"Types generated from the "},{"type":"codeVoice","code":"#\/components\/parameters"},{"type":"text","text":" section of the OpenAPI document."}],"role":"symbol","type":"topic","title":"Components.Parameters","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Parameters","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/discogsservice\/components\/parameters","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Components\/Parameters"},"doc://DiscogsService/documentation/DiscogsService/Components/Parameters/Page":{"url":"\/documentation\/discogsservice\/components\/parameters\/page","type":"topic","title":"Components.Parameters.Page","abstract":[{"text":"A number of page of results to return.","type":"text"}],"kind":"symbol","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Components\/Parameters\/Page","fragments":[{"kind":"keyword","text":"typealias"},{"kind":"text","text":" "},{"kind":"identifier","text":"Page"}],"role":"symbol","navigatorTitle":[{"text":"Page","kind":"identifier"}]},"doc://DiscogsService/documentation/DiscogsService/Operations/getArtistReleases/Input/Query-swift.struct":{"identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Operations\/getArtistReleases\/Input\/Query-swift.struct","type":"topic","url":"\/documentation\/discogsservice\/operations\/getartistreleases\/input\/query-swift.struct","abstract":[],"role":"symbol","kind":"symbol","navigatorTitle":[{"text":"Query","kind":"identifier"}],"title":"Operations.getArtistReleases.Input.Query","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Query","kind":"identifier"}]},"doc://DiscogsService/documentation/DiscogsService":{"url":"\/documentation\/discogsservice","abstract":[],"identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService","kind":"symbol","role":"collection","type":"topic","title":"DiscogsService"},"doc://DiscogsService/documentation/DiscogsService/Operations/getArtistReleases":{"navigatorTitle":[{"kind":"identifier","text":"getArtistReleases"}],"fragments":[{"text":"enum","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"getArtistReleases"}],"url":"\/documentation\/discogsservice\/operations\/getartistreleases","role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Operations\/getArtistReleases","abstract":[{"type":"text","text":"Get information about releases of an artist."}],"title":"Operations.getArtistReleases"},"doc://DiscogsService/documentation/DiscogsService/Operations/getArtistReleases/Input/Query-swift.struct/page":{"type":"topic","url":"\/documentation\/discogsservice\/operations\/getartistreleases\/input\/query-swift.struct\/page","role":"symbol","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Operations\/getArtistReleases\/Input\/Query-swift.struct\/page","kind":"symbol","title":"page","abstract":[{"text":"A number of page of results to return.","type":"text"}],"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"page"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Components","preciseIdentifier":"s:14DiscogsService10ComponentsO"},{"kind":"text","text":"."},{"kind":"typeIdentifier","text":"Parameters","preciseIdentifier":"s:14DiscogsService10ComponentsO10ParametersO"},{"kind":"text","text":"."},{"kind":"typeIdentifier","text":"Page","preciseIdentifier":"s:14DiscogsService10ComponentsO10ParametersO4Pagea"},{"kind":"text","text":"?"}]},"doc://DiscogsService/documentation/DiscogsService/Operations/getArtistReleases/Input":{"navigatorTitle":[{"kind":"identifier","text":"Input"}],"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Input"}],"url":"\/documentation\/discogsservice\/operations\/getartistreleases\/input","role":"symbol","type":"topic","kind":"symbol","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Operations\/getArtistReleases\/Input","abstract":[],"title":"Operations.getArtistReleases.Input"},"doc://DiscogsService/documentation/DiscogsService/Components":{"type":"topic","url":"\/documentation\/discogsservice\/components","role":"symbol","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Components","kind":"symbol","title":"Components","navigatorTitle":[{"text":"Components","kind":"identifier"}],"abstract":[{"text":"Types generated from the components section of the OpenAPI document.","type":"text"}],"fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"kind":"identifier","text":"Components"}]}}}