> For the complete documentation index, see [llms.txt](https://help.citrusad.com/retail-media-interface/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.citrusad.com/retail-media-interface/partner/partner-api-overview/campaign-field-definitions.md).

# Campaign field definitions

## Common campaign fields

This section provides brief descriptions and examples to help you understand common campaign fields across different types, such as product ads, banners, and banner X. Each entry includes the field's purpose and a representative implementation example for your platform.

| Field                                             | Purpose and example                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                            | It's recommended to include details like the promoted product, time frame, or strategy, such as 'Cadbury Chocolate June Clearance,' to help identify the campaign easily. The name can be up to 255 characters long.                                                                                                                                                                                                                                                                                                                            |
| `namespaceId`                                     | <p>The unique identifier of your namespace, located in the base URL. For instance, in <code>exampleretailer.citrusad.com</code>, the <code>namespaceId</code> is <code>exampleretailer</code>.<br><br>Make sure that the resource exists for the ID you provide as the namespace.</p>                                                                                                                                                                                                                                                           |
| `approval.state`                                  | <p>The approval state of the campaign can only use specified enum values. Supported states are <code>APPROVAL\_STATE\_APPROVED</code>, <code>APPROVAL\_STATE\_REJECTED</code>, <code>APPROVAL\_STATE\_PENDING</code>.<br><br>Note that<code>APPROVAL\_STATE\_UNSPECIFIED</code> cannot be used.</p>                                                                                                                                                                                                                                             |
| `approval.rejectionReason`                        | The reason a campaign has been rejected. This is a mandatory field if status is `APPROVAL_STATE_REJECTED`.                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `campaignState`                                   | <p>The active state of the campaign indicates whether it is active, paused, a draft, or archived. For example, <code>CAMPAIGN\_STATE\_ACTIVE</code>, <code>CAMPAIGN\_STATE\_DRAFT</code>, <code>CAMPAIGN\_STATE\_UNSPECIFIED</code>.<br><br>Note that <code>CAMPAIGN\_STATE\_UNSPECIFIED</code> cannot be used.</p>                                                                                                                                                                                                                             |
| `teamId`                                          | <p>The <code>teamId</code> is the unique identifier of the campaign's team.<br><br>Ensure the resource exists for the given team ID and does not have the archived flag set. Additionally, the template team ID must match the campaign team ID.</p>                                                                                                                                                                                                                                                                                            |
| `startTime`                                       | <p>The campaign start time using a precise ISO-8601 timestamp. For example, <code>2024-09-01T12:00:00Z</code>.<br><br>Omit this value for <code>always on</code> campaigns.</p>                                                                                                                                                                                                                                                                                                                                                                 |
| `endTime`                                         | <p>The campaign end time uses a precise ISO-8601 timestamp and must be set if <code>startTime</code> is specified. For example, <code>2024-09-30T23:59:59Z</code>. The end time must be after the start time.<br><br>Omit this value for<code>always on</code> campaigns.</p>                                                                                                                                                                                                                                                                   |
| `walletId`                                        | <p>The unique identifier of the wallet to be charged for the campaign, for example, <code>wallet\_123456789</code>.<br><br>- If <code>campaignType</code> is not 'Wildcard', an object should exist for the ID.<br>- The wallet team ID should match the campaign team ID.<br>- The wallet's currency code must match the campaign catalog's currency code. If you're unsure of this, check with your Customer Integration Engineer (CIE).</p>                                                                                                  |
| `placementId`                                     | <p>The unique identifier of the campaign's placement. For example, <code>placement\_987654321</code>.<br><br>Ensure the resource exists for the given placement ID and it corresponds to the right campaign.</p>                                                                                                                                                                                                                                                                                                                                |
| `catalogIds`                                      | <p>The unique identifier of the retailer's catalog(s). For example, <code>\["329f1e08-d3ee-4e04-90c4-068b3ce6b856","6c29a96a-f55a-497f-b03a-2fed85dd7198" ]</code>.<br><br>Ensure the resource exists for the given catalog ID and it corresponds to the right campaign.</p>                                                                                                                                                                                                                                                                    |
| `advertisedProducts.<br>productsByKey`            | <p>The combinations of product codes and catalog IDs being advertised in the campaign. If a campaign appears in two catalogs, provide two catalog-product pairings.<br><br>For example, <code>\[{"catalogId": "14edbbc5-a7be-4c54-9f35-767b4ee29fd3","productCode": "ABC123"}]</code>.</p>                                                                                                                                                                                                                                                      |
| `targeting.searchTerms`                           | The search terms and their match types that the campaign will target. Include this information only for search placements. For example, `{"matchType": "MATCH_TYPE_EXACT_MATCH","phrase": "string"}`}.                                                                                                                                                                                                                                                                                                                                          |
| `targeting.excludeFilters`                        | <p>Filters to exclude during the targeting stage, which should only be location or category filters aligned with your <code>filterClassId</code>. Most integrations can omit these values. If using two filter classes, specify one object per filter class:<br><br><code>{"excludeFilters": \[ \<br>{ \<br>"catalogId": "76df36b4-45a2-46a5-9308-3dd14861d76e", \<br>"filter": "category:chocolate" \<br>}, \<br>{ \<br>"catalogId": "76df36b4-45a2-46a5-9308-3dd14861d76e", \<br>"filter": "location:florida" \<br>} \<br>] \<br>}</code></p> |
| `targeting.includeFilters`                        | <p>Explicit filters to be targeted by the campaign. Omit this for standard integrations. Only populate this field if advised or when creating fixed tenancy campaigns.<br><br><code>{"includeFilters": \[ \<br>{ \<br>"catalogId": "76df36b4-45a2-46a5-9308-3dd14861d76e", \<br>"filter": "category:flavoured-milk" \<br>} \<br>] \<br>}</code></p>                                                                                                                                                                                             |
| `targeting.negativeSearchTerms`                   | Negative search terms exclude specific words or phrases from your campaign, preventing your ads from appearing in unrelated searches. This strategy refines your audience, lowers costs, and boosts campaign efficiency. For example, adding `used` as a negative term for a new car ad avoids displaying it to those seeking used cars.                                                                                                                                                                                                        |
| `targeting.crossSell`                             | Specifies targeting on cross-sell placements.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `targeting.crossSell.<br>targetProductsByKey`     | <p>Specifies explicit catalog product pairings to be targeted.<br><br><code>\[{"catalogId": "14edbbc5-a7be-4c54-9f35-767b4ee29fd3","productCode": "ABC123"}]</code><br><br>- Target product catalogs must match the campaign catalogs.<br>- A product must exist for each product-catalog pair.<br>- Target products cannot be among the advertised products.<br>- Target products and advertised products must share matching categories.</p>                                                                                                  |
| `targeting.upSell.<br>targetProductsByKey`        | <p>Specifies explicit catalog product pairings to be targeted.<br><br><code>\[{"catalogId": "14edbbc5-a7be-4c54-9f35-767b4ee29fd3","productCode": "ABC123"}]</code></p>                                                                                                                                                                                                                                                                                                                                                                         |
| `strategy.auction.maxBid`                         | <p>The maximum cost-per-click (CPC) bid of your campaign. For example, 2.99.<br><br>- Must be a valid BigDecimal.<br>- Must be more than the minimum bid.<br><br>},<br>"strategy": {<br>"auction": {<br>"maxBid": "string",<br>"spendLimit": {<br>"daily": "string",<br>"total": "string"<br>}<br>},</p>                                                                                                                                                                                                                                        |
| `strategy.auction.spendLimit`                     | <p>Specifies the maximum daily or total spend for a campaign.<br><br>Omit this for an <code>always on</code> campaign, which will continue spending as long as there are funds in the campaign's wallet. For example: "daily": "1000"." Ensure that the spend limit is a BigDecimal value greater than 0.<br><br>},<br>"strategy": {<br>"auction": {<br>"maxBid": "string",<br>"spendLimit": {<br>"daily": "string",<br>"total": "string"<br>}<br>},</p>                                                                                        |
| `strategy.fixedTenancy.cost`                      | <p>Represents the total cost of the campaign, used for reporting purposes only and not deducted from the wallet. This value can be updated if the retailer optimizes across an entire package or insertion order (IO). For example: 1000.99.<br><br>"fixedTenancy": {<br>"cost": "1000.99",<br>"positions": \[<br>0<br>],<br>"catalogCosts": \[<br>{<br>"catalogId": "string",<br>"catalogCostPercentage": 0<br>}<br>]<br>}</p>                                                                                                                 |
| `strategy.fixedTenancy.<br>catalogCostPercentage` | <p>A value between 0 and 1 indicating the portion of the cost allocated to each catalog. If using multiple catalogs, allocate a portion (e.g., 0.5). For a single catalog, use the value 1.<br><br>"fixedTenancy": {<br>"cost": "string",<br>"positions": \[<br>0<br>],<br>"catalogCosts": \[<br>{<br>"catalogId": "string",<br>"catalogCostPercentage": 0.5<br>}<br>]<br>}</p>                                                                                                                                                                 |
| `strategy.fixedTenancy.<br>fixedCosts`            | <p>Specifies additional costs for external data, creative work, or other services related to the campaign. These charges apply when the campaign is approved and cannot be modified. Omit this unless additional costs are applicable to your advertiser.<br><br>{<br>"dataCost": "150",<br>"creativeCost": "200",<br>"otherCost": "400"<br>}</p>                                                                                                                                                                                               |
| `fixedCosts.dataCost`                             | The cost associated with data for the campaign. For example, $100.00.                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `fixedCosts.creativeCost`                         | The cost associated with creative production for the campaign. For example, $200.00.                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `fixedCosts.otherCost`                            | The cost associated with other expenses for the campaign. For example, $50.00.                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `customFields.customFieldId`                      | <p>Specifies the unique customFieldId being configured. Custom fields are not required in a standard integration and it is likely not to use this field unless advised by your Customer Integration Engineer (CIE).<br><br>{<br>"customFieldId": "3e31d3e4-bf15-411b-a18e-5553f08a6122",<br>"content": "PO-12345"<br>}</p>                                                                                                                                                                                                                      |
| `customFields.content`                            | <p>The content for the custom field on the campaign.<br><br>{<br>"customFieldId": "3e31d3e4-bf15-411b-a18e-5553f08a6122",<br>"content": "PO-12345"<br>}</p>                                                                                                                                                                                                                                                                                                                                                                                     |
| `customQuestions.customQuestionId`                | <p>Specifies the unique custom targeting question being configured. Custom questions are not required in a standard integration and it is likely not to use this field unless advised by your Customer Integration Engineer (CIE).<br><br>{<br>"answers": \[<br>"preference:delivery",<br>"preference:online"<br>],"customQuestionId": "593a9860-5ce4-4dcc-b6c4-15cf6fb08426"<br>}</p>                                                                                                                                                          |
| `customQuestions.answers`                         | <p>Specifies the answers selected by advertisers for customer targeting. Must align with customer <code>targetingData</code> values.<br><br>{<br>"answers": \[<br>"preference:delivery",<br>"preference:online"<br>],"customQuestionId": "593a9860-5ce4-4dcc-b6c4-15cf6fb08426"<br>}</p>                                                                                                                                                                                                                                                        |

## Banner X campaign fields

| Field                              | Purpose and example                                                                                                                                                                                                                                                                                                                                 |
| ---------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `contentStandardId`                | <p>A unique identifier for the content standard. Content standards are guidelines and technical parameters that dictate how a banner ad should be displayed within a designated space on a website or digital platform.<br><br>This identifier is needed to verify that the created banner X asset adheres to the retailer's content standards.</p> |
| `slotId`                           | A unique identifier for the slot in the configuration, such as 'homepage\_banner\_slot\_1'. This identifier ensures the banner uses the correct slot as defined by the retailer, like single tile, double tile, or banner.                                                                                                                          |
| `slotType`                         | The unique slot within the content standard where the image will be placed. It ensures the image adheres to predefined slot requirements and validations. Examples include left\_ribbon, top\_banner, or side\_panel.                                                                                                                               |
| `headingText`                      | The heading text for the banner.                                                                                                                                                                                                                                                                                                                    |
| `bannerText`                       | Banner text is the text displayed on your banner ad.                                                                                                                                                                                                                                                                                                |
| `bannerTextColourHex`              | The color of the banner text in hex format.                                                                                                                                                                                                                                                                                                         |
| `ctaFlag`                          | A flag indicating whether the banner has an enabled call-to-action.                                                                                                                                                                                                                                                                                 |
| `ctaText`                          | The call-to-action text on the banner. A call-to-action (CTA) is a clickable text or button prompting users to act, like making a purchase or visiting another page. For example, "Shop Now".                                                                                                                                                       |
| `ctaTextAccessibility`             | The call-to-action text for accessibility purposes.                                                                                                                                                                                                                                                                                                 |
| `ctaLink`                          | The URL for the call-to-action link.                                                                                                                                                                                                                                                                                                                |
| `backgroundColourHex`              | The color of the banner X primary background image in hexadecimal format.                                                                                                                                                                                                                                                                           |
| `backgroundImageId`                | This is the unique identifier of the primary background image.                                                                                                                                                                                                                                                                                      |
| `backgroundImagePosition`          | The alignment or position of the primary background image within its container.                                                                                                                                                                                                                                                                     |
| `secondaryBackgroundImageId`       | The unique identifier for the secondary background image.                                                                                                                                                                                                                                                                                           |
| `secondaryBackgroundImagePosition` | The alignment or position of the secondary background image within its container.                                                                                                                                                                                                                                                                   |
| `heroImageId`                      | The unique identifier for the hero image. Hero image is the main promotional image, typically used to display your product or logo.                                                                                                                                                                                                                 |
| `heroImageAltText`                 | The alternative text for the hero image, assisting with accessibility.                                                                                                                                                                                                                                                                              |
| `heroMode`                         | The display mode or style of the hero section.                                                                                                                                                                                                                                                                                                      |
| `secondaryHeroImageId`             | The unique identifier for the secondary hero image.                                                                                                                                                                                                                                                                                                 |
| `secondaryHeroImageAltText`        | The alternative text for the secondary hero image, assisting with accessibility.                                                                                                                                                                                                                                                                    |
| `secondaryHeroMode`                | The display mode or style of the secondary hero section.                                                                                                                                                                                                                                                                                            |
| `trackingTags`                     | A required array of objects used to specify tracking providers and their associated tags for monitoring and analyzing the performance of a banner X campaign.                                                                                                                                                                                       |
| `additionalFields`                 | A required array of objects providing extra configuration options for banner X.                                                                                                                                                                                                                                                                     |

## Banner campaign fields

| Field               | Purpose and example                                                                                                                                                                                                                                                                                                                               |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `contentStandardId` | <p>A unique identifier for the content standard. Content standards are guidelines and technical parameters that dictate how a banner ad should be displayed within a designated space on a website or digital platform.<br><br>This identifier is needed to verify that the created banner asset adheres to the retailer's content standards.</p> |
| `slotId`            | A unique identifier for the slot in the configuration, such as 'homepage\_banner\_slot\_1'. This identifier ensures the banner uses the correct slot as defined by the retailer, like single tile, double tile, or banner.                                                                                                                        |
| `artworkImageId`    | A unique identifier for the artwork image uploaded for the banner. This ID (fileId) is returned by the Upload the creative assets API.                                                                                                                                                                                                            |
| `link`              | This is the URL linked to the banner slot, directing users to a target page when they click the ad. Example: <https://www.example.com/promo>                                                                                                                                                                                                      |
| `altText`           | Alternative text describing the artwork image for accessibility purposes. Example: 'Promotional banner for summer sale'.                                                                                                                                                                                                                          |
| `text`              | Display text on the banner. The display text for the slot, providing additional information or a message. Example: 'Get 20% off your first purchase!'                                                                                                                                                                                             |
| `trackingTags`      | A list of tracking tags from the provider, used to monitor interactions with the slot. Example: \[ { provider: 'Google Analytics', tag: 'promo\_click' }, { provider: 'Adobe Analytics', tag: 'banner\_view' } ]. These tags are included with your ad for third-party verification.                                                              |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.citrusad.com/retail-media-interface/partner/partner-api-overview/campaign-field-definitions.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
