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 lập trình vào cơ sở dữ liệu Octopart – linh kiện, giá cả, mức tồn kho, chào hàng từ nhà phân phối, thời gian giao hàng từ nhà máy và nhiều thông tin khác – 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 bắt đầu từ con số 0 và thực hiện truy vấn Octopart API đầu tiên chỉ trong vài phút.
Điều kiện tiên quyết
Mộ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ể đăng ký các chương trình để truy cập Altium 365 API, Octopart API, Altium Designer SDK, 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 grant:
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ẽ có dạng như sau:
{
"access_token": "eyJhbGci...",
"expires_in": 86400,
"token_type": "Bearer"
}
Sao chép giá trị access_token. Token sẽ hết hạn sau một giờ – xem phần Authentication để 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 đến endpoint bằ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 kết quả – xem Pagination in Octopart API.
Thử trong 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 GraphQL endpoint:
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
-
Authorization – thời điểm hết hạn token, yêu cầu lại token và quản lý thông tin xác thực
-
Search – đối sánh MPN, tìm kiếm từ khóa, bộ lọc, khu vực và tiền tệ
-
Example Queries – các truy vấn sẵn sàng chạy cho những trường hợp sử dụng phổ biến