Strava API - Retrieve activity photos with metadata - api

I'm trying to use the Strava API to acquire the pictures of an activity and to get their location - based on the metadata (similar to what is performed on apps like www.relive.cc).
I'm facing two issues :
Only the primary photos is shown in the retrieved data from the API, although the activity has several photos.
The picture I manage to get (sample here) does not include any metadata, so I'm not able to retrieve any location information.

did you have any progress on that? Im researching how could I have the activity photos initially. Later on, photo metadata would be also nice.

Related

Loading all YouTube video metadata to an application database

Google YouTube API allows maximum 10,000 units of quota per day. I am trying to avoid 'Quota Exceeded' error as I am making too many calls against the "Search: list" API which costs 100 units of quota per API call.
I read this and several other blogs; and went with my own below analysis.
I am planning to pull data every day once and store it in the database. Can any expert please confirm if below will cover up all the videos under the channel, or I will miss some?
(1) Playlists: list --> Get all the playlists from the channel.
(2) PlaylistItems: list --> Iterate over each playlist one by one, and get all videos in it.
To answer your comment #Test:
I want to ask whether if i loop all playlists, will it give ma all the videos under channel id or not.
If by all playlists you mean all playlists intentionally created by the given YouTube channel then it depends whether or not he selected all his videos.
I would recommend you to use this approach to retrieve all YouTube videos of a given YouTube channel which seems to be your case. The approach consists in getting the uploads auto-created playlist id of the YouTube channel by using Channels: list with contentDetails in part and then use PlaylistItems: list to retrieve all public videos uploaded on this YouTube channel. Using this method you will retrieve all public YouTube videos as long as the studied YouTube channel has less than 20 000 YouTube public videos. In this last case use this script which softwarly fake an automatic browse in the Videos tab of the given YouTube channel.

How can I get the Views Per Hour stat for a YouTube video?

I checked the Youtube API and it's mainly to do with adding functionalities related to the YouTube app rather than getting analytics data about videos.
There is a chrome extension called VidIQ that shows the views per hours of a particular video when going to the video's page on YouTube, so I tried reading the source code for it, but it is all compressed and I can't easily find what I'm looking for.
Could someone explain to me how VidIQ chrome extension is getting the views per hour stat for YouTube? Maybe it's not an official stat from Youtube but a rough estimate calculated by VidIQ. How do they get this information?
I tried debugging the VidIQ chrome extension to search through the source code but adding a simple html tag made the file corrupted and disabled the extension until I repaired it again. I'm having difficulties deciphering the source code.
Most of what VidIQ gets is from the YouTube analytics api and not directly from the YouTube data api although i would be they use some combination of both.
If you create a report that extracts views and run it every hour you should get the results you are looking for.
However i would be willing to be that they cache a lot of the data and do some internal analytics on it. They would need to cache it as the YouTube analytics api only returns data for the last 90 days last i checked.
If your intent is to Reverse Engineer VidIQ you may need to accept that a lot of the data you are seeing is internally stored in their system and generated by them based upon the data that is avaliable in the YouTube Analytics API and the YouTube data apis.

Soundcloud API returns empty

Thanks in advance for the help.
So while developing an application, I need API data and I retrieve JSON objects. Not a big deal, but with one certain account it doesn't work.
https://api.soundcloud.com/tracks/257255126?client_id=CLIENT_ID_HERE
The ID 257255126 is a track from this profile: https://soundcloud.com/discoverysounds1/.
Every track from this profile returns empty from the API while the same API link works if I insert a track ID from any other profile.
I've already notified the owner of the problem and he hasn't done anything weird or disabled API access if that's even possible.
What could be the problem here?
Thanks,
Jordan
I just tested this with a website I am developing using the API.
If I add one of the tracks to an existing playlist that I have created to test certain functionality, the track does not appear in the playist when retrieved via the /me/playlists endpoint.
When I load the playlist into the soundcloud widget, the track is visible and unrestricted (as in full duration and not a 30 second preview).
I am seeing similar behaviour with tracks that are marked as "soundcloud go" not being visible in the playlist tracks from the /me/playlists endpoint, but available via the widget when the playlist is loaded (albeit only a 30 second preview in their case).
Those items are identifiable as having a "SUB_HIGH_TIER" monetization_model
The track I loaded from your example
There seem to be various issues with the API right now related to the implementation of "soundcloud go"

Soundcloud API playlist returns no tracks in certain cases

When trying to get the track details for a playlist using the /playlists endpoint, for certain playlists there are no tracks returned in the data.
Sample of returned data
"license":"all-rights-reserved",
"tracks":[],
"playlist_type":null,
"id":199987807,
So far all the playlists behaving this way contain a single track, but NOT all playlists with one track return no tracks.
Examples of no tracks returned:
http://api.soundcloud.com/playlists/199987807?client_id=YOUR_CLIENT_ID
http://api.soundcloud.com/playlists/199987052?client_id=YOUR_CLIENT_ID
SoundCloud API keys have different access levels. SoundCloud can restrict API access for certain artists and playlists based on the API key used to make the request.
As you can see, a standard developer API key cannot see the tracks from those playlists.
There is a way around this, although it breaks SoundCloud's terms of service.
Using a different API key, such as the key youtube-dl uses to get the MP3 link for specific tracks (which is presumably a Soundcloud master key), gives you access to this information.
Again, using someone else's API key violates SoundCloud's terms of service, and there is no guarantee this key will continue working. This is just a workaround to the current restriction you're seeing.
Related discussion in two other questions: Get HTTP MP3 stream from every song and SoundCloud API returning 0 tracks despite user having tracks.

Fetching owner-uploaded or user-uploaded photos from Google Maps

I would like to fetch user-uploaded or owner-uploaded photos of locations using some Google API.
For example:
In this place: http://g.co/maps/pxbse , you can see an owner-uploaded photo of this place in the place's popup window on the map. Additionally, if you click on this photo, you'll be taken to a more detailed page about this place where you can see a list of photos uploaded either by the owner or other google users.
Is there any way to fetch these photos by using the Google Maps API?
(Please note: I have checked out Panoramio and Google Street View API and these do not suit my needs)
There is no way to get that photo at this point. The Google Places API does not support retrieving the photo.
What you're looking at is a Google Place. You would access this data using the Google Places API.
Update: You're right. The API mentions an icon URL that's included in a place details response, but doesn't seem to indicate all the owner uploaded images.
What I recommend is attending the Google Maps API office hours on May 1, 2012 at 13:00 Pacific Time. There is a Google Moderator set up to post questions before hand. You can attend the hangout using Google Plus (make sure to follow +Google Maps API) or they stream them to YouTube live.