Endpoints

Publier une application

Mettez en ligne l’application enregistrée, comme le fait le bouton Publish.

POSThttps://www.setherion.com/api/v1/projects/{id}/publish

Forfait : Tous les forfaits

Met l’application en ligne exactement comme elle est enregistrée, par les mêmes étapes que le bouton Publish de l’éditeur. Une application déjà publiée garde son adresse ; une application publiée pour la première fois reçoit une adresse construite à partir de son nom, sur setherion.app.

Publier ne consomme pas de crédits. Vous devez pouvoir modifier l’application. Par l’API, c’est limité à 100 publications par compte et par jour, ce que personne n’atteint en travaillant à la main ; le bouton de l’éditeur n’a pas de telle limite.

Requête

Aucun corps n’est nécessaire.

bash
curl -X POST https://www.setherion.com/api/v1/projects/7c1e4a52-9b0d-4f3e-8a61-2d5f0c9e7b14/publish \
  -H "Authorization: Bearer $SETHERION_API_KEY"

Réponse

json
{ "ok": true, "url": "https://coffee-shop.setherion.app", "ready": true }
ChampTypeSignification
okbooleantrue quand l’application a été publiée.
urlstringL’endroit où l’application est en ligne.
readybooleanfalse quand l’adresse est encore en cours de configuration. Elle fonctionne d’ici une minute ou deux.

Publier deux fois la même application enregistrée est sans risque : le deuxième appel répond avec la même adresse.

Modifier, puis publier

Ce qui est publié, c’est ce qui est enregistré, et une modification est enregistrée quand elle se termine. Donc une modification suivie d’une publication met le changement en ligne :

js
const base = 'https://www.setherion.com/api/v1/projects'
const headers = {
  Authorization: `Bearer ${process.env.SETHERION_API_KEY}`,
  'Content-Type': 'application/json',
}

const edit = await fetch(`${base}/${appId}/edit`, {
  method: 'POST',
  headers,
  body: JSON.stringify({ prompt: 'Add a contact form' }),
}).then(r => r.json())

if (edit.ok) {
  const live = await fetch(`${base}/${appId}/publish`, { method: 'POST', headers }).then(r => r.json())
  console.log(live.url)
}

Erreurs

StatutQuand
400Le code de l’application contient un secret, par exemple une clé d’API, et n’a pas été publié. L’erreur indique où.
401La clé est absente, erronée ou révoquée.
404Cette application n’existe pas, ou votre clé ne peut pas la modifier.
409L’application n’a pas encore de code, ou l’adresse dont elle a besoin n’est pas disponible, ou c’est une application privée qui ne peut pas aller sur un domaine à vous. L’erreur précise lequel.
429Vous avez publié 100 fois par l’API aujourd’hui. Le compte repart de zéro demain.
502La publication a échoué de notre côté, ou la construction chez l’hébergeur a échoué. Réessayez.
503La publication est brièvement indisponible. Réessayez dans une minute.
Les phrases exactes
Statuterror
400Publishing would put a secret key on the open internet: ... suivi du type de secret, du fichier et de la ligne, et de ce qu’il faut faire à la place.
404No such app on this account.
409This app has no code yet. Build it in Setherion first.
409The address coffee-shop.setherion.app belongs to another app. Choose a different one.
409Could not find a free address for this app. Rename it and publish again.
409This app is private, and a private app can only be published on its setherion.app address. To use a domain of your own, make it public first. Otherwise try again in a moment. Nothing was published.
429That is 100 publishes through the API today. The count resets tomorrow.
502The build failed on the host, so this version is not online. Publish again, and if it fails again, ask for a fix in the editor.
502The build was cancelled on the host, so this version is not online. Publish again.
503Publishing is briefly unavailable. Try again in a minute.

Cette page vous a-t-elle été utile ?

Rejoindre la communauté

Questions, idées et ce que construisent les autres.