musicfox / pycmc

A Python interface for the chartmetric.com API
MIT License
21 stars 2 forks source link

Cover new 2.0 API endpoints #9

Open thinkjrs opened 4 years ago

thinkjrs commented 4 years ago

We need to ensure full coverage of all endpoints. As Chartmetric has continued to update its API over time, this client lib needs an update!

Documentation links

Notes

We should make sure to test all options for these new endpoints, as some in the past were known to return atypical HTTP responses when data is not available versus other endpoints which return typical responses.

thinkjrs commented 3 years ago

Thanks to #27 the search portion of this issue has been knocked out and will be merged, forthcoming.

thinkjrs commented 3 years ago

This issue should include:

thinkjrs commented 3 years ago

And many more, for posterity:

2020-09-18 Charts - Spotify /api/charts/spotify Added latest parameter to get latest data set from the chart

Charts - Spotify (Freshfind) /api/charts/spotify/freshfind Added latest parameter to get latest data set from the chart

Charts - QQ Music /api/charts/qq/ Added latest parameter to get latest data set from the chart

Charts - Amazon /api/charts/amazon/:chart_type Added latest parameter to get latest data set from the chart

Charts - Apple Music /api/charts/applemusic/:chart_type Added latest parameter to get latest data set from the chart

Charts - iTunes /api/charts/itunes/:chart_type Added latest parameter to get latest data set from the chart

Charts - Shazam /api/charts/shazam Added latest parameter to get latest data set from the chart

Charts - SoundCloud /api/charts/soundcloud Added latest parameter to get latest data set from the chart

Charts - Beatport /api/charts/beatport Added latest parameter to get latest data set from the chart

Charts - Tiktok /api/charts/tiktok/:chart-type Added latest parameter to get latest data set from the chart

Charts - Youtube /api/charts/youtube/:chart_type Added latest parameter to get latest data set from the chart

Charts - Airplay /api/charts/airplay/:chart_type Added latest parameter to get latest data set from the chart

Charts - Twitch /api/charts/twitch/users Added latest parameter to get latest data set from the chart

2020-09-11 Charts - Airplay /api/charts/airplay/:chart_type Added API endpoint that returns Airplay chart data.

Charts - Twitch /api/charts/twitch/users Added API endpoint that returns Twitch chart data.

2020-09-04 Artist - Fan Metrics /api/artist/:id/stat/:source Added isDomainId as an optional parameter. When this parameter is set to true, id will be considered a domain ID.

2020-09-04 Playlist - Playlist List: /api/playlist/:platform/lists Added more parameters to filter by majorCurator and editorial.

2020-08-28 City - Top Artists: /api/city/:id/:source/top-artists Added API endpoint that returns top 100 artists with maximum count for source in the city

City - Top Tracks: /api/city/:id/:source/top-tracks Added API endpoint that returns top 100 tracks with maximum count for source in the city

2020-08-25 Artist - Instagram Audience Data: /api/artist/:id/instagram-audience-stats Added audience_brand_affinities and audience_interests keys in the response

2020-08-19 Charts - Soundcloud: /api/charts/soundcloud Added raw option and updated list of allowed country codes in Soundcloud Charts. The raw option excludes peak_rank and peak_date in response when set to true and is true by default.

2020-08-16 Artist - Get Artists: /api/artist/:type/list Added more parameters to filter the list by, and options to filter by country and genre. Added keys in the response for additional metrics.

2020-07-30 Artist - Tiktok Audience Data: /api/artist/:id/tiktok-audience-stats Added API endpoint to get latest Tiktok Audience Analysis and Stats for an artist.

2020-07-21 Artist - Playlists API: /api/artist/:id/:platform/:status/playlists Updated documentation to include parameters for indie, majorCurator, and editorial - each of the parameters indicate whether the playlists of the parameter type need to be included (true) vs excluded (false)

2020-07-14 Artist - Playlists API: /api/artist/:id/:platform/:status/playlists Updated documentation for 'since' parameter to optional. Please note the default value is 6 months prior to when the API is called.

2020-07-06 Curator List API: /api/curator/:platform/lists Set max value of the offset parameter to 100,000, please reach out to hi@chartmetric.com for more data.

Get Artists API: /api/artist/:type/list Set max value of the offset parameter to 100,000, please reach out to hi@chartmetric.com for more data.

Playlist List API: /api/playlist/:platform/lists Set max value of the offset parameter to 100,000, please reach out to hi@chartmetric.com for more data.

2020-06-30 Charts - Tiktok API: /api/charts/tiktok/:chart-type Added new chart-type option 'users'. This chart will display the top user likes or top user followers charts for tiktok depending on what is passed in the type parameter.

2020-06-26 Track Stats API: /api/track/:id/:platform/stats Added isDomainId as an optional parameter. When this parameter is set to true, id will be considered a domain ID.

CPP (Cross-Platform Performance) API: /api/artist/:id/cpp Added latest parameter. When this parameter is set to true, since and until parameters are ignored and the response will return the latest value along with the calculated date.

2020-06-23 Playlist - Playlist Evolution Stats (given Artist, Album or Track Chartmetric ID) API: /api/playlist/by/:type/:id/playlist-evolution Evolution stats for tracks will now return the latest stats if the track has no evolution.

2020-06-16 Artist Spotify Monthly Listeners by City API: /api/artist/:id/where-people-listen Added latest parameter. When this parameter is set to true, since and until parameters are ignored.

2020-06-12 Album Playlists API: /api/album/:id/:platform/:status/playlists Updated the response field 'num_tracks' to 'num_track' when searching with platform 'youtube'. Added response field 'album_names' when searching with platform 'youtube'.

2020-06-09 Playlist Lists API: /api/playlist/:platform/lists Removed the monthly_listeners, and listeners_to_followers_ratio keys in the response and as expected parameters for sorting as they were outdated, this was applicable only for spotify playlists

Artist CPP (Cross-Platform Performance) API: /api/artist/:id/cpp Response will now be in ascending date order from descending date order.

2020-05-20 Playlist Info API: /api/playlist/:platform/:id Removed the monthly_listeners, and avg_monthly_listeners keys in the response as they were outdated, this was applicable only for spotify playlists

thinkjrs commented 3 years ago

More to cover, as this is definitely coming in the 1.0.0 release.

2021-2-2 Charts - Tiktok /api/charts/tiktok/:chart-type

Added daily Tiktok stats for tracks and users. Changed default interval value to all_time, all_time will provide the old daily values. Using daily will now display daily stats. 2021-1-5 Track - Charts /api/track/:id/:type/charts

Added Airplay to Track - Charts. The type field now accepts airplay_daily and airplay_weekly as a parameter, returning airplay charts. 2020-12-23 Charts

Documentation of Charts APIs were updated to include missing response fields and fixing the type label for some parameters. City

Documentation of City APIs were updated to include missing response fields and fixing the type label for some parameters. Curator

Documentation of Curator APIs were updated to include missing response fields and fixing the type label for some parameters. Playlist

Documentation of Playlist APIs were updated to include missing response fields and fixing the type label for some parameters. Track

Documentation of Track APIs were updated to include missing response fields and fixing the type label for some parameters. 2020-12-18 Artist - Metadata api.chartmetric.com/api/artist/:id

Added general_manager to the response of the API call. Artist

Documentation of Artist APIs were updated to include missing response fields and fixing the type label for some parameters. Charts

Update caching of responses from twelve hours to two hours for all Chart APIs. Charts - iTunes

Update a typo where a possible genre was All and Genres when it should have been All Genres. 2020-12-15 Album

Documentation of Album APIs were updated to include missing response parameters. Artist - TV Show Appearances /api/artist/:id/tvmaze

Added API endpoint to get the TV Show Appearances for an artist. 2020-12-04 Search - Chartmetric Search Engine

Responses to Chartmetric Search APIs were updated. 2020-12-1 Track - Charts /api/track/:id/:type/charts

Added Soundcloud to Track - Charts. The type field now accepts soundcloud as a parameter, returning Soundcloud charts. 2020-11-24 Track - Playlists /api/track/:id/:platform/:status/playlists

Added sortColumn parameter, with default and followers as the allowed values. default will sort the result by added_at or removed_at based on the status, and followers will sort the result by followers in a descending order. 2020-11-17 Charts - Shazam /api/charts/shazam

Updated documentation to include missing parameters. 2020-11-12 Artist - Fan Metrics /api/artist/:id/stat/:source

Added weekly_diff, weekly_diff_percent, monthly_diff, and monthly_diff_percent response fields. Also fixed issue with youtube_channel field giving internal server error. 2020-10-02 Search

Documentation of Search APIs were updated. Authorization

Documentation of Authorization APIs were updated. Search - Get City Info /api/cities

Added new cities endpoint in the Search API to get chartmetric city info like city ids, city name, etc. for a country code. Radio

Documentation of Radio APIs were updated. Radio - Airplay information in Time Series /api/radio/:type/:id/airplays

Added since parameter to get Airplay data within a period of time.