Aller au contenu
Bastide Connexion Créer un compte
Appuyez sur / pour chercher

project.settings.write

Markdownv0.3.0

Modifier les réglages d'un projet.

  • APIPATCH /v1/projects/{projectId}
  • MCPproject_settings_write
  • CLIbastide project settings write
PropriétéValeur
Niveauproject
Rang minimalmaintainer
Rôle transversal—
Portéesproject:write
Compte de servicene la mène pas : cette écriture ne lui est pas ouverte
RéversibilitéE — réversible avec effort : validation d'une personne avant l'appel, puis cinq minutes pour tout défaire d'un seul appel
Idempotenceune clé d'idempotence est acceptée : le rejeu rend la première réponse
Limites de débit, par jeton600 appels par 60 secondes (general), et 60 appels par 60 secondes (sensitive)

API

PATCH /v1/projects/{projectId} — succès en 200.

ParamètreOùTypeRequisDescription
projectIdchemintexte, motif ^prj_[0-9A-HJKMNP-TV-Z]{26}$ouiIdentifiant de projet
Idempotency-Keyen-têtetexte, de 8 à 128 caractèresnonClé d'idempotence. Un rejeu portant la même clé retourne le résultat initial sans nouvel effet de bord, et la réponse porte alors « Idempotency-Replayed: true ». Équivaut au champ « idempotencyKey » du corps ; les deux à la fois ne sont acceptés que s'ils sont identiques.
namecorpstexte, de 1 à 120 caractèresnon
gitRemotecorpstexte, 2048 caractères au plus, format urinon
defaultBranchcorpstexte, motif ^(?!-)[A-Za-z0-9._/@+-]{1,255}$nonNom de branche Git
rootDirectorycorpstexte, motif ^[A-Za-z0-9._/-]{0,255}$nonRacine de projet dans le dépôt
includePathscorpsliste de 32 éléments au plus — chaque élément : textenon
registresAdmiscorpsliste de 16 éléments au plus — chaque élément : textenon
veilleMinutescorpsentier, de 5 à 120nonMinutes sans requête avant l'arrêt d'un environnement qui peut dormir. Le premier appel suivant le réveille.
veilleEnvironnementsPersonnalisescorpsbooléennonVrai pour que les environnements personnalisés dorment aussi.
instancescorpsentier, de 1 à 10nonNombre d'exemplaires du service de PRODUCTION, de 1 à 10. Les autres environnements en tiennent toujours un.
fuseaucorpstexte, de 1 à 64 caractèresnonNom de fuseau de la base IANA, par exemple « Europe/Paris ».
horairescorpsliste de 24 éléments au plus — chaque élément : objet (heure, exemplaires)nonOrdonnancement horaire du nombre d'exemplaires, déclaré EN ENTIER : absent, il reste tel quel ; vide, il est retiré. À chaque heure déclarée, lue dans le fuseau du projet, le compte d'exemplaires devient celui de cette heure jusqu'à la suivante.
licencesContaminantesBloquantescorpsbooléennonVrai : un paquet AGPL, SSPL ou BUSL dans l'image fait échouer la construction ; faux : il est seulement signalé.
sortieModecorpsl'un de fermee, ouverte, restreintenon
sortieDomainescorpsliste de 100 éléments au plus — chaque élément : textenon
tiercorpsl'un de discovery, standard, pro, sovereignnon
idempotencyKeycorpstexte, de 8 à 128 caractèresnonClé d'idempotence, obligatoire. Un rejeu portant la même clé rend le résultat initial, sans nouvel effet de bord.

La réponse :

ChampTypeDescription
idtexte, motif ^prj_[0-9A-HJKMNP-TV-Z]{26}$Identifiant de projet
expiresAttexte, format date-time, ou nul
slugtexte, motif ^[a-z0-9][a-z0-9-]{1,62}$Identifiant lisible, unique dans son périmètre
nameobjet (untrusted, source, content)
organizationIdtexte, motif ^org_[0-9A-HJKMNP-TV-Z]{26}$Identifiant de organisation
tierl'un de discovery, standard, pro, sovereign
statusl'un de active, suspended, closing
defaultBranchtexte
gitRemoteobjet (untrusted, source, content), ou nulAdresse du dépôt Git, sans les identifiants, les paramètres ni le fragment qu'elle pouvait porter. Nul : aucun dépôt déclaré.
rootDirectoryobjet (untrusted, source, content), ou nul
includePathsliste — chaque élément : texte
registresAdmisliste — chaque élément : texte
veilleMinutesentierMinutes sans requête après lesquelles un environnement de ce projet qui peut dormir s'arrête.
veilleEnvironnementsPersonnalisesbooléenVrai quand les environnements personnalisés de ce projet dorment aussi.
licencesContaminantesBloquantesbooléenVrai quand un paquet sous licence AGPL, SSPL ou BUSL fait échouer la construction de ce projet ; faux, il est seulement signalé.
sortieobjet (mode, domaines, smtp)
instancesentierNombre d'exemplaires du service de production, de 1 à 10. Les autres environnements en tiennent toujours un.
fuseautexteFuseau dans lequel se lisent les heures de l'ordonnancement.
horairesliste — chaque élément : objet (heure, exemplaires)Ordonnancement horaire du nombre d'exemplaires de production, par heure croissante. Vide : aucun ordonnancement, le réglage manuel tient.
createdAttexte, format date-time
createdByobjet (accountId, serviceTokenId, agentSession, channel), ou nul
undoTokentexte, motif ^und_[0-9A-HJKMNP-TV-Z]{26}$Défait cet appel par action.undo, pendant cinq minutes, pour le même compte et la même session d'agent, une seule fois.

En-têtes de la réponse : RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset, RateLimit-Policy, Idempotency-Replayed.

Autres réponses : 400, 401, 403, 404, 409, 429, 500, 503 — communes à toute opération.

Ligne de commande

bastide project settings write --project-id <valeur>

OptionTypeRequiseDéfautDescription
--project-idtexteoui—Identifiant de projet
--nametextenon—
--git-remotetextenon—
--default-branchtextenon—Nom de branche Git
--root-directorytextenon—Racine de projet dans le dépôt
--include-pathslistenon—
--registres-admislistenon—
--veille-minutesnombrenon—Minutes sans requête avant l'arrêt d'un environnement qui peut dormir. Le premier appel suivant le réveille.
--veille-environnements-personnalisesbooléennon—Vrai pour que les environnements personnalisés dorment aussi.
--instancesnombrenon—Nombre d'exemplaires du service de PRODUCTION, de 1 à 10. Les autres environnements en tiennent toujours un.
--fuseautextenon—Nom de fuseau de la base IANA, par exemple « Europe/Paris ».
--horaireslistenon—Ordonnancement horaire du nombre d'exemplaires, déclaré EN ENTIER : absent, il reste tel quel ; vide, il est retiré. À chaque heure déclarée, lue dans le fuseau du projet, le compte d'exemplaires devient celui de cette heure jusqu'à la suivante.
--licences-contaminantes-bloquantesbooléennon—Vrai : un paquet AGPL, SSPL ou BUSL dans l'image fait échouer la construction ; faux : il est seulement signalé.
--sortie-modetextenon—
--sortie-domaineslistenon—
--tiertextenon—
--idempotency-keytextenon—Clé d'idempotence, obligatoire. Un rejeu portant la même clé rend le résultat initial, sans nouvel effet de bord.

La commande demande une confirmation avant d'agir, sauf avec « --yes ».

MCP

Outil project_settings_write.

PropriétéValeur
Lecture seulenon
Destructifoui
Idempotentoui
Monde ouvertnon
Confirmation en deux tempsnon
Budget de jetons du résultat600

Erreurs

CodeSurfaceCause
idempotency_key_conflictAPIDeux clés d'idempotence différentes ont été présentées, dans le corps et dans l'en-tête.
palier_choisi_par_une_personneles deuxLe palier d'un projet engage une dépense, et seule une personne le choisit : un agent crée et règle un projet au palier par défaut.

S'y ajoutent les refus communs à toute opération — entrée invalide, authentification, autorisation, cible introuvable, conflit, limite de débit, indisponibilité — que le catalogue des erreurs décrit.

Exemples

Déclarer la racine d'un projet dans un dépôt à plusieurs applications :

{
  "projectId": "prj_01JQ8ZK4M7NP2RSTVWXYZ34567",
  "rootDirectory": "apps/web",
  "idempotencyKey": "racine-apps-web-2026-09-13"
}

Signaler une erreur sur cette page