Graph API Version

Product Feed Rule

Reading

A transformation rule applied to a feed.

Example

Graph API Explorer
GET /v4.0/{product-feed-rule-id} 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(
    '/{product-feed-rule-id}',
    '{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 */
FB.api(
    "/{product-feed-rule-id}",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{product-feed-rule-id}",
    null,
    HttpMethod.GET,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
// For more complex open graph stories, use `FBSDKShareAPI`
// with `FBSDKShareOpenGraphContent`
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{product-feed-rule-id}"
                                      parameters:params
                                      HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];
If you want to learn how to use the Graph API, read our Using Graph API guide.

Parameters

This endpoint doesn't have any parameters.

Fields

FieldDescription
id
numeric string

The id of the object.

attribute
string

The attribute to which the rules are going to be applied. Its value maps to the the property we are going to transform.
Note: A feed can not have more than one rule with the same rule_type and attribute.

params
list<KeyValue:string,string>

Specifies the parameters which are going to be used as the input of the rule.

Each rule expects params object to be of particular form:
mapping_rule: {"map_from": string}
value_mapping_rule: {string: string}
letter_case_rule: {"type": one of "to_upper", "to_lower", "capitalize_all", "capitalize_first"}

rule_type
enum

A type of a rule. Defines the operation that is going to be applied to the attribute.

Validation Rules

ErrorDescription
275Cannot determine the target object for this request. Currently supported objects include ad account, business account and associated objects.

Creating

You can make a POST request to rules edge from the following paths:
When posting to this edge, a ProductFeedRule will be created.

Parameters

ParameterDescription
attribute
string

The attribute to which the rules are going to be applied. Its value maps to the the property we are going to transform.
Note: A feed can not have more than one rule with the same rule_type and attribute.

Required
params
dictionary { string : <string> }

Specifies the parameters which are going to be used as the input of the rule.

Each rule expects params object to be of particular form:
mapping_rule: {"map_from": string}
value_mapping_rule: {string: string}
letter_case_rule: {"type": one of
regex_replace_rule: {regex: string} //regex ==a valid regular expression eg: [Cc]olou?r"to_upper", "to_lower", "capitalize_all", "capitalize_first"}
fallback_rule: {"user_default_value": string}

rule_type
enum{mapping_rule, value_mapping_rule, letter_case_rule, fallback_rule, regex_replace_rule}

A type of a rule. Defines the operation that is going to be applied to the attribute.

Required

Return Type

This endpoint supports read-after-write and will read the node represented by id in the return type.
Struct {
id: numeric string,
}

Validation Rules

ErrorDescription
100Invalid parameter
200Permissions error

Updating

You can update a ProductFeedRule by making a POST request to /{product_feed_rule_id}.

Parameters

ParameterDescription
params
dictionary { string : <string> }

Specifies the parameters which are going to be used as the input of the rule.

Each rule expects params object to be of particular form:
mapping_rule: {"map_from": string}
value_mapping_rule: {string: string}
letter_case_rule: {"type": one of
regex_replace_rule: {regex: string} //regex ==a valid regular expression eg: [Cc]olou?r"to_upper", "to_lower", "capitalize_all", "capitalize_first"}
fallback_rule: {"user_default_value": string}

Required

Return Type

This endpoint supports read-after-write and will read the node to which you POSTed.
Struct {
success: bool,
}

Validation Rules

ErrorDescription
100Invalid parameter

Deleting

You can delete a ProductFeedRule by making a DELETE request to /{product_feed_rule_id}.

Parameters

This endpoint doesn't have any parameters.

Return Type

Struct {
success: bool,
}

Validation Rules

ErrorDescription
200Permissions error