Geräte
Einen Setup-Vorschlag mit den Installationsanweisungen und der vollständigen Markdown-Dokumentation für diesen Plugin kopieren.
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-Überlappens.
Gerätedaten
Sektion mit dem Titel “Gerätedaten”Jedes Eintrag kann die Geräte-ID, Plattform, Updater und Betriebssystemversion, native Build, installierte Bundle, Produktions- und Emulatorzustand, benutzerdefinierte ID und Kanal-Übertrag enthalten.
Wenn verfügbar, country_code ist die neueste gültige zwei-Buchstaben-ISO 3166-1-Ländercode code, der von einem Cloudflare-bearbeiteten Antrag für das Gerät erhalten wurde. Es ist nicht GPS oder eine Standortwerte, der von Ihrer App bereitgestellt wird. Es kann null werden, wenn es nicht verfügbar ist; verwenden Sie einen Einzelgeräte-Abfrage, wenn Sie diesen Feld benötigen.
Endpunkte
Abschnitt mit dem Titel „Endpunkte“https://api.capgo.app/device/
Setzen Sie 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 per-Geräte-Überschreibungen von Bundles werden nicht unterstützt. Die Überschreibung erlischt nach 90 Tagen nach der letzten Schreiboperation, es sei denn, Sie setzen sie erneut mit POST wieder her.
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 können nicht als Geräteüberschreibungen verwendet werden.
Erfolgsantwort
Abschnitt mit dem Titel „Erfolgsantwort“{ "status": "ok"}https://api.capgo.app/device/
Gerätedaten abrufen. Die Ergebnisse werden paginiert, wenn Sie die folgenden Parameter weglassen: device_id.
Abfrageparameter
Abschnitt mit dem Titel „Abfrageparameter“app_id: Erforderlicher rückwärtsgeordneter Anwendungs-ID, z. B.com.example.app.device_id: Optionaler Geräte-ID. Wenn diese vorhanden ist, ist die Antwort ein einzelnes Gerät und nicht eine paginierte Liste.customIdMode: Optional boolean. Set auftrueum nur Geräte mit einer nicht leerencustom_id.cursor: Optional Cursor aus der vorherigen Listeantwort.limit: Optional 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 ein gültiges Cloudflare-abgeleitetes Land code gespeichert hat. Anfragen ohne gültiges Land löschen nicht den letzten gültigen Wert; Listeantworten können null für dieses Feld.
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": "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 (ein Gerä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/
Ein Geräts Kanal-Überschreibung entfernen. Das Gerät wird seinen normalen Kanal-Wahl wieder verwenden; dieser Endpunkt löscht nicht dessen Metadaten-Eintrag.
Anfrage-Body oder Anfrageparameter
Abschnitt mit dem Titel „Anfrage-Body oder Anfrageparameter“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 dem Titel „Erfolgsantwort“{ "status": "ok"}Fehler verwenden einen HTTP-Fehlerstatus und ein JSON-Body mit error und message Fehlercodes. Gemeinsame Fehlercodes umfassen:
invalid_app_idalsapp_idist kein umgekehrter Domänenbezeichner.device_not_foundzur Suche nach einem unbekannten Gerät.channel_not_foundals der angeforderte Kanal nicht existiert.public_channel_overrideals versucht wird, ein Gerät zu einem öffentlichen Kanal zu überschreiben.invalid_version_idals versucht wird, ein Gerät direkt zu überschreiben; verwenden Sie stattdessen einen Kanal.cannot_access_appodercannot_access_channelwhen the API key lacks the required permission.
als der Schlüssel __CAPGO_KEEP_0__ die erforderliche Berechtigung nicht besitzt.
Gängige Anwendungsfälle-
Abschnitt mit dem Titel „Gängige Anwendungsfälle“
{"app_id": "com.example.app","device_id": "device_456","channel": "beta"} -
Ein Gerät auf die normale Kanalwahl zurücksetzen
Verwende die
DELETEDurchführe eine Anfrage mit den Anwendungs- und Geräte-IDs.
Weitergehen von Geräten
Abschnitt mit dem Titel “Weitergehen von Geräten”Wenn du die Geräte für die Planung der Kanalroutings und der geplanten Rollout verwendest, verbinde sie mit Kanälen für die Implementierungsdetails in 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 den Produktworkflow in der Beta-Testlösung, und Versionziel-Lösung für den Produktworkflow in der Versionziel-Lösung.