Canal
Copie un prompt de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Los canales son la mecánica fundamental para gestionar las actualizaciones de la aplicación en Capgo. Permiten controlar cómo y cuándo los usuarios reciben actualizaciones, habilitando características como pruebas A/B, lanzamientos escalonados y actualizaciones específicas de plataforma.
Entendiendo los canales
Sección titulada “Entendiendo los canales”Un canal representa un seguimiento de distribución para las actualizaciones de la aplicación. Cada canal puede configurarse con reglas y restricciones específicas:
- Control de paquete (versión): Especificar qué paquete (versión) reciben los usuarios
- Diseño de plataforma: Dirigirse a plataformas específicas (iOS/Android/Electron)
- Actualizaciones de políticas: Controla cómo se entregan las actualizaciones
- Restricciones de dispositivo: Administra qué dispositivos pueden acceder a las actualizaciones
Opciones de configuración de canal
Sección titulada “Opciones de configuración de canal”- público: Establece como canal predeterminado para nuevos dispositivos
- disableAutoUpdateUnderNative: Evita actualizaciones cuando la versión nativa del dispositivo es más nueva que la versión del paquete de actualización disponible en el canal (por ejemplo, el dispositivo está en la versión nativa 1.2.3, pero el canal tiene el paquete de versión 1.2.2)
- disableAutoUpdate: Controla el comportamiento de la actualización (“mayor”, “menor”, “número de versión”, “ninguno”)
- ios/android/electron: Habilitar/deshabilitar para plataformas específicas
- allow_device_self_set: Dejar que los dispositivos elijan su canal
- allow_emulator: Permitir actualizaciones en dispositivos de emulación
- allow_dev: Permitir actualizaciones en compilaciones de desarrollo
Prácticas recomendadas
Sección titulada “Prácticas recomendadas”- Canales de pruebas: Mantener un canal de pruebas para la validación interna
- Despliegue en Etapas: Utilice múltiples canales para el despliegue de actualizaciones graduales
- Separación de Plataformas: Cree canales separados para iOS, Android y Electron cuando sea necesario
- Control de Paquetes (versión): Utilice la "versión semántica" para rutas de actualización claras Puntos de Acceso
Sección titulada “Puntos de Acceso”
POSTSección titulada “POST”
__CAPGO_KEEP_0__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/
Obtenga 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 su aplicaciónpage: Opcional. Número de página para la paginaciónchannel: Opcional. Nombre específico del canal para recuperar
Solicitudes de ejemplo
Sección titulada “Solicitudes de ejemplo”# 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/
Eliminar 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}Seguir desde Canales
Sección titulada “Seguir desde Canales”Si estás utilizando Canales para planificar la ruta de canal y el lanzamiento en etapas, conecte 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 en Versión para el flujo de trabajo del producto en Solución de Enfoque en Versión, y Capgo Prácticas de Mejora del Entorno: Etapas con un ID de Aplicación Móvil para el contexto práctico en Capgo Prácticas de Mejora del Entorno: Etapas con un ID de Aplicación Móvil.