Table of contents
Description
Returns information about friends of the current user. This method supports getting either basic or extended information for all or some of the user's friends. The method will return the user's friends from all the connected providers which support friends feature.
Retrieving the list of friends from the different providers may be a lengthy operation, depending on the number of friends and the performance of each provider. Gigya begins retrieving the list to its cache immediately after the user logs in but if you call this method too soon after the login, the friends list may not be available yet. In this case the server will return statusCode 100 and errorCode 100001 which means: "Data pending". You may wait a while and retry the call or modify your application flow to not require this information immediately after the user logs in.
Please note, that since retreiving friends list is a lengthy operation, Gigya caches the friends list for 24 hours or until a successful login.
Supporting Providers
This operation currently supported by the following providers: Facebook, Twitter, Yahoo, Microsoft Messenger, LinkedIn, Myspace, Orkut, FourSquare, Renren, Kaixin, Vkontakte, mixi, Yahoo-JApan, Skyrock.
Request URL
http[s]://socialize.gigya.com/socialize.getFriendsInfo
Parameters
| Required | Name | Type | Description |
| Required* | UID | string | The unique ID of the user, with which this method call is associated. This is the UID you receive from Gigya after a successful login of this user. * The UID parameter is required when you call this method through one of the following interfaces: PHP SDK, Java SDK, NET SDK or if you are using the REST API directly with Gigya's proprietary authorization method. * The UID parameter is not required when you call this method through one of the following interfaces: Android SDK, iOS SDK or if you are using an external OAuth2 SDK. Note: If you are using account linking then the UID would be your site user ID. To learn more about Social Login with account linking (best practice), please refer to the Social Login Implementation guide. |
| Optional | detailLevel | string | This field indicates whether to get basic or extended information about each friend. See the "Friend object" page for details on which fields are included for each detail level. Allowed values are: |
| UIDs | string | A comma separated list of UIDs of friends of the current user to get the information for. Note: If both friends and UIDs are missing the method will return all the friends of the current user. | |
| siteUsersOnly | Boolean | If the parameter is set to true then only the friends which are also site users are returned. The default value of this parameter is false. | |
| enabledProviders | string | A comma-delimited list of provider names to include in the method execution. This parameter gives the possibility to apply this method only to a subset of providers of your choice. If you do not set this parameter, by default all the providers are enabled (i.e. the method applies to all connected providers). For example, if you would like the method to apply only to Facebook and Twitter, define: enabledProviders="facebook,twitter". Valid provider names include: 'facebook', 'twitter', 'yahoo', 'messenger', 'linkedin', 'myspace', 'orkut', 'foursquare', 'renren', 'kaixin', 'vkontakte', 'mixi', 'yahoo-japan','skyrock'. | |
| disabledProviders | string | A comma-delimited list of provider names to exclude in the method execution. This parameter gives the possibility to specify providers to which that you don't want this method to apply. If you do not set this parameter, by default no provider is disabled (i.e. the method applies to all connected providers). For example, if you would like the method to apply to all providers except Google and Twitter, define: disabledProviders="google,twitter". Valid provider names include: 'facebook', 'twitter', 'yahoo', 'messenger', 'linkedin', 'myspace', 'orkut', 'foursquare', 'renren', 'kaixin', 'vkontakte', 'mixi', 'yahoo-japan', 'skyrock'. | |
| requiredCapabilities | string | A comma separated list of any of the following capabilities: Login, Notifications, Actions, Friends, Status, Photos, Contacts. Only friends that belong to providers that support all the required capabilities will be returned. | |
| cid | string | A string of maximum 100 characters length. This string is associated with each transaction and will later appear on reports generated by Gigya in the "Context ID" combo box. The cid allows you to associate the report information with your own internal data. For example, to identify a specific widget or page on your site/application. The "Context ID" combo box lets you filter the report data by site/application context. | |
| format | string | Determines the format of the response. This parameter is required when using the REST API directly, and irrelevant when using one of our SDKs. The options are:
|
|
| callback | string | This parameter is relevant only when the format parameter is set to jsonp (see above). In such case this parameter should define the name of the callback method to be called in the response, along with the jsonp response data. | |
| httpStatusCodes | Boolean | The default value of this parameter is false, which means that the HTTP status code in Gigya's response is always 200 (OK), even if an error occurs. The error code and message is given within the response data (see below). If this parameter is set to true, the HTTP status code in Gigya's response would reflect an error, if occurs. | |
Authorization Parameters
Each REST API request must contain identification and authorization parameters.
The set of required parameters is dependent on your selected method of authorization. There are two options:
- If you are conforming with the OAuth 2.0 standard, you will need to Pass an Access Token. For more information, please read the Using Gigya's REST API in compliance with OAuth 2.0 guide.
- If you are using Gigya's proprietary authorization method, you will need to pass the parameters specified here. Or, if you are making a call over HTTPS then you may pass the secret parameter instead of the timestamp, nonce and sig parameters. For more information, please read the Using Gigya's REST API with our proprietary authorization method guide.
Response Data
| Field | Type | Description |
| errorCode | integer | The result code of the operation. Code '0' indicates success, any other number indicates failure. For a complete list of error codes, see the Error Codes table. |
| errorMessage | string | A short textual description of an error, associated with the errorCode, for logging purposes. This field will appear in the response only in case of an error. |
| errorDetails | string | This field will appear in the response only in case of an error and will contain the exception info, if available. |
| callId | string | Unique identifier of the transaction, for debugging purposes. |
| friends | JSON | Array of Friend objects (See the example JSON below), corresponding to the list of friends of the current user on all the social networks to which the user is connected. If the 'UIDs' input parameters is provided in the function call, only the specified friends are retrieved. |
Response Example
{
"friends": [{
"UID": "00",
"isSiteUser": false,
"isSiteUID": false,
"identities": [{
"provider": "facebook",
"providerUID": "00000",
"isLoginIdentity": false,
"nickname": "Baba",
"photoURL": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/00.jpg",
"thumbnailURL": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/00.jpg"}],
"nickname": "Baba",
"photoURL": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/00.jpg",
"thumbnailURL": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/00.jpg"
},
{
"UID": "01",
"isSiteUser": false,
"isSiteUID": false,
"identities": [{
"provider": "MySpace",
"providerUID": "00000",
"isLoginIdentity": false,
"nickname": "Tom",
"photoURL": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/0000.jpg",
"thumbnailURL": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/0000.jpg"}],
"nickname": "Tom",
"photoURL": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/0000.jpg",
"thumbnailURL": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/0000.jpg"
}],
"statusCode": 200,
"errorCode": 0,
"statusReason": "OK",
"callId": "e2b7c39de36541b4940087d66d4c1d77"
}
}
Comments