Deal lifecycle

How a deal's status changes and how to observe it.

Sovrn owns the deal's status; you observe it through the read endpoints. A deal
with a future start date is created as scheduled and becomes active on its
start date. Sovrn operators may pause or archive a deal; those changes surface on
the next read of that deal.

Deal types

type on a deal request selects how buyers reach the deal. It is chosen at
creation and cannot be changed afterwards.

typeWhat it is
pmp (default)A private marketplace deal. Every buyer carries at least one seatIds entry — the seats on that DSP that may transact. Omitting type is the same as sending pmp, so existing integrations are unaffected.
openA non-seat deal: any buyer on the DSP can transact. Each buyer carries the partner onlyseatIds must be omitted, and a buyer that includes it is rejected. On DV360 an open deal appears as an Auction Package.
{
  "type": "open",
  "buyers": [{ "partner": "dv360" }]
}

Two consequences of type being fixed at creation:

  • PATCH /deal-requests/{id} does not accept type. Sending it returns 400.
  • Buyers on an open deal cannot be edited. A PATCH that includes buyers
    on an open deal returns 400; to change the buyer, create a new deal request.
📘

DSP-specific requirements

Some DSPs require fields this API otherwise treats as optional. See
Demand partners for the requirements that apply to a
given buyer before you submit.

Statuses

StatusMeaning
activeLive and eligible to transact.
scheduledCreated with a future start date; becomes active on that date.
pausedTemporarily paused by a Sovrn operator.
reviewPending operator review.
dsp reviewAwaiting DSP confirmation (applies to certain buyers).
archivedTerminated; no longer active.
📘

Judging freshness

GET /deal-requests/{id} refreshes the status from source (cached ~30s) and
reports statusAsOf. If that refresh fails, it returns the last-known status
with a 200 (not an error) — always read statusAsOf to judge freshness. The
list endpoint does not refresh; poll the by-id endpoint for current status.


Did this page help you?