Square Cloud nel tuo codice, in JavaScript, Python e Go
Gli SDK ufficiali dell’API di Square Cloud. Fai il deploy, riavvia, leggi i log, modifica file, crea snapshot e imposta domini dai tuoi script, senza dipendenze a runtime.
Scegli un linguaggio e installa
Quattro pacchetti ufficiali: tre per l’API di Square Cloud e uno per Blob Storage. Ognuno richiede solo il runtime del proprio linguaggio.
JavaScript e TypeScript
@squarecloud/api
Node.js 22+, Deno, Bun e runtime edge
npm install @squarecloud/apiPython
squarecloud-api
Python 3.11+, con client sincroni e asincroni
pip install squarecloud-apiGo
github.com/squarecloudofc/sdk-api-go/v3
Go 1.22+, con un context in ogni chiamata
go get github.com/squarecloudofc/sdk-api-go/v3Blob Storage
@squarecloud/blob
Node.js 20+ e il browser
npm install @squarecloud/blob
La tua prima chiamata
Crea una chiave API, impostala come variabile d’ambiente SQUARECLOUD_API_KEY ed esegui uno di questi programmi. Ognuno stampa il tuo nome e quante applicazioni la chiave può vedere.
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))}Tutto ciò che fa l’API, dal tuo codice
Gli SDK per JavaScript, Python e Go coprono ogni operazione del riferimento dell’API e vengono verificati rispetto alla sua specifica OpenAPI a ogni esecuzione della CI. I nomi dei metodi qui sotto sono in JavaScript; Python usa snake_case e Go usa PascalCase.
Applicazioni
Leggi lo stato di un’applicazione o di tutte, avviale, arrestale e riavviale, e recupera log e metriche di CPU, RAM e rete.
apps.statusAllapps.restartapps.logsapps.metricsDeploy
Crea un’applicazione da uno zip, fai il commit di nuovi file, collega un repository e un branch GitHub o imposta un webhook, ed elenca i deploy passati.
apps.createapps.commitdeploys.linkGithubAppFile e variabili
Elenca, leggi, scrivi, sposta ed elimina i file della tua applicazione, e leggi, imposta o sostituisci le sue variabili d’ambiente.
files.writefiles.readenvs.setTempo reale
Segui log e stato di un’applicazione mentre accadono, come un iteratore da scorrere in un ciclo. Una connessione caduta si riapre da sola.
apps.realtimeSnapshot
Crea, elenca e ripristina snapshot di applicazioni e database, e scarica un file di snapshot come stream.
snapshots.createsnapshots.restoredownloadSnapshotRete
Imposta un dominio personalizzato, leggi i suoi record DNS, svuota la cache e interroga analytics, errori e prestazioni per un intervallo di tempo.
network.setDomainnetwork.purgeCachenetwork.analyticsDatabase
Crea database MongoDB, PostgreSQL, MySQL e Redis, modificane la RAM, leggine lo stato e reimposta una password o un certificato.
databases.createdatabases.resetCredentialsSpazi di lavoro
Crea spazi di lavoro, aggiungi membri con un codice di invito, cambia il loro gruppo e condividi applicazioni con il tuo team.
workspaces.members.addworkspaces.apps.addIA
Invia una richiesta di chat compatibile con OpenAI all’AI Gateway di Square Cloud con lo stesso client e la stessa chiave.
ai.chat
Blob Storage da JavaScript
@squarecloud/blob è l’SDK per Blob Storage: upload, file privati, link di condivisione, regole per cartella e il gateway compatibile con S3, su Node.js e nel browser. Scopri Blob Storage
Upload di grandi dimensioni
Passa il percorso di un file, un Blob o dei byte. I file grandi vengono caricati in parti parallele, fino a 10 GiB, in stream dal disco.
putlistFile privati
Un file privato non ha un URL pubblico. Crea un link di download che scade, o un link di condivisione che puoi revocare in qualsiasi momento.
downloadUrlshares.createshares.revokeUpload dal browser
Il tuo server crea un token di upload di breve durata e il browser carica con quello, così la chiave API non lascia mai il tuo server.
uploadTokens.create
Costruiti allo stesso modo in ogni linguaggio
Zero dipendenze
Ogni SDK usa solo la libreria standard del proprio linguaggio o il fetch della piattaforma, quindi non aggiunge nient’altro al tuo lockfile.
Un solo tipo di errore
Ogni errore dell’API, di rete o locale lancia la stessa classe di errore, con lo stato HTTP e il codice di errore dell’API.
Nuovi tentativi sicuri
Un timeout di 30 secondi per tentativo, e nuovi tentativi solo per gli errori che si possono ripetere senza rischi, mai per un 429.
Chiavi con ambito limitato
Una chiave può essere limitata ad alcuni permessi e a specifiche applicazioni o database. Gli elenchi restituiscono solo ciò che può vedere.
Il resto degli strumenti
La stessa chiave API e la stessa variabile SQUARECLOUD_API_KEY funzionano nel terminale, in CI, nel tuo editor e nel tuo codice.
Un piano per ogni fase del tuo progetto
Inizia in piccolo e scala quando ne hai bisogno, senza contratti di permanenza.
Hobby
Per validare idee, bot e progetti personali
A partire da 12,49 BRL/mese ≈ 2,00 €
- 1 GB di RAM
- 1 vCPU
- Fino a 4 progetti
- Scala fino a 2 GB nello stesso piano
Standard
ConsigliatoPer la produzione, con database e dominio personalizzato
A partire da 44,99 BRL/mese ≈ 7,20 €
- 4 GB di RAM
- 4 vCPU
- Fino a 16 progetti
- Scala fino a 8 GB nello stesso piano
Pro
Per l'alta scala, con snapshot giornalieri delle applicazioni e analytics avanzati
A partire da 124,99 BRL/mese ≈ 20,00 €
- 12 GB di RAM
- 6 vCPU
- Fino a 48 progetti
- Scala fino a 24 GB nello stesso piano
4,9 su 5 · 402 recensioni su Google + TrustpilotTrustpilot
Domande sugli SDK
Quali linguaggi hanno un SDK ufficiale di Square Cloud?
JavaScript e TypeScript (@squarecloud/api), Python (squarecloud-api) e Go (github.com/squarecloudofc/sdk-api-go). Blob Storage ha il proprio SDK JavaScript, @squarecloud/blob. Tutti e quattro sono open source su GitHub.
Gli SDK coprono tutta l’API?
Sì. Gli SDK per JavaScript, Python e Go coprono ogni operazione del riferimento dell’API di Square Cloud, più il download degli snapshot, e vengono verificati rispetto alla sua specifica OpenAPI a ogni esecuzione della CI. Blob Storage e il suo gateway compatibile con S3 sono coperti da @squarecloud/blob.
Quale piano mi serve per usare gli SDK?
Gli SDK sono pacchetti open source. L’API che chiamano è inclusa in tutti i piani di Square Cloud, a partire da Hobby, e il numero di richieste al minuto dipende dal piano.
Dove devo conservare la mia chiave API?
Nella variabile d’ambiente SQUARECLOUD_API_KEY, mai nel codice sorgente. Dai a ogni chiave solo i permessi e le risorse di cui ha bisogno, e revocala nelle impostazioni di sicurezza del tuo account se viene esposta.
Posso usare gli SDK nel browser?
Gli SDK dell’API sono pensati per i server: Node.js, Deno, Bun, runtime edge, Python e Go. In un browser la chiave API sarebbe esposta. Per gli upload dal browser, @squarecloud/blob usa un token di upload di breve durata creato dal tuo server.
Uso una versione precedente. Cosa è cambiato?
Le versioni attuali sono state riscritte: i metodi stanno sul client, le risposte sono dati semplici con i nomi dei campi dell’API e ogni errore ha un solo tipo. La documentazione di ogni SDK include una guida alla migrazione dalla versione major precedente.
SDK, CLI o GitHub Action: quale usare?
Usa un SDK quando la chiamata sta nel tuo codice, come un comando di un bot che riavvia un’applicazione o uno script che crea uno snapshot. Usa la CLI nel terminale e la GitHub Action per fare il deploy a ogni push.