Square Cloud dans votre code, en JavaScript, Python et Go
Les SDK officiels de l’API Square Cloud. Déployez, redémarrez, lisez les logs, modifiez des fichiers, créez des snapshots et configurez des domaines depuis vos propres scripts, sans aucune dépendance à l’exécution.
Choisissez un langage et installez
Quatre paquets officiels : trois pour l’API Square Cloud et un pour Blob Storage. Chacun n’a besoin que du runtime de son langage.
JavaScript et TypeScript
@squarecloud/api
Node.js 22+, Deno, Bun et runtimes edge
npm install @squarecloud/apiPython
squarecloud-api
Python 3.11+, avec des clients synchrones et asynchrones
pip install squarecloud-apiGo
github.com/squarecloudofc/sdk-api-go/v3
Go 1.22+, avec un context à chaque appel
go get github.com/squarecloudofc/sdk-api-go/v3Blob Storage
@squarecloud/blob
Node.js 20+ et le navigateur
npm install @squarecloud/blob
Votre premier appel
Créez une clé API, définissez-la comme variable d’environnement SQUARECLOUD_API_KEY et lancez l’un de ces programmes. Chacun affiche votre nom et le nombre d’applications que la clé peut voir.
import { SquareCloudAPI } from "@squarecloud/api";const api = new SquareCloudAPI(process.env.SQUARECLOUD_API_KEY);const { user, applications } = await api.account.me();console.log(`Hi ${user.name}, you have ${applications.length} apps`);import osfrom squarecloud import SquareCloudwith SquareCloud(os.environ["SQUARECLOUD_API_KEY"]) as client: me = client.account.me() print(f"Hi {me['user']['name']}, you have {len(me['applications'])} apps")package mainimport ( "context" "fmt" "log" "os" "github.com/squarecloudofc/sdk-api-go/v3")func main() { c := squarecloud.New(os.Getenv("SQUARECLOUD_API_KEY")) me, err := c.Account.Me(context.Background()) if err != nil { log.Fatal(err) } fmt.Printf("Hi %s, you have %d apps\n", me.User.Name, len(me.Applications))}Tout ce que fait l’API, depuis votre code
Les SDK JavaScript, Python et Go couvrent chaque opération de la référence de l’API et sont vérifiés par rapport à sa spécification OpenAPI à chaque exécution de la CI. Les noms de méthodes ci-dessous sont en JavaScript ; Python utilise le snake_case et Go le PascalCase.
Applications
Lisez le statut d’une application ou de toutes, démarrez, arrêtez et redémarrez, et récupérez les logs et les métriques CPU, RAM et réseau.
apps.statusAllapps.restartapps.logsapps.metricsDéploiements
Créez une application à partir d’un zip, commitez-y de nouveaux fichiers, liez un dépôt et une branche GitHub ou configurez un webhook, et listez les déploiements passés.
apps.createapps.commitdeploys.linkGithubAppFichiers et variables
Listez, lisez, écrivez, déplacez et supprimez les fichiers de votre application, et lisez, définissez ou remplacez ses variables d’environnement.
files.writefiles.readenvs.setTemps réel
Suivez les logs et le statut d’une application en direct, sous forme d’itérateur que vous parcourez en boucle. Une connexion coupée se rouvre d’elle-même.
apps.realtimeSnapshots
Créez, listez et restaurez des snapshots d’applications et de bases de données, et téléchargez un fichier de snapshot en stream.
snapshots.createsnapshots.restoredownloadSnapshotRéseau
Configurez un domaine personnalisé, lisez ses enregistrements DNS, videz le cache et interrogez les analytics, erreurs et performances sur une période donnée.
network.setDomainnetwork.purgeCachenetwork.analyticsBases de données
Créez des bases de données MongoDB, PostgreSQL, MySQL et Redis, modifiez leur RAM, lisez leur statut et réinitialisez un mot de passe ou un certificat.
databases.createdatabases.resetCredentialsEspaces de travail
Créez des espaces de travail, ajoutez des membres avec un code d’invitation, changez leur groupe et partagez des applications avec votre équipe.
workspaces.members.addworkspaces.apps.addIA
Envoyez une requête de chat compatible OpenAI à l’AI Gateway de Square Cloud avec le même client et la même clé.
ai.chat
Blob Storage depuis JavaScript
@squarecloud/blob est le SDK de Blob Storage : téléversements, fichiers privés, liens de partage, règles par dossier et gateway compatible S3, sur Node.js et dans le navigateur. Découvrir Blob Storage
Gros téléversements
Passez un chemin de fichier, un Blob ou des octets. Les gros fichiers partent en parties parallèles, jusqu’à 10 GiB, lus en stream depuis le disque.
putlistFichiers privés
Un fichier privé n’a pas d’URL publique. Créez un lien de téléchargement qui expire, ou un lien de partage révocable à tout moment.
downloadUrlshares.createshares.revokeTéléversements depuis le navigateur
Votre serveur crée un token de téléversement de courte durée et le navigateur téléverse avec, si bien que la clé API ne quitte jamais votre serveur.
uploadTokens.create
Conçus de la même façon dans chaque langage
Zéro dépendance
Chaque SDK n’utilise que la bibliothèque standard de son langage ou le fetch de la plateforme : rien d’autre n’arrive dans votre lockfile.
Un seul type d’erreur
Chaque échec de l’API, du réseau ou local lève la même classe d’erreur, avec le statut HTTP et le code d’erreur de l’API.
Nouvelles tentatives sûres
Un timeout de 30 secondes par tentative, et de nouvelles tentatives uniquement pour les échecs qu’on peut répéter sans risque, jamais pour un 429.
Clés à portée limitée
Une clé peut être limitée à certaines permissions et à des applications ou bases de données précises. Les listes ne renvoient que ce qu’elle peut voir.
Le reste de la boîte à outils
La même clé API et la même variable SQUARECLOUD_API_KEY fonctionnent dans le terminal, en CI, dans votre éditeur et dans votre code.
Un plan pour chaque étape de votre projet
Commencez petit et évoluez quand vous en avez besoin, sans contrat d’engagement.
Hobby
Pour valider des idées, des bots et des projets personnels
À partir de 12,49 R$/mois ≈ 2,00 €
- 1 Go de RAM
- 1 vCPU
- Jusqu’à 4 projets
- Jusqu’à 2 Go sur le même plan
Standard
RecommandéPour la production, avec bases de données et domaines personnalisés
À partir de 44,99 R$/mois ≈ 7,20 €
- 4 Go de RAM
- 4 vCPU
- Jusqu’à 16 projets
- Jusqu’à 8 Go sur le même plan
Pro
Pour les projets à grande échelle, avec snapshots quotidiens des applications et statistiques avancées
À partir de 124,99 R$/mois ≈ 20,00 €
- 12 Go de RAM
- 6 vCPU
- Jusqu’à 48 projets
- Jusqu’à 24 Go sur le même plan
4,9 sur 5 · 402 avis sur Google + TrustpilotTrustpilot
Questions sur les SDK
Quels langages disposent d’un SDK officiel Square Cloud ?
JavaScript et TypeScript (@squarecloud/api), Python (squarecloud-api) et Go (github.com/squarecloudofc/sdk-api-go). Blob Storage a son propre SDK JavaScript, @squarecloud/blob. Les quatre sont open source sur GitHub.
Les SDK couvrent-ils toute l’API ?
Oui. Les SDK JavaScript, Python et Go couvrent chaque opération de la référence de l’API Square Cloud, plus le téléchargement des snapshots, et sont vérifiés par rapport à sa spécification OpenAPI à chaque exécution de la CI. Blob Storage et son gateway compatible S3 sont couverts par @squarecloud/blob.
Quel plan faut-il pour utiliser les SDK ?
Les SDK sont des paquets open source. L’API qu’ils appellent est incluse dans tous les plans Square Cloud, à partir de Hobby, et le nombre de requêtes par minute dépend du plan.
Où conserver ma clé API ?
Dans la variable d’environnement SQUARECLOUD_API_KEY, jamais dans votre code source. Ne donnez à chaque clé que les permissions et ressources dont elle a besoin, et révoquez-la dans les paramètres de sécurité de votre compte en cas de fuite.
Puis-je utiliser les SDK dans le navigateur ?
Les SDK de l’API sont conçus pour les serveurs : Node.js, Deno, Bun, runtimes edge, Python et Go. Dans un navigateur, la clé API serait exposée. Pour les téléversements depuis un navigateur, @squarecloud/blob utilise un token de téléversement de courte durée créé par votre serveur.
J’utilise une ancienne version. Qu’est-ce qui a changé ?
Les versions actuelles sont des réécritures : les méthodes sont sur le client, les réponses sont des données simples avec les noms de champs de l’API, et chaque échec a un seul type d’erreur. La documentation de chaque SDK contient un guide de migration depuis la version majeure précédente.
SDK, CLI ou GitHub Action : lequel choisir ?
Utilisez un SDK quand l’appel se trouve dans votre code, comme une commande de bot qui redémarre une application ou un script qui crée un snapshot. Utilisez la CLI dans le terminal, et la GitHub Action pour déployer à chaque push.