Canales
Copia un prompt de configuración con los pasos de instalación y la guía markdown completa para este plugin.
Los canales son la mecanismo fundamental para gestionar actualizaciones de aplicaciones en Capgo. Permiten controlar cómo y cuándo sus usuarios reciben actualizaciones, habilitando características como pruebas A/B, lanzamientos escalonados y actualizaciones específicas de plataforma.
Entendiendo los canales
Título de la sección “Entendiendo los canales”Un canal representa una pista de distribución para las actualizaciones de tu aplicación. Cada canal puede configurarse con reglas y restricciones específicas:
- Control de paquetes (versión): Especifica qué paquete (versión) reciben los usuarios
- Diseño de plataforma: Dirige plataformas específicas (iOS/Android/Electron)
- Políticas de actualización: Controla cómo se entregan las actualizaciones
- Restricciones de dispositivo: Gestiona qué dispositivos pueden acceder a las actualizaciones
Opciones de configuración de canal
Sección titulada “Opciones de configuración de canal”- public: Establecer como canal predeterminado para nuevos dispositivos
- __CAPGO_KEEP_0__: Evitar actualizaciones cuando la versión nativa del dispositivo es más nueva que la versión disponible en el canal (por ejemplo, el dispositivo está en la versión nativa 1.2.3, pero el canal tiene la versión 1.2.2)
- : Controlar el comportamiento de actualización (‘mayor’, ‘menor’, ‘número de versión’, ‘ninguno’)ios/android/electron
- : Habilitar/deshabilitar para plataformas específicas: Permitir a los dispositivos elegir su canal
- : Permitir actualizaciones en dispositivos emuladores: Permitir actualizaciones en dispositivos de desarrollo
- __CAPGO_KEEP_0____CAPGO_KEEP_0__
- __CAPGO_KEEP_0__: Permitir actualizaciones en compilaciones de desarrollo
Prácticas recomendadas
Sección titulada “Prácticas recomendadas”- Canal de pruebas: Mantener un canal de pruebas para la validación interna
- Despliegue escalonado: Utilizar múltiples canales para el despliegue de actualizaciones graduales
- Separación de plataforma: Crear canales separados para iOS, Android y Electron cuando sea necesario
- Control de paquete (versión): Utilizar control de versiones semántico para rutas de actualización claras
Endpoints
Sección titulada “Endpoints”https://api.capgo.app/channel/
Crear o actualizar una configuración de canal.
Cuerpo de la solicitud
Sección titulada “Cuerpo de la solicitud”type disable_update = "major" | "minor" | "version_number" | "none"interface ChannelSet { app_id: string channel: string version?: string // bundle (version) name public?: boolean disableAutoUpdateUnderNative?: boolean disableAutoUpdate?: disable_update ios?: boolean android?: boolean electron?: boolean allow_device_self_set?: boolean allow_emulator?: boolean allow_dev?: boolean}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": "app_123", "channel": "beta", "version": "1.2.0", "public": false, "disableAutoUpdate": "minor", "ios": true, "android": true, "electron": true, "allow_emulator": true }' \ https://api.capgo.app/channel/Respuesta de éxito
Sección titulada “Respuesta de éxito”{ "status": "ok"}https://api.capgo.app/channel/
Obtener información del canal. Devuelve 50 canales por página.
Parámetros de consulta
Sección titulada “Parámetros de consulta”app_id: Obligatorio. El ID de tu aplicaciónpage: Opcional. Número de página para la paginaciónchannel: Opcional. Nombre específico del canal para recuperar
Exampleos de solicitudes
Sección titulada “Exampleos de solicitudes”# Get all channelscurl -H "authorization: your-api-key" \ "https://api.capgo.app/channel/?app_id=app_123"
# Get specific channelcurl -H "authorization: your-api-key" \ "https://api.capgo.app/channel/?app_id=app_123&channel=beta"
# Get next pagecurl -H "authorization: your-api-key" \ "https://api.capgo.app/channel/?app_id=app_123&page=1"Tipo de respuesta
Sección titulada “Tipo de respuesta”interface Channel { id: number; created_at: string; name: string; app_id: string; version: { // bundle (version) assigned to the channel id: number, name: string }; created_by: string; updated_at: string; public: boolean; disableAutoUpdateUnderNative: boolean; disableAutoUpdate: boolean; allow_emulator: boolean; allow_dev: boolean;}En la respuesta a continuación, version se refiere al paquete (versión) asignado al canal.
Respuesta de ejemplo
Sección titulada “Respuesta de ejemplo”{ "data": [ { "id": 1, "name": "production", "app_id": "app_123", "version": { "id": 1, "name": "1.0.0" }, "created_at": "2024-01-01T00:00:00Z", "updated_at": "2024-01-01T00:00:00Z", "created_by": "user_123", "public": true, "disableAutoUpdateUnderNative": false, "disableAutoUpdate": false, "allow_emulator": false, "allow_dev": false } ]}ELIMINAR
Sección titulada “ELIMINAR”https://api.capgo.app/channel/
Elimine un canal. Tenga en cuenta que esto afectará a todos los dispositivos que utilicen este canal.
Parámetros de consulta
Sección titulada “Parámetros de consulta”interface Channel { channel: string app_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": "app_123", "channel": "beta" }' \ https://api.capgo.app/channel/Respuesta de éxito
Sección titulada “Respuesta de éxito”{ "status": "ok"}Gestión de errores
Sección titulada “Gestión de errores”Escenarios de errores comunes y sus respuestas:
// Channel not found{ "error": "Channel not found", "status": "KO"}
// Invalid bundle (version) format{ "error": "Invalid version format. Use semantic versioning", "status": "KO"}
// Invalid update policy{ "error": "Invalid disableAutoUpdate value", "status": "KO"}
// Permission denied{ "error": "Insufficient permissions to manage channels", "status": "KO"}Uso común
Sección titulada “Uso común”- Pruebas de beta
{ "app_id": "app_123", "channel": "beta", "version": "1.2.0-beta", "public": false, "allow_emulator": true, "allow_dev": true}- Despliegue en producción
{ "app_id": "app_123", "channel": "production", "version": "1.2.0", "public": true, "disableAutoUpdate": "minor"}- Actualizaciones específicas de plataforma
{ "app_id": "app_123", "channel": "ios-hotfix", "version": "1.2.1", "ios": true, "android": false}Continuar desde Canales
Sección titulada “Continuar desde Canales”Si estás utilizando Canales para planificar la ruta de canales y el despliegue en etapas, conecta con 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, Solución de Enfoque de Versión para el flujo de trabajo del producto en Solución de Enfoque de Versión, y Capgo Prácticas de Entorno: Etapa con un ID de Aplicación Móvil para el contexto práctico en Capgo Prácticas de Entorno: Etapa con un ID de Aplicación Móvil.