I have:
Facebook application in the "development" mode with the Live-API feature (non-approved yet);
Desktop application with Facebook oAuth login (works ok, Mac/PC).
I can't start any live stream because always getting the error:
(https://developers.facebook.com/docs/videos/live-video)
URL
https://graph.facebook.com/v2.10/{page_id}/live_videos
{
"access_token": "{access_token_from_oauth}",
"description": "Test description",
"title" : "Test title",
"status": "LIVE_NOW"
}
"error": {
"message": "(#200) App does not have permission to create live video on this user",
"type": "OAuthException",
"code": 200,
"fbtrace_id": "FEJ5AhneYP2"
}
I've tested with 3 admins for that Facebook-app, and have the same result. How I can test API Live video in the "development mode" and without accepted (by Facebook) permissions?
Thanx
RESOLVED
The full list of permissions is and it's working for all admins/test users:
"publish_actions", // user, group
"manage_pages", "publish_pages", // user page
"user_managed_groups",
"user_friends",
"public_profile",
"user_actions.video" // notifications for friends
The full list of permissions is and it's working for all admins/test users: "publish_actions", // user, group "manage_pages", "publish_pages", // user page "user_managed_groups", "user_friends", "public_profile", "user_actions.video" // notifications for friends
Related
Try to use Graph API Explorer and get my page reviews, use this URL
111280982309/ratings?fields=reviewer{id,name,picture.width(120).height(120)},created_time,rating,recommendation_type,review_text,open_graph_story{id}
but can't get rating and reviewer fields
Here are the results :
{
"data": [
{
"created_time": "2017-12-08T12:27:33+0000",
"recommendation_type": "positive",
"review_text": "Très professionnels, s'adaptent à toutes les situations",
"open_graph_story": {
"id": "1655894074569809"
}
},
...
{
"created_time": "2013-11-24T06:14:30+0000",
"recommendation_type": "positive",
"open_graph_story": {
"id": "1020383498134514"
}
}
]
}
with all the permission needed :
pages_show_list
pages_read_engagement
pages_read_user_content
public_profile
After multiple hours of research, I do not find any solutions...
My app is business type (and there is no more live or dev mode button)
The app is approuved for all the permission above
I have a Business Manager and an associated page and Instagram account all of which I am an admin of. Below is the json for adcreative creation
{
'name': `Creative_${Date.now()}`,
"object_story_spec":
{
"page_id": page_id,
"instagram_actor_id": instagram_actor_id,
"link_data":
{
"call_to_action":
{
"type": "LEARN_MORE",
"value":
{
"link": linkurl,
}
},
"link": linkurl,
"message": message,
"picture": pictureurl,
"image_crops": {"100x100": [[0, 0],[800, 800]]},
"description": description,
"name": name,
},
},
'ad_format':'INSTAGRAM_STANDARD',
'platform_customizations':
{
"instagram":
{
"image_url": pictureurl,
"image_crops": {"100x100": [[0, 0],[800, 800]]}
},
}
}
}
Adcreative endpoint call using nodejs business sdk results in the following error
error_user_title: 'Instagram ad creative without valid Instagram stream media ID',
error_user_msg: 'Check your ad creative settings. Make sure that it has valid Instagram stream media ID.'
I am using facebook sdk and not standalone instagram api as I am able to find more answers for this issue on that topic.
Also, the picture url is a hosted image url with more than minimal Instagram dimensions. How to sort out this issue?. Thanks in advance.
Please make sure your profile pic is uploaded for instagram account. The issue may be because of media id of profile pic missing.
I can fetch my invitable_friends list, and retrieve an invite token for each one:
["data": [
{
"id": "inviteTokenA",
"name": "User A"
},
{
"id": "inviteTokenB",
"name": "User B"
}..]
Then, I want to invite "User A" to my Game App. I'm trying to do it with a POST request like: "/me/apprequests", with params (message = "Some message", to = "inviteTokenA")
(If a don't send the "message" parameter, I get an error response)
I guess it's not the proper way, because I've got a success response:
{
"request": "6029343172911",
"to": [
"someID"
]
}
And someID is my Facebook ID, no matter what I send as "to" parameter.
I mean, it's an app request to myself.
And if I try to make request "/inviteTokenA/apprequests" I get:
{
"error": {
"message": "(#803) Some of the aliases you requested do not exist: AVnop7tyDDSaYC0FQYRQNIKOTIHQcmYJk2c-uSF1fLf1UUNbc0WXKt62lhLvvJZdSUrxHyYTdxFUCTkLDw6ON_I1qinF3rq6HVVfU0m7jzgj7w",
"type": "OAuthException",
"code": 803,
"fbtrace_id": "DrHiMQl8jWT"
}
}
You can not send invites via API.
The user of your app needs to send them via the Request Dialog, as described here: https://developers.facebook.com/docs/games/services/gamerequests#launchingrequestdialog
When calling that dialog, you can pass one or more of the tokens you get from the invitable_friends endpoint.
Hi can someone please tell me (Im using Facebook Connect Plugin for Phonegap) how I can get the users friends scores?
according to multiple sources all you should need to do is an API call to:
facebookConnectPlugin.api( '/me/scores', ['user_friends'], function( response ) {
});
as the current permissions for this app are (from access token debug):
public_profile, basic_info, read_stream, email, publish_actions, user_friends, user_games_activity
but the response I get is always the same:
{
"data": [
],
"summary": {
"total_count": 39
}
}
and if I use /{appid}/scores I get:
{
"data": [
{
"user": {
"id": "147555555555",
"name": "Snowden Luke"
},
"score": 1005,
"application": {
"name": "DFdfdf",
"namespace": "dfdfdfd",
"id": "5205555555583"
}
}
]
}
(its me!)
any help?
According to https://developers.facebook.com/docs/graph-api/reference/v2.1/app/scores#readperms
/{app-id}/scores
returns
Scores from this Facebook game for a user and their friends.
so, this seems to be the right endpoint for you. Concerning permissions, the docs say that
A user access token is required to view scores by that user from the app that generated the token. If the user_friends permission has been granted, it will also returns friends' scores.
Questions:
Are you sure your friends used the same app, and have posted scores?
Are you using a correct Access Token (generated by the same app from whcih the scores came from)?
Is it even possible to retrieve comments on Facebook ads through the API (Graph or FQL)? If yes, do I need a whitelisted app to do it? Also, if I have a page access token, is it enough, or I need a user access token with ads_management permission?
Regarding the token usage, a page_token is extended by a given user to a given app. The page_token will have at most the same privileges as the user on his authorized pages and ad_accounts.
Generating a page_token can be done automatically, in behalf of the user, if you already have a user_token with manage_pages permission. Again, this page_token will have at most the same privileges that the user_token you used to generate it.
In other words, having a page_token doesn't amount for any additional privileges than the ones already present in the user_token.
Having said that, you need
a token with access to a given ad_account
that the app for which that token was generated, has that ad_account active in its settings
If the second requisite isn't met, for example for ad_account act_123456789 you'll get the error:
{
"error": {
"message": "(#274) The ad account is not enabled for usage in Ads API. Please add it in developers.facebook.com/apps -> select your app -> settings -> advanced -> advertising accounts -> Ads API. Account 123456789 not enabled for this application.",
"type": "OAuthException",
"code": 274,
"fbtrace_id": "xxxxx"
}
}
You can try, for example, generating a token with all privileges for the Graph API Explorer App. It will throw the error above because said App doesn't have the ad_account act_123456789 enabled.
So, given you have a token with ads_read extended for an app that has this ad_account listed, and you know the ad_id, you can procede as I explained in thread Get comments from facebook ads (marketing)
Basically, you use the ad_id (for example 123000000) to get the promoted post id and its actions
/123000000?fields=creative.fields(effective_object_story_id),insights.fields(actions)
The answer will contain an effective_object_story_id (for example, let's say it is 456000000_789000000) and its actions broken down by type:
{
"creative": {
"effective_object_story_id": "456000000_789000000",
"id": "123000000"
},
"insights": {
"data": [
{
"actions": [
{
"action_type": "comment",
"value": "12"
},
{
"action_type": "like",
"value": "2"
},
{
"action_type": "post",
"value": "3"
},
{
"action_type": "post_reaction",
"value": "29"
},
{
"action_type": "video_view",
"value": "558"
},
{
"action_type": "page_engagement",
"value": "604"
},
{
"action_type": "post_engagement",
"value": "602"
}
],
"date_start": "2017-08-14",
"date_stop": "2017-08-20"
}
],
"paging": {
"cursors": {
"before": "xxx",
"after": "xxx"
}
}
}
}
If you want to also distinguish paid comments from regular comments, you can query the comments edge of the post_id 456000000_789000000 to get the overall comment count which should be greater than the comments generated by the ad.
You can't pull the actual words of the comment via the API - would make it too easy to scrape.
Yes, Facebook ads that have comments are because the ad is a promoted page post, whether that page post is hidden or not. Page post comments are available via the Facebook API and does not require having Ads API access. Use the graph API endpoint /v2.1/{page-id}/comments to retreive page post comments. See the Facebook Graph API documentation on object comments for more information.