A Square Cloud no seu código, em JavaScript, Python e Go

Os SDKs oficiais da API da Square Cloud. Faça deploy, reinicie, leia logs, edite arquivos, crie snapshots e configure domínios pelos seus próprios scripts, sem nenhuma dependência em tempo de execução.

Open source no GitHub, com os mesmos métodos e erros em todas as linguagens.

Escolha a linguagem e instale

Quatro pacotes oficiais: três para a API da Square Cloud e um para o Blob Storage. Cada um precisa só do runtime da sua linguagem.

Sua primeira chamada

Crie uma chave de API, defina-a na variável de ambiente SQUARECLOUD_API_KEY e rode um destes programas. Cada um mostra o seu nome e quantas aplicações a chave enxerga.

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))}

Tudo o que a API faz, pelo seu código

Os SDKs de JavaScript, Python e Go cobrem todas as operações da referência da API, conferidas contra a especificação OpenAPI a cada execução do CI. Os nomes abaixo estão em JavaScript; em Python são snake_case e em Go, PascalCase.

  • Aplicações

    Consulte o status de uma aplicação ou de todas, inicie, pare e reinicie, e busque logs e métricas de CPU, RAM e rede.

    apps.statusAllapps.restartapps.logsapps.metrics

  • Deploys

    Crie uma aplicação a partir de um zip, envie novos arquivos para ela, vincule um repositório e branch do GitHub ou um webhook, e liste os deploys anteriores.

    apps.createapps.commitdeploys.linkGithubApp

  • Arquivos e variáveis

    Liste, leia, escreva, mova e apague os arquivos da aplicação, e consulte, defina ou substitua as variáveis de ambiente.

    files.writefiles.readenvs.set

  • Tempo real

    Acompanhe os logs e o status de uma aplicação no momento em que acontecem, como um iterador que você percorre. Se a conexão cair, ela reabre sozinha.

    apps.realtime

  • Snapshots

    Crie, liste e restaure snapshots de aplicações e bancos de dados, e baixe o arquivo de um snapshot como stream.

    snapshots.createsnapshots.restoredownloadSnapshot

  • Rede

    Configure um domínio personalizado, leia os registros DNS, limpe o cache e consulte analytics, erros e desempenho de um período.

    network.setDomainnetwork.purgeCachenetwork.analytics

  • Bancos de dados

    Crie bancos MongoDB, PostgreSQL, MySQL e Redis, altere a RAM, consulte o status e redefina a senha ou o certificado.

    databases.createdatabases.resetCredentials

  • Workspaces

    Crie workspaces, adicione membros com um código de convite, altere o grupo deles e compartilhe aplicações com a equipe.

    workspaces.members.addworkspaces.apps.add

  • IA

    Envie uma requisição de chat compatível com a OpenAI ao AI Gateway da Square Cloud, com o mesmo cliente e a mesma chave.

    ai.chat

Blob Storage pelo JavaScript

@squarecloud/blob é o SDK do Blob Storage: uploads, arquivos privados, links de compartilhamento, regras de pasta e o gateway compatível com S3, no Node.js e no navegador. Conhecer o Blob Storage

  • Uploads grandes

    Passe um caminho, um Blob ou bytes. Arquivos grandes sobem em partes paralelas, até 10 GiB, lidos direto do disco.

    putlist

  • Arquivos privados

    Um arquivo privado não tem URL pública. Crie um link de download que expira, ou um link de compartilhamento que você revoga quando quiser.

    downloadUrlshares.createshares.revoke

  • Uploads pelo navegador

    Seu servidor cria um token de upload de curta duração e o navegador envia com ele, então a chave de API nunca sai do servidor.

    uploadTokens.create

Feitos do mesmo jeito em todas as linguagens

  • Zero dependências

    Cada SDK usa só a biblioteca padrão da linguagem ou o fetch da plataforma, então não acrescenta mais nada ao seu lockfile.

  • Um tipo de erro

    Toda falha da API, de rede ou local lança a mesma classe de erro, com o status HTTP e o código de erro da API.

  • Retentativas seguras

    Timeout de 30 segundos por tentativa, e retentativa só nas falhas que podem ser repetidas com segurança, nunca num 429.

  • Chaves com escopo

    Uma chave pode ser limitada a algumas permissões e a aplicações ou bancos específicos. As listas trazem só o que ela enxerga.

Um plano para cada fase do seu projeto

Comece pequeno e escale quando precisar, sem contratos de fidelidade.

4,9 de 5 · 402 avaliações no Google + TrustpilotTrustpilot

Hospedado em datacenter parceiro com certificações
Tier 3ISO 27001SOC 2 Type IIProteção DDoS Always-On
Conheça nossa infraestrutura

Perguntas sobre os SDKs

Quais linguagens têm um SDK oficial da Square Cloud?

JavaScript e TypeScript (@squarecloud/api), Python (squarecloud-api) e Go (github.com/squarecloudofc/sdk-api-go). O Blob Storage tem o próprio SDK de JavaScript, @squarecloud/blob. Os quatro são open source no GitHub.

Os SDKs cobrem a API inteira?

Sim. Os SDKs de JavaScript, Python e Go cobrem todas as operações da referência da API da Square Cloud, além do download de snapshots, e são conferidos contra a especificação OpenAPI a cada execução do CI. O Blob Storage e o gateway compatível com S3 ficam com o @squarecloud/blob.

Qual plano eu preciso para usar os SDKs?

Os SDKs são pacotes open source. A API que eles chamam está incluída em todos os planos da Square Cloud, a partir do Hobby, e o número de requisições por minuto depende do plano.

Onde devo guardar a minha chave de API?

Na variável de ambiente SQUARECLOUD_API_KEY, nunca no código-fonte. Dê a cada chave só as permissões e os recursos de que ela precisa, e revogue-a nas configurações de segurança da conta se ela vazar.

Posso usar os SDKs no navegador?

Os SDKs da API são feitos para servidores: Node.js, Deno, Bun, runtimes de edge, Python e Go. No navegador a chave de API ficaria exposta. Para uploads pelo navegador, o @squarecloud/blob usa um token de upload de curta duração criado pelo seu servidor.

Uso uma versão antiga. O que mudou?

As versões atuais foram reescritas: os métodos ficam no cliente, as respostas são dados simples com os nomes de campo da própria API, e toda falha tem um único tipo de erro. A documentação de cada SDK tem um guia de migração da versão major anterior.

SDK, CLI ou GitHub Action: qual devo usar?

Use um SDK quando a chamada mora no seu código, como um comando de bot que reinicia uma aplicação ou um script que cria um snapshot. Use a CLI no terminal, e a GitHub Action para fazer deploy a cada push.

Pronto para escalar seu projeto?

Junte-se aos mais de 500 mil desenvolvedores que já usaram a Square Cloud para hospedar seus projetos.

  • Preços previsíveis
  • Sem surpresas na fatura
  • Deploy em segundos
  • Alta disponibilidade
  • Escala com estabilidade
  • Reinício automático
  • SSL e segurança inclusos
  • Containers isolados