Marketing API Version

Product Feed Uploads

Reading

Concrete upload attempts.

Since uploads happen automatically based on a schedule, you may need to get a list of recent uploads. The list includes both manual and scheduled uploads. To get the list, make an HTTP GET call to:

https://graph.facebook.com/<PRODUCT_FEED_ID>/uploads

Example

Graph API Explorer
GET /v2.11/{product-feed-id}/uploads 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-id}/uploads',
    '{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-id}/uploads",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{product-feed-id}/uploads",
    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-id}/uploads"
                                      parameters:params
                                      HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

Permissions

Developers usually request these permissions for this endpoint:

Marketing Apps
  • ads_management
  • manage_pages
  • pages_show_list
Page management Apps
No data
Other Apps
No data

Parameters

This endpoint doesn't have any parameters.

Fields

Reading from this edge will return a JSON formatted result:

{ "data": [], "paging": {} }

data

A list of ProductFeedUpload nodes.

paging

For more details about pagination, see the Graph API guide.

Validation Rules

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

Creating

curl \
-F "url=http://www.example.com/sample_feed.tsv" \
-F "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<API_VERSION>/<PRODUCT_FEED_ID>/uploads

Example

You can make a POST request to uploads edge from the following paths:
When posting to this edge, no Graph object will be created.

Permissions

Developers usually request these permissions for this endpoint:

Marketing Apps
  • ads_management
  • manage_pages
  • pages_show_list
Page management Apps
No data
Other Apps
No data

Parameters

NameDescription
file
file

Direct upload of the file containing the products feed.

password
string

The password to be used with an HTTP(S) or (S)FTP URL. Required for (S)FTP URLs.

update_only
boolean

if set to true, only create/update will occur, noitems will be deleted

url
URL

The URL where the feed should be fetched. Can be an HTTP(S), or (S)FTP URL

username
string

The username to be used with an HTTP(S) or (S)FTP URL. Required for (S)FTP URLs.

Return Type

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

Validation Rules

ErrorDescription
100Invalid parameter
200Permissions error
10801 Either "file" or "url" must be specified
10802Product category misses user credential fields
294Managing advertisements requires an access token with the extended permission for ads_management

Updating

You can't perform this operation on this endpoint.

Deleting

You can't perform this operation on this endpoint.