HTTP GET call to:https://graph.facebook.com/<API_VERSION>/<PRODUCT_FEED_ID>/rules
https://graph.facebook.com/<API_VERSION>/<PRODUCT_FEED_ID>/uploads
https://graph.facebook.com/<API_VERSION>/<UPLOAD_SESSION_ID>/errors
curl -i -X GET
"https://graph.facebook.com/<API_VERSION>/<UPLOAD_ERROR_ID>/suggested_rules?access_token={ACCESS_TOKEN}
"data": [
"attribute": "description",
"type": "letter_case_rule",
"params": [
"key": "type",
"value": "capitalize_first"
]
]
HTTP POST call to:https://graph.facebook.com/<API_VERSION>/<PRODUCT_FEED_ID>/rules?attribute={ATTRIBUTE}&rule_type={RULE_TYPE}¶ms={PARAMS}
curl -i -X POST
-d "attribute=google_product_category"
-d "rule_type=mapping_rule"
-d "params=%7B'map_from'%3A%20'gcategory'%7D"
-d "access_token={ACCESS_TOKEN}"
"https://graph.facebook.com/<API_VERSION>/{PRODUCT_FEED_ID}/rules"
"id": "{RULE_ID}"
params as follows:| Rule Type | Format | Example | Notes |
|---|---|---|---|
Mapping Rule | “map_from”: <string> | “map_from”: “gavailability” | |
Value Mapping Rule | <string> : <string> | “InStock”: “in stock” | Maximum number of mappings is limited to 10 and length of strings to 20. |
Letter Case Rule | “type”: one of : “capitalize_first”, “capitalize_all”, “to_upper”, “to_lower” | “type”: “capitalize_first” |
gavailability to availabilityInStock to in stock45$ to 45.00 USDNeu under Condition: NewBRAND NEW WITH LEATHER DETAIL... to Brand new with leather detail...FACEBOOK T-SHIRT to Facebook T-shirtHTTP POST call to update any parameters and HTTP DELETE to delete it. You can only update parameters. If you want to change attribute or rule_type, you must delete and re-create the rule.https://graph.facebook.com/<API_VERSION>/<PRODUCT_FEED_RULE_ID>?params={PARAMS}
content_id included in your pixel or app event doesn’t match the ID in the catalog’s data feed.POST /{upload_session_id}/error_report.FATAL if the error caused item to be rejected, WARNING if item was uploaded but with an error)'da' within this columntrue/false); for example, if the error prevents the item from being shown on this surfacecurl -i -X POST \
-F 'access_token=ACCESS_TOKEN' \
https://graph.facebook.com/<API_VERSION>/<upload session ID>/error_report
{
"success": bool,
}
GET https://graph.facebook.com/vX.X/{upload-session-id}/?fields=error_report
{ "error_report": { "report_status": "WRITE_FINISHED", "file_handle": "{link-to-the-file-location}" }, "id": "493476498092860" }
GET /{upload_session_id}?fields=error_report to get the status of the error report.curl -i -X GET \
https://graph.facebook.com/<API_VERSION>/<upload session ID>?fields=error_report&access_token=ACCESS_TOKEN
{
"error_report": {
"report_status": string,
"file_handle": string, // if available
}
"id": "332552650711532 (https://developers.facebook.com/tools/explorer/690422434302374?method=GET&path=332552650711532%3Ffields%3Derror_report&version=v3.2#)"
}
| Value | Description |
|---|---|
NOT_REQUESTED | The error report for this data feed upload has not been requested. |
REQUESTED | The request was received and is being processed. |
CREATED | The report creation was successful and is waiting to be written to a CSV file. |
WRITE_FINISHED | The report file has been prepared and is ready to be downloaded. |
SESSION_DATA_NOT_FOUND | There was no data found for this data feed upload session, it is likely that there were no items processed for this feed upload. |
ERROR_REPORT_OUTDATED | The error report is older than 30 days and is no longer available. |
FATAL_ERROR | Something went wrong on our end while trying to prepare this error report. You can request for an error report to retry. |
error_report is WRITE_FINISHED.GET https://graph.facebook.com/vX.X/{product-feed-id}/uploads
Token: PAGE_ACCESS_TOKEN
upload_session_id to retrieve errors and warnings.GET https://graph.facebook.com/vX.X/{upload-session-id}/errors
Token: PAGE_ACCESS_TOKEN
fatal severity here means the item cannot be ingested by Meta; a warning severity means some recommended attributes are missing or malformed.{ "data": [ { "id": 1510567479166488, "summary": "A required field is missing: price.", "description": "Products need to have prices to run in ads. Include a price for each product in your data feed file and upload it again. Prices must include cost and an ISO currency code (for example: 10 USD instead of $10 for American dollars).", "severity": "fatal", "samples": { "data": [ { "row_number": 2, "retailer_id": "yj9bpbpub5t8t22kgbq6", "id": "1677559492523068" }, { "row_number": 5, "retailer_id": "ujn33tvbyv2vmdpo7ecb", "id": "1529743440653137" } ] } }, { "id": 275241589314958, "summary": "GTIN is incorrectly formatted", "description": "Check that the GTIN (Global Trade Identification Number) for each of your products is in the correct format. Accepted types include UPC, EAN, JAN, and ISBN.", "severity": "warning", "samples": { "data": [ { "row_number": 4, "retailer_id": "bxwb1pho9o43uxjxikcg", "id": "538700559625644" } ] } } ] }
GET https://graph.facebook.com/vX.X/{product-feed-id}/uploads
{ "data": [ { "id": "493476498092860", "start_time": "2019-07-15T12:38:36+0000", "end_time": "2019-07-15T12:38:47+0000" } ] }
id field to retrieve a sampling of errors and warnings.GET https://graph.facebook.com/vX.X/{upload-session-id}/errors
fatal severity here means the item cannot be ingested by Meta; a warning severity means some recommended attributes are missing or malformed.{ "data": [ { "id": 1510567479166488, "summary": "A required field is missing: price.", "description": "Products need to have prices to run in ads. Include a price for each product in your data feed file and upload it again. Prices must include cost and an ISO currency code (for example: 10 USD instead of $10 for American dollars).", "severity": "fatal", "samples": { "data": [ { "row_number": 2, "retailer_id": "yj9bpbpub5t8t22kgbq6", "id": "1677559492523068" }, { "row_number": 5, "retailer_id": "ujn33tvbyv2vmdpo7ecb", "id": "1529743440653137" } ] } }, { "id": 275241589314958, "summary": "GTIN is incorrectly formatted", "description": "Check that the GTIN (Global Trade Identification Number) for each of your products is in the correct format. Accepted types include UPC, EAN, JAN, and ISBN.", "severity": "warning", "samples": { "data": [ { "row_number": 4, "retailer_id": "bxwb1pho9o43uxjxikcg", "id": "538700559625644" } ] } } ] }