Freshness & timestamps
Every quote carries timing and staleness metadata so you can trust or discount it.
FieldMeaning
fetchedAtWhen the upstream marketplace reported this price.
ingestedAtWhen SkinPricer collected it. Use this one for freshness checks.
ingestLatencyMsfetchedAt → ingestedAt delay, in milliseconds.
isStaleTrue when the quote is older than the freshness window (a uniform 30-minute threshold across all markets).
updatedAtOn NBBO bestAsk / bestBid: the source quote's last-update time.
marketCount / freshMarketCountMarkets contributing a quote vs. those still fresh.
confidence0 to 1 score from coverage, freshness, and cross-market agreement.
calculatedAtWhen SkinPricer computed the aggregate / NBBO in the response.
isStale uses one uniform 30-minute threshold across every market, not a per-market window. Prefer ingestedAt over fetchedAt for staleness. Treat isStale=true as a soft signal rather than a hard drop on thinly traded items, since a slightly old quote may still be the only one.