Geräte
Ein Setup-Vorschlag kopieren mit den Installationsanweisungen und der vollständigen Markdown-Anleitung für diesen Plugin.
Geräte sind einzelne Anwendungsinstallationen, die Updater-Metadaten an Capgo melden. Verwenden Sie diesen API zum Abrufen dieser Metadaten oder zum Setzen und Löschen eines Geräte-spezifischen privaten Kanal-Überladens.
Geräteinformationen
Abschnitt mit dem Titel “Geräteinformationen”Jedes Eintrag kann die Geräte-ID, die Plattform, die Updater- und Betriebssystemversion, die native Build, die installierte Bundle, den Produktions- und Emulatorzustand, die benutzerdefinierte ID und den Kanal-Übertragungsmodus enthalten.
Wenn verfügbar, country_code ist die neueste gültige zwei-Buchstaben-ISO 3166-1-Länderkennung code , die von einem Cloudflare-bearbeiteten Anforderung für das Gerät erhalten wurde. Es handelt sich nicht um GPS oder eine durch Ihre App bereitgestellte Standortwerte. Es kann null wenn nicht verfügbar sein; verwenden Sie einen Einzelgeräte-Abfrage, wenn Sie diesen Feld benötigen.
https://api.capgo.app/device/
Eine Geräte-spezifische Überschreibung auf ein privates Kanal. Um für ein Gerät einen Bundle auszuwählen, weisen Sie diesem Kanal den Bundle zu; direkte, pro-Gerät-Überlagerungen von Bundles werden nicht unterstützt. Die Überlagerung erlischt nach 90 Tagen nach der letzten Schreiboperation, es sei denn, Sie setzen sie erneut mit einem POST-Antrag fest.
Anforderungskörper
Abschnitt mit dem Titel „Anforderungskörper“interface DeviceChannelOverride { app_id: string; // reverse-domain app ID, for example com.example.app device_id: string; channel: string; // existing non-public channel name}Beispielanfrage
Abschnitt mit dem Titel „Beispielanfrage“curl -X POST \ -H "authorization: your-api-key" \ -H "Content-Type: application/json" \ -d '{ "app_id": "com.example.app", "device_id": "device_456", "channel": "beta" }' \ https://api.capgo.app/device/Öffentliche Kanäle dürfen nicht als Geräte-Überlagerungen verwendet werden.
Erfolgsantwort
Abschnitt mit dem Titel „Erfolgsantwort“{ "status": "ok"}https://api.capgo.app/device/
Gerätmetadata abrufen. Die Ergebnisse sind paginiert, wenn Sie die folgenden Parameter weglassen device_id.
Abfrageparameter
Abschnitt mit dem Titel “Abfrageparameter”app_id: Erforderlicher rückwärts-domänen-App-Name, z. B.com.example.app.device_id: Optionaler Geräte-Name. Wenn vorhanden, ist die Antwort ein einzelnes Gerät anstatt eine paginierte Liste.customIdMode: Optionaler boolescher Wert. Setzen Sie ihn auftrueum nur Geräte mit einem nicht leerencustom_id.cursor: Optionaler Cursor aus der vorherigen Listenantwort.limit: Optionaler Anzahl von Geräten pro Seite.
Beispielanfragen
Abschnitt mit dem Titel „Beispielanfragen“# Get the first pagecurl -H "authorization: your-api-key" \ "https://api.capgo.app/device/?app_id=com.example.app"
# Get one device, including its request-derived country when availablecurl -H "authorization: your-api-key" \ "https://api.capgo.app/device/?app_id=com.example.app&device_id=device_456"
# Get only devices with a custom IDcurl -H "authorization: your-api-key" \ "https://api.capgo.app/device/?app_id=com.example.app&customIdMode=true"
# Get the next pagecurl -H "authorization: your-api-key" \ "https://api.capgo.app/device/?app_id=com.example.app&cursor=2024-01-01T00:00:00Z%7Cdevice_456"Antworttypen
Abschnitt mit dem Titel „Antworttypen“interface DeviceListResponse { data: Device[]; nextCursor?: string; hasMore: boolean;}
interface Device { updated_at: string; device_id: string; custom_id: string; version?: number; version_name: string | null; 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; install_source: string | null; country_code: string | null;}country_code wird durch eine Gerätespezifische Abfrage befüllt, wenn Capgo eine gültige Cloudflare-abgeleitete Landesinformation code gespeichert hat. Anfragen ohne gültige Landesinformation löschen nicht die letzte gültige Werte; Listenantworten können folgende Werte zurückgeben null für dieses Feld.
Beispielantwort (Listenformat)
Abschnitt mit dem Titel „Beispielantwort (Listenformat)“{ "data": [ { "device_id": "device_456", "custom_id": "test-device-1", "version": 1, "version_name": "1.0.0", "app_id": "com.example.app", "platform": "ios", "plugin_version": "5.0.0", "os_version": "17.0", "version_build": "1", "is_prod": true, "is_emulator": false, "key_id": null, "install_source": null, "country_code": null, "updated_at": "2024-01-01T00:00:00Z" } ], "nextCursor": "2024-01-01T00:00:00Z|device_456", "hasMore": true}Beispielantwort (Einzelgerät)
Abschnitt mit dem Titel “Beispielantwort (ein Gerät)”{ "device_id": "device_456", "custom_id": "test-device-1", "version": 1, "version_name": "1.0.0", "app_id": "com.example.app", "platform": "ios", "plugin_version": "5.0.0", "os_version": "17.0", "version_build": "1", "is_prod": true, "is_emulator": false, "key_id": "MIIB", "install_source": null, "country_code": "FR", "updated_at": "2024-01-01T00:00:00Z", "channel": "beta"}https://api.capgo.app/device/
Entferne die Kanalüberschreibung eines Geräts. Das Gerät wird seinen normalen Kanal auswählen; dieser Endpunkt löscht nicht die Metadatensatz des Geräts.
Anfrage-Body oder Abfrageparameter
Abschnitt mit dem Titel “Anfrage-Body oder Abfrageparameter”interface DeviceOverrideRemoval { app_id: string; device_id: string;}Beispielanfrage
Abschnitt mit dem Titel “Beispielanfrage”curl -X DELETE \ -H "authorization: your-api-key" \ -H "Content-Type: application/json" \ -d '{ "app_id": "com.example.app", "device_id": "device_456" }' \ https://api.capgo.app/device/Erfolgsantwort
Abschnitt mit Titel „Erfolgsantwort“{ "status": "ok"}Fehler verwenden einen HTTP-Fehlerstatus und ein JSON-Body mit error und message Felder. Häufige Fehlercodes umfassen:
invalid_app_idwennapp_idist kein umgekehrter Domänen-Bezeichner.device_not_foundfür einen unbekannten Geräteaufruf.channel_not_foundwenn der angeforderte Kanal nicht existiert.public_channel_overrideWenn Sie versuchen, ein Gerät auf einen öffentlichen Kanal umzustellen.invalid_version_idWenn Sie versuchen, ein Gerät direkt zu überschreiben; verwenden Sie stattdessen einen Kanal.cannot_access_appodercannot_access_channelWenn der API-Schlüssel die erforderliche Berechtigung nicht besitzt.
Häufige Anwendungsfälle
Section titled “Common use cases”-
Move a test device to a private beta channel
{"app_id": "com.example.app","device_id": "device_456","channel": "beta"} -
Ein Gerät auf die normale Kanalwahl zurücksetzen
Verwenden Sie
DELETEIn die Zwischenablage kopieren
Ein Gerät auf die normale Kanalwahl zurücksetzen
Abschnitt mit dem Titel “Weiter von Geräten”Wenn Sie "Geräte" verwenden Geräte um es mit zu planen, Kanalrouting und rollouts in Stufen zu verbinden Kanäle für die Implementierungsdetails in den Kanälen, Kanäle für die Implementierungsdetails in den Kanälen, Kanäle für die Implementierungsdetails in den Kanälen, Beta Testlösung für das Produktworkflow in der Beta-Testlösung Version Targeting Solution für das Produktworkflow in Versionziel-Lösung.