Dispositivos
Copia un prompt de configuración con los pasos de instalación y la guía markdown completa para este plugin.
Las dispositivos son instalaciones de aplicaciones individuales que informan metadatos de actualizador a Capgo. Utilice este API para recuperar esos metadatos o establecer y eliminar un override de canal privado específico del dispositivo.
Metadatos del dispositivo
Sección titulada “Metadatos del dispositivo”Cada registro puede incluir el ID del dispositivo, la plataforma, las versiones del actualizador y del sistema operativo, la construcción nativa, el paquete instalado, el estado de producción y de emulador, el ID personalizado y el override de canal.
Cuando esté disponible, 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 cuando no esté disponible; utiliza una búsqueda de dispositivo único cuando necesites este campo.
Endpoints
Sección titulada “Endpoints”https://api.capgo.app/device/
Establecer un override específico del dispositivo a un canal privado. Para elegir un paquete para un dispositivo, asigna ese paquete al canal; no se admiten overrides de paquetes directos por dispositivo. Cuerpo de la solicitud
Sección titulada “Cuerpo de la solicitud”
Copiar a portapapelesinterface DeviceChannelOverride { app_id: string; // reverse-domain app ID, for example com.example.app device_id: string; channel: string; // existing non-public channel name}Solicitud de ejemplo
Sección titulada “Solicitud de ejemplo”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/Los canales públicos no pueden usarse como sobreescripciones de dispositivo.
Respuesta de éxito
Sección titulada “Respuesta de éxito”{ "status": "ok"}https://api.capgo.app/device/
Obtener metadatos de dispositivo. Los resultados están paginados con cursor cuando omites device_id.
Parámetros de consulta
Sección titulada “Parámetros de consulta”app_id: Identificador de aplicación de dominio inverso requerido, comocom.example.app.device_id: Identificador de dispositivo opcional. Cuando está presente, la respuesta es un solo dispositivo en lugar de una lista paginada.customIdMode: Booleano opcional. Establezca atruepara devolver solo dispositivos con un valor no vacío decustom_id.cursor: Cursor opcional desde la respuesta de lista anterior.limit: Número de dispositivos por página opcional.
Solicitudes de ejemplo
Sección titulada “Solicitudes de ejemplo”# 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"Tipos de respuesta
Sección titulada “Tipos de respuesta”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 se pobló por una búsqueda específica del dispositivo cuando Capgo ha almacenado un país válido derivado de Cloudflare-code. Las solicitudes sin un país válido no eliminan el último valor válido; las respuestas de lista pueden devolver null para este campo.
Respuesta de ejemplo (lista)
Sección titulada “Respuesta de ejemplo (lista)”{ "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}Respuesta de ejemplo (dispositivo único)
Sección titulada “Respuesta de ejemplo (dispositivo único)”{ "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"}Eliminar
Sección titulada “Eliminar”https://api.capgo.app/device/
Eliminar la sobrescritura de canal de un dispositivo. El dispositivo volverá a usar su selección de canal normal; este punto de conexión no elimina su registro de metadatos.
Cuerpo de solicitud o parámetros de consulta
Sección titulada “Cuerpo de solicitud o parámetros de consulta”interface DeviceOverrideRemoval { app_id: string; device_id: string;}Solicitud de ejemplo
Sección titulada “Solicitud de ejemplo”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/Respuesta de éxito
Sección titulada “Respuesta de éxito”{ "status": "ok"}Errores
Sección titulada “Errores”Los errores utilizan un código de estado de error HTTP y un cuerpo JSON con error y message campos. Los códigos de error comunes incluyen:
invalid_app_idcuandoapp_idno es un identificador de dominio inverso.device_not_foundpara una búsqueda de dispositivo desconocido.channel_not_foundcuando el canal solicitado no existe.public_channel_overridecuando se intenta sobreescribir un dispositivo a un canal público.invalid_version_idcuando se intenta sobreescribir un paquete directo; utilice un canal en su lugar.cannot_access_appocannot_access_channelcuando la clave API no tiene la permiso requerido.
Casos de uso comunes
Sección titulada “Casos de uso comunes”-
Mover un dispositivo de prueba a un canal de beta privado
{"app_id": "com.example.app","device_id": "device_456","channel": "beta"} -
Restablecer un dispositivo a la selección de canales normal
Usar el
DELETEpunto de conexión con los IDs de la aplicación y el dispositivo.
Sigue adelante desde Dispositivos
Si estás utilizandoDispositivos para planificar la ruta de canales y el despliegue en etapas, conecta con __CAPGO_KEEP_0__ Canales para los detalles de implementación en Canales Canales para los detalles de implementación en Canales Canales para los detalles de implementación en Canales Solución de Pruebas Beta para el flujo de trabajo del producto en Solución de Pruebas Beta, y Solución de Enfoque en Versión para el flujo de trabajo del producto en Solución de Enfoque en Versión