Data.setUserPreference

From Facebook Developer Wiki

Revision as of 23:12, 20 February 2009 by Pete Bratach (Talk | contribs)
(diff) ←Older revision | Current revision (diff) | Newer revision→ (diff)
Jump to: navigation, search

Note: Support for this method is temporarily disabled until we support user-level permissions. You can still pass this call, but you must include your application secret.

Sets currently authenticated user's preference. Each preference is a string of maximum 128 characters and each of them has a numeric identifier ranged from 0 to 200. Therefore, every application can store up to 201 string values for each of its user.

To "remove" a preference, set it to 0 or empty string. Note that, both "0" and "" are considered as "not present", and getPreference() call will not return them. To tell them from each other, one can use some serialization format. For example, "n:0" for zeros and "s:" for empty strings.

Contents

Parameters

Type Name Description
string api_key The application key associated with the calling application.
string session_key The session key of the logged in user.
float call_id 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.
string sig An MD5 hash of the current request and your secret key, as described in the authentication guide.
string v This must be set to 1.0 to use this version of the API.
string format Optional - desired response format. Either "XML" (default) or "JSON".
string callback Optional - wrap the response inside a function call. This is primarily to enable cross-domain javascript requests using the <script> tag, sometimes known as "JSONP". This works with both XML and JSON.

integer pref_id (0-201) Numeric identifier of this preference.
string value (max. 128 characters) Value of the preference to set. Set it to "0" or "" to remove this preference.

Return Value

<?xml version="1.0" encoding="UTF-8"?>
<data_setUserPreference_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"/>

PHP Client Coding Examples

<?php

$facebook = new Facebook($key,$secret);
$int_id = foo_gen_id();
$str = foo_gen_pref();
$facebook->api_client->data_setUserPreference($int_id, $str);
unset($facebook);

?>

FQL Equivalent

(none)

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.
100 One of the parameters specified was missing or invalid.
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.
800 Internal error. Please report this to Facebook when getting this error.
802 Quota exceeded. Certain maximum number allocated for an application or a user is exceeded.
805 A temporary database failure happened. Usually this can be corrected by a re-try.
reference