Skip to content

Booking form field reference ​

Every field of the TVNZ booking form, section by section, in the order the form shows them. This page is generated from the form layout and the platform schema, so it reflects the current configuration rather than a description of it.

How to read the tables

Campaign types lists the types the field appears for; All means every type. Required is When shown when a field is mandatory only once its section applies. Options lists the choices as they appear on screen; the full meaning of each is under Option lists.

Campaign ​

General info ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Campaign namenamestringYesAllCampaign name.
Insertion order IDinsertion_order_idstringNoAllInsertion order ID.
PO numberpo_numberstringNoAllPurchase Order or Plan number.
Flight dateflightobject; date range; picker limited to today+5 … today+300YesAllFlight start and end dates. Start must fall between 5 and 90 days ahead when the campaign is past Draft and campaign type is Brand Awareness or Broadcast Activation; between 5 and 365 days ahead when the campaign is past Draft and campaign type is Digital Activation.
AgencyagencystringBefore bookingAllAgency. Choices depend on other answers.
AdvertiseradvertiserstringBefore bookingAllAdvertiser. Choices depend on other answers.
ProductproductstringBefore bookingAllProduct. Choices depend on other answers.
Product categoryproduct_categorystringBefore bookingAllProduct category. Choices come from your account data.
Campaign statuscampaign_status—NoAllNot shown in the form (set by the system).
Booked eCPMbooked_ecpmcurrencyNoAllNot shown in the form (set by the system).

Campaign type ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Campaign typead_productcard radio groupBrand Awareness, Broadcast Activation, Sponsorship, Digital ActivationBefore bookingBrandAwarenessAllAd product type.

Buying method ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Buying methodbuying_methodcard radio groupAudience Trading, SpotBefore bookingAudienceBroadcast ActivationBuying method.

Objective ​

Collapsible section; when collapsed it shows a summary of its values.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Objectivelinear_objectivestringStandard, Reach Velocity, Weekend Store Visit, Hunger Zone, New to MarketNoStandardBrand Awareness, Broadcast Activation (Audience)Linear campaign objective preset.

Campaign budget ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Budget capbudgetnumber; currencyYesAllGross budget.
Discount %discount_pctnumberNoBrand Awareness, Broadcast ActivationDiscount percentage. Choices come from your account data.

Campaign fields not in the current layout ​

The platform defines these, but the TVNZ layout does not place them, so they are not part of the form today.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
dealdealstringBefore bookingAllDeal. Choices depend on other answers.
notesnotesstringNoAllNotes.

Line item ​

Line item info ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Line item namenamestringBefore bookingAllLine item name.
Flight dateflightobject; date rangeBefore bookingAllFlight date. Start must fall between and days ahead when campaign type is Brand Awareness or Broadcast Activation; between and days ahead when campaign type is not Digital Activation.

Product ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Digital productdigital_productstringStandard Video, Ad on Pause, Social Stream, Daily Reach BlastBefore bookingStandardVideoDigital ActivationDigital product.
Stream Typedigital_stream_typestringTVNZ+ Network (All video on TVNZ+), VOD (Video on Demand) (only when digital product is set and digital product is not Daily Reach Blast), Live (Simulcast + FAST+ Live Events) (only when digital product is set and digital product is not Daily Reach Blast)Before bookingNetworkDigital ActivationStream type.
Digital objectivedigital_objectivestringStandard, Maintain Brand Presence, Reach VelocityBefore bookingStandardDigital ActivationDigital campaign objective preset. Shown when campaign type is Digital Activation and digital product is not Daily Reach Blast.

Targeting ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Age groupage_groupchip groupNoSponsorship, Digital ActivationAge demographic. Shown when campaign type is Sponsorship or Digital Activation and digital product is not Daily Reach Blast.
Gendergenderchip groupNoSponsorship, Digital ActivationGender demographic. Shown when campaign type is Sponsorship or Digital Activation and digital product is not Daily Reach Blast.
New to Market (Optimised Reach)digital_new_to_marketbooleanBefore bookingDigital ActivationBuilt for launches. Delivery is optimised for maximum unique reach, so as many people as possible see you once. Shown when campaign type is Digital Activation and digital product is not Daily Reach Blast.
Weekend Shopper (Wed-Sat + household shoppers)digital_weekend_shopperbooleanNoDigital ActivationReach household shoppers from Wednesday to Saturday, right when the weekend shop is being planned. Weekend Shopper (Wed-Sat + household shoppers). Shown when campaign type is Digital Activation and digital product is not Daily Reach Blast.
Hunger Zone Food delivery (4-8pm)digital_food_deliverybooleanNoDigital ActivationOwn the dinner decision. Spots run 4 to 8pm, when orders and cravings peak. Food Delivery (Sun-Sat 4-8pm + city profiles). Shown when campaign type is Digital Activation and digital product is not Daily Reach Blast.
Durationdigital_duration—NoAllCampaign durations in this context denote the various lengths of advertisements, measured in seconds, used within a marketing or promotional strategy.Campaign durations in this context denote the various lengths of advertisements, measured in seconds, used within a marketing or promotional strat.
Ad Mirroringad_mirroringbooleanNoBroadcast Activation (Audience)Your spot airs everywhere the channel does. The same break is mirrored to companion feeds and counts toward delivery. Ad Mirroring.

Demographics ​

Collapsible section; when collapsed it shows a summary of its values.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Demographicslinear_demographicsselectBefore booking18+Brand Awareness, Broadcast Activation (Audience)Demographics. Each offered choice inlines the audience's universe estimate, in people, as its universe property; a choice with no estimate on record omits it. Choices depend on other answers.

Audience Segments ​

Collapsible section; when collapsed it shows a summary of its values.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Digital audience typedigital_audience_typeradio groupAudience segment, Custom audience, DataIQNoSegmentDigital ActivationAudience targeting type (selects which of the audience fields applies). Shown when campaign type is Digital Activation and digital product is not Daily Reach Blast.
Segmentdigital_audience_segmentstring; UUID stringNoDigital ActivationAudience segment. Shown when campaign type is Digital Activation and digital audience type is Audience segment and digital product is not Daily Reach Blast.
Customdigital_custom_audiencestring; UUID stringBefore bookingDigital ActivationCustom audience (bespoke audience built for the advertiser or product). Shown when campaign type is Digital Activation and digital audience type is Custom audience and digital product is not Daily Reach Blast.
DataIQdigital_dataiqarray; array of UUID stringBefore bookingDigital ActivationDataIQ third-party product targeting. Shown when campaign type is Digital Activation and digital audience type is DataIQ and digital product is not Daily Reach Blast.

Genre ​

Collapsible section; when collapsed it shows a summary of its values.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Genregenrearray; picker, include or excludeNoBrand Awareness, Digital ActivationGenre. Shown when campaign type is Brand Awareness or Digital Activation and digital product is not Daily Reach Blast.

Channels ​

Collapsible section; when collapsed it shows a summary of its values.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Channelslinear_channelsarray; picker, include or excludeNoBrand AwarenessChannels.
TVNZ 1linear_channel_tvnz_1stringoptimized, or 0 to 100 in steps of 5NooptimizedBroadcast Activation (Audience)TVNZ 1 channel share. Choices depend on other answers.
TVNZ 2linear_channel_tvnz_2stringoptimized, or 0 to 100 in steps of 5NooptimizedBroadcast Activation (Audience)TVNZ 2 channel share. Choices depend on other answers.
TVNZ Dukelinear_channel_tvnz_dukestringoptimized, or 0 to 100 in steps of 5NooptimizedBroadcast Activation (Audience)TVNZ DUKE channel share. Choices depend on other answers.

Programme ​

Collapsible section; when collapsed it shows a summary of its values.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Programme linear exclusionlinear_programme_exclusionselect exclusionNoBrand Awareness, Broadcast Activation (Audience)Exclude specific programmes. Programme (linear) to exclude.
Programme digital exclusiondigital_programme_exclusionselect exclusionNoDigital ActivationProgramme (digital) to exclude. Shown when campaign type is Digital Activation and digital product is not Daily Reach Blast.
Programme digital exclusionbrand_programme_digital_exclusionselect exclusionNoBrand AwarenessExclude specific programmes. Programme (digital) to exclude.

Programme Rating ​

Collapsible section; when collapsed it shows a summary of its values.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Programme ratingprogramme_ratingarray; picker, include or excludeNoBrand Awareness, Broadcast Activation (Audience), Digital ActivationProgramme ratings.

Frequency Cap ​

Collapsible section; when collapsed it shows a summary of its values.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Frequency Capdigital_frequency_capsfrequency_capsmin, hour, dayNoDigital ActivationFrequency caps. Choices come from your account data.

Geography ​

Collapsible section; when collapsed it shows a summary of its values.

Regions ​
FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Regionsdigital_regionarray; picker, include or excludeNoDigital ActivationRegion targeting. Shown when campaign type is Digital Activation and digital product is not Daily Reach Blast.
Cities ​
FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Citiesdigital_cityarray; picker, include or excludeNoDigital ActivationCity targeting. Shown when campaign type is Digital Activation and digital product is not Daily Reach Blast.

Device category ​

Collapsible section; when collapsed it shows a summary of its values.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Device Categorydigital_device_categoryarray; picker, include or excludeNoDigital ActivationDevice category targeting. Shown when campaign type is Digital Activation and digital product is not Daily Reach Blast.

Sensitive content ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Sensitive contentspot_sensitive_content—NoNoneAll

Peak % ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Peak %linear_peak_pctstringNo0Brand AwarenessMinimum share delivered in peak time (70–100%). Peak premium percentage. Choices depend on other answers.
Peak %audience_peak_pctstringNo0Broadcast Activation (Audience)Minimum share delivered in peak time. Peak %. Choices depend on other answers.
Break positionfib_lib_modestringNo preference, First in break, Last in breakNoNoPreferenceBrand Awareness, Broadcast Activation (Audience)Optionally prefer spots first or last in break, with a minimum share. First-In-Break or Last-In-Break preference.
FIB / LIB %fib_lib_pctstring0 to 100 in steps of 5No0Brand Awareness, Broadcast Activation (Audience)First-In-Break / Last-In-Break premium weight percentage. Choices depend on other answers. Shown when (campaign type is Brand Awareness or (campaign type is Broadcast Activation and buying method is Audience Trading)) and break position is First in break or Last in break.

Budget ​

Info

Create a shell campaign and set spots later via TVMap

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Budgetbudgetnumber; currencyBefore bookingAllGross budget.
Target Impactsgoal_target_impressionsintegerBefore bookingBrand Awareness, Broadcast Activation (Audience), Digital ActivationTarget audience impacts. Shown when (campaign type is Brand Awareness or Digital Activation or (campaign type is Broadcast Activation and buying method is Audience Trading)) and digital product is not Daily Reach Blast.
CPMgoal_cpm_overridecurrencyNoAllBased on rate card from targeting — or switch to custom.

Split ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Flight pacinglinear_flight_pacingradio groupEvenly, Weekly (only when !withinWeek(flight date is set, week start is set))Before bookingEvenlyBrand Awareness, Broadcast Activation (Audience)Flight pacing.
Flight pacing splitlinear_flight_pacing_splitbudget split by intervalBefore bookingBrand Awareness, Broadcast Activation (Audience)Per-period delivery split (one entry per week, percentages sum to 100). Shown when (campaign type is Brand Awareness or (campaign type is Broadcast Activation and buying method is Audience Trading)) and flight pacing is Weekly.

Schedule ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Week startlinear_week_startstringMon, Tue, Wed, Thu, Fri, Sat, SunBefore bookingSunBrand Awareness, Broadcast Activation (Audience)Campaign week start day.
Start timelinear_first_air_timestring00:00 to 23:45 in 15-minute stepsNo00:00Brand Awareness, Broadcast Activation (Audience)First airtime (earliest time of day an ad may air).
End timelinear_last_air_timestring00:15 to 24:00 in 15-minute stepsNo24:00Brand Awareness, Broadcast Activation (Audience)Last airtime (latest time of day an ad may air).
Durationduration—NoAllCampaign durations in this context denote the various lengths of advertisements, measured in seconds, used within a marketing or promotional strategy.Campaign durations in this context denote the various lengths of advertisements, measured in seconds, used within a marketing or promotional strat.

Dayparts ​

Collapsible section; when collapsed it shows a summary of its values.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Daypartsgoal_daypartsarray; daypartsNoDigital ActivationDaypart targeting. Shown when campaign type is Digital Activation and digital product is not Daily Reach Blast.

Measurement ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
LINK trackingdigital_link_trackingbooleanNoDigital ActivationVerify every airing via LINK watermarks for as-run, spot-level reporting. LINK tracking measurement (on request).
Conversion IQdigital_conversion_iqbooleanNoDigital ActivationAttribute site visits and conversions back to exposed households. Conversion IQ measurement (on request).
Brand Liftdigital_brand_liftbooleanNoDigital ActivationSurvey-based study measuring awareness and consideration lift among exposed viewers. Brand Lift measurement (on request). Choices come from your account data.

Brand association / Asset types ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Openers (fixed 10 seconds)spons_openersbooleanNoSponsorshipInclude opener spots (fixed 10 seconds).
Credits (duration matches TVC length)spons_creditsbooleanNoSponsorshipInclude credits spots.

Sponsorship package ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Sponsorship packagespons_packagestringNoSponsorshipSponsorship package (preselected when opened via the Opportunities page).

Creatives ​

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
Creative Codecreative—YesAllSelect campaign flight dates before adding creatives.

Line item fields not in the current layout ​

The platform defines these, but the TVNZ layout does not place them, so they are not part of the form today.

FieldPropertyTypeOptionsRequiredDefaultCampaign typesNotes
blackout_periodsblackout_periodsarray; list of date rangesNoAllBlackout periods. Shown when flight date is set and digital product is not Daily Reach Blast.
ad_durationad_durationstring5s (only when campaign type is Broadcast Activation), 6s (only when campaign type is Digital Activation and digital product is not Daily Reach Blast), 10s (only when campaign type is Broadcast Activation), 15s, 30s, 45s (only when digital product is not Daily Reach Blast), 60s (only when digital product is not Daily Reach Blast), 90s (only when campaign type is not Brand Awareness and digital product is not Daily Reach Blast)Before booking30AllAd duration.
sensitive_contentsensitive_contentstringNone, Alcohol, Gambling, Sensitive, AdultBefore bookingNoneAllSensitive content.
creativescreativesarray; array of stringNoAllCreative codes (Landmark House ID for linear, VAST tag for digital).
creative_rotationcreative_rotationarray; date rangeNoAllCreative rotation: how the line item's delivery divides between its creatives over the flight. Left unset, they rotate evenly for its whole length.
goal_price_overridegoal_price_overridenumberNoBrand Awareness, Broadcast Activation (Audience), Digital ActivationInternal price override. Choices come from your account data.
digital_attentiondigital_attentionbooleanNoDigital ActivationAttention measurement (on request).

Which fields each campaign type shows ​

Derived from the platform rules that gate each field on the campaign type (and, for Broadcast Activation, the buying method).

Campaign level ​

FieldBrand AwarenessBroadcast ActivationSponsorshipDigital Activation
Line item name name✓✓✓✓
Flight date flight✓✓✓✓
Budget budget✓✓✓✓
Campaign type ad_product✓✓✓✓
Buying method buying_method✓
Advertiser advertiser✓✓✓✓
Agency agency✓✓✓✓
Insertion order ID insertion_order_id✓✓✓✓
PO number po_number✓✓✓✓
Product product✓✓✓✓
Product category product_category✓✓✓✓
deal✓Audience✓✓
Objective linear_objective✓Audience
Discount % discount_pct✓✓
notes✓✓✓✓

Line item level ​

FieldBrand AwarenessBroadcast ActivationSponsorshipDigital Activation
Line item name name✓✓✓✓
Flight date flight✓✓✓✓
blackout_periods✓✓✓✓
Digital product digital_product✓
Stream Type digital_stream_type✓
Digital objective digital_objective✓
ad_duration✓Audience✓✓
sensitive_content✓✓✓✓
creatives✓Audience✓✓
creative_rotation✓Audience✓✓
Budget budget✓✓✓✓
Target Impacts goal_target_impressions✓Audience✓
goal_price_override✓Audience✓
Week start linear_week_start✓Audience
Start time linear_first_air_time✓Audience
End time linear_last_air_time✓Audience
Flight pacing linear_flight_pacing✓Audience
Flight pacing split linear_flight_pacing_split✓Audience
Ad Mirroring ad_mirroringAudience
Frequency Cap digital_frequency_caps✓
Age group age_group✓✓
Gender gender✓✓
Channels linear_channels✓
TVNZ 1 linear_channel_tvnz_1Audience
TVNZ 2 linear_channel_tvnz_2Audience
TVNZ Duke linear_channel_tvnz_dukeAudience
Genre genre✓✓
Demographics linear_demographics✓Audience
Programme linear exclusion linear_programme_exclusion✓Audience
Programme digital exclusion brand_programme_digital_exclusion✓
Programme digital exclusion digital_programme_exclusion✓
Programme rating programme_rating✓Audience✓
Dayparts goal_dayparts✓
Peak % linear_peak_pct✓
Peak % audience_peak_pctAudience
Break position fib_lib_mode✓Audience
FIB / LIB % fib_lib_pct✓Audience
Sponsorship package spons_package✓
Openers (fixed 10 seconds) spons_openers✓
Credits (duration matches TVC length) spons_credits✓
Regions digital_region✓
Cities digital_city✓
Device Category digital_device_category✓
Weekend Shopper (Wed-Sat + household shoppers) digital_weekend_shopper✓
Hunger Zone Food delivery (4-8pm) digital_food_delivery✓
New to Market (Optimised Reach) digital_new_to_market✓
Digital audience type digital_audience_type✓
Segment digital_audience_segment✓
Custom digital_custom_audience✓
DataIQ digital_dataiq✓
LINK tracking digital_link_tracking✓
Conversion IQ digital_conversion_iq✓
Brand Lift digital_brand_lift✓
digital_attention✓

Option lists ​

Values behind the drop-downs, as the platform defines them.

Status ​

ValueMeaning
Draft
PendingApproval
Booked
Active
Paused
Completed
Cancelled

AdProduct ​

ValueMeaning
Brand Awareness(BrandAwareness)
Broadcast Activation(BroadcastActivation)
Sponsorship
Digital Activation(DigitalActivation)

BuyingMethod ​

ValueMeaning
AudienceAudience-traded linear buy (goal-based, full linear targeting)
SpotSpot-based shell campaign (spots booked later in TVMap)

LinearObjective ​

ValueMeaning
StandardEven delivery across the flight at the standard rate; no special optimisation.
Reach VelocityFront-load delivery to build unique reach fast in the early part of the campaign. (ReachVelocity)
Weekend Store VisitWeight delivery to Wed-Sat, reaching household shoppers as the weekend shop is planned. (WeekendStoreVisit)
Hunger ZoneConcentrate spots in the 4-8 PM dinner window, when food orders and cravings peak. (HungerZone)
New to MarketBuilt for launches; optimises for maximum unique reach so as many people as possible see it once. (NewToMarket)

VolumeUnit ​

ValueMeaning
ImpactsBrand Awareness (Total TV).
ImpressionsDigital Activation.
TARPsA Broadcast Activation audience buy. (Tarps)
SpotsSponsorship and a Broadcast Activation spot buy.

DigitalProduct ​

ValueMeaning
Standard Video(StandardVideo)
Ad on Pause(AdOnPause)
Social Stream(SocialStream)
Daily Reach Blast(DailyReachBlast)

StreamType ​

ValueMeaning
TVNZ+ Network (All video on TVNZ+)(Network)
VOD (Video on Demand)(Vod)
Live (Simulcast + FAST+ Live Events)(Live)

DigitalObjective ​

ValueMeaning
StandardDefault front-weighted delivery
Maintain Brand PresenceEven delivery across the flight (MaintainBrandPresence)
Reach VelocityFast awareness / front weighted (ReachVelocity)

AdDuration ​

ValueMeaning
5s(5)
6s(6)
10s(10)
15s(15)
30s(30)
45s(45)
60s(60)
90s(90)

SensitiveContent ​

ValueMeaning
None
Alcohol
Gambling
Sensitive
AdultAdult / R-rated

AirTimeStart ​

96 values from 00:00 to 23:45 in 15-minute steps.

AirTimeEnd ​

96 values from 00:15 to 24:00 in 15-minute steps.

FlightPacing ​

ValueMeaning
Evenly
Weekly
Monthly

Daypart.from_day ​

ValueMeaning
Mon
Tue
Wed
Thu
Fri
Sat
Sun

Daypart.to_day ​

ValueMeaning
Mon
Tue
Wed
Thu
Fri
Sat
Sun

FibLibMode ​

ValueMeaning
No preference(NoPreference)
First in break(First)
Last in break(Last)

DigitalAudienceType ​

ValueMeaning
Audience segment(Segment)
Custom audience(Custom)
DataIQ(DataIq)

ChannelSharePercent ​

0 to 100 in steps of 5, plus optimized.

FibLibPercent ​

0 to 100 in steps of 5.

Weekday (chrono) ​

ValueMeaning
Mon
Tue
Wed
Thu
Fri
Sat
Sun

Platform rules worth knowing ​

  • Generated mechanically from campaign-schema.json (live product schema), not from Rust source.
  • 15 campaign fields, 54 line item fields (struct/property order preserved).
  • required reflects membership in the component's JSON Schema "required" array; note that the served schema lists some fields (e.g. Campaign.budget) as required even though they are Option<...> in practice (requiredness is really governed by x-tvbeat-required-if) — see inventory-diff.md.
  • rust_type is always null: the served schema carries no Rust type names.
  • Enum names come from the $ref'd component schema name; enums with no component (inline "enum": [...] nested inside another schema, e.g. Daypart.from_day/to_day) are named "<ParentSchema>.<property>".
  • shape is generated purely from schema structure (properties/required/format/x-tvbeat-type/title); it does not include business-rule prose that only exists as Rust doc-comments (e.g. "periods may overlap and union").
  • Read-only fields with no x-tvbeat-autostore are treated as server-derived/framework fields and are listed only in derived_or_readonly, not in *_fields. Read-only fields carrying x-tvbeat-autostore = true (e.g. Campaign.product_category) are real fields the server fills in, so they are kept in *_fields too.
  • Enum tables for fib_lib_pct, linear_channel_tvnz_1, linear_channel_tvnz_2, linear_channel_tvnz_duke, linear_week_start come from schema-inventory.supplement.json, not from the served schema.