Skip to main content

要件

  • Go 1.24 以降
  • 外部依存関係ゼロ — SDK は Go の標準ライブラリのみで構築されています
  • 有効な API キー — Square Cloud ダッシュボードMy Account → Regenerate API/CLI KEY でリクエストできます

インストール

モジュールは 2 つのパッケージを提供します:

クライアントの初期化

rest.NewClient(token, opts...) は基盤となる HTTP クライアントを構築し、rest.New(client) はそれをすべてのリソースを公開するインターフェースである rest.Rest にラップします。アイドル接続を解放するため、常に defer client.Close() を呼び出してください。

クライアント設定(ConfigOpt

rest.NewClient はトークンの後にオプションの ConfigOpt を受け取ります:

モジュール

rest.Rest はリソースドメインごとに 1 つのインターフェースを埋め込んでおり、加えてこのページで解説するユーザーおよびサービスのメソッドを備えています:

認証済みユーザーの取得

api.SelfUser() は、アカウント詳細と現在のプランを含む squarecloud.User を返します。

アプリケーションとデータベースの一覧取得

api.GetApplications()api.GetDatabases()/users/me エンドポイントを通して所有するすべてのリソースを一覧取得し、コンパクトな squarecloud.UserApplication / squarecloud.UserDatabase ディスクリプタを返します:
単一リソースの完全なレコードを取得するには GetApplication / GetDatabase を使用します — アプリケーションの管理Databases を参照してください。

snapshot 履歴の一覧取得(アカウント全体)

api.UserSnapshots(scope) は、指定したドメインについて所有するすべての snapshot を返します:
snapshot ペイロードの詳細については Snapshots を参照してください。

プラットフォームステータス

api.ServiceStatus() は、集約されたプラットフォームの健全性(公開ステータスページに表示されるものと同じデータ)を公開します。
ほとんどの v2 エンドポイントとは異なり、このルートはペイロードを標準の { status, code, response } エンベロープで ラップしません{ status, message } を直接返します。

リクエストオプション

すべてのメソッドは、末尾に ...rest.RequestOpt を受け取り、個々のリクエストをカスタマイズできます:

エラーハンドリング

2xx 以外のレスポンスはすべて、StatusCodeCodeMessage を公開する *rest.APIError として返されます。慣用的な errors.As でアンラップしてください:
よくあるチェックを簡単にする 2 つのヘルパーがあります:
  • rest.ErrorCode(err) string — API のエラーコードを返します(エラーが *rest.APIError でない場合は ""
  • rest.IsRateLimit(err) bool — エラーがレートリミット系のコード(KEEP_CALMRATE_LIMITRATE_LIMIT_EXCEEDEDRATELIMITDELAY_NOW)のいずれかであるかを報告します
エラーコードは @squarecloud/api-types で使われているものと同一です — JS SDK リファレンスの完全なコード表 を参照してください。