PriceLookup
Price envelope (LIQ-1049 + LIQ-1212). Default GET serves canonical pricing.usedRetailUsd, else Asset.usedRetailUsd, else snapshot extract. force_refresh=true acquires via POST /v1/resolve lane=price. Never bestRouteFmvUsd. used_retail + gaps are always present. price_usd equals used_retail.value_usd when present.
- assetType: string
_id required - currencyType: string | nullrequired
Same string as
used_retail.currency. Null on a miss. - dataType: boolean
_match requiredTrue when
price_usdis a positive finite number. - Properties: 3gapsType:required
- identifierType: stringrequired
- laneType: string | nullrequired
Resolve lane (
pricefor this API). - priceType: string | nullenum
_type requiredHonest type for the dollar that won. Canonical dollars use stored
pricing.priceType, the correlated observation domain, or Keepa mode. Snapshot extract and an unlabeled Asset scalar are null. Never hard-coded.valuessoldlisting_retailblendnull - schemaType: string
_version requiredContractual provenance schema (
liq-1056-2). - usedType:
_retail requiredProperties: 9Canonical used-retail slot (LIQ-1212 / CANONICAL-READ-CONTRACT §4).
- asType: string | nullFormat: date-time
_of the date-time notation as defined by RFC 3339, section 5.6, for example, 2017-07-21T17:32:28Z
- assuranceType: array of string | null
_markers - cacheType: boolean | null
_hit true when the default GET served stored listing/retail USD, or engine durable replay after acquire.
- dataType: integer | null
_age _seconds Seconds since the latest CanonicalMarketPricingSnapshot write clock when this request loaded a snapshot row (extract fallback, vendor_raw, or post-acquire). Default GET with stored usedRetailUsd skips that table and returns null — the price-lane projector does not upsert it.
- Properties: 2downgradedType: object | null
_from - groundingType: string | null
- iqType: string | null
_level Served IQ from the engine envelope when present; null on a stored DB serve without provenance.
- listingType: string | null
_id - listingType: string | null
_slug Catalog slug of the held listing when the engine reports it.
- messageType: string | null
- noType: string | null
_match _reason NOT_ENRICHEDwhen default GET finds no stored listing/retail. After acquire,NO_PRODUCT_MATCHor contractual miss reasons from the engine. - numericType: number | null
_score - priceType: number | null
_usd Same dollar as
used_retail.value_usd. Null when not stored or the acquire has no match. - retrievedType: string | nullFormat: date-time
_at the date-time notation as defined by RFC 3339, section 5.6, for example, 2017-07-21T17:32:28Z
- sourceType: string | null
_slug Licensed price source slug (e.g. keepa, layer-iq-price). Null when the dollar is only a legacy snapshot or an unlabeled Asset scalar. Never the synthetic
legacy_snapshottoken. - vendor
_raw Present when
vendor_raw=true. Winning licensed-source observation JSON (Keepa snapshot JSON when Keepa won, else amarket_pricingobservation, else this request’s live engine payload), orsource/payloadnull with a message when none exists. Omitted when the query flag is false.Present when
vendor_raw=true. Winning licensed-source observation JSON (Keepa snapshot JSON when Keepa won, else amarket_pricingobservation, else this request’s live engine payload), orsource/payloadnull with a message when none exists. Omitted when the query flag is false.- domainType: stringrequired
- Properties: 1payloadType: objectrequired
- retrievedType: stringFormat: date-time
_at requiredthe date-time notation as defined by RFC 3339, section 5.6, for example, 2017-07-21T17:32:28Z
- sourceType: stringrequired
SourceRegistration slug of the winning price-lane source.