Canaux
Copiez une commande de configuration avec les étapes d'installation et le guide Markdown complet pour ce plugin.
Channels are the core mechanism for managing app updates in Capgo. They allow you to control how and when your users receive updates, enabling features like A/B testing, staged rollouts, and platform-specific updates.
Ready to paste
Section intitulée « Comprendre les canaux »Un canal représente une piste de distribution pour les mises à jour de votre application. Chaque canal peut être configuré avec des règles et des contraintes spécifiques :
- Gestion de la version du bundle Spécifiez la version du bundle que les utilisateurs reçoivent
- Ciblage de plateforme Ciblez des plateformes spécifiques (iOS/Android/Electron)
- Politiques de mise à jour Contrôlez comment les mises à jour sont livrées
- Restrictions de dispositifGérez les dispositifs qui peuvent accéder aux mises à jour
Options de configuration du canal
Section intitulée « Options de configuration du canal »- public: Définir comme canal par défaut pour les nouveaux appareils
- disableAutoUpdateUnderNative: Empêcher les mises à jour lorsque la version native de l'appareil est plus récente que la version de mise à jour (version) disponible dans le canal (par exemple, l'appareil est sur la version native 1.2.3, mais le canal a la version de mise à jour (version) 1.2.2)
- disableAutoUpdate: Contrôler le comportement de mise à jour (“majeur”, “mineur”, “version_number”, “aucun”)
- ios/android/electron: Activer/désactiver pour les plateformes spécifiques
- allow_device_self_set: Laisser aux appareils choisir leur canal
- allow_emulator: Autoriser les mises à jour sur les appareils émulés
- allow_dev: Autoriser les mises à jour sur les builds de développement
Meilleures Pratiques
Section intitulée « Meilleures Pratiques »- Canal de Test: Maintenez un canal de test pour la validation interne
- Déploiement Graduel: Utilisez plusieurs canaux pour un déploiement d'actualisation progressif
- Séparation de Plateforme: Créez des canaux séparés pour iOS, Android et Electron lorsque nécessaire
- Contrôle de Bundling (version): Utilisez gestion de version sémantique pour des chemins d'actualisation clairs
Points d'entrée
Section intitulée “Points d'entrée”https://api.capgo.app/channel/
Créer ou mettre à jour une configuration de canal.
Corps de la demande
Section intitulée “Corps de la demande”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}Exemple de demande
Section intitulée “Exemple de demande”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/Réponse de succès
Section intitulée « Réponse de succès »{ "status": "ok"}https://api.capgo.app/channel/
Récupérer les informations du canal. Retourne 50 canaux par page.
Paramètres de requête
Section intitulée « Paramètres de requête »app_id: Obligatoire. L'ID de votre applicationpage: Facultatif. Numéro de page pour la paginationchannel: Obligatoire. Nom spécifique du canal à récupérer
Exemples de requêtes
Section intitulée « Exemples de requêtes »# 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"Type de réponse
Section intitulée « Type de réponse »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;}Dans la réponse ci-dessous, version se réfère au bundle (version) affecté au canal.
Exemple de réponse
Section intitulée « Exemple de réponse »{ "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 } ]}SUPPRIMER
Section intitulée “SUPPRIMER”https://api.capgo.app/channel/
Supprimer un canal. Notez que cela affectera tous les appareils utilisant ce canal.
Paramètres de requête
Section intitulée “Paramètres de requête”interface Channel { channel: string app_id: string}Exemple de requête
Section intitulée “Exemple de requête”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/Réponse de succès
Section intitulée « Réponse de succès »{ "status": "ok"}Gestion des erreurs
Section intitulée « Gestion des erreurs »Scénarios d'erreurs courants et leurs réponses :
// 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"}Utilisations courantes
Section intitulée « Utilisations courantes »- Test en version bêta
{ "app_id": "app_123", "channel": "beta", "version": "1.2.0-beta", "public": false, "allow_emulator": true, "allow_dev": true}- Déploiement en production
{ "app_id": "app_123", "channel": "production", "version": "1.2.0", "public": true, "disableAutoUpdate": "minor"}- Mises à jour spécifiques à la plateforme
{ "app_id": "app_123", "channel": "ios-hotfix", "version": "1.2.1", "ios": true, "android": false}Continuer depuis les canaux
Section intitulée « Continuer depuis les canaux »Si vous utilisez Canaux pour planifier la mise en route des canaux et la mise en production étape par étape, connectez-le avec Canaux pour les détails d'implémentation dans Canaux, Canaux pour les détails d'implémentation dans Canaux, Solution de test bêta pour le flux de produit dans la Solution de test en bêta, Solution de ciblage de version pour le flux de produit dans la Solution de ciblage de version, et Capgo Pratiques de l'environnement : mise en scène avec un ID d'application mobile unique pour le contexte pratique dans Capgo Pratiques de l'environnement : mise en scène avec un ID d'application mobile unique.