재고
API 인벤토리와 octopart.com
의 비교API에서 반환되는 인벤토리 데이터는 octopart.com에서 표시되는 내용과 다를 수 있습니다. 그 이유는 두 가지입니다:
-
Data freshness – API는 정기적으로 수집되는 유통업체 데이터 피드의 인벤토리를 반환합니다. octopart.com은 일부 유통업체에 대해 실시간 유통업체 데이터를 사용하므로, 더 최근의 재고 변동이 반영될 수 있습니다.
-
Country defaulting – octopart.com은 사용자의 IP 주소를 통해 국가를 감지하고 해당 지역에 적합한 오퍼를 표시합니다. API는 US 매개변수가 지정되지 않은 경우 기본적으로
country를 사용합니다. 미국 이외 지역에 대해 조회하는 경우에는 항상country매개변수(선택적으로currency도)를 명시적으로 전달하세요.
인벤토리 데이터 조회
인벤토리 정보는 응답의 두 수준에 걸쳐 분산되어 있습니다:
-
SupPart– 집계 필드totalAvail및avgAvail는 모든 판매자의 재고를 요약합니다 -
SupOffer–inventoryLevel필드는 특정 판매자의 특정 오퍼에 대한 재고 수량을 제공합니다
query InventoryCheck {
supSearchMpn(q: "LM358DR", limit: 2) {
results {
part {
mpn
totalAvail
avgAvail
sellers(includeBrokers: false) {
company {
name
}
isAuthorized
offers {
inventoryLevel
updated
}
}
}
}
}
}
updated의 SupOffer 필드는 유통업체의 피드로부터 인벤토리 데이터를 마지막으로 수신한 시점을 보여주며, 데이터 최신성을 판단하는 데 도움이 됩니다.
inventoryLevel특수 코드
inventoryLevel는 일반적으로 재고 수량을 나타내는 0 이상의 정수를 반환합니다. 유통업체가 정확한 수량을 제공할 수 없는 경우에는 대신 음수의 특수 코드가 반환됩니다:
코드 |
의미 |
|
Non-Stocked – 해당 유통업체는 이 부품을 취급하지 않음 |
|
Yes – 재고는 있으나 수량은 제공되지 않음 |
|
Unknown – 수량 값이 제공되지 않았거나, 값이 유효한 정수가 아님 |
|
RFQ – 견적을 받으려면 유통업체에 문의 |
totalAvail 및 avgAvail
totalAvail는 모든 유통업체의 재고 합계이며, avgAvail는 유통업체당 평균값입니다. 두 필드 모두 SupPart에 있습니다.
브로커 재고는 이 값들에 특정한 방식으로 영향을 줍니다. 표준 유통업체에는 재고가 없지만 하나 이상의 브로커가 inventoryLevel > 0 또는 inventoryLevel == -2를 가지고 있는 경우, totalAvail는 1로 설정됩니다. 브로커의 실제 수량은 숫자로 합산되지 않으며, 브로커 재고의 존재 여부만 표시됩니다.
즉, 표준 유통업체 재고가 없는 상태에서 totalAvail가 1인 경우, 이는 실제 수량을 의미하는 것이 아니라 브로커 오퍼를 확인해야 한다는 신호입니다.
애플리케이션에서 유통업체와 브로커를 구분하려면 isBroker의 SupPartSeller 필드를 사용하세요:
sellers(includeBrokers: true) {
company { name }
isAuthorized
isBroker
offers {
inventoryLevel
}
}