Hướng Dẫn Bắt Đầu Nhanh Với API Octopart
Octopart API là API GraphQL dành cho dữ liệu chuỗi cung ứng linh kiện điện tử. API này cung cấp cho bạn quyền truy cập theo chương trình vào cơ sở dữ liệu Octopart – linh kiện, giá cả, mức tồn kho, ưu đãi từ nhà phân phối, thời gian giao hàng từ nhà máy, v.v. – trên hàng triệu linh kiện từ hàng nghìn nhà sản xuất và nhà phân phối trên toàn thế giới.
Hướng dẫn này sẽ giúp bạn đi từ con số 0 đến truy vấn Octopart API đầu tiên chỉ trong vài phút.
Điều kiện tiên quyết
Tài khoản trên Altium Developer Center – cổng tự phục vụ của Altium dành cho nhà phát triển, nơi bạn có thể tham gia các chương trình để truy cập API Altium 365, Octopart API, SDK Altium Designer, Embeddable Viewer và các sản phẩm khác dành cho nhà phát triển
Bước 1: Lấy thông tin xác thực
-
Đăng nhập vào portal.nexar.com.
-
Tạo một ứng dụng mới.
-
Sao chép Client ID và Client Secret – bạn sẽ cần cả hai để yêu cầu token.
Bước 2: Lấy access token
Trao đổi thông tin xác thực của bạn để lấy access token bằng OAuth 2.0 client_credentials:
curl -X POST https://identity.nexar.com/connect/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" \
-d "client_id=CLIENT_ID" \
-d "client_secret=CLIENT_SECRET" \
-d "scope=supply.domain"
Phản hồi thành công sẽ trông như sau:
{
"access_token": "eyJhbGci...",
"expires_in": 86400,
"token_type": "Bearer"
}
Sao chép giá trị access_token. Token hết hạn sau một giờ – xem phần Xác thực để biết cách xử lý việc làm mới token trong ứng dụng của bạn.
Bước 3: Chạy truy vấn đầu tiên của bạn
Gửi một truy vấn GraphQL tới endpoint bằng cách sử dụng token của bạn trong header Authorization:
curl -X POST https://api.nexar.com/graphql \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"query": "query { supSearchMpn(q: \"LM358\", limit: 3) { hits results { part { mpn manufacturer { name } } } } }"
}'
Phản hồi thành công sẽ trả về các linh kiện khớp:
{
"data": {
"supSearchMpn": {
"hits": 42,
"results": [
{
"part": {
"mpn": "LM358DR",
"manufacturer": { "name": "Texas Instruments" }
}
}
]
}
}
}
Trường hits cho biết có bao nhiêu linh kiện khớp. Sử dụng limit và start để phân trang qua các kết quả – xem Phân trang trong Octopart API.
Dùng thử trên trình duyệt
Bạn có thể chạy và khám phá các truy vấn theo cách tương tác trong Nitro IDE, có sẵn trực tiếp tại endpoint GraphQL:
https://api.nexar.com/graphql
Để khám phá schema một cách trực quan, hãy mở trình duyệt Voyager:
https://api.nexar.com/ui/voyager
Các bước tiếp theo
-
Ủy quyền – thời hạn hết hạn token, yêu cầu lại token và quản lý thông tin xác thực
-
Tìm kiếm – khớp MPN, tìm kiếm theo từ khóa, bộ lọc, khu vực và tiền tệ
-
Truy vấn mẫu – các truy vấn sẵn sàng chạy cho các trường hợp sử dụng phổ biến