Users.hasAppPermission
From Facebook Developer Wiki
Contents |
Description
Checks whether the user has opted in to an extended application permission.
For non-desktop applications, you may pass the ID of the user on whose behalf you're making this call. If you don't specify a user with the uid parameter but you do specify a session_key, then that user whose session it is will be the target of the call.
However, if your application is a desktop application, you must pass a valid session key for security reasons. Passing a uid parameter will result in an error.
Parameters
| Required | Name | Type | Description | |
| required | api_key | string | The application key associated with the calling application. If you specify the API key in your client, you don't need to pass it with every call. | |
|---|---|---|---|---|
| call_id | float | The request's sequence number. Each successive call for any session must use a sequence number greater than the last. We suggest using the current time in milliseconds, such as PHP's microtime(true) function. If you specify the call ID in your client, you don't need to pass it with every call. | ||
| sig | string | An MD5 hash of the current request and your secret key, as described in the How Facebook Authenticates Your Application. Facebook computes the signature for you automatically. | ||
| v | string | This must be set to 1.0 to use this version of the API. If you specify the version in your client, you don't need to pass it with every call. | ||
| ext_perm | string | String identifier for the extended permission that is being checked for. Must be one of email, read_stream, publish_stream, offline_access, status_update, photo_upload, create_event, rsvp_event, sms, video_upload, create_note, share_item. | ||
| optional | session_key | string | The session key of the user whose permissions you are checking. Note: A session key is always required for desktop applications. It is required for Web applications only when the uid is not specified. | |
| format | string | The desired response format, which can be either XML or JSON. (Default value is XML.) | ||
| callback | string | Name of a function to call. This is primarily to enable cross-domain JavaScript requests using the <script> tag, also known as JSONP, and works with both the XML and JSON formats. The function will be called with the response passed as the parameter. | ||
| uid | int | The user ID of the user whose permissions you are checking. If this parameter is not specified, then it defaults to the session user. Note: This parameter applies only to Web applications and is required by them only if the session_key is not specified. Facebook ignores this parameter if it is passed by a desktop application. |
Response
Returns 1 (true) or 0 (false).
Example Return XML
<?xml version="1.0" encoding="UTF-8"?>
<users_hasAppPermission_response xmlns="http://api.facebook.com/1.0/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://api.facebook.com/1.0/ http://api.facebook.com/1.0/facebook.xsd">1</users_hasAppPermission_response>
Error Codes
| Code | Description | |
| 1 | An unknown error occurred. Please resubmit the request. | |
|---|---|---|
| 2 | The service is not available at this time. | |
| 4 | The application has reached the maximum number of requests allowed. More requests are allowed once the time window has completed. | |
| 5 | The request came from a remote address not allowed by this application. | |
| 101 | The API key submitted is not associated with any known application. | |
| 102 | The session key was improperly submitted or has reached its timeout. Direct the user to log in again to obtain another key. | |
| 103 | The submitted call_id was not greater than the previous call_id for this session. | |
| 104 | Incorrect signature. | |
| 200 | The application does not have permission to operate on the passed in uid parameter. |
Notes
- This function does not require a
session_key, unless it is being called by a desktop application. - You can call this method using a session secret, and not the application secret (for example, for a Facebook Connect site or desktop application).
