GET
Get a normalized catalog aggregate
Devolve um CatalogAggregate: o item, suas variantes e sua disponibilidade, como ficaram depois dos sinais ingeridos.

Três formas que surpreendem da primeira vez

item.title e variant.title são objetos { [lang]: string } com pelo menos uma chave:
Não há idioma garantido: escolha um e tenha um fallback. primary_media.alt tem a mesma forma.
availability[].sellable é uma string aberta (o fixture usa "in_stock"). Um booleano não consegue dizer “não sei”, e a CrossUp não adivinha o que o provedor não disse: o desconhecido fica unknown. Trate como opaco e mostre como vem.
Se o provedor não informou estoque, quantity não vem: é desconhecido. quantity ?? 0 transforma “não sei” em “sem estoque”, uma decisão de negócio que a API não tomou.

Um item de outra loja dá 404, não 403

Um item_id inexistente e um de outra loja são indistinguíveis: os dois dão not_found. Um 404 inesperado com um token válido quase sempre é o token de outra loja.

Autorizações

Authorization
string
header
obrigatório

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Parâmetros de caminho

item_id
string
obrigatório

CrossUp catalog item identifier.

Minimum string length: 1

Resposta

Catalog aggregate found

item
object
obrigatório
variants
object[]
obrigatório
availability
object[]
obrigatório
refresh_revision
integer

Which look at the store this aggregate came from. A client that caches can tell a newer read from a stale one without comparing every field, and a bug report that quotes it says exactly what the caller saw.

Intervalo necessário: x >= 1