Zum Inhalt springen

Geräte

Geräte sind einzelne Anwendungsinstallationen, die Capgo Updater-Metadaten melden. Verwenden Sie diesen API zum Abrufen dieser Metadaten oder zum Setzen und Löschen eines Geräte-spezifischen privaten-Kanal-Überladens.

Jedes Eintrag kann den Geräte-ID, Plattform, Updater und Betriebssystemversionen, native Build, installierte Bundle, Produktions- und Emulatorzustand, benutzerdefinierten ID und Kanal-Übertrag enthalten.

Wenn verfügbar, country_code is the latest valid two-letter ISO 3166-1 country code received from a Cloudflare-handled request for the device. It is not GPS or a location value supplied by your app. It can be null __CAPGO_KEEP_0__

erhalten von einem __CAPGO_KEEP_1__-bearbeiteten Antrag für das Gerät. Es ist nicht GPS oder eine Standortwerte, die Ihre App liefert. Es kann sein, dass

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 läuft nach 90 Tagen ab, nachdem das letzte Schreiben erfolgt ist, es sei denn, Sie setzen es erneut mit POST wieder her.

interface DeviceChannelOverride {
app_id: string; // reverse-domain app ID, for example com.example.app
device_id: string;
channel: string; // existing non-public channel name
}
Terminalfenster
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.

{
"status": "ok"
}

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

Gerätedaten abrufen. Die Ergebnisse sind paginiert, wenn Sie die folgenden Parameter weglassen: device_id.

  • app_id: Erforderlicher rückwärtsgeordneter Anwendungs-ID, z. B. com.example.app.
  • device_id: Optionaler Geräte-ID. Wenn vorhanden, ist die Antwort ein einzelnes Gerät und nicht eine paginierte Liste.
  • customIdMode: Optional boolean. Set auf true um nur Geräte mit einer nicht leeren custom_id.
  • cursor: Optional Cursor aus der vorherigen Listeantwort.
  • limit: Optional Anzahl an Geräten pro Seite.
Terminalfenster
# Get the first page
curl -H "authorization: your-api-key" \
"https://api.capgo.app/device/?app_id=com.example.app"
# Get one device, including its request-derived country when available
curl -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 ID
curl -H "authorization: your-api-key" \
"https://api.capgo.app/device/?app_id=com.example.app&customIdMode=true"
# Get the next page
curl -H "authorization: your-api-key" \
"https://api.capgo.app/device/?app_id=com.example.app&cursor=2024-01-01T00:00:00Z%7Cdevice_456"
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äte-spezifische Abfrage befüllt, wenn Capgo eine gültige Cloudflare-abgeleitete Landesinformation code gespeichert hat. Anfragen ohne gültige Landesinformation löschen nicht den letzten gültigen Wert; Listeantworten können null für dieses Feld.

{
"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
}
{
"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/

Entfernen Sie die Kanalüberschreibung eines Geräts. Das Gerät wird seine normale Kanalwahl wieder verwenden; diese Endpunkt löscht nicht die Metadatensatz des Geräts.

interface DeviceOverrideRemoval {
app_id: string;
device_id: string;
}
Terminalfenster
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/
{
"status": "ok"
}

Fehler verwenden einen HTTP-Fehlerstatus und ein JSON-Body mit error und message Fehlercodes. Gemeinsame Fehlercodes umfassen:

  • invalid_app_id Wann app_id ist kein umgekehrter Domänenbezeichner.
  • device_not_found Für einen unbekannten Geräteabgleich.
  • channel_not_found Wann der angeforderte Kanal nicht existiert.
  • public_channel_override Wann versucht man, ein Gerät auf einen öffentlichen Kanal umzustellen.
  • invalid_version_id Wann versucht man, eine direkte Paketüberschreibung durchzuführen; verwenden Sie stattdessen einen Kanal.
  • cannot_access_app Oder cannot_access_channel Wann der Schlüssel API die erforderliche Berechtigung nicht besitzt.
  1. Einen Testgerät auf einen privaten Beta-Kanal verschieben

    {
    "app_id": "com.example.app",
    "device_id": "device_456",
    "channel": "beta"
    }
  2. Einen Gerät zurücksetzen, um die normalen Kanalwahlen zu aktivieren

    Verwenden Sie die DELETE Punkt mit den Anwendungs- und Geräte-IDs.

Wenn Sie die Geräte zum Planen der Kanalroutings und der geplanten Rollout verwenden, verbinden Sie es mit Kanäle Kontext: Capgo-Funktionsname für die Veröffentlichungs-Kanäle. Seite/Bereich: Capgo-Marketingseite für Lösungen. Rolle: Kurzer Benutzeroberflächen-Label oder Navigationspunkt. Gesehen in: Seite Lösungen/White-Label.astro. Nachrichten Schlüssel `solutions_white_label_visual_cell2_value` (Wert für Visual Cell2 in der Lösung White Label). zur Implementierungsdetail in 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.