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.

De código abierto en GitHub, con los mismos métodos y errores en cada lenguaje.

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.

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.

index.mjs
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`);
main.py
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")
main.go
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.metrics

  • Despliegues

    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.linkGithubApp

  • Archivos 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.set

  • Tiempo 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.realtime

  • Snapshots

    Crea, lista y restaura snapshots de aplicaciones y bases de datos, y descarga un archivo de snapshot como stream.

    snapshots.createsnapshots.restoredownloadSnapshot

  • Red

    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.analytics

  • Bases 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.resetCredentials

  • Espacios 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.add

  • IA

    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.

    putlist

  • Archivos 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.revoke

  • Subidas 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.

Un plan para cada etapa de tu proyecto

Empieza pequeño y escala cuando lo necesites, sin contratos de permanencia.

4,9 de 5 · 402 reseñas en Google + TrustpilotTrustpilot

Alojado en un datacenter asociado con certificaciones
Tier 3ISO 27001SOC 2 Type IIProtección DDoS Always-On
Explora nuestra infraestructura

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.

¿Listo para escalar tu proyecto?

Únete a los más de 500 mil desarrolladores que han usado Square Cloud para alojar sus proyectos.

  • Precios predecibles
  • Sin sorpresas en la factura
  • Deploy en segundos
  • Alta disponibilidad
  • Escala con estabilidad
  • Reinicio automático
  • SSL y seguridad incluidos
  • Contenedores aislados