Canaux
Copiez un prompt de configuration avec les étapes d'installation et le guide markdown complet pour ce plugin.
Les canaux sont le mécanisme de base pour gérer les mises à jour de l'application dans Capgo. Ils vous permettent de contrôler comment et quand vos utilisateurs reçoivent les mises à jour, ce qui permet des fonctionnalités comme les tests A/B, les lancements étalés et les mises à jour spécifiques au plateau.
Comprendre les canaux
Sous-titre “Comprendre les canaux”Un canal représente une piste de distribution pour les mises à jour de l'application. Chaque canal peut être configuré avec des règles et des contraintes spécifiques :
- Contrôle de l'ensemble (version): Spécifiez l'ensemble (version) que les utilisateurs reçoivent
- Ciblage de plateforme: Cible des plateformes spécifiques (iOS/Android/Electron)
- Politiques de mise à jour: Contrôle comment les mises à jour sont livrées
- Restrictions de dispositif: Gérer lesquels appareils peuvent accéder aux mises à jour
Options de configuration de canal
Section intitulée “Options de configuration de canal”- public: Définir le canal par défaut pour les nouveaux appareils
- disableAutoUpdateUnderNative: Empêcher les mises à jour lorsque la version native de l'application sur l'appareil est supérieure à la version du paquet de mise à jour (version) disponible dans le canal (par exemple, l'appareil est sur la version native de l'application 1.2.3, mais le canal a le paquet (version) 1.2.2)
- disableAutoUpdate: Contrôler le comportement de mise à jour (“majeur”, “mineur”, “version_number”, “aucun”)
- ios/android/electron: Activer/désactiver pour des plateformes spécifiques
- autoriser_l_appareil_à_sélectionner_son_canal: Laisser aux appareils choisir leur canal
- autoriser_l_emulateur: Autoriser les mises à jour sur les appareils émulés
- autoriser_le_développement: Autoriser les mises à jour sur les builds de développement
Meilleures Pratiques
Section intitulée “Meilleures Pratiques”- Canal de Test: Maintenir un canal de test pour la validation interne
- Déploiement Étappé: Utilisez plusieurs canaux pour le déploiement d'actualisations progressives
- Platform Separation: Créez des canaux séparés pour iOS, Android et Electron lorsque nécessaire
- Bundle (version) Control: Utilisez la gestion de version semantique pour des chemins d'actualisation clairs
Endpoints
Section intitulée “Endpoints”https://api.capgo.app/channel/
Créez ou mettez à 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 de la chaîne. Retourne 50 chaînes par page.
Paramètres de requête
Section intitulée “Paramètres de requête”app_id__CAPGO_KEEP_0__ : Obligatoire. L'ID de votre applicationpage__CAPGO_KEEP_1__ : Facultatif. Numéro de page pour la paginationchannel__CAPGO_KEEP_2__ : Facultatif. Nom spécifique de la chaîne à 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 suivante, 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 de 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 au 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 routage des canaux et le déploiement é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 travail du produit dans Solution de test bêta, Solution de ciblage de version pour le flux de travail du produit dans Solution de ciblage de version, et Capgo Pratiques de meilleures performances pour l'environnement : mise en scène avec un seul ID d'application mobile pour le contexte pratique dans Capgo Pratiques de meilleures performances pour l'environnement : mise en scène avec un seul ID d'application mobile.