Implemented the User Collection endpoints (#12)

This PR contains the work done to implement the *User Collection* endpoints of the Discogs API into the `OpenAPI` specification document:

* GET `/users/{username}/collection/folders`
* POST `/users/{username}/collection/folders`
* GET `/users/{username}/collection/folders/{folder_id}`
* POST `/users/{username}/collection/folders/{folder_id}`
* DELETE `/users/{username}/collection/folders/{folder_id}`
* GET `/users/{username}/collection/releases/{release_id}`
* GET `/users/{username}/collection/folders/{folder_id}/releases`
* POST `/users/{username}/collection/folders/{folder_id}/releases/{release_id}`
* POST `/users/{username}/collection/folders/{folder_id}/releases/{release_id}/instances/{instance_id}`
* DELETE `/users/{username}/collection/folders/{folder_id}/releases/{release_id}/instances/{instance_id}`
* GET `/users/{username}/collection/fields`
* POST `/users/{username}/collection/folders/{folder_id}/releases/{release_id}/instances/{instance_id}/fields/{field_id}`
* GET `/users/{username}/collection/value`

Reviewed-on: #12
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 #12.
This commit is contained in:
2025-10-16 14:38:41 +00:00
committed by Javier Cicchelli
parent 2c91cad0bf
commit 2a7b9746a7
5544 changed files with 6306 additions and 2340 deletions
@@ -44,3 +44,43 @@
- ``APIProtocol/deleteReleaseRatingByUser(path:headers:)``
- ``APIProtocol/getReleaseStats(_:)``
- ``APIProtocol/getReleaseStats(path:headers:)``
### User Identity
- ``APIProtocol/getUserProfile(_:)``
- ``APIProtocol/getUserProfile(path:headers:)``
- ``APIProtocol/postUserProfile(_:)``
- ``APIProtocol/postUserProfile(path:query:headers:)``
- ``APIProtocol/getUserContributions(_:)``
- ``APIProtocol/getUserContributions(path:query:headers:)``
- ``APIProtocol/getUserSubmissions(_:)``
- ``APIProtocol/getUserSubmissions(path:headers:)``
### User Collection
- ``APIProtocol/getCollectionFolders(_:)``
- ``APIProtocol/getCollectionFolders(path:headers:)``
- ``APIProtocol/postCollectionFolders(_:)``
- ``APIProtocol/postCollectionFolders(path:query:headers:)``
- ``APIProtocol/getCollectionFolder(_:)``
- ``APIProtocol/getCollectionFolder(path:headers:)``
- ``APIProtocol/postCollectionFolder(_:)``
- ``APIProtocol/postCollectionFolder(path:query:headers:)``
- ``APIProtocol/deleteCollectionFolder(_:)``
- ``APIProtocol/deleteCollectionFolder(path:headers:)``
- ``APIProtocol/getCollectionItemsByRelease(_:)``
- ``APIProtocol/getCollectionItemsByRelease(path:headers:)``
- ``APIProtocol/getCollectionItemsByFolder(_:)``
- ``APIProtocol/getCollectionItemsByFolder(path:query:headers:)``
- ``APIProtocol/postReleaseToCollectionFolder(_:)``
- ``APIProtocol/postReleaseToCollectionFolder(path:headers:)``
- ``APIProtocol/postChangeRatingOfRelease(_:)``
- ``APIProtocol/postChangeRatingOfRelease(path:query:headers:body:)``
- ``APIProtocol/deleteInstanceFromCollectionFolder(_:)``
- ``APIProtocol/deleteInstanceFromCollectionFolder(path:headers:)``
- ``APIProtocol/getCustomFields(_:)``
- ``APIProtocol/getCustomFields(path:headers:)``
- ``APIProtocol/editFieldsInstance(_:)``
- ``APIProtocol/editFieldsInstance(path:query:headers:)``
- ``APIProtocol/getCollectionValue(_:)``
- ``APIProtocol/getCollectionValue(path:headers:)``
@@ -31,3 +31,26 @@
- ``Client/putReleaseRatingByUser(_:)``
- ``Client/deleteReleaseRatingByUser(_:)``
- ``Client/getReleaseStats(_:)``
### User Identity
- ``Client/getUserProfile(_:)``
- ``Client/postUserProfile(_:)``
- ``Client/getUserContributions(_:)``
- ``Client/getUserSubmissions(_:)``
### User Collection
- ``Client/getCollectionFolders(_:)``
- ``Client/postCollectionFolders(_:)``
- ``Client/getCollectionFolder(_:)``
- ``Client/postCollectionFolder(_:)``
- ``Client/deleteCollectionFolder(_:)``
- ``Client/getCollectionItemsByRelease(_:)``
- ``Client/getCollectionItemsByFolder(_:)``
- ``Client/postReleaseToCollectionFolder(_:)``
- ``Client/postChangeRatingOfRelease(_:)``
- ``Client/deleteInstanceFromCollectionFolder(_:)``
- ``Client/getCustomFields(_:)``
- ``Client/editFieldsInstance(_:)``
- ``Client/getCollectionValue(_:)``