I have taken the following steps:
On the Facebook dashboard, I created a Facebook App.
Also on the dashboard, I created a test app as a child of the Facebook app (the Dev version, for testing).
I uploaded a build of my app, and confirmed I could run it from the
admin account.
I gave two of my real-world Facebook friends the Tester role in the
dashboard.
When the real-world friends try running the app, they get 404 errors
"the requested URL was not found on this server" when it tries loading
"https://apps-APP_ID.apps.fbsbx.com/hosted-canvas/e30=/.
I am using Facebook's Simple Application Hosting. The url for the app is "https://apps.facebook.com/APP_ID". When the admin hits this it works fine, when the Tester hits it they get the error. Some have suggested that there is a sandbox setting that needs to be turned off, but I see no such thing in any of the settings on the Dashboard. Any insights you could offer would be greatly appreciated.
Not sure if it helps anyone figure it out, but the app consists only of a data file, a Javascript file (xxx.js), and an index.html.
Holy moly - alright I'm hoping this helps someone else out. Apparently, when you create an app, and then create a test app so that you can establish a dev environment for testing - which is standard procedure - you have to add any testers to the parent (production) app under "Roles". I was only adding it under "Roles" for the test app, which apparently is not enough. If anyone from Facebook is reading this, please update your docs, or update the dashboard to issue a warning to people who only add testers under the test app.
We also have to push the app to production (though yet to approved),
If the status is set to "testing", only admin user can find it in my case.
Related
I am working on a FB app for creating Facebook Ads. In the past I was able to debug the whole FB Ad creation process in a development mode but suddenly I started getting this error that I was not able to find documentation for.
Request:
https://graph.facebook.com/v2.2/act_foo/adcreatives?access_token=bar
Response:
{"error":{"message":"Invalid parameter","type":"FacebookApiException","code":100,"error_subcode":1885183,"is_transient":false,"error_user_title":"Ads creative post was created by an app that is in development mode","error_user_msg":"Ads creative post was created by an app that is in development mode. It must be in public to create this ad."}}
I've searched Facebook API documentation but haven't found anything about this error error_subcode: 1885183.
Anyone has experience with this error or a hint how to deal with it?
EDIT
Bug is already reported to FB: https://developers.facebook.com/bugs/1605648466391176/
For completeness of this question, the answer from the resolved bug report is as folows:
Across our entire platform, Marketing API included, content created by apps is only visible to users that can see the app
We had a bug which was allowing ads to be created which were promoting posts created by apps that are in development mode - such ads would not be visible to anyone other than Admins, Developers or Testers of the app - this caused multiple issues in our ad delivery system and the correct validation is now in place to prevent such ads being created
If you want to create ads from an app which is in development mode, this is possible, but the post you're going to promote must have been created by an app which isn't in development mode - i.e if your app is in development mode it's OK provided you're promoting existing page posts from a page's /promotable_posts endpoint and the app that created those posts is not itself in development mode
If you're not using existing page posts, and are creating them inline/implicitly as part of an ad creation, the app used to create the ad must be visible - you can change this for your app using the "Do you want to make this app and all its live features available to the general public?" toggle on the Status & Review tab of the app dashboard for the app
https://developers.facebook.com/bugs/1605648466391176/?comment_id=1039672816061177
We had the same issue and found a workaround that fixed it.
We created a new basic facebook-app with no additional permissions and published it right away.
We then added ourselves as admins and could create creatives through the marketing api again.
Hope this helps you
I'm doing testing with Facebook and Facebook apps and have run into an issue with the test accounts. When I create a test account (under the app roles) and begin testing the app and the account, it keeps getting banned. To test my app and get all the information I need, I need to upload a bunch of albums to FB, but this keeps causing the account to get blocked. I was under the impression that the whole point of Facebook Test Accounts was that they were cloistered from the rest of FB and were exempt from odd behavior and being blocked. Has anybody else experienced this before? Is there a way to keep my test accounts from getting blocked so that I can actually do the testing I need to do with them?
We have succefully used a bunch of FB accounts for manual and automated testing. Make sure that test users are under your test app. If you think that everything is done in right way, try to contact FB support team for help.
If this is the wrong place to ask this - I super apologize in advance, I'm at a loss here.
I'm trying to develop a simple Facebook PHP app and I'm having trouble getting publish_actions. Here's how the app will work:
You enter your email address
Periodically, you receive emails like this ("Hey nice person, here's a video we think you might be interested in, click here to share it on your wall")
You click the button, it takes you to the app site, which asks for your publish permissions
You enter a message and share the video to your wall.
My problem: all of that requires publish_actions permissions, but FB won't grant them to me until I can show a working app (I applied for permissions and was denied because "Canvas
Your app isn't loading properly and errors appeared while testing your app").
My question: How do I get access to publish_actions without being able to show a working app (which requires publish_actions)? Can I use PHP to post to my own wall in development mode somehow to test it out?
Again - I apologize for the dumbness of this question, I am a PHP dev who is very new to FB, and I've looked everywhere for answers on this.
Try using the Facebook Graph API Explorer
You will be able to simulate some of the app permissions as if it was production.
Just go and select your app, then select Get User Access Token, finally select all the permissions you want to test.
Use the given token to develop and test things out and when you have a semi finished version, submit it through the app review section, following the Facebook App Review Guidelines
I submitted screenshots, a video of my app working, and step by step description on how to reproduce the publish action.
Hope it helps.
I am trying to test the Facebook login feature for a website staging environment, but when logging in with a test user I see this error message:
Error
User is not allowed to see the application.: The user is not allowed to see this application per the developer set configuration.
I have set App Domain to http://www.mysite-stage.com/. I've also added a Website platform for my app and set the site URL to http://www.mysite-stage.com/.
The website http://www.mysite-stage.com is actually accessible to everybody on the web, so there should be no issues there.
This method of testing Facebook integration for the site was working up to about 1-2 months ago, so I'm a little confused as to why it's not working anymore.
Are you sure you created the test user for that application?
Facebook won't let you login as a test user that was created under a different app than the one you are trying to sign in with.
Facebook test users are app-specific.
Yo can also create test users through the facebook developers site:
http://developers.facebook.com/apps/
- Select your app
- Roles
- Test Users
Since I can't add a comment yet, the problem is with you having made your app available to the public but you are trying to sign in with a test account.
Have you tried using the
installed=true
parameter once you use
POST /{app-id}/accounts/test-users
to create the Test Users? See https://developers.facebook.com/docs/graph-api/reference/app/accounts/test-users#publish
I'm using Unity and prime31 plug in to access Facebook via my iPhone. I'm trying to test requests via my app by sending a request to a second test Facebook account on my iPhone (so I have my primary Facebook account and I've created a second one for the purposes of testing).
The problem I'm coming across is that I'm logging out of my normal Facebook account on the Facebook app and then logging into my test account. I'm then running my own app to test the requests. However, when I execute a 'me' graphrequest, it's still returning the details of my primary account (even though I logged into my test Facebook account before running my app).
I don't quite understand why it's doing this - I understand that there is a facebook settings page within iOS settings, but I'm not sure if this has anything to do with it?
Can anyone point out where I'm going wrong?
Thanks in advance!