pages_read_engagement permission present in token scopes but API returns error
We are experiencing an issue where the pages_read_engagement permission is correctly granted (Advanced Access) and confirmed present in our Page Access Token scopes, yet all engagement-related endpoints return error #10.
App info:
- App Mode: Live
- Graph API version tested: v24.0 and v21.0 (same result)
Token verification via /debug_token:
{ "data": { "app_id": "....", "type": "PAGE", "is_valid": true, "scopes": [ "pages_show_list", "business_management", "instagram_basic", "instagram_manage_insights", "instagram_content_publish", "pages_read_engagement", "pages_manage_posts", "public_profile" ] } }
As shown above, pages_read_engagement is explicitly listed in the token scopes.
Calls that FAIL (error #10):
GET /{page_id}/posts?fields=id,likes.summary(true) GET /{post_id}/likes?summary=true GET /{post_id}/comments?summary=true
Error response:
{ "error": { "message": "(#10) This endpoint requires the 'pages_read_engagement' permission or the 'Page Public Content Access' feature.", "type": "OAuthException", "code": 10 } }
Calls that SUCCEED with the same token:
GET /{page_id}/posts?fields=id,message,created_time → ✅ OK GET /{page_id}?fields=followers_count,fan_count → ✅ OK GET /{page_id}/posts?fields=id,shares → ✅ OK
Steps to reproduce:
- Create a Page Access Token via Facebook Login for Business with config_id that includes pages_read_engagement
- Verify pages_read_engagement is in token scopes via /debug_token
- Call GET /{page_id}/posts?fields=id,likes.summary(true) with this token
- Observe error #10 despite the permission being present
Expected behavior: The call should succeed since pages_read_engagement is in the token scopes and granted in Advanced Access.
Actual behavior: Error #10 stating the endpoint requires pages_read_engagement — the very permission that is already granted.
Additional context:
- The token is obtained via Facebook Login for Business (using config_id, not explicit scopes)
- Instagram endpoints using the same token work correctly (instagram_manage_insights which depends on pages_read_engagement)
- We have requested pages_read_user_content twice and it was rejected both times
- The issue is reproducible across API versions (v21.0 and v24.0)