UsersAPI

class minim.api.discogs.UsersAPI(client: APIClient, /)[source]

Bases: DiscogsResourceAPI

User Identity, User Collection, User Wantlist, and User Lists API endpoints for the Discogs API.

Important

This class is managed by DiscogsAPIClient and should not be instantiated directly.

Parameters:
clientminim.api._shared.APIClient

API client instance used to make HTTP requests.

Methods

add_user_collection_release

User Collection > Add to Collection Folder: Add a release to a user's collection folder.

add_user_wantlist_release

User Wantlist > Add to Wantlist > Add to Wantlist: Add a release to a user's wantlist.

create_user_collection_folder

User Collection > Collection > Create Folder: Create a collection folder.

delete_user_collection_folder

User Collection > Collection Folder > Delete Folder: Delete a user's collection folder.

get_my_identity

User Identity > Identity: Get the identity of the current user.

get_user

User Identity > Profile > Get Profile: Get Discogs profile information for a user.

get_user_collection_fields

User Collection > List Custom Fields: Get Discogs resource information for user-defined collection note fields.

get_user_collection_folder

User Collection > Collection Folder > Get Folders: Get Discogs catalog information for a user's collection folder.

get_user_collection_folder_releases

User Collection > Collection Items by Folder: Get Discogs catalog information for releases in a user's collection folder.

get_user_collection_folders

User Collection > Collection > Get Collection Folders: Get Discogs catalog information for a user's collection folders.

get_user_collection_release_instances

User Collection > Collection Items by Release: Get Discogs catalog information for instances of a release in a user's collection.

get_user_collection_value

User Collection > Collection Value: Get the estimated monetary value of a user's collection.

get_user_contributions

User Identity > User Contributions: Get Discogs catalog information for a user's contributions of artists, labels, and releases.

get_user_edits

User Identity > User Submissions: Get Discogs catalog information for a user's edits to artists, labels, and releases.

get_user_list

User Lists > List: Get Discogs catalog information for a user's list and the releases in it.

get_user_lists

User Lists > User Lists: Get Discogs catalog information for a user's lists.

get_user_wantlist_releases

User Wantlist > Wantlist: Get Discogs catalog information for releases in a user's wantlist.

remove_user_collection_release_instance

User Collection > Delete Instance from Folder: Remove a release instance from a user's collection folder.

remove_user_wantlist_release

User Wantlist > Add to Wantlist > Delete Release from Wantlist: Remove a release from a user's wantlist.

rename_user_collection_folder

User Collection > Collection Folder > Edit Folder: Rename a user's collection folder.

update_user_collection_release_field

User Collection > Edit Fields Instance: Update a note field for a release instance in a user's collection.

update_user_collection_release_instance

User Collection > Change Rating of Release: Update the rating for a release and/or move a release instance to another collection folder.

update_user_profile

User Identity > Profile > Edit Profile: Update the Deezer profile information for a user.

update_user_wantlist_release

User Wantlist > Add to Wantlist > Edit Release in Wantlist: Update the notes or rating for a release in a user's wantlist.

add_user_collection_release(folder_id: int | str, release_id: int | str, *, username: str | None = None) dict[str, Any][source]

User Collection > Add to Collection Folder: Add a release to a user’s collection folder.

User authentication

User authentication

Access protected endpoints.

Parameters:
folder_idint or str

Discogs ID of the collection folder. The “All” folder (folder_id=0) is not allowed, but the “Uncategorized” folder (folder_id=1) is.

Examples: 1, "3".

release_idint or str

Discogs ID of the release.

Examples: 772347, "7781525".

usernamestr; keyword-only; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

Returns:
instancedict[str, Any]

Discogs metadata for the newly added release instance.

add_user_wantlist_release(release_id: int | str, /, *, username: str | None = None) dict[str, Any][source]

User Wantlist > Add to Wantlist > Add to Wantlist: Add a release to a user’s wantlist.

User authentication

User authentication

Access protected endpoints.

Parameters:
release_idint or str; positional-only

Discogs ID of the release.

Examples: 772347, "7781525".

usernamestr; keyword-only; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

Returns:
releasedict[str, Any]

Discogs metadata for the newly added release.

create_user_collection_folder(folder_name: str, *, username: str | None = None) dict[str, Any][source]

User Collection > Collection > Create Folder: Create a collection folder.

User authentication

User authentication

Access protected endpoints.

Parameters:
folder_namestr

Folder name.

Example: "My favorites".

usernamestr; keyword-only; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

Returns:
folderdict[str, Any]

Discogs metadata for the newly created collection folder.

delete_user_collection_folder(folder_id: int | str, /, username: str | None = None) None[source]

User Collection > Collection Folder > Delete Folder: Delete a user’s collection folder.

User authentication

User authentication

Access protected endpoints.

Parameters:
folder_idint or str; positional-only

Discogs ID of the collection folder.

Examples: 2, "3". The “All” (folder_id=0) and “Uncategorized” (folder_id=1) folders cannot be deleted.

usernamestr; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

get_my_identity() dict[str, Any][source]

User Identity > Identity: Get the identity of the current user.

User authentication

User authentication

Access protected endpoints.

Returns:
identitydict[str, Any]

Identity of the current user.

get_user(username: str | None = None, /) dict[str, Any][source]

User Identity > Profile > Get Profile: Get Discogs profile information for a user.

Parameters:
usernamestr; positional-only; optional

Username of the user. If not specified, the username of the current user is used. Only optional when authenticated.

Example: "rodneyfool".

Returns:
userdict[str, Any]

Discogs profile information for the user.

get_user_collection_fields(username: str | None = None, /) dict[str, Any][source]

User Collection > List Custom Fields: Get Discogs resource information for user-defined collection note fields.

Parameters:
usernamestr; optional

Username of the user. If not specified, the username of the current user is used. Only optional when authenticated.

Example: "rodneyfool".

Returns:
fieldsdict[str, Any]

Discogs metadata for the collection note fields.

get_user_collection_folder(folder_id: int | str, /, username: str | None = None) dict[str, Any][source]

User Collection > Collection Folder > Get Folders: Get Discogs catalog information for a user’s collection folder.

Parameters:
folder_idint or str; positional-only

Discogs ID of the collection folder.

Examples: 0, "3".

usernamestr; optional

Username of the user. If not specified, the username of the current user is used. Only optional when authenticated.

Example: "rodneyfool".

Returns:
folderdict[str, Any]

Discogs metadata for the user’s collection folder.

get_user_collection_folder_releases(folder_id: int | str, /, username: str | None = None, *, limit: int | None = None, page: int | None = None) dict[str, Any][source]

User Collection > Collection Items by Folder: Get Discogs catalog information for releases in a user’s collection folder.

Parameters:
folder_idint or str; positional-only

Discogs ID of the collection folder.

Examples: 0, "3".

usernamestr; optional

Username of the user. If not specified, the username of the current user is used. Only optional when authenticated.

Example: "rodneyfool".

limitint; keyword-only; optional

Maximum number of releases to return.

Valid range: 1 to 100.

API default: 50.

pageint; keyword-only; optional

Page number. Use with limit to get the next page of releases.

Minimum value: 1.

API default: 1.

Returns:
releasesdict[str, Any]

Page of Discogs metadata for the releases in the user’s collection folder.

get_user_collection_folders(username: str | None = None) dict[str, Any][source]

User Collection > Collection > Get Collection Folders: Get Discogs catalog information for a user’s collection folders.

Parameters:
usernamestr; optional

Username of the user. If not specified, the username of the current user is used. Only optional when authenticated.

Example: "rodneyfool".

Returns:
foldersdict[str, Any]

Discogs metadata for the user’s collection folders.

get_user_collection_release_instances(release_id: int | str, /, username: str | None = None) dict[str, Any][source]

User Collection > Collection Items by Release: Get Discogs catalog information for instances of a release in a user’s collection.

Parameters:
release_idint or str; positional-only

Discogs ID of the release.

Examples: 772347, "7781525".

usernamestr; optional

Username of the user. If not specified, the username of the current user is used. Only optional when authenticated.

Example: "rodneyfool".

Returns:
instancesdict[str, Any]

Discogs metadata for the release instances in the user’s collection.

get_user_collection_value(username: str | None = None, /) dict[str, Any][source]

User Collection > Collection Value: Get the estimated monetary value of a user’s collection.

User authentication

User authentication

Access private endpoints.

Parameters:
usernamestr; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

Returns:
valuedict[str, Any]

Estimated value of the user’s collection.

get_user_contributions(username: str | None = None, *, limit: int | None = None, page: int | None = None, sort_by: str | None = None, descending: bool | None = None) dict[str, Any][source]

User Identity > User Contributions: Get Discogs catalog information for a user’s contributions of artists, labels, and releases.

Parameters:
usernamestr; optional

Username of the user. If not specified, the username of the current user is used. Only optional when authenticated.

Example: "shooezgirl".

limitint; keyword-only; optional

Maximum number of items to return.

Valid range: 1 to 100.

API default: 50.

pageint; keyword-only; optional

Page number. Use with limit to get the next page of items.

Minimum value: 1.

API default: 1.

sort_bystr; keyword-only; optional

Field to sort the returned items by.

Valid values: "label", "artist", "title", "catno", "format", "rating", "year", "added".

descendingbool; keyword-only; optional

Whether to sort in descending order.

Returns:
contributionsdict[str, Any]

Page of Discogs metadata for the user’s contributions.

get_user_edits(username: str | None = None, *, limit: int | None = None, page: int | None = None) dict[str, Any][source]

User Identity > User Submissions: Get Discogs catalog information for a user’s edits to artists, labels, and releases.

Parameters:
usernamestr; optional

Username of the user. If not specified, the username of the current user is used. Only optional when authenticated.

Example: "shooezgirl".

limitint; keyword-only; optional

Maximum number of edits to return.

Valid range: 1 to 100.

API default: 50.

pageint; keyword-only; optional

Page number. Use with limit to get the next page of edits.

Minimum value: 1.

API default: 1.

Returns:
editsdict[str, Any]

Page of Discogs metadata for the user’s edits.

get_user_list(list_id: int | str, /) dict[str, Any][source]

User Lists > List: Get Discogs catalog information for a user’s list and the releases in it.

Parameters:
list_idint or str; positional-only

Discogs ID of the list.

Examples: 123, "321".

Returns:
listdict[str, Any]

Discogs metadata for the user’s list and the items in it.

get_user_lists(username: str | None = None, /, *, limit: int | None = None, page: int | None = None) dict[str, Any][source]

User Lists > User Lists: Get Discogs catalog information for a user’s lists.

Parameters:
usernamestr; positional-only; optional

Username of the user. If not specified, the username of the current user is used. Only optional when authenticated.

Example: "rodneyfool".

limitint; keyword-only; optional

Maximum number of lists to return.

Valid range: 1 to 100.

API default: 50.

pageint; keyword-only; optional

Page number. Use with limit to get the next page of lists.

Minimum value: 1.

API default: 1.

Returns:
listsdict[str, Any]

Page of Discogs metadata for the user’s lists.

get_user_wantlist_releases(username: str | None = None, /, *, limit: int | None = None, page: int | None = None) dict[str, Any][source]

User Wantlist > Wantlist: Get Discogs catalog information for releases in a user’s wantlist.

Parameters:
usernamestr; positional-only; optional

Username of the user. If not specified, the username of the current user is used. Only optional when authenticated.

Example: "rodneyfool".

limitint; keyword-only; optional

Maximum number of releases to return.

Valid range: 1 to 100.

API default: 50.

pageint; keyword-only; optional

Page number. Use with limit to get the next page of releases.

Minimum value: 1.

API default: 1.

Returns:
releasesdict[str, Any]

Page of Discogs metadata for the releases in the user’s wantlist.

remove_user_collection_release_instance(folder_id: int | str, release_id: int | str, instance_id: int | str, *, username: str | None = None) None[source]

User Collection > Delete Instance from Folder: Remove a release instance from a user’s collection folder.

User authentication

User authentication

Access protected endpoints.

Parameters:
folder_idint or str

Discogs ID of the collection folder.

Examples: 0, "3".

release_idint or str

Discogs ID of the release.

Examples: 772347, "7781525".

instance_idint or str

Discogs ID of the release instance.

Examples: 130076, "130077".

usernamestr; keyword-only; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

remove_user_wantlist_release(release_id: int | str, /, *, username: str | None = None) None[source]

User Wantlist > Add to Wantlist > Delete Release from Wantlist: Remove a release from a user’s wantlist.

User authentication

User authentication

Access protected endpoints.

Parameters:
release_idint or str; positional-only

Discogs ID of the release.

Examples: 772347, "7781525".

usernamestr; keyword-only; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

rename_user_collection_folder(folder_id: int | str, /, folder_name: str, *, username: str | None = None) dict[str, Any][source]

User Collection > Collection Folder > Edit Folder: Rename a user’s collection folder.

User authentication

User authentication

Access protected endpoints.

Parameters:
folder_idint or str; positional-only

Discogs ID of the collection folder. The “All” (folder_id=0) and “Uncategorized” (folder_id=1) folders cannot be renamed.

Examples: 2, "3".

folder_namestr

New folder name.

Example: "My favorites".

usernamestr; keyword-only; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

Returns:
folderdict[str, Any]

Discogs metadata for the renamed collection folder.

update_user_collection_release_field(folder_id: int | str, release_id: int | str, instance_id: int | str, field_id: int | str, value: str, *, username: str | None = None) None[source]

User Collection > Edit Fields Instance: Update a note field for a release instance in a user’s collection.

User authentication

User authentication

Access protected endpoints.

Parameters:
folder_idint or str

Discogs ID of the collection folder.

Examples: 0, "3".

release_idint or str

Discogs ID of the release.

Examples: 772347, "7781525".

instance_idint or str

Discogs ID of the release instance.

Examples: 130076, "130077".

field_idint or str

Discogs ID of the note field.

Examples: 1, "2".

usernamestr; keyword-only; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

update_user_collection_release_instance(from_folder_id: int | str, release_id: int | str, instance_id: int | str, *, to_folder_id: int | str | None = None, rating: int | None = None, username: str | None = None) None[source]

User Collection > Change Rating of Release: Update the rating for a release and/or move a release instance to another collection folder.

User authentication

User authentication

Access protected endpoints.

Important

Either to_folder_id or rating must be specified.

Parameters:
from_folder_idint or str

Discogs ID of the collection folder the release instance is currently in.

Examples: 0, "3".

release_idint or str

Discogs ID of the release.

Examples: 772347, "7781525".

instance_idint or str

Discogs ID of the release instance.

Examples: 130076, "130077".

to_folder_idint or str; keyword-only; optional

Discogs ID of the collection folder to move the release instance to.

Examples: 0, "3".

ratingint; keyword-only; optional

Star rating for the release. Use 0 to reset the rating.

Valid range: 0 to 5.

usernamestr; keyword-only; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

update_user_profile(*, name: str | None = None, website: str | None = None, location: str | None = None, bio: str | None = None, currency: str | None = None, username: str | None = None) dict[str, Any][source]

User Identity > Profile > Edit Profile: Update the Deezer profile information for a user.

User authentication

User authentication

Access protected endpoints.

Important

At least one of name, website, location, bio, or currency must be specified.

Parameters:
namestr; keyword-only; optional

Full name.

Example: "Nicolas Cage".

websitestr; keyword-only; optional

Home page or website.

Example: "www.discogs.com".

locationstr; keyword-only; optional

Geographical location.

Example: "Portland".

biostr; keyword-only; optional

Biographical information or tagline.

Example: "I am a Discogs user!".

currencystr; keyword-only; optional

Currency for marketplace data.

Valid values: "USD", "GBP", "EUR", "CAD", "AUD", "JPY", "CHF", "MXN", "BRL", "NZD", "SEK", "ZAR".

usernamestr; keyword-only; optional

Username of the user. If not specified, the username of the current user is used.

Example: "vreon".

Returns:
profiledict[str, Any]

Updated Discogs profile information for the user.

update_user_wantlist_release(release_id: int | str, /, *, notes: str | None = None, rating: int | None = None, username: str | None = None) dict[str, Any][source]

User Wantlist > Add to Wantlist > Edit Release in Wantlist: Update the notes or rating for a release in a user’s wantlist.

User authentication

User authentication

Access protected endpoints.

Parameters:
release_idint or str; positional-only

Discogs ID of the release.

Examples: 772347, "7781525".

notesstr; keyword-only; optional

User notes to associate with the release.

Example: "My favorite release".

ratingint; keyword-only; optional

Star rating for the release.

Valid range: 0 to 5.

API default: 0.

usernamestr; keyword-only; optional

Username of the user. If not specified, the username of the current user is used.

Example: "rodneyfool".

Returns:
releasedict[str, Any]

Discogs metadata for the updated release.