Lompat ke konten

Perangkat

Perangkat merepresentasikan instalasi individu dari aplikasi Anda yang dikelola oleh Capgo. Fitur Perangkat API memungkinkan Anda untuk mengikuti dan mengelola perangkat, termasuk paket (versi), saluran, dan status pembaruan.

Setiap perangkat memiliki karakteristik dan keadaan unik:

  • Platform: iOS, Android, atau Electron
  • Paket (versi): Paket saat ini (versi) dan versi pembangunan asli
  • Lingkungan: Produksi atau pengembangan, emulator atau perangkat fisik
  • Saluran: Pengaturan saluran update saat ini
  • ID Kustom: Identifikasi opsional untuk keperluan pelacakan Anda sendiri

Praktik Terbaik

Praktik Terbaik
  1. Pengikatan Paket (versi)Monitor pengadopsian paket perangkat (versi) untuk memastikan peningkatan update
  2. Pengelolaan SaluranTetapkan perangkat ke saluran yang tepat berdasarkan kebutuhan tes
  3. Ketelitian LingkunganTangani lingkungan yang berbeda (prod/dev/emulator) dengan tepat
  4. Identifikasi KustomGunakan ID kustom untuk mengintegrasikan dengan sistem yang ada

https://api.capgo.app/device/

Hubungkan perangkat ke bundle (versi) atau saluran tertentu.

interface DeviceLink {
app_id: string
device_id: string
version_id?: string // bundle (version) name
channel?: string // channel name
}
Jendela Terminal
curl -X POST \
-H "authorization: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"app_id": "app_123",
"device_id": "device_456",
"channel": "beta"
}' \
https://api.capgo.app/device/
{
"status": "ok"
}

https://api.capgo.app/device/

Mengambil informasi perangkat. Menggunakan pengulangan kursor untuk pengambilan efisien daftar perangkat yang besar.

  • app_id: Wajib. ID aplikasi Anda
  • device_id: Opsional. ID perangkat spesifik untuk mengambil perangkat tunggal
  • cursor: Opsional. Kursor dari respons sebelumnya untuk pengulangan
  • limit: Opsional. Jumlah perangkat per halaman (default: 50)
Jendela Terminal
# Get all devices (first page)
curl -H "authorization: your-api-key" \
"https://api.capgo.app/device/?app_id=app_123"
# Get specific device
curl -H "authorization: your-api-key" \
"https://api.capgo.app/device/?app_id=app_123&device_id=device_456"
# Get next page using cursor
curl -H "authorization: your-api-key" \
"https://api.capgo.app/device/?app_id=app_123&cursor=2024-01-01T00:00:00Z|device_456"

Ketika meminta beberapa perangkat (tidak ada parameter): device_id Salin ke clipboard

interface DeviceListResponse {
data: Device[];
nextCursor?: string; // Pass this as 'cursor' param to get next page
hasMore: boolean; // true if more pages available
}
interface Device {
updated_at: string;
device_id: string;
custom_id: string;
version?: number; // bundle (version) id
version_name: string | null; // bundle (version) name
channel?: string;
app_id: string;
platform: "ios" | "android" | "electron";
plugin_version: string;
os_version: string;
version_build: string;
is_prod: boolean;
is_emulator: boolean;
key_id: string | null; // First 4 chars of encryption key (e.g., "MIIB")
}

Salin ke clipboard device_id Contoh Respon (Daftar)

interface Device {
updated_at: string;
device_id: string;
custom_id: string;
version?: number; // bundle (version) id
version_name: string | null; // bundle (version) name
channel?: string;
app_id: string;
platform: "ios" | "android" | "electron";
plugin_version: string;
os_version: string;
version_build: string;
is_prod: boolean;
is_emulator: boolean;
key_id: string | null; // First 4 chars of encryption key (e.g., "MIIB")
}
{
"data": [
{
"device_id": "device_456",
"custom_id": "test-device-1",
"version": 1,
"version_name": "1.0.0",
"app_id": "app_123",
"platform": "ios",
"plugin_version": "5.0.0",
"os_version": "17.0",
"version_build": "1",
"is_prod": true,
"is_emulator": false,
"updated_at": "2024-01-01T00:00:00Z"
}
],
"nextCursor": "2024-01-01T00:00:00Z|device_456",
"hasMore": true
}
{
"device_id": "device_456",
"custom_id": "test-device-1",
"version": 1,
"version_name": "1.0.0",
"app_id": "app_123",
"platform": "ios",
"plugin_version": "5.0.0",
"os_version": "17.0",
"version_build": "1",
"is_prod": true,
"is_emulator": false,
"updated_at": "2024-01-01T00:00:00Z",
"channel": "production"
}

https://api.capgo.app/device/

Melepaskan perangkat dari pengaturan saluran override-nya. Ini mengembalikan perangkat untuk menggunakan saluran default-nya.

Parameter Pemintaan

Salin ke clipboard
interface Device {
device_id: string
app_id: string
}

Judul Bagian “Contoh Permintaan”

Jendela Terminal
Salin ke clipboard
curl -X DELETE \
-H "authorization: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"app_id": "app_123",
"device_id": "device_456"
}' \
https://api.capgo.app/device/

Judul Bagian “Respons Berhasil”

Salin ke clipboard
{
"status": "ok"
}

Skenario kesalahan umum dan responsnya:

// Device not found
{
"error": "Device not found",
"status": "KO"
}
// Invalid bundle (version)
{
"error": "Version not found",
"status": "KO"
}
// Invalid channel
{
"error": "Channel not found",
"status": "KO"
}
// Permission denied
{
"error": "Insufficient permissions to manage devices",
"status": "KO"
}
  1. Pendaftaran Perangkat Beta
{
"app_id": "app_123",
"device_id": "device_456",
"channel": "beta"
}
  1. Tetapkan Versi
{
"app_id": "app_123",
"device_id": "device_456",
"version_id": "1.1.0"
}
  1. Kembalikan ke Saluran Default
// Use DELETE endpoint to remove overrides
  1. Monitoring: Periksa secara teratur status perangkat dan distribusi paket (versi)
  2. Testing: Gunakan ID khusus untuk mengidentifikasi perangkat uji dengan mudah
  3. Troubleshooting: Ikuti pembaruan perangkat dan pengaturan saluran
  4. Pengendalian Versi Asli: Periksa versi aplikasi asli untuk memastikan konsistensi

Jika Anda menggunakan Perangkat untuk merencanakan routing saluran dan peluncuran tahap demi tahap, hubungkannya dengan Saluran untuk detail implementasi di Saluran, Saluran untuk detail implementasi di Saluran, Saluran untuk detail implementasi di Saluran, Solusi Uji Beta untuk alur kerja produk di Solusi Uji Beta, dan Solusi Target Versi untuk alur kerja produk di Solusi Target Versi.