# OpenAI Ads Destination Setup Guide


{{< customreadfile "/includes/openai-ads-private-beta.md" >}}

This guide helps you set up OpenAI Ads as a destination in the RudderStack dashboard. It also lists the configuration settings required to correctly send data from the supported sources to OpenAI Ads.

## Connection compatibility

{{< destination-config >}}

## Setup

In your [RudderStack dashboard](https://app.rudderstack.com/), add a source. Then, from the list of destinations, select **OpenAI Ads**.

### Connection settings

| Setting | Description |
| :----| :-----|
| Destination name | Assign a name to uniquely identify the destination. |
| OpenAI Ads account | Select or create an OpenAI Ads account. The account requires a **Pixel ID**. **Conversions API key** is mandatory for cloud mode connections. |

While creating an OpenAI Ads account, configure the following fields:

| Field | Description |
| :----| :-----|
| Account name | Enter a name to identify the OpenAI Ads account in RudderStack. |
| Pixel ID | Enter your OpenAI Ads Pixel ID. RudderStack uses it to initialize the Measurement Pixel in web device mode and as the `pid` value for cloud mode Conversions API delivery. |
| API Key | Enter your OpenAI Ads Conversions API key. This field is **required** for cloud mode delivery and **optional** for web device mode connections. |

### Configuration settings

Configure the following settings to send your data correctly to OpenAI Ads:

| Setting | Description |
| :----| :-----|
| Default currency | Enter an optional fallback [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code. Use a three-letter uppercase code, such as `USD`. |
| Default action source | Select an optional fallback `action_source` value used when the event does not include one. Supported values are `web`, `mobile_app`, `offline`, `physical_store`, `phone_call`, `email`, and `other`. |

### Event mapping settings

Use the event mapping settings to map RudderStack events to OpenAI Ads events.

| Setting | Description |
| :----| :-----|
| Event mappings | Click **Set up mapping** to map RudderStack event names to OpenAI Ads standard events, or choose **Custom** and provide a custom event name. <br /><br />{{< info >}}You can configure only one OpenAI Ads event mapping per RudderStack event name.{{< /info >}} |
| RudderStack event name | Enter the source `track`, `page`, or `screen` event name you want to map. |
| OpenAI Ads event | Select the OpenAI Ads event to receive the RudderStack event. Supported standard events are `app_installed`, `app_opened`, `appointment_scheduled`, `checkout_started`, `contents_viewed`, `items_added`, `lead_created`, `order_created`, `page_viewed`, `registration_completed`, `subscription_created`, and `trial_started`. |
| Deduplication key path | Enter an optional dot path, such as `properties.orderId`, to use as the OpenAI Ads event ID. If this path is empty or does not resolve to a value, RudderStack uses the message ID. |
| Custom event name | Required only when the mapped OpenAI Ads event is **Custom**. You can't configure this field for standard OpenAI Ads events. |

### Other settings

| Setting | Description |
| :----| :-----|
| Client-side event filtering | Specify which web device mode events should be discarded or allowed to flow through to OpenAI Ads. Choose **No events filtering**, **Filter via allowlist**, or **Filter via denylist**. <br /><br />See [Client-side Event Filtering]({{< ref "sources/event-streams/sdks/event-filtering.md" >}}) for more information. |
| Consent management settings | Configure the consent management settings for the specified source by choosing the **Consent management provider** from the dropdown and entering the relevant consent category IDs. <br /><br />See [Consent Management in RudderStack]({{< ref "data-governance/consent-management/overview.md" >}}) for more information on this feature. |

## Next steps

- [Send events in cloud mode]({{< ref "destinations/streaming-destinations/openai-ads/cloud-mode.md" >}})
- [Send events in web device mode]({{< ref "destinations/streaming-destinations/openai-ads/device-mode.md" >}})

