Ví dụ về truy vấn
Thay đổi khu vực của bạn
Nhiều đối tác phân phối của chúng tôi cung cấp mức tồn kho khác nhau tùy theo quốc gia của người dùng. API mặc định sử dụng US và USD cho quốc gia và tiền tệ, nhưng bạn có thể ghi đè các giá trị này để nhận kết quả phù hợp hơn với khu vực của mình.
So sánh truy vấn cho Vương quốc Anh:
query GBMatch {
supMultiMatch(
country: "GB"
currency: "GBP"
queries: [{ mpn: "AR 32 HZL-TT", limit: 3 }]
) {
parts {
sellers(authorizedOnly: true) {
company {
name
}
offers {
inventoryLevel
}
}
}
}
}
... với truy vấn tại Mỹ:
query USMatch {
supMultiMatch(
queries: [{ mpn: "AR 32 HZL-TT", limit: 3 }]
) {
parts {
sellers(authorizedOnly: true) {
company {
name
}
offers {
inventoryLevel
}
}
}
}
}
Trong trường hợp này, vào ngày cụ thể đó, có 1.370 linh kiện sẵn có để giao tới GB. Tuy nhiên, người dùng ở Mỹ sẽ chỉ thấy 300 linh kiện sẵn có.
Nhiều nhà phân phối sẽ giao hàng tới nhiều quốc gia hoặc không phân tách tồn kho theo quốc gia, vì vậy quốc gia và tiền tệ đầu vào không được dùng như bộ lọc cứng.
Mã quốc gia tuân theo tiêu chuẩn ISO 3166 (alpha-2); mã tiền tệ tuân theo tiêu chuẩn ISO 4217.
Khớp chính xác mpn với nhà cung cấp cụ thể
Sử dụng truy vấn SupMultiMatch :
query MultiMatch {
supMultiMatch(
queries: [{mpn: "FH12-5S-1SH(55)", limit: 2}]
options: {filters: {distributor_id: ["459", "1106", "2401", "2628", "2454", "3261", "12947"]}}
) {
hits
parts {
mpn
name
sellers {
company {
name
}
offers {
prices {
price
currency
}
}
}
}
}
}
Lưu ý rằng thao tác này sẽ lọc các linh kiện được bán bởi (các) nhà phân phối được chỉ định. Danh sách nhà phân phối có tại đây. Nếu các nhà phân phối khác cũng bán linh kiện này, chúng cũng sẽ được liệt kê. Bạn luôn có thể lọc chúng ra trong quá trình xử lý nếu muốn.
Thay vì ID công ty, ví dụ "459", bạn có thể chỉ định tên công ty, ví dụ "Digi-Key". Đây là một ví dụ:
query MultiMatch {
supMultiMatch(
queries: [{mpn: "FH12-5S-1SH(55)", limit: 2}]
options: {filters: {distributor_id: ["Digi-Key"]}}
) {
hits
parts {
mpn
name
sellers {
company {
name
}
offers {
prices {
price
currency
}
}
}
}
}
}
Linh kiện từ người bán có thông tin giá
Đây là một truy vấn mẫu bạn có thể dùng trong IDE của mình:
query FindPrices {
supSearch(q: "AEC-Q100", limit: 3) {
results {
part {
mpn
manufacturer {
name
}
sellers(includeBrokers: false) {
company {
name
}
offers {
clickUrl
inventoryLevel
prices{
price
currency
quantity
}
}
}
}
}
}
}
Khớp chính xác linh kiện
Truy vấn supMultiMatch cho phép bạn nhập nhiều MPN để truy xuất dữ liệu và tìm khớp chính xác cho từng mã.
query MatchParts {
supMultiMatch(queries: [{mpn: "G3VM-101PR"}]) {
hits
reference
parts {
id
slug
mpn
manufacturer {
name
}
}
}
}
Lọc các linh kiện còn hàng
Khi tìm kiếm, bạn có thể chỉ định chỉ bao gồm các linh kiện còn hàng. Ví dụ:
supSearch(q: "LM339", limit: 1, inStockOnly: true) { ... }
Đặt bộ lọc này thành true có nghĩa là các linh kiện có no stock at all sẽ bị loại trừ. Nếu một linh kiện có tồn kho từ chỉ một nhà phân phối thì nó được xem là còn hàng và sẽ được trả về như một phần của truy vấn.
Bộ lọc này hoàn toàn không xét đến tồn kho của nhà phân phối – nó được áp dụng ở cấp độ linh kiện.
Đây là một ví dụ bạn có thể thử. Truy vấn này tìm kiếm AEC-Q100 với phân trang start trang là 5, và inStockOnly được đặt thành true:
query in_stock_filter{
supSearch(q: "AEC-Q100", start: 5, inStockOnly: true) {
results {
part {
mpn
manufacturer {
name
}
sellers(includeBrokers: false) {
company {
name
}
}
}
}
}
}
Các MPN không mong đợi được trả về
Khi tìm kiếm hoặc đối sánh, đôi khi có thể tìm thấy thêm các linh kiện mà MPN chỉ khác nhau ở các ký tự không phải chữ và số, chẳng hạn như - hoặc ..
Ví dụ, hãy xem một truy vấn supMultiMatch cho MPN sau:
ASV-18.432MHZ-EJ-T as well as ASV-1.8432MHZ-E-J-T (and others).
Hành vi này là do cách các linh kiện được "token hóa" để lập chỉ mục trong công cụ tìm kiếm elastic.
MPN được tách thành các token, bỏ qua các ký tự đặc biệt (ví dụ: CV 3-200/SPG có thể trở thành `CV`, `3200`, `SPG`).
Việc đối sánh sau đó được thực hiện bằng trigram (các tổ hợp ba chữ cái). Tìm kiếm phải khớp hoàn toàn với một MPN đã được token hóa, nhưng khớp một phần phụ thuộc vào trigram. Ví dụ:
-
Match: "CV 3-20", "CV 320", "00 SPG" - Each part aligns with at least one full token
-
No Match: "CV 3", "CV 3-", "CV 32" - No part of these aligns with any token
Sử dụng ký tự đại diện
Đôi khi, tìm kiếm theo một phần mã linh kiện trả về quá nhiều kết quả, hoặc bạn có các yêu cầu cụ thể về việc khớp mã linh kiện. Trong những trường hợp này, bạn có thể dùng ký tự đại diện để tinh chỉnh tìm kiếm.
-
Ký tự
*khớp với bất kỳ chuỗi ký tự nào (kể cả chuỗi rỗng). -
Ký tự
?khớp với bất kỳ một ký tự đơn nào.
Ký tự đại diện có thể được dùng ở bất kỳ vị trí nào trong mã linh kiện. Không cần dùng ký tự đại diện để tìm phần giữa của mã linh kiện – ký tự đại diện ở đầu và cuối sẽ được tự động thêm vào. Ví dụ, *74LS25* trả về cùng kết quả với 74LS25.
Nếu bạn thêm một hoặc nhiều ký tự đại diện vào một thuật ngữ, sẽ không có ký tự đại diện nào khác được tự động thêm vào. Điều này có thể được dùng để thực hiện tìm kiếm theo tiền tố. Ví dụ, lv40 tìm các linh kiện có chứa lv40 ở bất kỳ đâu trong mã linh kiện, trong khi lv40* chỉ tìm các linh kiện bắt đầu bằng lv40.
Thời gian giao hàng từ nhà máy cho linh kiện
Có hai trường bạn có thể truy vấn trong API.
-
factoryLeadDaystrênSupOffertrả về số ngày cần để lấy linh kiện từ nhà máy. -
estimatedFactoryLeadDaystrênSupParttrả về thời gian giao hàng ước tính từ nhà máy tính theo ngày, được suy ra từ các chào bán của nhà phân phối đáng tin cậy.
Đây là một ví dụ truy vấn cho các người bán được ủy quyền:
query LeadDaysSearch {
supSearch(q: "IRL3803STRLPBF", limit: 2) {
results {
part {
mpn
estimatedFactoryLeadDays
sellers(authorizedOnly: true) {
offers {
factoryLeadDays
}
}
}
}
}
}
Linh kiện tương tự
Khi tìm kiếm hoặc đối sánh linh kiện, bạn có thể chỉ định trả về similarParts. Đây là các linh kiện được Nexar xác định là tương tự về thông số kỹ thuật và chức năng. Đây là một ví dụ truy vấn:
query SimilarParts {
supSearch(q: "LM339MX", limit: 1) {
hits
results {
part {
id
mpn
name
manufacturer { name }
similarParts {
id
mpn
manufacturer { name }
}
}
}
}
}