Commitment API V4

Overview

The Commitment API V4 enables publishers to create, update, and manage upfront commitments. Upfront commitments are advanced purchasing deals of advertising inventory that allow publishers and advertisers alike to coordinate budgets ahead of the television season. By creating upfront commitments for budget management, publishers can unify spend across direct sold, PG, and PMP for specific buyers, advertisers, and brands.

Use the Commitment API V4 to accomplish the following tasks:

  • List details for one or all commitments in a network
  • Create commitments with demand sources, split budgets, and custom pacings
  • Update commitments' demand sources to add campaigns and deals
  • Deactivate and re-activate existing commitments

Uniform Resource Identifiers (URI)

Production URI
https://api.freewheel.tv/services/v4/allocation/commitments
Staging URI
https://api.stg.freewheel.tv/services/v4/allocation/commitments

Workflows

Update a Commitment's Demand Sources

Publisher

  1. Requests all commitments in the network with GET.

FreeWheel

  1. Returns a list of commitments and their IDs.

Publisher

  1. Selects a commitment ID and uses it as a path parameter. Adds the new campaign and deal IDs to the demand_sources object. Sends the request with the PATCH method.

FreeWheel

  1. Updates the commitment with the new demand sources.

Attributes

The following attributes are used when creating or updating a commitment. For an interactive example, see Create a Commitment.

NameTypeDescription
namestringName of the commitment
typestringType of the commitment

Valid values:
UPFRONT
OTHER: Select Other if the commitment is not part of an upfront deal.
descriptionstringDescription of the commitment
start_timedate-timeStart time of the commitment
end_timedate-timeEnd time of the commitment
global_agency_idstringGlobal agency ID of the commitment
global_advertiser_idstringGlobal advertiser ID of the commitment. This attribute can be empty if there is no advertiser.
global_brand_idstringGlobal brand ID of the commitment. This attribute can be empty if there is no advertiser.
demand_sourcesobjectObject containing demand sources
budgetobjectObject containing budget allocations
alert_thresholddoubleAlert threshold of the commitment
custom_pacingsobjectObject containing custom pacings
alert_email_delaystringAlert email delay of the commitment in days. The maximum alert email delay is restricted by the start and end date.
ownersobjectObject containing a list of owners
alert_pmp_thresholddoubleAlert threshold of the commitment, for only PMP spend.
Set the value to -1 if the commitment has no PMP-only performance curve configured.
dsp_synching_modestringSynching mode to the DSP

Valid values:
FULL: Send full commitment performance status to the DSP.
PMP: Send PMP only performance status to the DSP.
pmp_custom_pacingsobjectObject containing PMP custom pacings
alert_enabledbooleanMust be TRUE to enable alerts. At least one owner email address must be configured when alert_enabled is true.

Child Attributes

Demand Sources Object

NameTypeDescription
deal_idsarray of stringsList of deal IDs to add as a demand source. Supported deal types include:

- Programmatic Guaranteed (PG)
- First Look
- Biddable Guaranteed (BG)
- Deal
- Backfill
campaign_idsarray of stringsList of campaign IDs to add as a demand source

Budget Object

NameTypeDescription
totaldoubleThe total budget of the commitment. This must be the sum of programmatic and direct sold budgets.
programmaticdoubleThe programmatic budget of the commitment. This must be the sum of the PMP and PG budgets if the user opts to split the programmatic budget.
direct_solddoubleThe direct sold budget of the commitment.
pmpdoubleThe PMP budget of the commitment.
pgdoubleThe PG budget of the commitment.

Custom Pacings Object

NameTypeDescription
itemsarray of objectsList of custom pacings of the commitment.

Items Object

NameTypeDescription
delivery_percentagedoubleDelivery percentage of the pacing
end_timedate-timeEnd time of the pacing

Owners Object

NameTypeDescription
itemsarray of objectsList of the owners of the commitment. Up to 10 owners may be included.

Items Object

NameTypeDescription
idstringID of the owner
namestringName of the owner
email_addressstringEmail address of the owner

PMP Custom Pacings Object

NameTypeDescription
itemsarray of objectsList of PMP custom pacings of the commitment.

Items Object

NameTypeDescription
delivery_percentagedoubleDelivery percentage of the pacing
end_timedate-timeEnd time of the pacing