Implemented the Authentication endpoints (#9)

This PR contains the work done to implement the *Authentication* endpoints of the Discogs API:
* GET `/oauth/request_token`
* POST `/oauth/access_token`
* GET `/oauth/identity`

Reviewed-on: #9
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Co-committed-by: Javier Cicchelli <javier@rock-n-code.com>
This commit was merged in pull request #9.
This commit is contained in:
2025-10-13 17:55:48 +00:00
committed by Javier Cicchelli
parent de5b4ff5d0
commit 9a30b69561
2517 changed files with 2674 additions and 2160 deletions
@@ -1 +1 @@
{"variants":[{"paths":["\/documentation\/discogsservice\/servers\/server1\/url()"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"url"},{"kind":"text","text":"() "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation3URLV","text":"URL"}]}]}],"metadata":{"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"url"},{"kind":"text","text":"() "},{"kind":"keyword","text":"throws"},{"kind":"text","text":" -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation3URLV","text":"URL"}],"title":"url()","role":"symbol","externalID":"s:14DiscogsService7ServersO7Server1O3url10Foundation3URLVyKFZ","roleHeading":"Type Method","modules":[{"name":"DiscogsService"}],"symbolKind":"method"},"hierarchy":{"paths":[["doc:\/\/DiscogsService\/documentation\/DiscogsService","doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers","doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers\/Server1"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"kind":"symbol","abstract":[{"type":"text","text":"Live Server"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers\/Server1\/url()"},"sections":[],"references":{"doc://DiscogsService/documentation/DiscogsService/Servers":{"abstract":[{"type":"text","text":"Server URLs defined in the OpenAPI document."}],"fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Servers","kind":"identifier"}],"title":"Servers","type":"topic","kind":"symbol","url":"\/documentation\/discogsservice\/servers","role":"symbol","navigatorTitle":[{"text":"Servers","kind":"identifier"}],"identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers"},"doc://DiscogsService/documentation/DiscogsService/Servers/Server1":{"type":"topic","title":"Servers.Server1","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers\/Server1","abstract":[{"type":"text","text":"Live Server"}],"navigatorTitle":[{"text":"Server1","kind":"identifier"}],"kind":"symbol","url":"\/documentation\/discogsservice\/servers\/server1","role":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Server1","kind":"identifier"}]},"doc://DiscogsService/documentation/DiscogsService/Servers/Server1/url()":{"abstract":[{"type":"text","text":"Live Server"}],"fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"url","kind":"identifier"},{"text":"() ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"URL","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation3URLV"}],"title":"url()","type":"topic","kind":"symbol","url":"\/documentation\/discogsservice\/servers\/server1\/url()","role":"symbol","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers\/Server1\/url()"},"doc://DiscogsService/documentation/DiscogsService":{"type":"topic","title":"DiscogsService","url":"\/documentation\/discogsservice","role":"collection","abstract":[],"kind":"symbol","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService"}}}
{"schemaVersion":{"minor":3,"patch":0,"major":0},"abstract":[{"type":"text","text":"Live Server"}],"identifier":{"url":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers\/Server1\/url()","interfaceLanguage":"swift"},"sections":[],"kind":"symbol","metadata":{"modules":[{"name":"DiscogsService"}],"title":"url()","role":"symbol","symbolKind":"method","roleHeading":"Type Method","externalID":"s:14DiscogsService7ServersO7Server1O3url10Foundation3URLVyKFZ","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"url","kind":"identifier"},{"text":"() ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"URL","preciseIdentifier":"s:10Foundation3URLV","kind":"typeIdentifier"}]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"url","kind":"identifier"},{"text":"() ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"URL","preciseIdentifier":"s:10Foundation3URLV","kind":"typeIdentifier"}]}]}],"hierarchy":{"paths":[["doc:\/\/DiscogsService\/documentation\/DiscogsService","doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers","doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers\/Server1"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/discogsservice\/servers\/server1\/url()"]}],"references":{"doc://DiscogsService/documentation/DiscogsService/Servers/Server1":{"url":"\/documentation\/discogsservice\/servers\/server1","kind":"symbol","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"enum"},{"text":" ","kind":"text"},{"text":"Server1","kind":"identifier"}],"abstract":[{"text":"Live Server","type":"text"}],"identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers\/Server1","navigatorTitle":[{"text":"Server1","kind":"identifier"}],"title":"Servers.Server1"},"doc://DiscogsService/documentation/DiscogsService/Servers":{"navigatorTitle":[{"text":"Servers","kind":"identifier"}],"abstract":[{"type":"text","text":"Server URLs defined in the OpenAPI document."}],"identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers","title":"Servers","url":"\/documentation\/discogsservice\/servers","role":"symbol","type":"topic","kind":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"Servers"}]},"doc://DiscogsService/documentation/DiscogsService/Servers/Server1/url()":{"url":"\/documentation\/discogsservice\/servers\/server1\/url()","role":"symbol","abstract":[{"text":"Live Server","type":"text"}],"identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/Servers\/Server1\/url()","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"text":"url","kind":"identifier"},{"kind":"text","text":"() "},{"text":"throws","kind":"keyword"},{"text":" -> ","kind":"text"},{"text":"URL","preciseIdentifier":"s:10Foundation3URLV","kind":"typeIdentifier"}],"kind":"symbol","type":"topic","title":"url()"},"doc://DiscogsService/documentation/DiscogsService":{"title":"DiscogsService","abstract":[],"role":"collection","type":"topic","kind":"symbol","url":"\/documentation\/discogsservice","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService"}}}