Square Cloud en tu código, en JavaScript, Python y Go
Los SDK oficiales de la API de Square Cloud. Despliega, reinicia, lee logs, edita archivos, crea snapshots y configura dominios desde tus propios scripts, sin dependencias en tiempo de ejecución.
Elige un lenguaje e instala
Cuatro paquetes oficiales: tres para la API de Square Cloud y uno para Blob Storage. Cada uno solo necesita el runtime de su lenguaje.
JavaScript y TypeScript
@squarecloud/api
Node.js 22+, Deno, Bun y runtimes edge
npm install @squarecloud/apiPython
squarecloud-api
Python 3.11+, con clientes síncronos y asíncronos
pip install squarecloud-apiGo
github.com/squarecloudofc/sdk-api-go/v3
Go 1.22+, con un context en cada llamada
go get github.com/squarecloudofc/sdk-api-go/v3Blob Storage
@squarecloud/blob
Node.js 20+ y el navegador
npm install @squarecloud/blob
Tu primera llamada
Crea una clave de API, defínela como la variable de entorno SQUARECLOUD_API_KEY y ejecuta uno de estos programas. Cada uno muestra tu nombre y cuántas aplicaciones puede ver la clave.
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))}Todo lo que hace la API, desde tu código
Los SDK de JavaScript, Python y Go cubren todas las operaciones de la referencia de la API y se verifican contra su especificación OpenAPI en cada ejecución de CI. Los nombres de métodos de abajo están en JavaScript; Python usa snake_case y Go usa PascalCase.
Aplicaciones
Lee el estado de una aplicación o de todas, inícialas, detenlas y reinícialas, y obtén logs y métricas de CPU, RAM y red.
apps.statusAllapps.restartapps.logsapps.metricsDespliegues
Crea una aplicación a partir de un zip, haz commit de archivos nuevos, vincula un repositorio y una rama de GitHub o configura un webhook, y lista los despliegues anteriores.
apps.createapps.commitdeploys.linkGithubAppArchivos y variables
Lista, lee, escribe, mueve y elimina los archivos de tu aplicación, y obtén, define o reemplaza sus variables de entorno.
files.writefiles.readenvs.setTiempo real
Sigue los logs y el estado de una aplicación en el momento, como un iterador que recorres en un bucle. Si la conexión se cae, se vuelve a abrir sola.
apps.realtimeSnapshots
Crea, lista y restaura snapshots de aplicaciones y bases de datos, y descarga un archivo de snapshot como stream.
snapshots.createsnapshots.restoredownloadSnapshotRed
Configura un dominio personalizado, lee sus registros DNS, purga la caché y consulta analíticas, errores y rendimiento de un periodo de tiempo.
network.setDomainnetwork.purgeCachenetwork.analyticsBases de datos
Crea bases de datos MongoDB, PostgreSQL, MySQL y Redis, cambia su RAM, consulta su estado y restablece una contraseña o un certificado.
databases.createdatabases.resetCredentialsEspacios de trabajo
Crea espacios de trabajo, añade miembros con un código de invitación, cambia su grupo y comparte aplicaciones con tu equipo.
workspaces.members.addworkspaces.apps.addIA
Envía una solicitud de chat compatible con OpenAI al AI Gateway de Square Cloud con el mismo cliente y la misma clave.
ai.chat
Blob Storage desde JavaScript
@squarecloud/blob es el SDK de Blob Storage: subidas, archivos privados, enlaces para compartir, reglas por carpeta y el gateway compatible con S3, en Node.js y en el navegador. Ver Blob Storage
Subidas grandes
Pasa una ruta de archivo, un Blob o bytes. Los archivos grandes suben en partes paralelas, hasta 10 GiB, leídos en stream desde el disco.
putlistArchivos privados
Un archivo privado no tiene URL pública. Crea un enlace de descarga que caduca o un enlace para compartir que puedes revocar cuando quieras.
downloadUrlshares.createshares.revokeSubidas desde el navegador
Tu servidor crea un token de subida de corta duración y el navegador sube con él, así la clave de API nunca sale de tu servidor.
uploadTokens.create
Hechos igual en cada lenguaje
Cero dependencias
Cada SDK usa solo la biblioteca estándar de su lenguaje o el fetch de la plataforma, así que no añade nada más a tu lockfile.
Un solo tipo de error
Todo fallo de la API, de red o local lanza la misma clase de error, con el estado HTTP y el código de error de la API.
Reintentos seguros
Un timeout de 30 segundos por intento, y reintentos solo para los fallos que se pueden repetir sin riesgo, nunca para un 429.
Claves con alcance
Una clave puede limitarse a algunos permisos y a aplicaciones o bases de datos concretas. Las listas devuelven solo lo que puede ver.
El resto de las herramientas
La misma clave de API y la misma variable SQUARECLOUD_API_KEY funcionan en la terminal, en CI, en tu editor y en tu código.
Un plan para cada etapa de tu proyecto
Empieza pequeño y escala cuando lo necesites, sin contratos de permanencia.
Hobby
Para validar ideas, bots y proyectos personales
Desde 12,49 BRL/mes ≈ 2,25 US$
- 1 GB de RAM
- 1 vCPU
- Hasta 4 proyectos
- Escala hasta 2 GB en el mismo plan
Standard
RecomendadoPara producción, con bases de datos y dominio propio
Desde 44,99 BRL/mes ≈ 8,10 US$
- 4 GB de RAM
- 4 vCPU
- Hasta 16 proyectos
- Escala hasta 8 GB en el mismo plan
Pro
Para alta escala, con snapshots diarios de las aplicaciones y analytics avanzado
Desde 124,99 BRL/mes ≈ 22,50 US$
- 12 GB de RAM
- 6 vCPU
- Hasta 48 proyectos
- Escala hasta 24 GB en el mismo plan
4,9 de 5 · 402 reseñas en Google + TrustpilotTrustpilot
Preguntas sobre los SDK
¿Qué lenguajes tienen un SDK oficial de Square Cloud?
JavaScript y TypeScript (@squarecloud/api), Python (squarecloud-api) y Go (github.com/squarecloudofc/sdk-api-go). Blob Storage tiene su propio SDK de JavaScript, @squarecloud/blob. Los cuatro son de código abierto en GitHub.
¿Los SDK cubren toda la API?
Sí. Los SDK de JavaScript, Python y Go cubren todas las operaciones de la referencia de la API de Square Cloud, además de la descarga de snapshots, y se verifican contra su especificación OpenAPI en cada ejecución de CI. Blob Storage y su gateway compatible con S3 están cubiertos por @squarecloud/blob.
¿Qué plan necesito para usar los SDK?
Los SDK son paquetes de código abierto. La API a la que llaman está incluida en todos los planes de Square Cloud, desde Hobby, y la cantidad de solicitudes por minuto depende del plan.
¿Dónde debo guardar mi clave de API?
En la variable de entorno SQUARECLOUD_API_KEY, nunca en tu código fuente. Da a cada clave solo los permisos y recursos que necesita, y revócala en la configuración de seguridad de tu cuenta si se filtra.
¿Puedo usar los SDK en el navegador?
Los SDK de la API están pensados para servidores: Node.js, Deno, Bun, runtimes edge, Python y Go. En un navegador, la clave de API quedaría expuesta. Para subidas desde un navegador, @squarecloud/blob usa un token de subida de corta duración creado por tu servidor.
Uso una versión anterior. ¿Qué cambió?
Las versiones actuales están reescritas: los métodos están en el cliente, las respuestas son datos simples con los nombres de campo de la propia API y todo fallo tiene un solo tipo de error. La documentación de cada SDK incluye una guía de migración desde la versión principal anterior.
SDK, CLI o GitHub Action: ¿cuál debo usar?
Usa un SDK cuando la llamada vive en tu código, como un comando de bot que reinicia una aplicación o un script que crea un snapshot. Usa la CLI en la terminal, y la GitHub Action para desplegar con cada push.