検索

Octopart API には、部品を見つけるための 3 つのクエリがあります。どれを選ぶべきかは、探している部品について何を把握しているかによって決まります。

クエリ

使用する場面...

supMultiMatch

1 つ以上の正確な MPN または SKU があり、それぞれについて正確に一致する結果が欲しい場合

supSearchMpn

単一の MPN があり、順位付けされた MPN 一致結果が欲しい場合

supSearch

キーワード、説明、または部分的な部品番号で検索する場合

MPN Matching

supMultiMatch – Batch Exact Match

supMultiMatch は MPN または SKU のリストを受け取り、それぞれについて最適な一致を返します。部品番号が分かっていて、1 回のリクエストで複数の部品を検索する必要がある場合に適しています。

query MatchParts {
  supMultiMatch(queries: [{ mpn: "LM358DR" }, { mpn: "LM339MX" }]) {
    hits
    parts {
      mpn
      manufacturer {
        name
      }
      sellers {
        company {
          name
        }
        offers {
          inventoryLevel
          prices {
            price
            currency
            quantity
          }
        }
      }
    }
  }
}

queries の各要素には、その MPN に対して返される一致部品数を制御するための独自の limit を含めることができます。

supSearchMpn – Single MPN Search

supSearchMpn は単一のクエリ文字列を受け取り、順位付けされた MPN 一致結果を返します。1 回に 1 つの部品を検索する場合に使用します。

query FindByMpn {
  supSearchMpn(q: "LM358", limit: 5) {
    hits
    results {
      part {
        mpn
        manufacturer {
          name
        }
      }
    }
  }
}

Keyword Search

supSearch は、部品の説明、仕様、カテゴリ全体にわたる、より広範な検索を実行します。正確な MPN がない場合、たとえば部品タイプや電気的特性で検索する場合に使用します。

query FindCapacitors {
  supSearch(q: "100nF 50V 0402 ceramic", limit: 3) {
    hits
    results {
      part {
        mpn
        shortDescription
        manufacturer {
          name
        }
        sellers(includeBrokers: false) {
          company {
            name
          }
          offers {
            clickUrl
            inventoryLevel
            prices {
              price
              currency
              quantity
            }
          }
        }
      }
    }
  }
}

q 文字列は、部品の説明、カテゴリ、インデックス化された属性に対して照合されます。属性ベースのフィルタリング(例: 正確な静電容量や定格電圧)には、filters パラメータを使用してください。利用可能なフィルタ属性 を参照してください。

結果のフィルタリング

在庫ありフィルタ

在庫を持つディストリビュータが 1 社もない部品を除外するには、inStockOnly: true を渡します。このフィルタは部品レベルで適用されます。つまり、1 社でも在庫があれば、その部品は在庫ありと見なされます。

supSearch(q: "LM339", limit: 10, inStockOnly: true) { ... }

正規販売店のみ

sellers フィールドに対して authorizedOnly: true を渡すと、ブローカーやグレーマーケット販売業者を除外し、正規ディストリビュータのみを返します。

sellers(authorizedOnly: true) {
  company { name }
  offers { inventoryLevel }
}

ディストリビュータで絞り込み

結果を特定のディストリビュータに限定するには、options.filters.distributor_id を使用します。ディストリビュータの数値 ID または名前のどちらでも渡せます。

query MultiMatch {
  supMultiMatch(
    queries: [{ mpn: "FH12-5S-1SH(55)", limit: 2 }]
    options: { filters: { distributor_id: ["Digi-Key", "Mouser"] } }
  ) {
    hits
    parts {
      mpn
      sellers {
        company { name }
        offers {
          prices { price currency }
        }
      }
    }
  }
}

ディストリビュータ ID の完全な一覧は、octopart.com/api/v4/values で確認できます。

Note: このフィルタは、レスポンス内にどのディストリビュータのオファーを表示するかを限定するものであり、他のディストリビュータが販売している部品を除外するものではありません。結果に指定したディストリビュータのみを含めたい場合は、アプリケーション側で sellers 配列をフィルタリングしてください。

地域と通貨

多くのディストリビュータは、購入者の国に応じて異なる在庫数を提供します。国と通貨が指定されていない場合、API はデフォルトで US および USD を使用します。

地域に適した結果を取得するには、クエリレベルで countrycurrency を渡します。

query GBMatch {
  supMultiMatch(
    country: "GB"
    currency: "GBP"
    queries: [{ mpn: "LM358DR", limit: 3 }]
  ) {
    parts {
      sellers(authorizedOnly: true) {
        company { name }
        offers { inventoryLevel }
      }
    }
  }
}

国コードは ISO 3166 alpha-2、通貨コードは ISO 4217 に従います。

多くのディストリビュータは複数の国へ出荷したり、国ごとに在庫を分けていなかったりするため、countrycurrency は厳密なフィルタではない点に注意してください。これらは、どのオファーが表示されるかや、その価格に影響します。

ワイルドカード

部分的な部品番号一致で結果が多すぎる場合、ワイルドカードを使って検索を絞り込めます。

ワイルドカード

一致内容

*

任意の文字列(空文字を含む)

?

任意の 1 文字

デフォルトでは、先頭と末尾にワイルドカードが自動的に追加されます。したがって、74LS25*74LS25* は同じ結果を返します。

ワイルドカードを 1 つでも明示的に追加すると、自動ワイルドカードは not 追加されません。これは前方一致検索に便利です。

lv40    → matches anything containing "lv40" (wildcards added automatically)
lv40*   → matches only parts starting with "lv40"

Note: -. のような英数字以外の文字は検索エンジンによって正規化されるため、lv40* では lv-4000 のような部品も返される場合があります。

結果に予期しない MPN が含まれる場合

MPN matching を使用すると、検索したものとは異なるように見える MPN を持つ部品が返ることがあります。これは、検索エンジンが部品番号をトークン化してインデックス化する方法によるもので、想定される動作です。

-. などの英数字以外の文字は、検索インデックス作成時に無視されます。その後、一致判定はトライグラム(3 文字の並び)を使用して行われます。たとえば、ASV-18432MHZ-EJ-T を検索すると、両方が同じトライグラム集合にトークン化されるため、ASV-18.432MHZ-EJ-T も返る場合があります。

If an exact character match is required返された MPN を入力値と比較し、アプリケーション側で結果をフィルタリングしてください。

主要なレスポンスフィールド

フィールド

場所

説明

mpn

part

メーカー部品番号

manufacturer.name

part

メーカー名

sellers

part

オファーを持つ販売業者の一覧

company.name

sellers

ディストリビュータ名またはブローカー名

inventoryLevel

offers

在庫数量(特別なコードについては Inventory を参照)

prices

offers

pricecurrency、および quantity

clickUrl

offers

を含む段階価格の価格ブレーク。ディストリビュータのサイト上のオファーへの直接リンク

factoryLeadDays

offers

各ディストリビュータオファーごとの、工場からの調達に必要な日数

estimatedFactoryLeadDays

part

信頼できるディストリビュータのオファーから算出された推定工場リードタイム

similarParts

part

機能的に同等な代替部品

 

AI-LocalizedAI で翻訳
問題が見つかった場合、文字/画像を選択し、Ctrl + Enter キーを押してフィードバックをお送りください。
コンテンツ