这个文档介绍的是图谱 API v3.2 之后被删除的一项功能。
图谱 API 版

/{user-id}/invitable_friends

A list of friends that can be invited to install a Facebook game.

The Invitable Friends API is only available to apps classified as Games, which also have a Canvas presence. This API is not available in v1.0. It may be called by mobile games as long as they also have a Canvas presence.

Since Graph API v2.0, /me/friends returns a person's friends who also use the app. You may use the Requests Dialog to invite people to play a game. However, if you want to build a custom multi-friend selector within your game, you need to use call /me/invitable_friends which returns a ranked list of a person's friends who do not play the game, along with a token which can be passed to the Request Dialog in order to invite them. Read our guide on using the Invitable Friends API.

Reading

Graph API Explorer
/* make the API call */
FB.api(
    "/me/invitable_friends",
    "get",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
get /v21.0/me/invitable_friends HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->get(
    '/me/invitable_friends',
    array (),
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/me/invitable_friends",
    null,
    HttpMethod.get,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/me/invitable_friends"
                                      parameters:params
                                      HTTPMethod:@"get"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

Permissions

  • A user access token with user_friends permission is required.
  • The edge is only available to Games with a Canvas presence. If your app is cross platform and share the same app ID on iOS or Android, you can access the list of invitable friends on the mobile platforms too.

Fields

A ranked list of objects which represent a person's friends who haven't authorized the app and that can be invited via the Requests Dialog

NameDescriptionType

id

An invite token which can be passed to the Request Dialog in order to invite this friend to the Game, and for no other purpose. This ID should not be stored more than 24 hours as it is likely to change often and cannot be used to identify the friend otherwise.

string

name

The friend's full name.

string

picture

The friend's profile picture.

object

is_silhouette

Indicates whether the profile photo is the default 'silhouette' picture, or has been replaced.

boolean

url

The URL of the profile photo.

string

Publishing

You can't publish using this edge. You pass the invite tokens returned by this API to the Requests Dialog to allow users to invite friends to your app.

Deleting

You can't delete using this edge.

Updating

You can't update using this edge.