Why Create an Ad?
An ad is an important part of a flight and campaign, and can help in driving traffic to a website or domain. To create an ad, simply upload the creative associated with the ad to the system using the Create Creative API call. After the creative is uploaded, pass the CreativeID
as the id
for the creative object.
An ad will be created, and the unique Ad ID returned may then be used to update or delete ads.
Creating product-based ads?
If you're using Kevel Catalog, create ads directly from product data using the asynchronous create ads from products Jobs endpoint.
API Syntax
When using the Create Ads API call, it is important to understand the syntax required to make the request. There is a specific request format that must be followed to ensure the endpoint can process the request. The format is:
POST https://api.kevel.co/v1/flight/{FlightID}/creative
Where:
POST
- the type of API request being made.https://api.kevel.co
- the URL for the request.v1
- the API version.flight
- the API endpoint being called.FlightID
- the ID associated with the Flight.creative
- indicates that we're mapping a Creative to the Flight.
Additional Parameters
In addition to the parameters already listed above that can be passed as part of this request, there are a few additional parameters you can pass to further refine the ad being created. These parameters are listed in the table below.
Property | Description |
---|---|
IsNetworkAd (boolean) | Indicates that ad comes from a 3rd party (i.e. uses 3rd party ad tags) - for use with Click Bucketing. If true = multiple clicks from the same IP address count as Unique Clicks |
DontAffectParentFreqCap (boolean) | "Opts-out" of frequency cap settings imposed on it by above |
FreqCap (integer) | The cap of the frequency cap. Instructions here |
FreqCapDuration (integer) | How long the frequency cap should apply. Instructions here |
FreqCapType (integer) | The unit for the frequency cap: 1 = Hour 2 = Day 3 = Minute . Instructions here |
Misc Notes
Goal: If GoalType is 2 (Percentage), then a Goal of 100 represents a 100% goal. If GoalType is 1 (Impressions), then a Goal of 200000 represents a goal of 200,000 impressions. Note: when you GET a creative, you will see a value of "null" for Goal, and the goal should be represented as e.g. "Impressions": 200000 or "Percentage": 100. Our API does this conversion behind the scenes.
IsGoalOverride: You will see this IsGoalOverride
field in the results of a GET request for an ad -- this indicates whether or not the flight-level goal is being overridden by an ad-level goal. When creating or updating an ad, however, you do not need to explicitly set IsGoalOverride
-- it is set automatically based on whether or not you are supplying GoalType
and Goal
.
IsStartEndDateOverride: You will see IsStartEndDateOverride
field in the results of a GET request for an ad -- this indicates whether or not the ad has its own start/end dates. When creating or updating an ad, however, you do not need to explicitly set IsStartEndDateOverride
-- it is set automatically based on whether or not you are supplying StartDateISO
and EndDateISO
.