Fedex Logo

Giới thiệu

Các API của FedEx hỗ trợ phương thức xác thực bằng OAuth 2.0 (mã thông báo của người sở hữu) để ủy quyền các yêu cầu API ứng dụng của bạn bằng tài nguyên của FedEx. Mã thông báo truy cập OAuth này cần được tạo sau mỗi 60 phút và cung cấp với mỗi giao dịch API để xác thực và cho phép bạn truy cập vào tài nguyên của FedEx.

Chi tiết về API Ủy quyền

API này cho phép bạn ủy quyền các yêu cầu API và là công cụ cần thiết để xác thực các tài nguyên FedEx. Phần sau đây mô tả các điều kiện tiên quyết đối với API này:

Khi bạn đăng ký vào FedEx Developer Portal, FedEx cung cấp một tổ hợp gồm ID khách hàng (Mã API) và Mã bí mật của khách hàng (Mã khóa bí mật) để xác thực các yêu cầu API cho dự án của bạn. Mỗi dự án thuộc tổ chức của bạn được liên kết với một tổ hợp gồm ID khách hàng và Mã bí mật của khách hàng, được gọi là thông tin xác thực API.

Lưu ý: Khách hàng (Nội bộ, Tương thích hoặc Chính/Phụ độc quyền) có thể liên hệ với đại diện FedEx để nhận Mã API và Mã khóa bí mật.

Để cung cấp thêm một lớp bảo mật, khách hàng (Nội bộ, Tương thích hoặc Chính/Phụ độc quyền) của FedEx® có thể gửi Mã phụ (Mã bí mật của khách hàng) và Mã bí mật phụ (Mật khẩu của khách hàng) cùng Mã API và Mã khóa bí mật để tạo mã thông báo OAuth. Mã thông báo này được sử dụng trong mọi yêu cầu API để xác thực.

Bạn có thể tạo lại Mã khóa bí mật đã quên từ trang Dự án trên FedEx Developer Portal.

Lưu ý: Việc tạo mã khóa mới sẽ làm thay đổi mã trong ứng dụng của bạn.

Thông tin quan trọng trong tài liệu này:

  • Mã khách hàng là Mã API
  • Mã bí mật của khách hàng là Mã khóa bí mật
  • Mã phụ là Mã khách hàng
  • Mã bí mật phụ là Mật khẩu của khách hàng

Thông tin xác thực API phục vụ các mục đích sau:

  • Xác định dự án đang gọi API.
  • Ủy quyền truy cập vào API được kích hoạt trong dự án của bạn.

Cách nhận Thông tin xác thực API

Thông tin xác thực được tạo dựa trên thông tin đầu vào trong FedEx Developer Portal:

  • ID khách hàng – Mã API (ID khách hàng) được tạo khi dự án được tạo trên FedEx Developer Portal. Bạn cũng có thể xem Mã API liên kết với dự án trên trang Tổng quan dự án.
  • Mã bí mật của khách hàng – Bạn sẽ thấy Mã khóa bí mật (Mã bí mật của khách hàng) trên trang xác nhận sau khi dự án được tạo trên FedEx Developer Portal. Nếu cần, bạn cũng có thể tạo lại Mã khóa bí mật trên trang Tổng quan dự án.

Lưu ý: Các khách hàng (Nội bộ, Tương thích hoặc Chính/Phụ độc quyền) của FedEx® cần gửi Mã phụ (Mã bí mật của khách hàng) và Mã bí mật phụ (Mật khẩu của khách hàng) cùng Mã API và Mã khóa bí mật để tạo mã thông báo OAuth. Hãy tham khảo API Đăng ký thông tin xác thực để biết cách nhận Mã phụ và Mã bí mật phụ.

Phương thức hoạt động của API Ủy quyền

Ủy quyền cho API

Sau khi bạn có được thông tin xác thực API trên FedEx Developer Portal, điểm cuối OAuth sẽ được sử dụng để nhận mã thông báo truy cập làm thông tin xác thực với mỗi giao dịch API.

Sau đây là các thông tin đầu vào cần thiết liên kết với yêu cầu OAuth:

  • grant_type – Loại khách hàng. (Các giá trị hợp lệ: client_credentials, csp_credentials, client_pc_credentials)
  • client_id – Tức là Mã API của dự án.
  • client_secret – Tức là Mã khóa bí mật của API dự án.

Đối với khách hàng Nội bộ, Tương thích hoặc Chính/Phụ độc quyền của FedEx®, hãy gửi thêm các thông tin đầu vào bên dưới:

  • child_id – Mã khách hàng được trả về thông qua yêu cầu ở API Đăng ký thông tin xác thực.
  • child_secret – Mật khẩu của khách hàng được trả về thông qua yêu cầu ở API Đăng ký thông tin xác thực

Kết quả của yêu cầu này sẽ trả về thông tin bên dưới:

  • access_token – Mã thông báo OAuth được mã hóa cần sử dụng trong giao dịch API.
  • token_type – Loại mã thông báo. Trong trường hợp này, đó là xác thực người sở hữu.
  • expires_in – Thời gian hết hiệu lực của mã thông báo theo mili giây. Một giờ là thời gian hết hiệu lực thông thường của mã thông báo.
  • scope – Phạm vi ủy quyền mà người tiêu dùng nhận được.

Ví dụ

Yêu cầu:

POST /oauth/token HTTP/1.1
grant_type= client_credentials&client_id=ID khách hàng của bạn&client_secret=Mã khóa bí mật của bạn

Phản hồi:

{ ″access_token″: ″eyJhbGciOiJIUzI1NiIsInR5cCI6IkpX……..″,
″token_type″: ″bearer″,
″expires_in″: 3600,
″scope″: ″CXS″
}

Yêu cầu đối với khách hàng Internal hoặc Tương Thích của FedEx®:

POST /oauth/token HTTP/1.1
grant_type= csp_credentials&client_id=ID khách hàng&client_secret= Mã bí mật của khách hàng&child_key=Mã phụ&child_secret=Mã bí mật phụ

Phản hồi:

{ ″access_token″: ″eyJhbGciOiJIUzI1NiIsInR5cCI6IkpX……..″,
″token_type″: ″bearer″,
″expires_in″: 3600,
″scope″: ″CXS″
}

Yêu cầu đối với khách hàng Chính/Phụ độc quyền của FedEx®:

POST /oauth/token HTTP/1.1
grant_type= client_pc_credentials&client_id=Client ID&client_secret= Client secret&child_key=Child key&child_secret=Child Secret

Phản hồi:

{ ″access_token″: ″eyJhbGciOiJIUzI1NiIsInR5cCI6IkpX……..″,
″token_type″: ″bearer″,
″expires_in″: 3600,
″scope″: ″CXS″
}

Lưu ý: Mã thông báo truy cập sẽ hết hạn sau một giờ và có thể tạo lại bằng yêu cầu POST gửi tới điểm cuối oauth/mã thông báo.

CLOSE

Response

Copy