Sử dụng API phát hành trên Cửa hàng Chrome trực tuyến

Tổng quan

API Phát hành trên Cửa hàng Chrome trực tuyến cung cấp một tập hợp các điểm cuối REST để tạo, cập nhật và phát hành các mục theo phương thức lập trình trong Cửa hàng Chrome trực tuyến.

Thiết lập ban đầu

Trước khi có thể bắt đầu thực hiện lệnh gọi REST trên Cửa hàng Chrome trực tuyến, bạn cần bật API Cửa hàng Chrome trực tuyến, định cấu hình màn hình xin phép bằng OAuth và truy xuất khoá truy cập API. Các phần sau đây sẽ hướng dẫn bạn về quy trình này.

Bật API Cửa hàng Chrome trực tuyến

  1. Chuyển đến Google Cloud Console.
  2. Tạo dự án mới hoặc chọn một dự án hiện có. Tạo dự án mới trong Google Console
  3. Trong thanh tìm kiếm, hãy nhập “API Cửa hàng Chrome trực tuyến”.
  4. Bật API Cửa hàng Chrome trực tuyến.

Định cấu hình màn hình xin phép bằng OAuth

  1. Chuyển đến màn hình xin phép bằng OAuth.
  2. Chọn External (Bên ngoài) rồi chọn Create (Tạo). Tạo màn hình yêu cầu đồng ý OAuth
  3. Điền vào các trường Thông tin ứng dụng bắt buộc (liệt kê bên dưới), sau đó nhấp vào Lưu và tiếp tục.
    • Tên ứng dụng.
    • Email hỗ trợ người dùng.
    • Email liên hệ của nhà phát triển.
  4. Bỏ qua phạm vi. Nhấp vào Lưu rồi nhấp vào Tiếp tục.
  5. Thêm địa chỉ email của bạn vào phần Người dùng thử nghiệm, sau đó nhấp vào Lưu rồi nhấp vào Tiếp tục.

Sử dụng khoá truy cập

  1. Chuyển đến mục Thông tin xác thực.
  2. Nhấp vào Tạo thông tin xác thực, sau đó nhấp vào Mã ứng dụng khách OAuth. Tạo thông tin xác thực
  3. Đối với Loại ứng dụng, chọn Ứng dụng trên máy tính.
  4. Điền tên rồi nhấp vào Tạo.

Bảng điều khiển sẽ cung cấp mã ứng dụng khách và mật khẩu ứng dụng khách.

Kiểm thử ứng dụng OAuth

Bạn có thể truy xuất mã truy cập để làm việc với API. Ví dụ: nhập URL này vào trình duyệt, thay thế $CLIENT_ID bằng URL cho ứng dụng của bạn:

https://accounts.google.com/o/oauth2/auth?response_type=code&scope=https://www.googleapis.com/auth/chromewebstore&client_id=$CLIENT_ID&redirect_uri=urn:ietf:wg:oauth:2.0:oob

Bạn sẽ thấy một trang yêu cầu bạn chấp nhận cấp quyền cho phạm vi được yêu cầu.

Giao diện người dùng yêu cầu quyền

Nhấp vào Chấp nhận và sao chép mã. Hàm này có dạng như sau:

Giao diện người dùng để sao chép mã

Sử dụng giá trị này để yêu cầu mã truy cập. Ví dụ: khi sử dụng curl, bạn có thể lấy mã truy cập bằng cách thực thi lệnh sau (thay thế các giá trị của $CLIENT_ID, $CLIENT_SECRET và $CODE bằng các giá trị nêu trên):

> curl "https://accounts.google.com/o/oauth2/token" -d \
"client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET&code=$CODE&grant_type=authorization_code&redirect_uri=urn:ietf:wg:oauth:2.0:oob"

Thao tác này sẽ trả về một kết quả như:

{
  "access_token" : "ya29...",
  "expires_in" : 3600,
  "refresh_token" : "1/rwn...",
  "scope": "https://www.googleapis.com/auth/chromewebstore",
  "token_type" : "Bearer",
}

Giờ đây, bạn có thể sử dụng access_token để gọi API. Bạn cũng có thể sử dụng mã làm mới để nhận mã truy cập trong tương lai. Xin lưu ý rằng mã thông báo sẽ hết hạn sau một giờ.

Sử dụng API

Sau khi bạn có mã truy cập, tiện ích của bạn có thể sử dụng API phát hành trên Cửa hàng Chrome trực tuyến. Có các điểm cuối để tạo một mục mới, cập nhật mục hiện có và xuất bản một mục.

Dưới đây là danh sách những điều cần cân nhắc khi sử dụng API Phát hành:

Tìm hiểu thêm về API phát hành trên Cửa hàng Chrome trực tuyến tại đây.

Tải gói hàng lên để tạo một mặt hàng mới trong cửa hàng

Endpoint: https://www.googleapis.com/upload/chromewebstore/v1.1/items
Type: POST
Header Parameters: 
  $TOKEN: the access token
Body content: the package file to upload

Nhập ví dụ sau vào dòng lệnh:

> curl \
-H "Authorization: Bearer $TOKEN"  \
-H "x-goog-api-version: 2" \
-X POST \
-T $FILE_NAME \
-v \
https://www.googleapis.com/upload/chromewebstore/v1.1/items

Tải một gói lên để cập nhật mặt hàng hiện có trong cửa hàng

Endpoint: https://www.googleapis.com/upload/chromewebstore/v1.1/items/$ITEM_ID
Type: PUT
Header Parameters: 
  $TOKEN: the access token
Body content: the package file to upload

$ITEM_ID là mã nhận dạng của mặt hàng hiện có trên Cửa hàng trực tuyến.

> curl \
-H "Authorization: Bearer $TOKEN"  \
-H "x-goog-api-version: 2" \
-X PUT \
-T $FILE_NAME \
-v \
https://www.googleapis.com/upload/chromewebstore/v1.1/items/$ITEM_ID

Xuất bản một mục công khai

Endpoint: https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish
Type: POST
Header Parameters: 
  $TOKEN: the access token
> curl \
-H "Authorization: Bearer $TOKEN"  \
-H "x-goog-api-version: 2" \
-H "Content-Length: 0" \
-X POST \
-v \
https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish

Xuất bản một mục cho người kiểm tra đáng tin cậy

Endpoint: https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish?publishTarget=trustedTesters
Type: POST
Header Parameters: 
  $TOKEN: the access token
> curl \
-H "Authorization: Bearer $TOKEN"  \
-H "x-goog-api-version: 2" \
-H "Content-Length: 0" \
-X POST \
-v \
https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID/publish?publishTarget=trustedTesters

Kiểm tra trạng thái tải lên của một mục

Endpoint: https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID?projection=DRAFT
Type: GET
Header Parameters: 
  $TOKEN: the access token
curl \
-H "Authorization: Bearer $TOKEN"  \
-H "x-goog-api-version: 2" \
-H "Content-Length: 0" \
-H "Expect:" \
-X GET \
-v \
https://www.googleapis.com/chromewebstore/v1.1/items/$ITEM_ID?projection=DRAFT