Tài liệu đầy đủ về Adapty Developer CLI

Đang dùng trợ lý AI? Có sẵn Adapty CLI skill để giúp các LLM làm việc với CLI.

Bài viết này liệt kê tất cả các lệnh Adapty CLI cùng với các đối số, cờ và giá trị được chấp nhận.

Để thiết lập xác thực và quản lý token, xem Xác thực.

Cờ toàn cục

Các cờ này có thể dùng với tất cả các lệnh.

CờMô tả
--jsonXuất dưới dạng JSON thay vì văn bản định dạng
--helpHiển thị trợ giúp lệnh

Tất cả lệnh list cũng chấp nhận cờ phân trang:

CờMặc địnhMô tả
--page1Số trang
--page-size20Số mục mỗi trang (tối đa: 100)

Apps

Quản lý các ứng dụng trong tài khoản Adapty của bạn. Để cấu hình qua Dashboard, xem App settings.

adapty apps list

Liệt kê tất cả ứng dụng trong tài khoản Adapty của bạn.

adapty apps list

Chấp nhận cờ phân trang.

adapty apps get

Lấy thông tin chi tiết của một ứng dụng cụ thể.

adapty apps get <app-id>
Đối sốMô tả
app-idApp ID (UUID)

adapty apps create

Tạo ứng dụng mới.

adapty apps create --title "My App" --platform ios --apple-bundle-id com.example.app
CờBắt buộcMô tả
--titleTên ứng dụng
--platformNền tảng: ios hoặc android. Lặp lại để dùng cả hai: --platform ios --platform android
--apple-bundle-idBắt buộc khi dùng --platform iosApple bundle ID
--google-bundle-idBắt buộc khi dùng --platform androidGoogle bundle ID

adapty apps update

Cập nhật ứng dụng hiện có.

adapty apps update <app-id> --title "New Name"
Đối sốMô tả
app-idApp ID (UUID)
CờMô tả
--titleTên ứng dụng mới
--apple-bundle-idApple bundle ID mới
--google-bundle-idGoogle bundle ID mới

Cần có ít nhất một cờ. --platform không thể thay đổi sau khi tạo.

Mức độ truy cập

adapty access-levels list

Liệt kê tất cả mức độ truy cập của một ứng dụng.

adapty access-levels list --app <app-id>
CờBắt buộcMô tả
--appApp ID (UUID)

Chấp nhận cờ phân trang.

adapty access-levels get

Lấy thông tin chi tiết của một mức độ truy cập cụ thể.

adapty access-levels get --app <app-id> <access-level-id>
Đối sốMô tả
access-level-idAccess level ID (UUID)
CờBắt buộcMô tả
--appApp ID (UUID)

adapty access-levels create

Tạo mức độ truy cập mới.

adapty access-levels create --app <app-id> --sdk-id "pro" --title "Pro"
CờBắt buộcMô tả
--appApp ID (UUID)
--sdk-idĐịnh danh dùng trong code ứng dụng để kiểm tra quyền truy cập (ví dụ: "pro" hoặc "premium")
--titleNhãn hiển thị trên Adapty dashboard

adapty access-levels update

Cập nhật mức độ truy cập hiện có.

adapty access-levels update --app <app-id> <access-level-id> --title "Pro Access"
Đối sốMô tả
access-level-idAccess level ID (UUID)
CờBắt buộcMô tả
--appApp ID (UUID)
--titleNhãn hiển thị mới

--sdk-id không thể thay đổi sau khi tạo.

Sản phẩm

adapty products list

Liệt kê tất cả sản phẩm của một ứng dụng.

adapty products list --app <app-id>
CờBắt buộcMô tả
--appApp ID (UUID)

Chấp nhận cờ phân trang.

adapty products get

Lấy thông tin chi tiết của một sản phẩm cụ thể.

adapty products get --app <app-id> <product-id>
Đối sốMô tả
product-idProduct ID (UUID)
CờBắt buộcMô tả
--appApp ID (UUID)

adapty products create

Tạo sản phẩm mới.

Các ID sản phẩm trong cửa hàng (--ios-product-id, --android-product-id, --android-base-plan-id) không thể thay đổi sau khi tạo. Để dùng ID sản phẩm khác trong cửa hàng, hãy tạo sản phẩm mới.

adapty products create --app <app-id> --title "Monthly" --access-level-id <access-level-id> --period monthly --ios-product-id com.example.monthly
CờBắt buộcMô tả
--appApp ID (UUID)
--titleTên sản phẩm
--access-level-idID mức độ truy cập (UUID) mà sản phẩm này mở khóa
--periodChu kỳ gói đăng ký: weekly, monthly, 2_months, 3_months, 6_months, yearly, lifetime
--ios-product-idCần ít nhất một nền tảngProduct ID từ App Store Connect
--android-product-idCần ít nhất một nền tảngProduct ID từ Google Play Console
--android-base-plan-idBắt buộc khi dùng --android-product-id trừ khi --period lifetimeBase plan ID từ Google Play Console

adapty products update

Cập nhật sản phẩm hiện có.

Các ID sản phẩm trong cửa hàng (--ios-product-id, --android-product-id) không thể thay đổi sau khi tạo và không có trong lệnh này. Để dùng ID sản phẩm khác trong cửa hàng, hãy tạo sản phẩm mới.

adapty products update --app <app-id> <product-id> --title "Monthly" --access-level-id <access-level-id>
Đối sốMô tả
product-idProduct ID (UUID)
CờBắt buộcMô tả
--appApp ID (UUID)
--titleKhôngTên sản phẩm
--access-level-idKhôngID mức độ truy cập (UUID) mà sản phẩm này mở khóa

Paywall

adapty paywalls list

Liệt kê tất cả paywall của một ứng dụng.

adapty paywalls list --app <app-id>
CờBắt buộcMô tả
--appApp ID (UUID)

Chấp nhận cờ phân trang.

adapty paywalls get

Lấy thông tin chi tiết của một paywall cụ thể.

adapty paywalls get --app <app-id> <paywall-id>
Đối sốMô tả
paywall-idPaywall ID (UUID)
CờBắt buộcMô tả
--appApp ID (UUID)

adapty paywalls create

Tạo paywall mới.

adapty paywalls create --app <app-id> --title "Default Paywall" --product-id <product-id>
CờBắt buộcMô tả
--appApp ID (UUID)
--titleTên paywall
--product-idID sản phẩm (UUID). Lặp lại cho nhiều sản phẩm: --product-id <id1> --product-id <id2>

adapty paywalls update

Thay thế toàn bộ các trường của một paywall hiện có.

Khi paywall đã được liên kết với một placement, không thể thay đổi sản phẩm của nó. Để dùng sản phẩm khác trong paywall đang hoạt động, hãy tạo paywall mới và cập nhật placement để trỏ đến paywall đó.

adapty paywalls update --app <app-id> <paywall-id> --title "Default Paywall" --product-id <product-id>

Lệnh này thay thế toàn bộ các trường của paywall, bao gồm cả danh sách sản phẩm đầy đủ.

Đối sốMô tả
paywall-idPaywall ID (UUID)
CờBắt buộcMô tả
--appApp ID (UUID)
--titleTên paywall
--product-idID sản phẩm (UUID). Lặp lại cho nhiều sản phẩm: --product-id <id1> --product-id <id2>

adapty paywalls placements

Liệt kê tất cả placement đang dùng một paywall nhất định.

adapty paywalls placements --app <app-id> <paywall-id>
Đối sốMô tả
paywall-idPaywall ID (UUID)
CờBắt buộcMô tả
--appApp ID (UUID)

Dùng lệnh này trước khi thay đổi paywall để xem các placement nào sẽ bị ảnh hưởng.

Placement

adapty placements list

Liệt kê tất cả placement của một ứng dụng.

adapty placements list --app <app-id>
CờBắt buộcMô tả
--appApp ID (UUID)

Chấp nhận cờ phân trang.

adapty placements get

Lấy thông tin chi tiết của một placement cụ thể.

adapty placements get --app <app-id> <placement-id>
Đối sốMô tả
placement-idPlacement ID (UUID)
CờBắt buộcMô tả
--appApp ID (UUID)

Kết quả trả về chứa mảng audiences. Mỗi phần tử có dạng {segment_ids, paywall_id, priority}. Đối tượng mặc định có segment_ids: [] và giá trị ưu tiên cao nhất (được đánh giá cuối cùng). Đầu ra dạng văn bản cũng hiển thị Paywall ID ở cấp cao nhất, lấy từ đối tượng mặc định để tiện tham khảo. --json trả về dữ liệu API thô không thay đổi.

adapty placements create

Tạo placement mới.

adapty placements create --app <app-id> --title "Main" --developer-id "main" --audiences '[{"segment_ids":[],"paywall_id":"<paywall-id>","priority":0}]'
CờBắt buộcMô tả
--appApp ID (UUID)
--titleTên placement
--developer-idĐịnh danh chuỗi dùng trong code ứng dụng để yêu cầu placement này
--audiencesMột trong haiMảng JSON gồm các phần tử {segment_ids, paywall_id, priority}. Xem Cấu trúc Audiences
--paywall-idMột trong haiKhông còn dùng. ID paywall (UUID). Được phía client chuyển đổi thành một đối tượng mặc định

Truyền đúng một trong --audiences hoặc --paywall-id. Truyền cả hai hoặc không truyền cái nào sẽ báo lỗi.

--paywall-id không còn được khuyến nghị và sẽ bị xóa. Khi truyền vào, CLI sẽ in cảnh báo ra stderr và chuyển đổi giá trị thành một đối tượng mặc định. Hãy dùng --audiences cho các tự động hóa mới.

adapty placements update

Thay thế toàn bộ các trường của một placement hiện có.

adapty placements update --app <app-id> <placement-id> --title "Main" --developer-id "main" --audiences '[{"segment_ids":[],"paywall_id":"<paywall-id>","priority":0}]'

Lệnh này thay thế toàn bộ các trường của placement, bao gồm cả danh sách audiences đầy đủ.

Đối sốMô tả
placement-idPlacement ID (UUID)
CờBắt buộcMô tả
--appApp ID (UUID)
--titleTên placement
--developer-idĐịnh danh chuỗi dùng trong code ứng dụng để yêu cầu placement này
--audiencesMột trong haiMảng JSON gồm các phần tử {segment_ids, paywall_id, priority}. Xem Cấu trúc Audiences
--paywall-idMột trong haiKhông còn dùng. ID paywall (UUID). Thay thế toàn bộ audiences bằng một đối tượng mặc định

Truyền --paywall-id sẽ ghi đè toàn bộ audiences của placement. Các audiences theo phân khúc sẽ bị xóa. Để giữ lại chúng, hãy dùng --audiences và thêm đầy đủ các phần tử bạn muốn giữ.

Cấu trúc Audiences

Cờ --audiences nhận một mảng JSON. Mỗi phần tử có các trường sau:

TrườngKiểuMô tả
segment_idsstring[]Các ID phân khúc được nhắm mục tiêu bởi đối tượng này. Độ dài 0 hoặc 1. Mảng rỗng đánh dấu đối tượng mặc định — dự phòng cho người dùng không khớp với phân khúc nào khác
paywall_idstringID paywall (UUID) hiển thị cho người dùng trong đối tượng này
prioritynumberBắt đầu từ 0, không trùng nhau trong cùng placement. Audiences được đánh giá từ thấp đến cao; đối tượng mặc định phải có giá trị cao nhất

Một placement phải có đúng một đối tượng mặc định.

Ví dụ với một đối tượng có mục tiêu và một đối tượng mặc định:

adapty placements update <placement-id> --app <app-id> --title "Main" --developer-id "main" \
  --audiences '[{"segment_ids":["<vip-segment-id>"],"paywall_id":"<vip-paywall-id>","priority":0},{"segment_ids":[],"paywall_id":"<default-paywall-id>","priority":1}]'

Để thay đổi paywall trên nhiều placement mà không mất cấu hình định tuyến theo phân khúc:

  1. Tìm các placement bị ảnh hưởng:

    adapty paywalls placements --app <app-id> <old-paywall-id>
  2. Với mỗi placement, đọc toàn bộ mảng audiences:

    adapty placements get --app <app-id> <placement-id> --json
  3. Thay thế các giá trị paywall_id tương ứng ở phía client.

  4. Ghi lại payload đã chỉnh sửa:

    adapty placements update --app <app-id> <placement-id> --title "<title>" --developer-id "<developer-id>" --audiences '<modified-payload>'

Phân khúc

Phân khúc chỉ có thể đọc qua CLI. Tạo và chỉnh sửa chúng trên Adapty dashboard. Dùng các lệnh này để tra cứu ID phân khúc khi soạn audiences cho placement.

adapty segments list

Liệt kê tất cả phân khúc của một ứng dụng.

adapty segments list --app <app-id>
CờBắt buộcMô tả
--appApp ID (UUID)

Chấp nhận cờ phân trang.

adapty segments get

Lấy thông tin chi tiết của một phân khúc cụ thể.

adapty segments get --app <app-id> <segment-id>
Đối sốMô tả
segment-idSegment ID (UUID)
CờBắt buộcMô tả
--appApp ID (UUID)

Kết quả trả về chứa id, titledescription. Các quy tắc lọc không được hiển thị qua API này.

Xác thực

LệnhMô tả
adapty auth loginXác thực qua trình duyệt bằng device flow
adapty auth logoutXóa thông tin đăng nhập đã lưu ở máy cục bộ
adapty auth whoamiXác minh token với máy chủ và hiển thị thông tin người dùng
adapty auth statusHiển thị trạng thái xác thực cục bộ mà không gọi máy chủ
adapty auth revokeThu hồi token ở phía máy chủ và xóa ở máy cục bộ

Xem Xác thực để biết chi tiết từng lệnh.