このページのエンドポイントは、ウェブサイトアプリケーション — ウェブドメインを持つアプリ — にのみ適用されます。ウェブ以外のアプリケーションに対して呼び出すと失敗します。
カスタムドメイン
api.SetApplicationCustomDomain(appID, domain) は、ウェブサイトに紐付けるカスタムドメインを設定します。
DNS レコード
カスタムドメインを紐付けた後は、レジストラ側で DNS を設定する必要があります。api.GetApplicationDNS(appID) は、作成すべきレコードを []squarecloud.DNSRecord として返します。
| Field | Type | Description |
|---|---|---|
Type | string | "txt" または "cname" — TXT レコードは所有権と SSL の検証を担い、CNAME はトラフィックを運び、常に cname.squareweb.app を指します |
Name | string | 作成するレコード名 |
Value | string | レコードの値 |
Status | string | 検証状態: "pending"、"pending_validation" または "active" |
アナリティクス
api.GetApplicationAnalytics(appID, start, end) は、指定した期間の集約されたエッジアナリティクスを squarecloud.NetworkAnalytics として返します。期間の指定は必須で、最大保持期間は 7 日間 です。
Visits、Countries、Devices、OS、Browsers、Protocols、Methods、Paths、Referers、Providers)と、期間全体のバケット(IPs、StatusCodes、Bots、ContentTypes)が含まれます。
アプリケーションの作成前に完全に収まる期間を指定した場合、API は空のオブジェクトを返します — レスポンス内のすべてのスライスが
nil になります。インデックスアクセスの前に長さを確認してください。ドリルダウンフィルタ
期間に加えて、このエンドポイントはクエリパラメータとしてオプションのフィルタを受け付けます —rest.WithQueryParam で渡してください。各フィルタは、レスポンス内のすべての内訳を一度に絞り込みます:
| Filter | Notes |
|---|---|
country | 2 文字の国コード、例: "BR" |
ip | IP の完全一致 |
path | 前方一致、例: "/api" |
status | HTTP ステータスコード、例: "404" |
os | オペレーティングシステム |
browser | ブラウザ名 |
protocol | リクエストプロトコル |
referer | リファラのないリクエストには "Direct" を使用 |
provider | ネットワークプロバイダ、例: "GOOGLE (15169)"(ASN) |
content_type | 未分類のコンテンツタイプには "Unknown" を使用 |
bot | 通常(非ボット)のトラフィックには "Unverified" を使用 |
エラートラッキング
api.GetApplicationNetworkErrors(appID, start, end) は、エッジのエラー内訳を返します。デフォルトでは 5xx エラーのみが含まれます — 4xx を含めるには include_4xx=true を追加してください。
リクエスト単位のログ
api.GetApplicationNetworkLogs(appID, start, end) は、リクエスト単位のエッジログを返します。
リクエスト単位のログには Pro プラン 以上が必要です。
レイテンシパーセンタイル
api.GetApplicationNetworkPerformance(appID, start, end) は、エッジレイヤーとオリジンレイヤーの p50 / p95 / p99 レイテンシを返します。
パフォーマンスメトリクスには Pro プラン 以上が必要です。
エッジキャッシュのパージ
api.PurgeApplicationCache(appID) は、アプリケーションのドメインに対するエッジキャッシュ全体を無効化します。
アカウント全体のドメインとロードバランサー
この 2 つのメソッドは、単一のウェブサイトではなく、アカウント内のすべてのアプリケーションを対象に動作します。すべてのドメインの一覧取得
api.GetApplicationDomains() は、アカウントのすべてのアプリケーションにわたって設定されているすべてのドメインを []squarecloud.AppDomain として返します。カスタムドメインが先に列挙され、ウェブドメインを持たないアプリケーションは含まれません。
ロードバランサー
api.GetLoadBalancers() は、カスタムドメインを共有するアプリケーションをグループ化し、squarecloud.LoadBalancers を返します。
Limit は、アカウントのプランで 1 つのドメインを共有できるアプリケーションの最大数です: 2(Standard)、5(Pro)、10(Enterprise)。
