Server Event Parameters

ParameterDescription
event_name
string

Required.
A standard event or custom event name. This field is used to deduplicate events sent by both web (via Meta Pixel) or app (via SDK or App Events API) and the Conversions API. The event_id parameter is also used in deduplication.


For the same customer action, event from the browser or app 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/app event arrive at approximately the same time (that is, within 5 minutes of each other), we favor the browser/app 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 for comparable options available for data sent via Meta 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 web (via the Meta Pixel) or app (via SDK or App Events API) 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 or app event must match the event_id in the corresponding server event. Learn more about Handling Duplicate Pixel and Conversions API 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. By using the Conversions API, you agree that the action_source parameter is accurate to the best of your knowledge.


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.
  • app — Conversion was made on your mobile app.
  • 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.
  • business_messaging — Conversion was made from ads that click to Messenger, Instagram or WhatsApp.
  • other — Conversion happened in a way that is not listed.
Note: All action source values enable ad measurement and custom audience creation capabilities. All action sources except physical_store enable ad optimization capabilities.
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.

app_data

object

Required for app events

Parameters for sharing app data and device information with the Conversions API.

extinfo is a sub-parameter of app_data.

extinfo

object

Required for app events

Extended device information, such as screen width and height. This parameter is an array and values are separated by commas. When using extinfo, all values are required and must be in the order indexed below. If a value is missing, fill with an empty string as a placeholder.


Note:


  • version must be a2 for Android

  • version must be i2 for iOS

0

string

Required

extinfo version


Example: i2

1

string

app package name


Example: com.facebook.sdk.samples.hellofacebook

2

string

short version (int or string)


Example: 1.0

3

string

long version


Example: 1.0 long

4

string

Required

OS version


Example: 13.4.1

5

string

device model name


Example: iPhone5,1

6

string

locale


Example: En_US

7

string

timezone abbreviation


Example: PDT

8

string

carrier


Example: AT&T

9

int64

screen width


Example: 320

10

int64

screen height


Example: 568

11

string

screen density


Example: 2

12

int64

CPU cores


Example: 2

13

int64

external storage size in GB


Example: 13

14

int64

free space on external storage in GB


Example: 8

15

string

device timezone


Example: USA/New York

referrer_url
string

Optional.
The inbound website that was immediately visited prior to the advertiser page where the Meta Pixel fired. It is an HTTP referrer from JavaScript's perspective. The referral_url is either the page the user was on before they visited the current page, or the iFrame.