I am somewhat desperate posting images via the graph api to a user's page.
What I want to achieve is: I've got an image in an amazon S3 bucket. I'm using the /userid/photos endpoint to post the image url and the message property like:
{
"url": "http://url.to/image.jpg",
"message": "Image description"
}
Now, the API creates an album called: "AppName Photos". When I post multiple time to the same album, it suddenly arranges all images in a view, but I want them to be seperate posts each by each.
So, what I want to achieve is: Post an image to a user's page without putting it into an album, as if the user uploaded the image hisself.
www.klout.com is able to do this. When I try to share & upload a custom image, the image is being stored in the "Chronic photos". How can I store the image there and not in an app-dependent album?
Got it. Simply iterate over all albums (you need user_photo access) and post to that specific album of type "wall".
It is not the most beautiful solution I've ever seen but at least it works and prevents grouping nicely :)
Related
I want to have a link between the currently used profile picture and the original source in the profile album.
I'm getting the profile picture with:
/me/picture?redirect=false
Which will return url, width & height but unfortunately no id. (https://developers.facebook.com/docs/graph-api/reference/profile-picture-source/)
I'm getting all the albums with:
/me/albums?fields=id,type
Then I'm iterating through all the albums to find the one with the type=='profile' and then retrieve all the photos of this album:
/{albumId}/photos?fields=width,height,id,images
How can I identify the photo used as the profile picture?
Since we have no id returned from the /me/picture endpoint I don't see a way to make the link between the two objects.
Also, I'm not sure that we can rely on CDN urls to parse them and try to find the profile picture id.
I've created a timeline app that adds events to user's timelines in the past. I've noticed its simple to add tags, places, and external images to OG objects and actions.
However, I can't seem to find a good way to connect to a facebook photo (i.e. a photo from the user's albums). Adding a link to the photo's picture in the images field doesn't work the expected way without an access token (which will presumably expire)
For example: /namespace:action?image=http://graph.facebook.com/10100111692798728/picture will show a '?' photo (in aggregations and elsewhere) unless you pass a valid access token in too (that can't work permanently). This is presumably because whatever identity is going out to request the photo is not allowed to access it this way.
It doesn't seem like you can connect your own actions to photo objects either. Is there a solution to this that I've missed. I'd really like user's to be able to add a photo from their facebook albums to an action from my app (i.e. them doing the 'action'). It would be nice if you didn't have to point directly at an image on FB's CDN somewhere, it would be even nicer if there was a way to point directly at the FB open graph object.
Thanks,
Grant
It is possible to connect the action with Facebook photo like this:
POST /me/do:action?object=[objectId]&access_token=[valid access token]
If the [objectId] is an object id of existing photo - it will show the picture and correct link to the full size facebook photo on timeline.
I want to post photos into facebook, and also create a feed for the photo I posted at the same time.
It works when I post photo to the wall, but when I posted to the album, it will create a feed with the photo on the first time. After that, it only create a text message says "bla bla bla post a photo in XXX album".
Here is the problem:
when user is new for facebook, his wall is non-exsist.The wall will be created after user post a feed with photo on website.
Question:
So, at this time, how can I post photo for such users and create a feed at the same time?
When you add a picture you can use the response to ad the picture. share the picture.
Scenario 2 in this example shows how to do so and get the repsons with PHP.
https://developers.facebook.com/blog/post/498/
With that response you could create a feed dialog:
http://developers.facebook.com/docs/reference/dialogs/feed/
And put together the URL for the image using the response from the photo upload.
If you run into trouble showing the image, you might need to use a proxy to load it. Facebook sometimes gives you trouble when adding an image that is comming from their CDN in a feed post.
So what I am trying to do is post an image that has been created by a user on an iphone into that users newsfeed.
The functionality I am having a hard time understanding if it is possible:
Can I pass a local NSURL (or URL?)(to a png file that lives in the documents folder) through a JSON string and onto Facebook?
i want to mimic the action of a user going to his/her facebook page, clicking into the textfield for their newsfeeld, uploading an image by clicking the "photos" icon and selecting an image from a local disk and uploading it. I would also like to add some text into the post optionally.
I'm just getting started with the Facebook api and it seems pretty tough right now, any help would be appreciated. code examples appreciated.
Thanks,
Nick
You'll need to use a third-party image host like YFrog or roll your own image host. Facebook requires that all media attachments (including photos) be hosted on the public web. Even though they cache the images themselves, the URL that you send to them has to have its own public URL. Many of the popular Twitter image hosts have simple REST APIs to achieve this.
You can also use Facebook itself to host the image via their photo.upload API, if you don't mind two side-effects: it will appear in the user's photo albums, and the thumbnail is likely to appear in the stream twice (once representing the addition to the photo album, and the second in the actual stream story you publish). You can't currently get around this doubling artifact, but it will give you a stable host for the uploaded image.
Just to clarify this. I was actually able to pass and image directly from the iPhone without a third party but that was posting an image to a users photo album. There are I think two methods in the fbconnect api for posting one contains an extra argument for a data argument which can be an image. I'll post more details when I'm in front of the documentation.
Is there any way to upload an image (UIImage) directly from an iPhone app to a user's wall/feed?
All the samples I see are either using a json-embedded link or they use the photos.upload call with album ID (aid) which results in the user getting the image in his photo album(s).
What I want to do is to upload an (UI)Image created (by the user) inside an iPhone app and upload to his/her wall. Is this possible? Sample code would be highly appreciated.
This isn't possible. To understand why, you have to consider the conceptual model that Facebook currently uses: Posts on a user's wall are just bits of text optionally attached to some link URL. That link URL can be some random image on the web, or it can just as well be an image that the user already has in their photo albums.
But a wall post cannot inherently "contain" an image in and of itself. Therefore you need to host the image somewhere, be it on your own site, or on Facebook itself, inside one of the user's albums by uploading it first to there.
I'm trying to figure out the same thing myself. One thing I did find out is that if you post the "Wall Photos" album they do get posted to the wall. However you only have a wall photos album if you've uploaded photos to your wall from your profile page before. And even then, you need to get the album aid and then post to it.
EDIT
Found a much better solution. First upload the photo to your default album, then make a post to the wall with the link to your photo that was returned when uploading (not a link to the image but the page the image is on).