Use the bulk uploads tool to upload multiple assets at once using a CSV file, rather than uploading assets individually. The information fields are similar to the Ads API to help you coordinate what information goes where.
You'll need two files to perform a bulk ad upload:
An assets metadata file
The assets' creative files, which are typically images
There are required fields and accepted values for the CSV file that you upload. Your assets will appear exactly like your file, so any space, punctuation marks, or special characters will be present if they are used. To get started, either copy the CSV template displayed below and paste it into a spreadsheet application or download it here and import it directly.
Operation,AdID,Name,Description,ProgramId,AdType,HostedBy,Creative,IabAdUnit,ThirdPartyServableAdCreativeHeight,ThirdPartyServableAdCreativeWidth,Labels,AllowDeepLinking,AllowCustomPromoCode,CustomisationCharge,ImageAlternativeTag,LandingPage,iOSMobileFallbackAppId,AndroidMobileFallbackAddId,Language,LimitedTimeStartDate,LimitedTimeEndDate,FallbackAd,GetHtmlCodeType,Season,TopSeller,LinkText,ThirdPartyImpressionPixel,RestrictedToPartners,RestrictedToGroups,Metadata,DealId,DealName,DealType,DealScope,DealDescription,DealProducts,DealCategories,DealDefaultDiscountCode,,DealDiscountType,DealDiscountAmount,DealDiscountPercent,DealDiscountStartPercent,DealDiscountEndPercent,DealDiscountMaximumPercent,DealGift,DealRebate,DealMinimumPurchaseAmount,DealMaximumPurchaseAmount,DealBogoPurchaseLimit,DealBogoBuyQty,DealBogoBuyType,DealBogoBuyName,DealBogoGetQty,DealBogoGetType,DealBogoGetName,DealBogoGetDiscountType,DealBogoGetDiscountAmount,DealBogoGetDiscountPercent,DealSyncAdsPromoCodes
Before you create or update assets using a metadata file, note the following important points about partial updates:
Partial updates are supported. If you leave a cell empty, that field will be ignored and its existing value will remain unchanged.
To clear or erase a value, explicitly enter
$CLEAR$in that cell. This removes any previously stored value for that field.The
CREATErow shows a new banner asset.The
UPDATErow demonstrates a partial update — only populated fields will be updated.If you wanted to clear a value (e.g., remove
Labels), you’d use$CLEAR$in that column.
Operation,AdID,Name,Description,ProgramId,AdType,HostedBy,Creative,IabAdUnit,ThirdPartyServableAdCreativeHeight,ThirdPartyServableAdCreativeWidth,Labels,AllowDeepLinking,AllowCustomPromoCode,CustomisationCharge,ImageAlternativeTag,LandingPage,iOSMobileFallbackAppId,AndroidMobileFallbackAppId,Language,LimitedTimeStartDate,LimitedTimeEndDate,LimitedTimeZone,FallbackAd,GetHtmlCodeType,Season,TopSeller,LinkText,ThirdPartyImpressionPixel,RestrictedToPartners,RestrictedToGroups,Metadata,DealId,DealName,DealType,DealScope,DealDescription,DealProducts,DealCategories,DealDefaultDiscountCode,DealDiscountType,DealDiscountAmount,DealDiscountPercent,DealDiscountStartPercent,DealDiscountEndPercent,DealDiscountMaximumPercent,DealGift,DealRebate,DealMinimumPurchaseAmount,DealMaximumPurchaseAmount,DealBogoPurchaseLimit,DealBogoBuyQty,DealBogoBuyType,DealBogoBuyName,DealBogoGetQty,DealBogoGetType,DealBogoGetName,DealBogoGetDiscountType,DealBogoGetDiscountAmount,DealBogoGetDiscountPercent,DealSyncAdsPromoCodes CREATE,,Banner Example,This is an example of a new banner ad you would upload.,12345,BANNER,IR,Banner_Creative1,,,,"Banner, NewBanner",TRUE,,,,,,,ENGLISH,2020-07-01T00:00:00-08:00,2038-09-19T03:14:00-08:00,FRAME_ONLY,,,,,"1234567, 8901234",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, UPDATE,123456,Text Link Example,This is an example of updating a text link ad.,34567,TEXT_LINK,,,,,,"Funtext, GoodDay",FALSE,,,,,alwayslovewhatyoudo.com,,,ENGLISH_GB,,,,,,,,Click here for more!,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Example clearing fields (CSV):
UPDATE,123456,Text Link Example,$CLEAR$,$CLEAR$,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
From the left navigation bar, select
[Engage] → Content → Ads
In the top-right corner, select Bulk Upload.

Select Choose File, upload your bulk file, and select Open.
Select Show/hide file format details to view information about required columns, their descriptions, accepted values, and whether they are mandatory in the Ad header columns and Deal header columns references below.
Column Name
Description
Operation (String)
Required - Always.
Operation to execute over the provided asset details.
Allowed values:
CREATE,UPDATE,DELETE.ProgramId (Integer)
Required - Always.
The unique impact.com Program ID to which the asset belongs. This value cannot be updated and must match the program in which the bulk upload is being executed.
AdID (String)
Required - When executing operation over an existing asset.
Unique impact.com identifier for the asset. Leave empty when creating a new asset. Required if Operation =
UPDATE,DELETE.Name (String)
Required - When creating an asset.
Asset name. Required if Operation =
CREATE.AdType (String)
Required - When creating an asset.
When updating an existing ad, the ad type may not change.
Required if Operation =
CREATE.Allowed values:
IMAGE,TEXT_LINK,COUPON.HostedBy (String)
Required - When creating an asset.
Where the asset creative is hosted. Required if
Operation =
CREATEand AdType =IMAGE.Allowed values:
IR,URL,HTML.Creative (String)
Required - When creating an image asset.
Name of creative file to be uploaded. Required if
Operation =
CREATEand AdType =IMAGE.IabAdUnit (String)
Required - When creating an image asset.
IAB standard asset size. Required if Operation =
CREATEand AdType =IMAGEand HostedBy !=IR.Allowed values:
UNKNOWN,MEDIUM_RECTANGLE,SQUARE_POP_UP,VERTICAL_RECTANGLE,LARGE_RECTANGLE,RECTANGLE,RECTANGLE_3_1_,POP_UNDER, FULL_BANNER,HALF_BANNER, MICRO_BANNER,BUTTON_1,BUTTON_2,VERTICAL_BANNER,SQUARE_BUTTON,LEADERBOARD,WIDE_SKYSCRAPER,SKYSCRAPER,HALF_PAGE_AD,CUSTOM.ThirdPartyServableAdCreativeHeight (Integer)
Required - When creating an image asset.
Third party servable image height, pixels.
Required if Operation =
CREATEand IabAdUnit =CUSTOM.ThirdPartyServableAdCreativeWidth (Integer)
Required - When creating an image asset.
Third party servable image width, in pixels.
Required if Operation =
CREATEand IabAdUnit =CUSTOM.Language (String)
Required - When creating an asset.
Allowed values:
AFRIKAANS,ARABIC,BULGARIAN,CHINESE,CHINESE_TRADITIONAL,CZECH,DANISH,DUTCH,ENGLISH,ENGLISH_GB,ENGLISH_AU,ENGLISH_CA,ENGLISH_NZ,ENGLISH_ZA,ESTONIAN,FILIPINO,FINISH,FRENCH,FRENCH_CA,GERMAN,HEBREW,HINDI,INDONESIAN,ITALIAN,JAPANESE,KOREAN,LATVIAN,LITHUANIAN,MALAY,MALTESE,NORWEGIAN,PORTUGUESE,PORTUGUESE_BR,POLISH,RUSSIAN,SLOVENIAN,SPANISH,SPANISH_MX,SWEDISH,THAI,TURKISH,VIETNAMESE.LimitedTimeEndDate (Date)
Required - If LimitedTimeStartDate is supplied
This is an ISO8601 Date. Example format:
2013-06-30T00:00:00-07:00.LinkText (String)
Required - When creating a text link or coupon asset.
Actual text displayed for the link. Required if Operation =
CREATEand AdType =TEXT_LINKorCOUPON.Description
Required - No.
Asset description.
Labels (CSV string)
Required - No.
Asset labels.
AllowDeepLinking (Boolean)
Required - No.
Determines whether linking to a page deeper within the advertiser site will be allowed.
Defaults to
true.AllowCustomPromoCode (Boolean)
Required - No.
Allow Partner to request their own unique promo code for this promotion.
Defaults to
false.CustomisationCharge (Decimal 10.2)
Required - No.
Asset customisation charge amount.
ImageAlternativeTag (String)
Required - No.
Alternative tag to use in the image asset code.
LandingPage (String)
Required - No.
The landing page URL. It must contain the URL protocol.
Defaults to program default landing page when creating an asset and not provided.
iOSMobileFallbackAppId (String)
Required - No.
Specify if mobile traffic should fallback to your iOS app landing page if no app is detected. App id must match system app id.
AndroidMobileFallbackAppId (String)
Required - No.
Specify if mobile traffic should fallback to your Android app landing page if no app is detected. App id must match system app ID.
LimitedTimeStartDate (String)
Required - No.
This is an ISO8601 Date. Example format:
2013-06-30T00:00:00-07:00.FallbackAd (String)
Required - No.
Specify a fallback asset ID, only applicable to
IMAGEassets.GetHtmlCodeType (String)
Required - No.
Allowed values:
IFRAME_ONLY,HTML_AND_IFRAME.Season (String)
Required - No.
Allowed values:
WINTER,SPRING,SUMMER,FALL,NEW_YEAR,PRESIDENTS_DAY,VALENTINES_DAY,ST_PATRICKS_DAY,EASTER,MOTHERS_DAY,MEMORIAL_DAY,FATHERS_DAY,INDEPENDANCE_DAY,BACK_TO_SCHOOL,LABOR_DAY,HALLOWEEN,THANKSGIVING,BLACK_FRIDAY,CYBER_MONDAY,HANUKKAH,CHRISTMAS,FAMILY_DAY,GOOD_FRIDAY,VICTORIA_DAY,CANADA_DAY,AUGUST_CIVIC_HOLIDAY,REMEMBRANCE_DAY,BOXING_DAY,AUSTRALIA_DAY,ANZAC_DAY,QUEENS_BIRTHDAY,END_OF_FINANCIAL_YEAR,WAITANGI_DAY,OTHER.TopSeller (Boolean)
Required - No.
Top Seller. Defaults to
false.ThirdPartyImpressionPixel (String)
Required - No.
Third party impression pixel HTML to use with this asset.
RestrictedToPartners (CSV string)
Required - No.
Comma separated Partner Ids that should have access to this asset.
RestrictedToGroups (CSV string)
Required - No.
Comma separated Partner Group Ids that should have access to this asset.
Metadata (CSV string)
Required - No.
Comma separated query string parameters that will be appended to the tracking url.
Column Name
Description
DealName (String)
Required - When creating a new deal.
Name of deal to create and link to asset. Required if DealId is not provided.
DealType (String)
Required - When creating a new deal.
Type of deal to create. Required if DealId is not provided and DealName is.
Allowed values:
GENERAL_SALE,FREE_SHIPPING,GIFT_WITH_PURCHASE,REBATE,BOGO,PRODUCT_LAUNCH.DealScope (String)
Required - When creating a new deal.
Required if DealId is not provided, DealName is, and DealType != BOGO.
Allowed values:
ENTIRE_STORE,CATEGORY,PRODUCT,PRODUCTS.DealProducts (CVS string)
Required - When creating a new deal.
Deal products. Required if DealId is not provided, DealName is, and DealScope =
PRODUCT.Allowed values:
Option 1: Product names list eg.
"Product1, Product2".Option 2: Product value pair list eg.
"name=Product1;regularPrice=10;dealPrice=9.50; image=prodimg1.jpg, name=Product2;"where the multiple products are separated by comma and the various product fields are separated by semicolon.Valid fields:
name- product name,image- product image filename of the file which you intend to upload in step two of the bulk upload,limit- quantity allowed,regularPrice- before discount price,dealPrice- after discount price.DealCategories (CSV string)
Required - When creating a new deal.
Deal categories. Required is DealId is not provided, DealName is, and DealScope =
CATEGORY.DealDiscountType (CSV string)
Required - When creating a new deal.
Required if DealId is not provided, DealName is, and DealType = GENERAL_SALE.
Allowed values:
FIXED,PERCENT,PERCENT_RANGE,PERCENT_MAXIMUM.DealDiscountAmount (Decimal 10.2)
Required - When creating a new deal.
Sale discount amount. Required if DealId is not provided, DealName is, DealType =
GENERAL_SALE, and DealDiscountType =FIXED.DealDiscountPercent (Decimal 10.2)
Required - When creating a new deal.
Sale discount percent. Required if DealId is not provided, DealName is, DealType =
GENERAL_SALE, and DealDiscountType =PERCENT.DealDiscountStartPercent (Decimal 10.2)
Required - When creating a new deal.
Deal discount range start percent. Required is DealId is not provided, DealName is, DealType =
GENERAL_SALE, and DealDiscountType =PERCENT_RANGE.DealDiscountEndPercent (Decimal 10.2)
Required - When creating a new deal.
Deal discount range start percent. Required is DealId is not provided, DealName is, DealType =
GENERAL_SALE, and DealDiscountType =PERCENT_RANGE.DealDiscountMaximumPercent (Decimal 10.2)
Required - When creating a new deal.
Deal maximum percent discount. Required if DealId is not provided, DealName is, DealType =
GENERAL_SALE, and DealDiscountType =PERCENT_MAXIMUM.DealGift (Decimal 10.2)
Required - When creating a new deal.
Gift details. Required if DealId is not provided, DealName is, and DealType =
GIFT_WITH_PURCHASE.DealRebate (Decimal 10.2)
Required - When creating a new deal.
Rebate amount. Required if DealId is not provided, DealName is, and DealType =
REBATE.DealMinimumPurchaseAmount (Decimal 10.2)
Required - When creating a new deal.
Deal minimum purchase amount. Required if DealId is not provided, DealName is, and DealType =
BOGO.DealMaximumSavingsAmount (Decimal 10.2)
Required - When creating a new deal.
Deal maximum savings amount. Required if DealId is not provided, DealName is, and DealType =
BOGO.DealBogoPurchaseLimit (Integer)
Required - When creating a new deal.
Maximum quantity of allowed items at this price. Required if DealId is not provided, DealName is, and DealType =
BOGO.DealBogoBuyQty (Integer)
Required - When creating a new deal.
BOGO buy quantity. Required if DealId is not provided, DealName is, and DealType =
BOGO.DealBogoBuyType (String)
Required - When creating a new deal.
BOGO buy item type. Required if DealId is not provided, DealName is, and DealType =
BOGO.Allowed values:
PRODUCT,CATEGORY.DealBogoBuyName (String)
Required - When creating a new deal.
Name of buy product or category. Required if DealId is not provided, DealName is, and DealType =
BOGO.DealBogoGetQty (Integer)
Required - When creating a new deal.
BOGO get quantity. Required if DealId is not provided, DealName is, and DealType =
BOGO.DealBogoGetType (String)
Required - When creating a new deal.
BOGO get item type. Required if DealId is not provided, DealName is, and DealType =
BOGO.Allowed values:
PRODUCT,CATEGORY.DealBogoGetName (String)
Required - When creating a new deal.
Name of get product or category. Required if DealId is not provided, DealName is, and DealType =
BOGO.DealBogoGetDiscountType (String)
Required - When creating a new deal.
BOGO deal discount type. Required if DealId is not provided, DealName is, and DealType =
BOGO.Allowed values:
FREE,AMOUNT,PERCENT.DealBogoGetDiscountAmount (Decimal 10.2)
Required - When creating a new deal.
BOGO deal discount amount. Required if DealId is not provided, DealName is, DealType =
BOGO, and DealBogoGetDiscountType =AMOUNT.DealBogoGetDiscountPercent (Decimal 10.2)
Required - When creating a new deal.
BOGO deal discount percent. Required if DealId is not provided, DealName is, DealType =
BOGO, and DealBogoGetDiscountType =PERCENT.DealId (String)
Required - No.
Unique impact.com identifier for deal the asset will be linked to.
DealDefaultDiscountCode (String)
Required - No.
Default deal discount code.
DealSyncAdsPromoCodes (Boolean)
Required - No.
Keep associated ads and promo codes in sync with this deal. Syncronization applies to limited time dates, restricted partner access, and state.
Select Next.
Next, you'll need your asset creative files ready so they can be uploaded.
On the Specify images page, select Choose Files to bulk upload the asset creative files. Your uploaded file names must match the names in the creative field in your metadata file exactly (e.g., if the creative field contains
Example.jpg, the asset creative file you upload should also be namedExample.jpg.)Hold down Command ⌘ on macOS or CTRL on PC to select multiple ad creative files to upload at once.
Select Accept & Create Ads. Once all of the ads have been uploaded, they will appear in the Ads page.