Dispositivos
Copia un prompt de configuración con los pasos de instalación y la guía de markdown completa para este complemento.
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
Título de la sección ‘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 la sobrescripción de canal.
Cuando esté disponible, country_code es la última código de país válido de dos letras de la norma ISO 3166-1 code recibido de una solicitud Cloudflare-manejada para el dispositivo. No es GPS ni un valor de ubicación proporcionado por tu aplicación. Puede ser null cuando no esté disponible; utilice una búsqueda de un solo dispositivo cuando necesites este campo.
Puntos finales
Sección titulada “Endpoints”https://api.capgo.app/device/
Establecer una sobrescritura específica del dispositivo a un canal privado canal. Para elegir un paquete para un dispositivo, asigna ese paquete al canal; no se admiten sobrescripciones de paquetes directas por dispositivo. La sobrescritura caduca 90 días después de la última escritura a menos que vuelvas a enviar un POST.
Cuerpo de la solicitud
Sección titulada “Cuerpo de la solicitud”interface 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: ID de aplicación de dominio inverso requerido, comocom.example.app.device_id: ID de dispositivo opcional. Cuando está presente, la respuesta es un solo dispositivo en lugar de una lista paginada.customIdMode: Valor booleano opcional. Establezca atrue: Valor opcional de cursor desde la respuesta de lista anterior.custom_id.cursor: Valor opcional de número de dispositivos por página.limitEjemplos de solicitudes
Sección titulada “Ejemplos de solicitudes”
Ventana de terminal# 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"Sección titulada “Tipos de respuesta”
Copiar a portapapelesinterface 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 is populated by a device-specific lookup when Capgo has stored a valid Cloudflare-derived country code. Requests without a valid country do not clear the last valid value; list responses may return 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 HTTP y un cuerpo JSON con error y message 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 carece del permiso requerido.
usos comunes
Títulos de la sección “Usos 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 canal normal
Utilice el
DELETEpunto final con los IDs de la aplicación y el dispositivo.
Siga adelante desde Dispositivos
Título de la sección “Siga adelante desde Dispositivos”Si está utilizando Dispositivos para planificar la ruta de canales y la implementación de lanzamientos etapados, conecte Canales context:Capgo release channels feature name. Página/área: Página de marketing de soluciones de Capgo. Rol: Etiqueta de UI corta o elemento de navegación. Visto en: página solutions/white-label.astro. Clave de mensaje `solutions_white_label_visual_cell2_value` (Valor de celda visual de soluciones White Label). para obtener los detalles de implementación en Canales, que se utilizan en Dispositivos, para planificar la ruta de canales y la implementación de lanzamientos etapados, conecte Canales, contexto:Capgo release channels feature name. Página/área: Página de marketing de soluciones de Capgo. Rol: Etiqueta de UI corta o elemento de navegación. Visto en: página solutions/white-label.astro. Clave de mensaje `solutions_white_label_visual_cell2_value` (Valor de celda visual de soluciones White Label). para los detalles de implementación en los canales, Canales prueba beta para los detalles de implementación en la solución de prueba beta, y Solución de versiones para el flujo de trabajo del producto en la solución de versiones. Editar página