Skip to main content

Requisitos

  • Go 1.24 ou mais recente
  • Zero dependências externas — o SDK é construído apenas sobre a biblioteca padrão do Go
  • Uma chave de API válida — solicite uma no Dashboard da Square Cloud em Minha Conta → Regenerar API/CLI KEY

Instalação

O módulo é distribuído com dois pacotes:

Instanciando o client

rest.NewClient(token, opts...) constrói o client HTTP subjacente; rest.New(client) o encapsula em rest.Rest, a interface que expõe todos os recursos. Sempre use defer client.Close() para liberar conexões ociosas.

Configuração do client (ConfigOpt)

rest.NewClient aceita ConfigOpts opcionais após o token:

Módulos

rest.Rest incorpora uma interface por domínio de recurso, além dos métodos de usuário e de status documentados nesta página:

Obtendo o usuário autenticado

api.SelfUser() retorna um squarecloud.User com os detalhes da conta e o plano atual.

Listando suas aplicações e bancos de dados

api.GetApplications() e api.GetDatabases() listam tudo que você possui através do endpoint /users/me, retornando descritores compactos squarecloud.UserApplication / squarecloud.UserDatabase:
Para buscar o registro completo de um único recurso, use GetApplication / GetDatabase — veja Gerenciando aplicações e Bancos de dados.

Listando histórico de snapshots da conta

api.UserSnapshots(scope) retorna todos os snapshots que você possui para um determinado domínio:
Veja Snapshots para detalhes sobre os payloads de snapshot.

Status da plataforma

api.ServiceStatus() expõe a saúde agregada da plataforma (os mesmos dados exibidos na página pública de status).
Diferente da maioria dos endpoints v2, essa rota não encapsula o payload no envelope padrão { status, code, response } — ela responde com { status, message } diretamente.

Opções de requisição

Todos os métodos aceitam ...rest.RequestOpts ao final para customizar a requisição individual:

Tratamento de erros

Qualquer resposta não-2xx é retornada como um *rest.APIError expondo StatusCode, Code e Message. Desembrulhe com o idiomático errors.As:
Dois helpers simplificam as verificações mais comuns:
  • rest.ErrorCode(err) string — retorna o código de erro da API (ou "" quando o erro não é um *rest.APIError)
  • rest.IsRateLimit(err) bool — informa se o erro é algum dos códigos de rate limit (KEEP_CALM, RATE_LIMIT, RATE_LIMIT_EXCEEDED, RATELIMIT, DELAY_NOW)
Os códigos de erro são os mesmos usados pelo @squarecloud/api-types — veja a tabela completa de códigos na referência do SDK de JS.