Skip to content

Signals Gateway: File Upload

Updated: Jan 12, 2026

The File Upload feature allows Signals Gateway users to ingest events that are in a CSV file. This feature supports uploading events that are compatible with Meta servers, including website, offline (such as in-store) app and CRM events. There are two methods for uploading events: automatic uploads using S3 integration, or manually uploading files within the Signals Gateway by setup file data source. The automatic method is recommended as it eliminates the need for human intervention and runs seamlessly in the background without disrupting instance usage.

File Data Source Setup

While creating first party pipeline, choose "File upload" as data source.

Create a data pipeline dialog, Set up data pipeline step, with File upload selected as the data source

Add a name for this source:

Set up Data Upload step with a Data source name field for naming the file data source

The file source will then be created:

Confirmation that the data source was added, with Next steps for automatic or manual file upload

After finishing the pipeline creation, you can start using the "File Upload" features manually or further config for automation upload as described below. Events can be viewed by clicking on the File events icon at pipeline detail page:

File upload data source Event activity tab listing events with inbound counts and last received times

Automatic File Uploads

To set up automatic uploads, find the setting through Account settings -> Automatic file uploads.

Account settings menu expanded with Automatic file uploads, Websites, Data routing, and Advanced matching options

You will be redirected to the page that provides an overview of automatic uploading (shown below), click Start setup to continue.

Set up automatic uploads for event source files overview page with Before you begin prerequisites and Start setup button

A modal will pop up, which provides resources and guidance on creating an S3 bucket with ease. Click Continue when you've finished set up process:

Set up automatic file uploads modal, Prerequisite step, with S3 bucket and IAM user setup instructions

Provide necessary information for S3 and IAM user created in previous step:

Connect S3 bucket step with fields for AccessKey, SecretAccessKey, Bucket name, and Hosting region

When the setup is finished, you'll be provided with a sample file for reference.

Confirmation step showing automatic uploads are set up, with a Download .CSV File button for a sample file

Now you can go back to the same setup page from the Overview page to monitor the job run, and to modify connection information by clicking the "..." button.

Automatic uploads for events section with a Go to settings button

File event data sources S3 file connection table showing a Bucket Name, AccessKey, and Most recent activity status of NotStarted

Below is a detailed header definition table to use when formatting your data files. Follow the format closely to help ensure the best results. You can also view this table on the Settings page.

KeyDescriptionRequiredDefault Value
DATA_SET_IDID of Signals Gateway file data source.YesEvent will be dropped if an ID is not included.
EVENT_NAMEEvent name of the recordYesPurchase
EVENT_TIMEDate and time when transaction happens, formatted as "YYYY-MM-DD HH:mm:ss"Yesempty
ACTION_SOURCEThe Meta defined action source indicates what type of the event is. See a list of sources here.Yesphysical_store
VALUEThe value of the transaction.Required for Purchase event0
CURRENCYcurrency of the transaction.Required for Purchase eventUSD
CONTENT_IDSThe IDs for contents or items with transaction. Support multi values split by pipe symbol, for example ID1ID2.No
ORDER_IDThe transaction ID or order ID for the record.No, but recommendedempty
EMAILCustomer's emailNo, but recommendedempty
PHONECustomer's phone numberNo, but recommendedempty
LAST_NAMECustomer's last nameNo, but recommendedempty
FIRST_NAMECustomer's first nameNo, but recommendedempty
DOBCustomer's date of birth strin. We accept YYYYMMDD format. Example: 1/1/2013 should be formatted as 20230101No, but recommendedempty
COUNTRYCustomer's country Use two letter code. For example, USNo, but recommendedempty
STATECustomer's stateNo, but recommendedempty
CITYCustomer's cityNo, but recommendedempty
ZIPCustomer's zip codeNo, but recommendedempty
CLICK_IDIdentifier associated with User's link click. (Also known as fbc or fbclid)No, but recommendedempty
MAD_IDAdvertising ID for Apple or AndroidNo, but recommendedempty
EXTERNAL_IDThird party user IDNo, but recommendedempty
LEAD_IDThe lead ID from your Lead AdsNo, but recommendedempty
custom_data.<data-key>Setup this header to send custom data. Replace <data-key> to the actual keys you want to use. See special note below.﹡Noempty

﹡Automatic uploads can handle top-level custom data, but the feature does not currently support nested objects. The header of the CSV column should be labeled as "custom_data.<data-key>", where <data-key> is the name of the custom data field you wish to send, for example "custom_data.CustomField".

Test Automatic Upload: To verify the S3 integration, upload some sample files to the connected S3 bucket and check if the job finished successfully. For non-App Runner instances, you can trigger an instant job by clicking the refresh button on the settings page; otherwise, the job will run automatically in an hour.

File event data sources S3 file connection table showing a connection with a failed Most recent activity status and a refresh button

Manual File Uploads

Click the file event data source from Pipeline to start using the manually upload feature.

Pipeline Overview showing the flow from a File upload data source through Pipeline filter processing to a Meta Dataset destination

Then locate the action menu from the popup modal and click Upload event data.

File upload data source modal with the Actions menu open showing Upload event data, Disable, and Remove options

Upload event data modal with a drag-and-drop area for a CSV file and Uploaded events and Excluded events counts

Event data manually uploaded to a data source must contain a set of parameters, some mandatory and some optional. The CSV file headers use JSONPath format to define the payload keys Check the detailed payload parameters here. Use the template available by clicking the sample file link to format your events data.

Once uploaded, the name of the CSV file will appear and the number of Uploaded or Excluded events will be shown.

See Also

Unofficial mirror for reference/search purposes. All content originates from developers.facebook.com — see the source link at the top of each page. Machine-readable indexes: llms.txt · llms-full.txt · About