Поиск
API Octopart предоставляет три типа запросов для поиска компонентов. Выбор подходящего зависит от того, что именно вы знаете о нужном компоненте.
Запрос |
Используйте, когда... |
|
У вас есть один или несколько точных MPN или SKU, и вы хотите получить точное совпадение для каждого |
|
У вас есть один MPN, и вы хотите получить ранжированные результаты совпадения по MPN |
|
Вы выполняете поиск по ключевому слову, описанию или частичному номеру компонента |
Сопоставление MPN
supMultiMatch – Batch Exact Match
supMultiMatch принимает список MPN или SKU и возвращает наилучшее совпадение для каждого. Это правильный выбор, если вы знаете номера компонентов и хотите найти несколько компонентов в рамках одного запроса.
query MatchParts {
supMultiMatch(queries: [{ mpn: "LM358DR" }, { mpn: "LM339MX" }]) {
hits
parts {
mpn
manufacturer {
name
}
sellers {
company {
name
}
offers {
inventoryLevel
prices {
price
currency
quantity
}
}
}
}
}
}
Каждый элемент в queries может включать собственный limit, чтобы управлять количеством найденных компонентов, возвращаемых для этого MPN.
supSearchMpn – Поиск по одному MPN
supSearchMpn принимает одну строку запроса и возвращает ранжированные результаты совпадения по MPN. Используйте его, когда ищете по одному компоненту за раз.
query FindByMpn {
supSearchMpn(q: "LM358", limit: 5) {
hits
results {
part {
mpn
manufacturer {
name
}
}
}
}
}
Поиск по ключевым словам
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 — см. доступные атрибуты фильтрации.
Фильтрация результатов
Фильтр наличия на складе
Передайте inStockOnly: true, чтобы исключить компоненты, которых нет в наличии ни у одного дистрибьютора. Фильтр применяется на уровне компонента — компонент считается доступным, если он есть в наличии хотя бы у одного дистрибьютора.
supSearch(q: "LM339", limit: 10, inStockOnly: true) { ... }
Только авторизованные продавцы
Передайте authorizedOnly: true в поле sellers, чтобы вернуть только авторизованных дистрибьюторов, исключив брокеров и продавцов серого рынка.
sellers(authorizedOnly: true) {
company { name }
offers { inventoryLevel }
}
Фильтрация по дистрибьютору
Используйте options.filters.distributor_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 }
}
}
}
}
}
Полный список идентификаторов дистрибьюторов доступен по адресу octopart.com/api/v4/values.
Регион и валюта
Многие дистрибьюторы показывают разные уровни складских остатков в зависимости от страны покупателя. По умолчанию API использует US и USD, если страна и валюта не указаны.
Передайте country и currency на уровне запроса, чтобы получить результаты, соответствующие региону:
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.
Обратите внимание, что многие дистрибьюторы осуществляют поставки в несколько стран или не разделяют складские остатки по странам, поэтому country и currency не являются жестким фильтром — они влияют на то, какие предложения отображаются и какие цены показываются.
Подстановочные символы
Если сопоставление по частичному номеру компонента возвращает слишком много результатов, подстановочные символы помогут сузить поиск:
Подстановочный символ |
Соответствует |
|
Любой последовательности символов (включая пустую) |
|
Любому одному символу |
По умолчанию подстановочные символы в начале и в конце добавляются автоматически — поэтому 74LS25 и *74LS25* возвращают одинаковые результаты.
Если вы явно добавляете любой подстановочный символ, автоматические подстановочные символы not добавляются. Это полезно для поиска по префиксу:
lv40 → matches anything containing "lv40" (wildcards added automatically)
lv40* → matches only parts starting with "lv40"
Неожиданные MPN в результатах
При использовании сопоставления MPN вы можете иногда получать компоненты, чьи MPN выглядят иначе, чем тот, который вы искали. Это ожидаемое поведение, связанное с тем, как поисковая система токенизирует и индексирует номера компонентов.
Неалфавитно-цифровые символы (например, - и .) игнорируются при построении поискового индекса. Затем сопоставление выполняется с использованием триграмм (последовательностей из трех символов). Например, поиск по ASV-18432MHZ-EJ-T также может вернуть ASV-18.432MHZ-EJ-T, потому что оба значения токенизируются в один и тот же набор триграмм.
If an exact character match is requiredЧтобы этого избежать, сравните возвращенные MPN с вашим входным значением и отфильтруйте результаты в своем приложении.
Ключевые поля ответа
Поле |
Расположение |
Описание |
|
|
Номер детали производителя |
|
|
Наименование производителя |
|
|
Список продавцов с предложениями |
|
|
Название дистрибьютора или брокера |
|
|
Количество на складе (см. Inventory для специальных кодов) |
|
|
Многоуровневые ценовые диапазоны с |
|
|
Прямая ссылка на предложение на сайте дистрибьютора |
|
|
Срок получения с завода в днях для каждого предложения дистрибьютора |
|
|
Оценочный срок поставки с завода, рассчитанный на основе предложений доверенных дистрибьюторов |
|
|
Функционально эквивалентные альтернативные компоненты |