Represents the user profile as returned by /users/{username}
Summary
Functions
Validates the map for the profile update
Types
@type currency() :: String.t()
Supported currency codes for curr_abbr.
@type t() :: %ExDisco.Users.Profile{ avatar_url: String.t(), banner_url: String.t(), buyer_num_ratings: pos_integer(), buyer_rating: float(), buyer_rating_stars: pos_integer(), collection_fields_url: String.t(), collection_folders_url: String.t(), curr_abbr: currency(), email: String.t() | nil, home_page: String.t() | nil, id: pos_integer(), inventory_url: String.t(), location: String.t(), name: String.t(), num_collection: pos_integer(), num_for_sale: pos_integer(), num_lists: pos_integer(), num_pending: pos_integer(), num_wantlist: pos_integer(), profile: String.t(), rank: pos_integer(), rating_avg: float(), registered: DateTime.t(), releases_contributed: pos_integer(), releases_rated: pos_integer(), resource_url: String.t(), seller_num_ratings: pos_integer(), seller_rating: float(), seller_rating_stars: pos_integer(), uri: String.t(), username: String.t(), wantlist_url: String.t() }
@type update() :: %{ optional(:name) => String.t(), optional(:home_page) => String.t(), optional(:location) => String.t(), optional(:profile) => String.t(), optional(:curr_abbr) => currency() }
Fields accepted by ExDisco.Users.update_profile/2,3.
All fields are optional — only the keys you include will be updated.
curr_abbr must be one of: USD, GBP, EUR, CAD, AUD, JPY, CHF, MXN, BRL, NZD, SEK, ZAR.
Functions
@spec validate_update(update()) :: :ok | {:error, ExDisco.Error.t()}
Validates the map for the profile update