Deals API 1.0 JSON Schema Unofficial

Decision records ·

D-033 What do the schemas keep of a Type cell's wording, when the text writes int and integer, a ; and a , before what follows the type, and recommended?

Gap Cited on main and at the tag 1.0-202602.

What the schemas do

The JSON type, the default, and whether the attribute is required: int and integer name one JSON type, ; and , one separator, and recommended an optional attribute that a sender should send, which no schema keyword states.

Options

  • json-type Chosen

    The JSON type, the default, and whether the attribute is required: int and integer name one JSON type, ; and , one separator, and recommended an optional attribute that a sender should send, which no schema keyword states.

  • recommended-required

    recommended makes the attribute required, so a deal without it fails.

Why

The Type cells write the integer type as int in ten rows and as integer in three, and put a ; before required or default in two rows where the others put a ,; neither changes what a value may be, so the schemas keep the JSON type, and the round trip writes int and , throughout. recommended says a sender should send the attribute, and a payload without it is still valid, so the attribute is optional, as type rules § 4 reads RECOMMENDED, and its description keeps the row's words.

What we ask the specification to state

Write each Type cell one way: int or integer throughout, and a , before required and default, as most rows do. Say what recommended asks of a sender, and whether a receiver may rely on it.

The specification lines it rests on

Each line is quoted as the record pins it. Expand an item to read the quote.

main

  • Object: Deal, the id row L85 at 3028ddc
    id | string; required | A unique identifier for the direct deal in origin's namespace.
  • Object: Deal, the name row L86 at 3028ddc
    name | string, recommended | Name of the deal as created in the origin system. Note: This name may be displayed to the buyer. The person inputting the deal into the origin system should consider that when setting up the deal.
  • Object: Deal, the sellerstatus row L88 at 3028ddc
    sellerstatus | int, default 0, recommended | Status of the deal in the sellers system where: 0 = deal is active 1 = deal is paused 2 = deal is pending 3 = deal is complete (ie. selling scomplete (ie. selling system shows deal has completed) 4 = deal is archived (cannot be active again)
  • Object: Deal, the seller row L90 at 3028ddc
    seller | string, recommended | Canonical domain of the business entity who sold the deal. This may be the same as the origin or curator, but it also could be any intermediate seller. See Implementation Guidance for additional detail
  • Object: Deal, the wseat row L92 at 3028ddc
    wseat | string array, recommended | Allowed list of buyer seats (e.g., advertisers, agencies) allowed to bid on this impression. IDs of seats and knowledge of the buyer's customers to which they refer must be coordinated between bidders and the exchange a priori. At most, only one of wseat and bseat should be used in the same request. Omission of both implies no seat restrictions.
  • Object: Terms, the cur row L112 at 3028ddc
    cur | string; default "USD" | Bid currency using ISO-4217 alpha codes.
  • Object: Inventory, the inclinventory row L126 at 3028ddc
    inclinventory | integer array | High-level information about the kind of inventory included in the deal: 1 = site 2 = app 3 = dooh 4 = audio 5 = endemic 6 = other If this is empty or missing, the deal is assumed to apply to all types of inventory
  • Object: Inventory, the devicetype row L127 at 3028ddc
    devicetype | integer array | The general type of device. Refer to List: Device Type in AdCOM 1.0
  • Object: Inventory, the cattax row L132 at 3028ddc
    cattax | integer | The taxonomy in use for the cat attribute. Refer to List: Category Taxonomies.

Tag 1.0-202602

  • Object: Deal, the id row L85 at 938a5d1
    id | string; required | A unique identifier for the direct deal in origin's namespace.
  • Object: Deal, the name row L86 at 938a5d1
    name | string, recommended | Name of the deal as created in the origin system. Note: This name may be displayed to the buyer. The person inputting the deal into the origin system should consider that when setting up the deal.
  • Object: Deal, the sellerstatus row L88 at 938a5d1
    sellerstatus | int, default 0, recommended | Status of the deal in the sellers system where: 0 = deal is active 1 = deal is paused 2 = deal is pending 4 = deal is complete (ie. selling scomplete (ie. selling system shows deal has completed) 4 = deal is archived (cannot be active again)
  • Object: Deal, the seller row L90 at 938a5d1
    seller | string, recommended | Canonical domain of the business entity who sold the deal. This may be the same as the origin or curator, but it also could be any intermediate seller. See Implementation Guidance for additional detail
  • Object: Deal, the wseat row L92 at 938a5d1
    wseat | string array, recommended | Allowed list of buyer seats (e.g., advertisers, agencies) allowed to bid on this impression. IDs of seats and knowledge of the buyer's customers to which they refer must be coordinated between bidders and the exchange a priori. At most, only one of wseat and bseat should be used in the same request. Omission of both implies no seat restrictions.
  • Object: Terms, the cur row L112 at 938a5d1
    cur | string; default "USD" | Bid currency using ISO-4217 alpha codes.
  • Object: Inventory, the inclinventory row L126 at 938a5d1
    inclinventory | integer array | High-level information about the kind of inventory included in the deal: 1 = site 2 = app 3 = dooh 4 = audio 5 = endemic 6 = other If this is empty or missing, the deal is assumed to apply to all types of inventory
  • Object: Inventory, the devicetype row L127 at 938a5d1
    devicetype | integer array | The general type of device. Refer to List: Device Type in AdCOM 1.0
  • Object: Inventory, the cattax row L132 at 938a5d1
    cattax | integer | The taxonomy in use for the cat attribute. Refer to List: Category Taxonomies.

What it shapes

main: Deal.id, Deal.name, Deal.seller, Deal.sellerstatus, Deal.wseat, Inventory.cattax, Inventory.devicetype, Inventory.inclinventory, Terms.cur

Tag 1.0-202602: Deal.id, Deal.name, Deal.seller, Deal.sellerstatus, Deal.wseat, Inventory.cattax, Inventory.devicetype, Inventory.inclinventory, Terms.cur

The record's YAML file