Dispositivi
Copia un prompt di configurazione con le istruzioni di installazione e la guida markdown completa per questo plugin.
Gli dispositivi sono installazioni di app individuali che inviano dati di aggiornamento a Capgo. Utilizza questo API per recuperare quei dati o impostare e rimuovere un override di canale privato specifico per dispositivo.
Metadati del dispositivo
Sottosezione intitolata “Metadati del dispositivo”Ogni record può includere l'ID del dispositivo, la piattaforma, le versioni dell'aggiornatore e del sistema operativo, la costruzione nativa, il bundle installato, lo stato di produzione e di emulazione, l'ID personalizzato e la sovrascrittura del canale.
Quando disponibile, country_code è la lettera ISO 3166-1 più recente e valida di due lettere code ricevuta da una richiesta Cloudflare-gestita per il dispositivo. Non è un valore GPS o una posizione fornita dall'app. Può essere null quando non disponibile; utilizza una ricerca singola dispositivo quando hai bisogno di questo campo.
Punti finali
Sezione intitolata “Punti di accesso”https://api.capgo.app/device/
Imposta un sovrapposizione specifica per dispositivo a un canale privato Per scegliere un bundle per un dispositivo, assegna quel bundle al canale; non sono supportate sovrapposizioni di bundle per dispositivo singolo. La sovrapposizione scade dopo 90 giorni dall'ultima scrittura a meno che non la si riposizioni con un POST.
Corpo della richiesta
Sezione intitolata “Corpo della richiesta”interface DeviceChannelOverride { app_id: string; // reverse-domain app ID, for example com.example.app device_id: string; channel: string; // existing non-public 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": "com.example.app", "device_id": "device_456", "channel": "beta" }' \ https://api.capgo.app/device/I canali pubblici non possono essere utilizzati come override per dispositivi.
Risposta di successo
Sezione intitolata “Risposta di successo”{ "status": "ok"}https://api.capgo.app/device/
Recupera i metadati del dispositivo. I risultati sono paginati a cursor quando si omette device_id.
Parametri di query
Sezione intitolata “Parametri di query”app_id: ID di applicazione di dominio inverso richiesto, ad esempiocom.example.app.device_id: ID dispositivo facoltativo. Quando presente, la risposta è un singolo dispositivo piuttosto che una lista paginata.customIdMode: Boolean facoltativo. Impostato sutrueper restituire solo dispositivi con un campo non vuotocustom_id.cursor: Cursor facoltativo dalla risposta precedente della lista.limit: Numero facoltativo di dispositivi per pagina.
Esempi di richiesta
Sezione intitolata “Esempi di richiesta”# 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"Tipi di risposta
Sezione intitolata “Tipi di risposta”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 è popolato da una ricerca dispositivo-specifica quando Capgo ha memorizzato un paese valido Cloudflare-derivato da code. Le richieste senza un paese valido non cancellano il valore valido precedente; le risposte della lista possono restituire null Ecco la descrizione di questo campo.
Esempio di risposta (elenco)
Sottosezione intitolata “Esempio di risposta (elenco)”{ "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}Esempio di risposta (singolo dispositivo)
Sottosezione intitolata “Esempio di risposta (singolo dispositivo)”{ "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/
Elimina l'override del canale di un dispositivo. Il dispositivo utilizzerà nuovamente la sua selezione di canale normale; questo endpoint non cancella il record di metadati del dispositivo.
Corpo della richiesta o parametri di query
Sottosezione intitolata “Corpo della richiesta o parametri di query”interface DeviceOverrideRemoval { app_id: string; device_id: string;}Esempio di richiesta
Sottosezione intitolata “Esempio di richiesta”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/Risposta di successo
Sottosezione intitolata “Risposta di successo”{ "status": "ok"}Errori utilizzano uno stato di errore HTTP e un corpo JSON con error e message codici di errore comuni includono:
invalid_app_idquandoapp_idnon è un identificatore di dominio inverso.device_not_foundper una ricerca di un dispositivo sconosciuto.channel_not_foundquando il canale richiesto non esiste.public_channel_overridequando si tenta di sovrascrivere un dispositivo a un canale pubblico.invalid_version_idquando si tenta di sovrascrivere un bundle diretto; utilizzare un canale invece.cannot_access_appocannot_access_channelwhen the API key lacks the required permission.
quando la chiave __CAPGO_KEEP_0__ non dispone della permessione richiesta.
utilizzo comune-
Titolo della sezione “Utilizzo comune”
{"app_id": "com.example.app","device_id": "device_456","channel": "beta"} -
Ripristina un dispositivo alla selezione del canale normale
Usa il
DELETEendpoint con gli ID dell'app e del dispositivo.
Continua da dispositivi
Sottosezione intitolata “Continua da dispositivi”Se stai utilizzando Dispositivi per pianificare la routing dei canali e la distribuzione in fase di testing, connettilo con Canaletti context:Capgo release channels feature name. Page/area: Capgo solutions marketing page. Role: Short UI label or navigazione item. Seen in: page solutions/white-label.astro. Message key `solutions_white_label_visual_cell2_value` (Solutions White Label Visual Cell2 Value). per i dettagli di implementazione in Canaletti, per i dettagli di implementazione nei canali, Canali per i dettagli di implementazione nei canali, Soluzione di Test di Beta per il flusso di lavoro del prodotto in Soluzione di Test di Beta, e Soluzione di Targeting della Versione per il flusso di lavoro del prodotto in Soluzione di Targeting della Versione.