Server Event Parameters

ParameterDescription
event_name
string

Required.
A Facebook Pixel standard event or custom event name. This field is used to deduplicate events sent by both Facebook Pixel and Conversions API. The event_id parameter is also used in deduplication.


For the same customer action, event from the browser event matches event_name from the server event. If we find a match between events sent within 48 hours of each other, we only consider the first one. If a server and browser event arrive at approximately the same time (i.e., within 5 minutes of each other), we favor the browser event. Learn more about Deduplicate Pixel and Server Events.

event_time
integer

Required.
A Unix timestamp in seconds indicating when the actual event occurred. The specified time may be earlier than the time you send the event to Facebook. This is to enable batch processing and server performance optimization. You must send this date in GMT time zone.


The event_time can be up to 7 days before you send an event to Facebook. If any event_time in data is greater than 7 days in the past, we return an error for the entire request and process no events.

user_data
object

Required.
A map that contains customer information data. See Customer Information Parameters for options. See Advanced Matching with the Pixel for comparable options available for data sent via Facebook Pixel.

custom_data
object

Optional.
A map that includes additional business data about the event. See Custom Data Parameters for more information.

event_source_url
string

Optional.
The browser URL where the event happened. The URL must begin with http:// or https:// and should match the verified domain.


Note: The event_source_url is required for website events shared using the Conversions API.

opt_out
boolean

Optional.
A flag that indicates we should not use this event for ads delivery optimization. If set to true, we only use the event for attribution.

event_id
string

Optional.
This ID can be any unique string chosen by the advertiser. The event_id and event_name parameters are used to deduplicate events sent by both Facebook Pixel and the Conversions API. Note that while event_id is marked optional, it is recommended for event deduplication.


For deduplication, the eventID from a browser event must match the event_id in the corresponding server event. Learn more about how to Deduplicate Pixel and Server-Side Events.


An order number or transaction ID are two potential identifiers that can be used for event_id. For example, if a customer makes two purchases on your website with order numbers 123 and 456, each Conversions API call would need to include its respective order number for event_id. This allows us to properly distinguish these two purchase events as distinct orders. The two corresponding browser pixel purchase events would need to also send the same order numbers in the eventID parameter for us to understand that there were only two events that took place, not four unique purchases.


For other events without an intrinsic ID number, a random number (so long as the same random number is sent between browser and server events) can be used.

action_source
string

Required.
This field allows you to specify where your conversions occurred. Knowing where your events took place helps ensure your ads go to the right people. The values you can send in the action_source field are as follows:

  • email — Conversion happened over email.
  • website — Conversion was made on your website.
  • phone_call — Conversion was made over the phone.
  • chat — Conversion was made via a messaging app, SMS, or online messaging feature.
  • physical_store — Conversion was made in person at your physical store.
  • system_generated — Conversion happened automatically, for example, a subscription renewal that’s set to auto-pay each month.
  • other — Conversion happened in a way that is not listed.
data_processing_options
array

Optional.
Processing options you would like to enable for a specific event. Current accepted value is LDU for Limited Data Use. An empty array can be sent to explicitly specify that this event shouldn't be processed with the Limited Data Use restrictions. Learn more about Data Processing options. See examples of Conversions API implementation.

data_processing_options_country
integer

Required, if you send LDU under data_processing_options.
A country that you want to associate to this data processing option. Current accepted values are 1, for the United States of America, or 0, to request that we geolocate that event. Learn more about Data Processing options. See examples of Conversions API implementation.

data_processing_options_state
integer

Required in some cases. (See note below for details.)
A state that you want to associate to this data processing option. Current accepted values are 1000, for California, or 0, to request that we geolocate that event.


Note:

  • If you set a country, you must also set a state. Otherwise, we apply our geolocation logic to the entire event.
  • This field is required if you send LDU under data_processing_options and do not provide an IP address.

Learn more about Data Processing options. See examples of Conversions API implementation.