Album

Struct Album 

Source
pub struct Album {
Show 60 fields pub id: Option<String>, pub title: Option<String>, pub subtitle: Option<String>, pub version: Option<String>, pub upc: Option<String>, pub url: Option<String>, pub product_url: Option<String>, pub relative_url: Option<String>, pub artist: Option<Box<Artist>>, pub artists: Option<Vec<Box<Artist>>>, pub composer: Option<Box<Artist>>, pub label: Option<Label>, pub genre: Option<Genre>, pub genres_list: Option<Vec<String>>, pub image: Option<Image>, pub duration: Option<i64>, pub tracks_count: Option<i32>, pub media_count: Option<i32>, pub released_at: Option<i64>, pub release_date_download: Option<String>, pub release_date_original: Option<String>, pub release_date_stream: Option<String>, pub created_at: Option<i64>, pub purchasable_at: Option<i64>, pub streamable_at: Option<i64>, pub copyright: Option<String>, pub description: Option<String>, pub catchline: Option<String>, pub recording_information: Option<String>, pub maximum_bit_depth: Option<f64>, pub maximum_channel_count: Option<f64>, pub maximum_sampling_rate: Option<f64>, pub maximum_technical_specifications: Option<String>, pub hires: Option<bool>, pub hires_streamable: Option<bool>, pub displayable: Option<bool>, pub downloadable: Option<bool>, pub purchasable: Option<bool>, pub streamable: Option<bool>, pub previewable: Option<bool>, pub sampleable: Option<bool>, pub parental_warning: Option<bool>, pub is_official: Option<bool>, pub product_type: Option<String>, pub release_type: Option<String>, pub popularity: Option<i32>, pub tracks: Option<ItemSearchResult<Box<Track>>>, pub albums_same_artist: Option<AlbumsSameArtist>, pub area: Option<Area>, pub articles: Option<Vec<Article>>, pub awards: Option<Vec<Award>>, pub goodies: Option<Vec<Goody>>, pub items_focus: Option<Vec<Focus>>, pub period: Option<Period>, pub product_sales_factors_monthly: Option<f64>, pub product_sales_factors_weekly: Option<f64>, pub product_sales_factors_yearly: Option<f64>, pub qobuz_id: Option<i32>, pub release_tags: Option<Vec<Value>>, pub track_ids: Option<Vec<i32>>,
}
Expand description

Album model representing an album on the Qobuz platform

This struct contains comprehensive information about an album including its identification, title, artists, label, genre, image, and various metadata.

§Examples

use qobuz_api_rust::models::Album;

let album = Album {
    id: Some("123456".to_string()),
    title: Some("Example Album".to_string()),
    ..Default::default()
};

Fields§

§id: Option<String>

Unique identifier for the album

§title: Option<String>

Title of the album

§subtitle: Option<String>

Subtitle of the album (if any)

§version: Option<String>

Version information for the album (e.g., “Deluxe Edition”)

§upc: Option<String>

Universal Product Code for the album

§url: Option<String>

URL to the album on Qobuz

§product_url: Option<String>

URL to the product page for the album

§relative_url: Option<String>

Relative URL to the album

§artist: Option<Box<Artist>>

Main artist associated with the album (boxed to handle recursive structures)

§artists: Option<Vec<Box<Artist>>>

List of all artists associated with the album (boxed to handle recursive structures)

§composer: Option<Box<Artist>>

Composer of the album (boxed to handle recursive structures)

§label: Option<Label>

Label information for the album

§genre: Option<Genre>

Genre information for the album

§genres_list: Option<Vec<String>>

List of genre names associated with the album

§image: Option<Image>

Image information for the album artwork

§duration: Option<i64>

Duration of the album in seconds

§tracks_count: Option<i32>

Total number of tracks in the album

§media_count: Option<i32>

Number of media (disks) in the album

§released_at: Option<i64>

Unix timestamp of when the album was released

§release_date_download: Option<String>

Date when the album became available for download

§release_date_original: Option<String>

Original release date of the album

§release_date_stream: Option<String>

Date when the album became available for streaming

§created_at: Option<i64>

Unix timestamp of when the album was created in the system

§purchasable_at: Option<i64>

Unix timestamp of when the album became purchasable

§streamable_at: Option<i64>

Unix timestamp of when the album became streamable

§copyright: Option<String>

Copyright information for the album

§description: Option<String>

Description of the album

§catchline: Option<String>

Catchline or tagline for the album

§recording_information: Option<String>

Recording information for the album

§maximum_bit_depth: Option<f64>

Maximum bit depth of the album’s audio files

§maximum_channel_count: Option<f64>

Maximum number of audio channels in the album’s files

§maximum_sampling_rate: Option<f64>

Maximum sampling rate of the album’s audio files

§maximum_technical_specifications: Option<String>

Maximum technical specifications for the album

§hires: Option<bool>

Whether the album is available in high-resolution format

§hires_streamable: Option<bool>

Whether the album is streamable in high-resolution format

§displayable: Option<bool>

Whether the album is displayable to users

§downloadable: Option<bool>

Whether the album is available for download

§purchasable: Option<bool>

Whether the album is available for purchase

§streamable: Option<bool>

Whether the album is available for streaming

§previewable: Option<bool>

Whether the album has preview tracks available

§sampleable: Option<bool>

Whether the album has sample tracks available

§parental_warning: Option<bool>

Whether the album has parental content warnings

§is_official: Option<bool>

Whether the album is an official release

§product_type: Option<String>

Type of product (e.g., “album”, “single”, “compilation”)

§release_type: Option<String>

Type of release (e.g., “album”, “single”, “ep”)

§popularity: Option<i32>

Popularity score for the album

§tracks: Option<ItemSearchResult<Box<Track>>>

Search results for tracks in the album

§albums_same_artist: Option<AlbumsSameArtist>

Albums by the same artist

§area: Option<Area>

Area information for the album

§articles: Option<Vec<Article>>

Articles related to the album

§awards: Option<Vec<Award>>

Awards received by the album

§goodies: Option<Vec<Goody>>

Goodies or bonus content related to the album

§items_focus: Option<Vec<Focus>>

Focus items related to the album

§period: Option<Period>

Period information for the album

§product_sales_factors_monthly: Option<f64>

Monthly product sales factor for the album

§product_sales_factors_weekly: Option<f64>

Weekly product sales factor for the album

§product_sales_factors_yearly: Option<f64>

Yearly product sales factor for the album

§qobuz_id: Option<i32>

Qobuz-specific ID for the album

§release_tags: Option<Vec<Value>>

Release tags associated with the album

§track_ids: Option<Vec<i32>>

List of track IDs included in the album

Trait Implementations§

Source§

impl Clone for Album

Source§

fn clone(&self) -> Album

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Album

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Album

Source§

fn default() -> Album

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for Album

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for Album

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

impl Freeze for Album

§

impl RefUnwindSafe for Album

§

impl Send for Album

§

impl Sync for Album

§

impl Unpin for Album

§

impl UnwindSafe for Album

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,