Getting a High Resolution picture from Facebook API
Getting the max size of a picture
/USER_ID?fields=images
images
gives back "an array of objects containing width, height, source each representing the various photo sizes". The result looks like this:
{
"data": [
{
"images": [
{
"height": 1536,
"width": 2048,
"source": "https://fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-prn1/s2048x2048/65169_XXXXXX_n.jpg"
},
{
"height": 720,
"width": 960,
"source": "https://fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-prn1/65169_44590146XXXXXXXXn.jpg"
},
{
"height": 540,
"width": 720,
"source": "https://fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-prn1/s720x720/65169_44XXXXXXX0984540_n.jpg"
},
{
...
},
{
"height": 97,
"width": 130,
"source": "https://fbcdn-photos-a.akamaihd.net/hphotos-ak-prn1/s75x225/65169_44XXXXX_s.jpg"
}
],
}
]
}
Getting the max size of a profile picture
Try with more than 960, i.e 961. You'll get the maximum size of the picture, if available!
/USER_ID?fields=picture.height(961)
Result:
{
"id": "PROFILE_ID",
"picture": {
"data": {
"url": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-prn1/615962_4486XXXXXXXXX3_601495975_o.jpg",
"width": 1536,
"height": 2048,
"is_silhouette": false
}
}
}
Comments
-
jbkkd almost 2 years
Facebook FQL API for Photos states the maximum resolution for a photo returned from the API is 960x960:
The Photo object has an equivalent src connection. Using photo_src FQL, you can retrieve images with the following dimensions: 960, 720, 480, 320, 180, 130, 75 pixels.
However, some images are uploaded at a higher resolution. Sometimes even much higher.
When browsing Facebook regularly, you can see these pictures and view their full size. However, I can't seem to find any way to get the original resolution in the API.
Is this possible and I have missed something? And if it's not - why?
-
jbkkd over 11 yearsWhat do you mean by that? when trying something like this:
select src_big from photo where object_id = 10151151370658685 and src_big_width = 960
, I get no data back -
jbkkd over 11 yearsThanks, works like a charm. I still wonder though why src_big doesn't return the biggest image available
-
AmitP almost 11 yearsIt seems like there is no FQL equivalent for "/USER_ID?fields=picture.height(961)". I was looking for hours, did anyone find FQL to retrieve full profile image size by given UID (user ID) only?
-
fvisticot almost 11 yearsit is not clear for me how it is possible to get images with 2048px if facebook is storing images with max 960px :( ... can you please explain ?
-
Stéphane Bruckert almost 11 years@AmitP The FQL equivalent is
select images from photo where object_id = PHOTO_ID
. Just get the first picture in theimage
array. @fvisticot You'll always get the biggest size. If there is no big picture available, it means that the photo has not been uploaded as high definition. -
Kaan Soral over 10 yearsThis is gold: /USER_ID?fields=picture.height(961) thanks a lot :)
-
Vineesh TP over 9 yearsCan I get timeline photos ?