Deal sync API is leveraging DV3 Negotiation pipeline. What the API really did is manage an one way negotiation, in which advertisers can only accept/archive, but cannot propose changes.
Order is the top level negotiation object, it can contain single or multiple products. The order contains the partner id, which permissions the DV3 Partner to the Order in DV3 UI.
Product is meant to represent a deal in its ‘proposed’ stage. Each product has one to one mapping with a deal by deal id. An order can have one or more products, and is meant to represent the set of products being proposed together. Sellers cannot directly create deals which are the executable objects in DV360, and instead must create Order, Product in DV360.
Inventory source is the actual “Deal”. The deal gets identified by external_deal_id during transaction time between buy-side and sell-side platforms. Inventory source contains agreed terms between advertisers and publishers, such as price, time and committed impressions(for reservation deals). Inventory source is automatically generated based on corresponding Product when advertiser “Accept” the Negotiation pushed from Exchange.
Line items are the actual bidding object. Line items control which ads are served, when they are served, and to whom they are served. This is dictated by numerous settings configured at the line item level and prescribed by parent resources. Biddings on an Inventory Source are executed by the line items that target it. Line items are managed by Advertisers, and are not part of the Seller API offering.