Dispositivi
Copia una riga di comando con le istruzioni di installazione e la guida markdown completa per questo plugin.
Devices represent individual installations of your app that are managed by Capgo. The Devices API allows you to track and manage devices, including their bundles (versions), channels, and update status.
Capire i Dispositivi
Ogni dispositivo ha caratteristiche e stati unici:Piattaforma
- : iOS, Android o ElectronPacco (versione)
- : Versione corrente del pacchetto (versione) e versione di build nativaAmbiente
- : Produzione o sviluppo, emulatore o dispositivo fisicoUnderstanding Devices
- Canale: Assegnamento del canale di aggiornamento corrente
- ID personalizzato: Identificatore facoltativo per scopi di tracciamento personalizzati
Pratiche raccomandate
Sottosezione intitolata “Pratiche raccomandate”- Tracciamento del pacchetto (versione): Monitorare l'adozione del pacchetto (versione) del dispositivo per garantire l'assorbimento degli aggiornamenti
- Gestione dei canali: Assegnare i dispositivi ai canali appropriati in base alle esigenze di testing
- Consapevolezza dell'ambiente: Gestire diversi ambienti (prod/dev/emulator) in modo appropriato
- Identificazione Personalizzata: Utilizza ID personalizzati per integrare con i tuoi sistemi esistenti
Punti di Accesso
Sezione intitolata “Punti di Accesso”https://api.capgo.app/device/
Collega un dispositivo a una versione o canale specifico.
Corpo della Richiesta
Sezione intitolata “Corpo della Richiesta”interface DeviceLink { app_id: string device_id: string version_id?: string // bundle (version) name channel?: string // channel name}Esempio di Richiesta
Sezione intitolata “Esempio di Richiesta”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/Risposta di successo
Sezione intitolata “Risposta di successo”{ "status": "ok"}https://api.capgo.app/device/
Recupera le informazioni del dispositivo. Utilizza la paginazione basata sul cursore per il recupero efficiente di grandi elenchi di dispositivi.
Parametri di query
Sezione intitolata “Parametri di query”app_id: richiesto. L'ID del tuo appdevice_id: facoltativo. ID del dispositivo specifico per recuperare un singolo dispositivocursor: Opzionale. Cursor dal precedente risposta per la paginazionelimit: Opzionale. Numero di dispositivi per pagina (default: 50)
Richieste di esempio
Sottosezione intitolata “Richieste di esempio”# 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"Tipo di Risposta (Lista)
Sottosezione intitolata “Tipo di Risposta (Lista)”Quando si richiedono più dispositivi (senza device_id parametro):
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")}Tipo di Risposta (Dispositivo Singolo)
Sezione intitolata “Tipo di Risposta (Singolo Dispositivo)”Quando si richiede un dispositivo specifico con device_id parametro, restituisce l'oggetto dispositivo direttamente:
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")}Esempio di Risposta (Elenco)
Sezione intitolata “Esempio di Risposta (Elenco)”{ "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}Esempio di Risposta (Singolo Dispositivo)
Sezione intitolata “Esempio di Risposta (Singolo Dispositivo)”{ "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"}Cancella
Sezione intitolata “Cancella”https://api.capgo.app/device/
Disconnetti un dispositivo dal suo override di canale. Questo resettare il dispositivo per utilizzare il suo canale predefinito.
Non puoi eliminare un dispositivo con questo endpoint, esso influisce solo sull'override del canale.
Parametri di queryinterface Device { device_id: string app_id: string}Copia negli appunti
Esempio di richiestacurl -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/Risposta di Successo
Sezione intitolata “Risposta di Successo”{ "status": "ok"}Gestione degli Errori
Sezione intitolata “Gestione degli Errori”Scenari di errore comuni e le loro risposte:
// 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"}Casi d'uso comuni
Sezione intitolata “Casi d'uso comuni”- Registrazione del dispositivo in versione beta
{ "app_id": "app_123", "device_id": "device_456", "channel": "beta"}- Version Override
{ "app_id": "app_123", "device_id": "device_456", "version_id": "1.1.0"}- Resetta al canale predefinito
// Use DELETE endpoint to remove overridesConsigli per la gestione dei dispositivi
Sezione intitolata “Consigli per la gestione dei dispositivi”- Monitoraggio: Controlla regolarmente lo stato del dispositivo e la distribuzione del pacchetto (versione)
- Test: Utilizza ID personalizzati per identificare facilmente i dispositivi di test
- Risoluzione dei problemi: Traccia gli aggiornamenti dei dispositivi e le assegnazioni dei canali
- Versione di Controllo Nativo: Monitorare le versioni degli app nativi per garantire la compatibilità
Continua da Dispositivi
Sezione intitolata “Continua da Dispositivi”Se stai utilizzando Dispositivi per pianificare la routing dei canali e la distribuzione in fase di staging, connettilo con Canali per i dettagli di implementazione in Canali, Canali per i dettagli di implementazione in Canali, Canali per i dettagli di implementazione in Channels, Soluzione di Test Beta per il flusso di lavoro del prodotto in Soluzione di Test Beta, e Soluzione di Targeting della Versione per il flusso di lavoro del prodotto in Soluzione di Targeting della Versione.