For the complete documentation index, see llms.txt. This page is also available as Markdown.

Campaign field definitions

Epsilon Retail Media's documentation is now centralized with our knowledgebase!

For up to date guides, please view this page in the new Partner APIs space of our documentation.

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

The unique identifier of your namespace, located in the base URL. For instance, in exampleretailer.citrusad.com, the namespaceId is exampleretailer. Make sure that the resource exists for the ID you provide as the namespace.

approval.state

The approval state of the campaign can only use specified enum values. Supported states are APPROVAL_STATE_APPROVED, APPROVAL_STATE_REJECTED, APPROVAL_STATE_PENDING. Note thatAPPROVAL_STATE_UNSPECIFIED cannot be used.

approval.rejectionReason

The reason a campaign has been rejected. This is a mandatory field if status is APPROVAL_STATE_REJECTED.

campaignState

The active state of the campaign indicates whether it is active, paused, a draft, or archived. For example, CAMPAIGN_STATE_ACTIVE, CAMPAIGN_STATE_DRAFT, CAMPAIGN_STATE_UNSPECIFIED. Note that CAMPAIGN_STATE_UNSPECIFIED cannot be used.

teamId

The teamId is the unique identifier of the campaign's team. 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.

startTime

The campaign start time using a precise ISO-8601 timestamp. For example, 2024-09-01T12:00:00Z. Omit this value for always on campaigns.

endTime

The campaign end time uses a precise ISO-8601 timestamp and must be set if startTime is specified. For example, 2024-09-30T23:59:59Z. The end time must be after the start time. Omit this value foralways on campaigns.

walletId

The unique identifier of the wallet to be charged for the campaign, for example, wallet_123456789. - If campaignType is not 'Wildcard', an object should exist for the ID. - The wallet team ID should match the campaign team ID. - 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).

placementId

The unique identifier of the campaign's placement. For example, placement_987654321. Ensure the resource exists for the given placement ID and it corresponds to the right campaign.

catalogIds

The unique identifier of the retailer's catalog(s). For example, ["329f1e08-d3ee-4e04-90c4-068b3ce6b856","6c29a96a-f55a-497f-b03a-2fed85dd7198" ]. Ensure the resource exists for the given catalog ID and it corresponds to the right campaign.

advertisedProducts.<br>productsByKey

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. For example, [{"catalogId": "14edbbc5-a7be-4c54-9f35-767b4ee29fd3","productCode": "ABC123"}].

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

Filters to exclude during the targeting stage, which should only be location or category filters aligned with your filterClassId. Most integrations can omit these values. If using two filter classes, specify one object per filter class: {"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>}

targeting.includeFilters

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. {"includeFilters": [ <br>{ <br>"catalogId": "76df36b4-45a2-46a5-9308-3dd14861d76e", <br>"filter": "category:flavoured-milk" <br>} <br>] <br>}

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

Specifies explicit catalog product pairings to be targeted. [{"catalogId": "14edbbc5-a7be-4c54-9f35-767b4ee29fd3","productCode": "ABC123"}] - Target product catalogs must match the campaign catalogs. - A product must exist for each product-catalog pair. - Target products cannot be among the advertised products. - Target products and advertised products must share matching categories.

targeting.upSell.<br>targetProductsByKey

Specifies explicit catalog product pairings to be targeted. [{"catalogId": "14edbbc5-a7be-4c54-9f35-767b4ee29fd3","productCode": "ABC123"}]

strategy.auction.maxBid

The maximum cost-per-click (CPC) bid of your campaign. For example, 2.99. - Must be a valid BigDecimal. - Must be more than the minimum bid. }, "strategy": { "auction": { "maxBid": "string", "spendLimit": { "daily": "string", "total": "string" } },

strategy.auction.spendLimit

Specifies the maximum daily or total spend for a campaign. Omit this for an always on 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. }, "strategy": { "auction": { "maxBid": "string", "spendLimit": { "daily": "string", "total": "string" } },

strategy.fixedTenancy.cost

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. "fixedTenancy": { "cost": "1000.99", "positions": [ 0 ], "catalogCosts": [ { "catalogId": "string", "catalogCostPercentage": 0 } ] }

strategy.fixedTenancy.<br>catalogCostPercentage

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. "fixedTenancy": { "cost": "string", "positions": [ 0 ], "catalogCosts": [ { "catalogId": "string", "catalogCostPercentage": 0.5 } ] }

strategy.fixedTenancy.<br>fixedCosts

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. { "dataCost": "150", "creativeCost": "200", "otherCost": "400" }

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

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). { "customFieldId": "3e31d3e4-bf15-411b-a18e-5553f08a6122", "content": "PO-12345" }

customFields.content

The content for the custom field on the campaign. { "customFieldId": "3e31d3e4-bf15-411b-a18e-5553f08a6122", "content": "PO-12345" }

customQuestions.customQuestionId

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). { "answers": [ "preference:delivery", "preference:online" ],"customQuestionId": "593a9860-5ce4-4dcc-b6c4-15cf6fb08426" }

customQuestions.answers

Specifies the answers selected by advertisers for customer targeting. Must align with customer targetingData values. { "answers": [ "preference:delivery", "preference:online" ],"customQuestionId": "593a9860-5ce4-4dcc-b6c4-15cf6fb08426" }

Field
Purpose and example

contentStandardId

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. This identifier is needed to verify that the created banner X asset adheres to the retailer's content standards.

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.

Field
Purpose and example

contentStandardId

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. This identifier is needed to verify that the created banner asset adheres to the retailer's content standards.

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.