Geräte
Einen Setup-Befehl mit den Installationsanweisungen und der vollständigen Markdown-Anleitung für diesen Plugin erstellen.
Geräte stellen einzelne Installationen Ihrer App dar, die von Capgo verwaltet werden. Die Geräte API ermöglicht es Ihnen, Geräte zu verfolgen und zu verwalten, einschließlich ihrer Pakete (Versionen), Kanäle und Update-Status.
Geräte verstehen
Jedes Gerät hat einzigartige Merkmale und Zustände:Plattform
- : iOS, Android oder ElectronBundle (Version)
- : Aktuelle Bundle (Version) und native BuildversionUmgebung
- : Produktion oder Entwicklung, Emulator oder physisches GerätKanal
- : Aktuelle UpdatekanalzuweisungDevices that haven’t connected to __CAPGO_KEEP_0__ within this period will be automatically removed from the system. Active devices are continuously tracked as they check for updates.
- Benutzerdefinierte ID: Optionaler Bezeichner für Ihre eigenen Trackingzwecke
Gute Praktiken
Abschnitt mit dem Titel “Gute Praktiken”- Paket (Version) Tracking: Überwachen Sie die Verbreitung von Gerätepaket (Version) zur Gewährleistung der Aktualisierungsaufnahme
- Kanalverwaltung: Zuteilen Sie Geräte an die entsprechenden Kanäle basierend auf den Testbedürfnissen
- Umweltbewusstsein: Handhaben Sie unterschiedliche Umgebungen (prod/dev/emulator) entsprechend
- Benutzerdefinierte Identifizierung: Verwenden Sie benutzerdefinierte IDs, um mit Ihren bestehenden Systemen zu integrieren
Endpunkte
Abschnitt mit dem Titel „Endpunkte”https://api.capgo.app/device/
Ein Gerät mit einer bestimmten Paketversion oder einem Kanal verbinden.
Anforderungskörper
Abschnitt mit dem Titel „Anforderungskörper”interface DeviceLink { app_id: string device_id: string version_id?: string // bundle (version) name channel?: string // channel name}Beispielanfrage
Abschnitt mit dem Titel „Beispielanfrage”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/Erfolgsantwort
Abschnitt mit dem Titel „Erfolgsantwort”{ "status": "ok"}https://api.capgo.app/device/
Geräteinformationen abrufen. Verwendet eine Cursor-basierte Paginierung für eine effiziente Abfrage großer Gerätelisten.
Abfrageparameter
Abschnitt mit dem Titel „Abfrageparameter”app_id: Pflichtfeld. Die ID Ihres Appsdevice_id: Optional. Spezifische Geräte-ID zum Abrufen eines einzelnen Gerätscursor: Optional. Cursor aus der vorherigen Antwort für die Paginierunglimit: Optional. Anzahl der Geräte pro Seite (Standard: 50)
Beispielanfragen
Abschnitt: "Beispielanfragen"# Get all devices (first page)curl -H "authorization: your-api-key" \ "https://api.capgo.app/device/?app_id=app_123"
# Get specific devicecurl -H "authorization: your-api-key" \ "https://api.capgo.app/device/?app_id=app_123&device_id=device_456"
# Get next page using cursorcurl -H "authorization: your-api-key" \ "https://api.capgo.app/device/?app_id=app_123&cursor=2024-01-01T00:00:00Z|device_456"Antworttyp (Liste)
Abschnitt: "Antworttyp (Liste)"Wenn mehrere Geräte (kein Parameter) angefordert werden: device_id Auf die Zwischenablage kopieren
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")}Abschnitt: "Antworttyp (Einzelgerät)"
Wenn ein bestimmtes Gerät mitAngabe angefordert wird: device_id parameter, gibt das Geräteobjekt direkt zurück:
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")}Beispielantwort (Liste)
Abschnitt mit dem Titel “Beispielantwort (Liste)”{ "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}Beispielantwort (Einzelnes Gerät)
Abschnitt mit dem Titel “Beispielantwort (Einzelnes Gerät)”{ "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/
Entkoppelt ein Gerät von seinem Kanal-Übertrag. Dies setzt das Gerät auf seinen Standardkanal zurück.
Sie können ein Gerät mit diesem Endpunkt nicht löschen, es wirkt sich nur auf die Kanalüberschreibung aus.
Abfrageparameterinterface Device { device_id: string app_id: string}Auf die Zwischenablage kopieren
Beispielanfragecurl -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/Auf die Zwischenablage kopieren
Abschnitt mit dem Titel „Erfolgsantwort“{ "status": "ok"}Fehlerbehandlung
Abschnitt mit dem Titel „Fehlerbehandlung“Gemeinsame Fehlerfälle und ihre Antworten:
// 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"}Gemeinsame Verwendungsfälle
Abschnitt mit dem Titel „Gemeinsame Verwendungsfälle“- Registrierung von Beta-Geräten
{ "app_id": "app_123", "device_id": "device_456", "channel": "beta"}- Versionsoberladung
{ "app_id": "app_123", "device_id": "device_456", "version_id": "1.1.0"}- Zurücksetzen auf die Standardkanal
// Use DELETE endpoint to remove overridesTipps für die Geräteverwaltung
Abschnitt mit dem Titel „Tipps für die Geräteverwaltung“- Überwachung: Regelmäßig den Gerätestatus und die Paketverteilung (Version) überprüfen
- Testen: Verwenden Sie benutzerdefinierte IDs, um Geräte leicht identifizieren zu können
- Fehlersuche: Verfolgen Sie Geräteaktualisierungen und Kanalzuweisungen
- Native Versionskontrolle: Überwachen Sie native App-Versionen, um die Kompatibilität sicherzustellen