Question

I thought I'd succeeded in posting photos to my page's timeline with the following VB.NET code:

Dim params As Object = New With {
    .message = Message,
    .file = New Facebook.FacebookMediaObject() With {
        .ContentType = "image/jpeg",
        .FileName = Guid.NewGuid.ToString() & ".jpg"
    }.SetValue(photoBytes)
}

' This is the 'timeline' album for the page. get it at graph explorer at /page-id/albums
Dim result = fbClient.Post("/711668238866774/photos", params)

If I view the page as the page admin, I can see the photos in the timeline. However, if I view the page publicly, the photos are not visible.

If I post a photo to my page using the Facebook UI, it can be seen publicly.

If I use the graph explorer to examine '711668238866774/photos', and compare photos posted with the API vs. photos post with the Facebook UI, I can see no difference that would cause one to show publicly and the other to be hidden.

Do I need to do anything else to make this work?

Was it helpful?

Solution

By far the most likely reason that content posted by your app won't be visible to users who aren't admins of the app if is you've forgotten to make the app public - content posted by an app can only be seen by people who can see the app.

Go to the Status & Review tab of the app settings and check the value of the toggle at the top enter image description here

You won't be able to make it live without a privacy policy URL and contact email address being in the app details, but otherwise you can just mark it as public

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top