Analytics REST API
The Privatus Analytics REST API: add .json to any app URL and send a token. Conventions and a reference of every operation, generated from the code.
Every page and action in Privatus Analytics is also an API endpoint (only
form pages such as new and edit have no JSON form). There's no
separate /api/v1: add .json to a URL and send an API token.
curl https://privatusanalytics.com/sites/pa_7Q2K9XH3AB/stats/aggregate.json?period=7d \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
{
"data": {
"period": { "from": "2026-09-23T00:00:00Z", "to": "2026-09-30T00:00:00Z" },
"metrics": {
"visitors": 1840, "visits": 2310, "pageviews": 5122,
"views_per_visit": 2.22, "bounce_rate": 41.3,
"visit_duration": 48000, "revenue": 129900
}
}
}
The reference below lists every operation with its method, path, permission, input schema and response schema. It's generated from the running code, as is the OpenAPI 3.1 document, so neither can drift from what the server does. The same operations are MCP tools.
Conventions#
| Base URL | https://privatusanalytics.com |
| Format | JSON. Add .json to the path (or send Accept: application/json) |
| Auth | Authorization: Bearer pat_… (Authentication) |
| Ids | Public ids with a prefix: ws_… workspaces, pa_… sites, goal_… goals, seg_… segments, wh_… webhooks |
| Reads | GET with query parameters |
| Writes | POST, PATCH, DELETE with a JSON body of flat fields |
| Success | { "data": … }, plus "meta" for lists |
| Errors | { "error": { "code", "message", "details" } } (Errors) |
| Lists | page and per_page (max 100) (Pagination) |
| Times | ISO 8601 in UTC. Date parameters (from, to) are days in the site's timezone |
| Money | Minor units (cents) in the site currency, e.g. revenue: 129900 = 1,299.00 |
| Durations | Milliseconds |
Common tasks#
| Task | Operation |
|---|---|
| List workspaces | GET /workspaces.json |
| List sites | GET /workspaces/{workspace_id}/sites.json |
| Headline metrics | GET /sites/{site_id}/stats/aggregate.json |
| Chart data | GET /sites/{site_id}/stats/timeseries.json |
| Top pages, sources, countries… | GET /sites/{site_id}/breakdown/{dimension}.json |
| Everything on the Overview | GET /sites/{site_id}/overview.json |
| Live visitors | GET /sites/{site_id}/live.json |
| Add a note (e.g. a deploy) | POST /sites/{site_id}/notes.json |
See Stats endpoints and Examples.
In this section#
Authentication · Errors · Pagination · Rate limits · Filters · Stats endpoints · Examples · Webhooks · Changelog and deprecation
すべての操作
Authorization: Bearer pat_… を送信します。トークンはワークスペース設定のAPIトークンで作成します。認証ガイド。
どのパスにも .json を付けられます。レスポンスは { "data": … }、エラーは { "error": { "code", "message" } } です。エラー。
同じトークンで https://privatusanalytics.com/mcp にJSON-RPCをPOSTします。以下の各操作がツールになります。MCPガイド。
openapi.json をダウンロード · 527件の操作
APIトークン
POST
/workspaces/:workspace_id/api_tokens.json
APIトークンを作成(トークンは一度だけ返されます)
api_tokens_create
ワークスペース内で、呼び出したメンバー用のAPIトークンを作成し、シークレットを token フィールドで一度だけ返します。すぐにコピーしてください。再度読み取ることはできず、紛失したトークンは無効化して作り直す必要があります。トークンでできることは、そのメンバーの権限の範囲内に絞り込むことしかできません。permissions を省略すると、メンバー自身のすべての権限が既定になります(空のリストを明示するとエラーになり、持っていない権限を要求した場合もエラーです)。site_ids には公開サイトID(pa_...)を指定し、トークンをそれらのサイトに限定します。空の場合は、メンバーがアクセスできるすべてのサイトで使えます(またはこの呼び出しに使ったトークンのサイトリストを引き継ぎます)。expires_at は任意のISO 8601形式で、未来の日時かつ最長3年先までです。有効期限のないトークンにするには省略してください。allowed_ips は、トークンをそれらのIPまたはCIDR範囲に限定します。この呼び出しを行うトークンには tokens.manage が必要です。二要素認証を必須にしているワークスペースでは、自分用の第二要素を持たないメンバーのトークンは拒否されます。api_tokens_list と同じフィールドに加えて token を返します。
権限: member
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/api_tokens.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/workspaces/:workspace_id/api_tokens/:id.json
APIトークンを無効化
api_tokens_delete
APIトークンを即座に、永久に無効化します。以後、そのトークンを使うリクエストは失敗し、無効化したトークンを元に戻すことはできません。代わりに新しいトークンを作成してください。トークンのレコードは status が revoked の状態で一覧に残ります(表示するには api_tokens_list で include_revoked を指定します)。すでに無効化されたトークンを再度無効化しても何も変わりません。id(uuid)は api_tokens_list から取得してください。自分のトークンは無効化できます。他のメンバーのトークンを無効化するには tokens.manage と、そのトークンが対象とするすべてのサイトへの権限が必要です。この呼び出しを行うトークンには tokens.manage が必要です。シークレットを含まない、無効化されたトークンを返します。
権限: member
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/workspaces/:workspace_id/api_tokens/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/api_tokens.json
APIトークンを一覧表示
api_tokens_list
ワークスペースのAPIトークンを、新しい順にページ分割して一覧表示します。tokens.manage 権限がない場合は自分のトークンのみ、ある場合はすべてのメンバーのトークンが表示されます。無効化済みおよび期限切れのトークンは、include_revoked が true でない限り表示されません。各項目には、id(uuid、api_tokens_delete で使用)、name、token_prefix(トークンを見分けるための先頭の数文字)、owner(メンバーのメールアドレス)、permissions(analytics.read などの名前)、site_ids(公開サイトID pa_...。空の配列はオーナーがアクセスできるすべてのサイトを意味します)、allowed_ips、oauth_client(OAuth経由で発行された場合は接続したアプリの名前、それ以外は null)、status(active、expired、revoked のいずれか)、expires_at、last_used_at、revoked_at、created_at が含まれます。シークレット自体は一覧では返されず、token は常に null です。api_tokens_create でのみ一度だけ表示されます。
権限: member
curl https://privatusanalytics.com/workspaces/:workspace_id/api_tokens.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
Domain Rating
GET
/sites/:site_id/domain-rating.json
Domain Ratingレポート: 最新のレーティング、被リンクと発リンク、前回リリースからの変化、月ごとの推移
domain_rating_report
サイトのドメインレーティングを返します。これは、ドメインへのリンクの強さを0から100で推定したもので、被リンク数と発リンク数、およびそれらの履歴も含まれます。これはGoogleの指標ではなく、Privatus Analytics独自のスコアです。レーティングはリリースごとに月に1回更新されるため、変化は月単位で表れます。months(1から120、既定は12)は、含める月ごとの履歴のポイント数を設定します。結果には、domain、checked_at(サイトが最後にチェックされた日時で、一度もない場合は null)、release(最新データの月を YYYY-MM で)、rating、inbound_links、outbound_links(まだわからない場合はそれぞれ null)、changes(前回のリリースとの差としての同じ3つの指標で、どちらかが不明な場合は null)、history(month、rating、inbound_links、outbound_links を持つ月ごとの1行。古い順)が含まれます。新しいサイトは、数分間レーティングがつかないことがあります。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/domain-rating.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
SCIM
POST
/scim/v2/Users.json
ユーザーをプロビジョニング
scim_users_create
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/scim/v2/Users.json \
-H "Content-Type: application/json" -d '{…}'
DELETE
/scim/v2/Users/:id.json
ユーザーのプロビジョニングを解除
scim_users_delete
権限: public
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/scim/v2/Users/:id.json \
-H "Content-Type: application/json" -d '{…}'
GET
/scim/v2/Users.json
プロビジョニング済みのユーザーを一覧表示
scim_users_list
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/scim/v2/Users.json
GET
/scim/v2/Users/:id.json
プロビジョニング済みのユーザーを取得
scim_users_get
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/scim/v2/Users/:id.json
PATCH
/scim/v2/Users/:id.json
ユーザーを更新(active、name をPATCH)
scim_users_update
権限: public
· HTTPのみ(MCPツールではありません)
curl -X PATCH https://privatusanalytics.com/scim/v2/Users/:id.json \
-H "Content-Type: application/json" -d '{…}'
SSO
POST
/workspaces/:workspace_id/sso/activate.json
テスト済みのSSO設定を有効化
sso_activate
ワークスペースのSSOをオンにします。設定の status がすでに tested である必要があります。これは、テストログインが成功した後に行われ(アプリのワークスペースSSO設定ページから開始します。ブラウザでのサインインが必要で、ここからは実行できません)、またはすでに active である必要があります。Businessプランのみです。有効化した後は、メンバーはSSOでサインインでき、sso_update で enforced を設定すると、すべてのログインにSSOが必須になります。設定が未テストの場合や、プランにSSOがない場合は失敗します。workspace.manage が必要です。status が active の設定を返します(sso_get を参照)。
権限: workspace.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/sso/activate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/sso/deactivate.json
SSOをオフにする(下書きに戻す)
sso_deactivate
設定を draft に戻し、enforced をクリアして、SSOをオフにします。そのため、メンバーはワークスペースの他のログイン方法に戻ります。プロバイダーの詳細は保持されます。再び有効化するには、新しいテストログインと sso_activate が必要です。先に、メンバーが他のサインイン方法を持っていることを確認してください。これはどのプランでも機能します。workspace.manage が必要です。status が draft の設定を返します(sso_get を参照)。
権限: workspace.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/sso/deactivate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/sso/scim_token.json
新しいSCIMトークンを生成(一度だけ表示されます)
sso_scim_token
権限: workspace.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/sso/scim_token.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/sso.json
SSO設定を取得
sso_get
ワークスペースのシングルサインオン(SSO)設定を返します。存在しない場合は、空の下書きを返します。フィールドは、protocol(saml または oidc)、status(draft、testing、tested、active)、enforced(メンバーはSSO経由でサインインする必要がある)、domains(このSSOを使うメールドメイン)、SAMLの idp_sso_url と idp_entity_id、OIDCの oidc_issuer と oidc_client_id、default_role、jit_provisioning(初回のSSOログイン時にメンバーを作成)、scim_enabled です。シークレットは決して返されず、真偽値の idp_cert_present と oidc_client_secret_present のみが返されます。SSOはBusinessプランの機能です。workspace.manage が必要です。
権限: workspace.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/sso.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/workspaces/:workspace_id/sso.json
SSO設定を作成または更新
sso_update
ワークスペースのSSO設定を作成または編集します。Businessプランのみです。送信した項目のみが変更されます。SAMLの場合は、protocol に saml を指定し、idp_sso_url、idp_entity_id、idp_cert(PEMテキスト)を送信します。OIDCの場合は、protocol に oidc を指定し、oidc_issuer、oidc_client_id、oidc_client_secret を送信します。oidc_client_secret は書き込み専用で、空の値を送ると既存のシークレットが保たれます。domains は、このSSOを使うメールドメインを一覧にします。default_role は、初回ログイン時のプロビジョニングまたはSCIMで作成されたメンバーに付与されるロールで(owner と custom は不可)、自分が付与できるロールのみを設定できます。IDプロバイダーの詳細を変更すると、active または tested の設定は draft に戻り、enforced がオフになるため、sso_activate が機能するようになる前に、再度テストする必要があります。enforced を true にできるのは、status が active の間のみです。workspace.manage が必要です。設定を返します(sso_get を参照)。
権限: workspace.manage
· HTTPのみ(MCPツールではありません)
curl -X PATCH https://privatusanalytics.com/workspaces/:workspace_id/sso.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
Wall of Love
POST
/sites/:site_id/testimonials/walls.json
Wall of Loveを作成
testimonial_walls_create
https://privatus.page/w/<slug> にあるホスト型ページです。省略したものは既定値から始まります: タイトルはWall of Love、レイアウトはメイソンリー、slugは名前から決まります。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/walls.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/walls/:id.json
ウォールをごみ箱に移動
testimonial_walls_trash
そのページは、復元されるまで公開が取り下げられていると応答し、埋め込まれたコピーは何も描画しません。復元すると同じアドレスに戻ります。30日後に完全に削除されます。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/walls/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/walls/:id/duplicate.json
ウォールを新しい名前とアドレスでコピー
testimonial_walls_duplicate
新しいID、末尾に「copy」が付いた名前、独自のslugでコピーを作成するため、独自のアドレスを持ちます。元のウォールとそのアドレスは変更されません。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/walls/:id/duplicate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/walls/:id/embed.json
ウォールへのリンクと、別のページの中に配置するコードを取得
testimonial_walls_embed
ウォールの公開アドレスと、別のページの中に配置するスクリプト、フレーム、単純なリンクのスニペットです。ウォールを編集しても、スニペットは変わりません。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/walls/:id/embed.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/walls.json
サイトのWall of Loveを一覧表示
testimonial_walls_list
ごみ箱にないサイトのすべてのWall of Loveを、アドレス、取り込み元、表示しているお客様の声の数とともに表示します。qで名前またはslugを検索し、sortで名前順または新しい順に並べ替えます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/walls.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/walls/:id/restore.json
ウォールをごみ箱から復元
testimonial_walls_restore
ウォールをごみ箱から取り出します。そのページは同じアドレスで再び応答し、埋め込まれたすべてのコピーは、貼り付けられたコードを変更することなく、再び表示されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/walls/:id/restore.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/walls/:id.json
ウォールを1件、すべての設定とともに取得
testimonial_walls_get
ビルダーが保存するすべてです。アドレス(/w/<slug>)、ヘッダーとボタン、レイアウト、ウォールの取り込み元、各カードの表示内容、スタイル、検索エンジンの設定が含まれます。ごみ箱にあるウォールは404で応答します。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/walls/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/walls/:id.json
ウォールを変更
testimonial_walls_update
送信した入力だけが変更されます。slugを変更すると、古いアドレスはリダイレクトされるようになります。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/walls/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
Webhook
GET
/workspaces/:workspace_id/webhooks/:webhook_id/deliveries.json
Webhookの配信を一覧表示
webhook_deliveries_list
1つのwebhookに送信された配信を、新しい順にページ分割して一覧表示します(パスには webhook_id を指定)。それぞれに、id(whd_...)、event、status(pending、2xxの応答の場合は succeeded、failed)、status_code(応答がなかった場合は null)、error(タイムアウトなどの短い理由で、それ以外は null)、attempt(これまでの試行回数)、duration_ms、payload(送信されたJSONデータ)、response_body(応答の最初の2000文字)、delivered_at、created_at があります。status を succeeded または failed にして絞り込めます。エンドポイントのデバッグに使い、再送信するには webhook_deliveries_redeliver を使ってください。
権限: workspace.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/webhooks/:webhook_id/deliveries.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/workspaces/:workspace_id/webhooks/:webhook_id/deliveries/:id/redeliver.json
配信を再送信
webhook_deliveries_redeliver
過去の配信のペイロードを、同じエンドポイントへの新しい配信として、再び送信します(webhook_deliveries_list から取得する id の whd_...)。これはお客様のURLへのHTTPリクエストを行うため、受信側は同じイベントを2回処理する可能性があります。ワークスペースごとにレート制限があります(webhooks_test と共有)。キューに入れられるため、レスポンスは status が pending の新しい配信です。結果は webhook_deliveries_list で確認してください。
権限: workspace.manage
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/webhooks/:webhook_id/deliveries/:id/redeliver.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/webhooks.json
Webhookエンドポイントを追加
webhooks_create
ワークスペースのイベントのJSONをPOSTで受け取るエンドポイントを追加します(パスには workspace_id を指定)。url は公開された https のアドレスでなければならず、プライベートや内部のアドレスは拒否されます。events は必須のリストで、alert.triggered、alert.resolved、goal.completed_threshold、uptime.down、uptime.up、export.ready、import.completed、import.failed、site.created、site.deleted、member.added、usage.threshold、site_audit.completed から選びます。enabled の既定は true です。署名用のシークレット(whsec_...)が生成されてレスポンスで返され、各配信には、タイムスタンプと、それで作成した本文のHMAC-SHA256を含む Privatus-Signature ヘッダーが付きます。失敗した配信はバックオフを伴って再試行され、連続で20回失敗すると、エンドポイントは無効になります。サンプルを送信するには webhooks_test を使ってください。
権限: workspace.manage
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/webhooks.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/workspaces/:workspace_id/webhooks/:id.json
Webhookを削除
webhooks_delete
webhookのエンドポイントを、その配信ログ全体とともに削除します。この操作は元に戻せず、保留中の再試行は止まります。代わりに一時停止するには、enabled を false にして webhooks_update を使ってください。id(wh_...)は webhooks_list から取得します。削除したwebhookを返します。
権限: workspace.manage
curl -X DELETE https://privatusanalytics.com/workspaces/:workspace_id/webhooks/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/webhooks.json
Webhookを一覧表示
webhooks_list
ワークスペースの送信webhookのエンドポイントを、古い順に一覧表示します(パスには workspace_id を指定)。それぞれに、id(wh_...)、url、events(受信するイベント名)、enabled、status(active、最近の失敗後の failing、disabled)、secret(署名用のシークレットで、機密として扱ってください)、consecutive_failures、last_success_at、last_failure_at、created_at があります。workspace.manage 権限が必要です。これは、生のイベントを自分のサーバーに送るためのものです。人に通知するには notification_channels_list を使ってください。送信された内容には webhook_deliveries_list を使います。
権限: workspace.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/webhooks.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/workspaces/:workspace_id/webhooks/:id.json
Webhookを取得
webhooks_get
1つのwebhookのエンドポイントを、ID(webhooks_list から取得する wh_...)で返します。各配信の Privatus-Signature ヘッダーの検証に使われる署名用のシークレット(whsec_...)も含まれます。フィールドは、url、events、enabled、status(active、failing、disabled)、secret、consecutive_failures、last_success_at、last_failure_at、created_at です。workspace.manage 権限が必要です。
権限: workspace.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/webhooks/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/workspaces/:workspace_id/webhooks/:id/test.json
テスト配信を送信
webhooks_test
無効になっている場合でも、1つのエンドポイントに、サンプルメッセージ付きの webhook.test の配信をキューに入れます。これはお客様のURLへのHTTPリクエストを行います。ワークスペースごとにレート制限があり(webhook_deliveries_redeliver と共有)、テストは再試行されません。配信はバックグラウンドで送信されるため、レスポンスは status が pending のキューに入った配信を返します。少し後に webhook_deliveries_list を読み取り、status_code、error、duration_ms、response_body を確認してください。
権限: workspace.manage
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/webhooks/:id/test.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
PATCH
/workspaces/:workspace_id/webhooks/:id.json
Webhookを更新(イベント、URL、有効化、シークレットのローテーション)
webhooks_update
webhook(webhooks_list から取得する id)を変更します。送信した項目のみが変更されます。events を送信すると、リスト全体が置き換えられます。無効なエンドポイントで enabled を true にすると、失敗回数がリセットされます。これは、繰り返しの失敗の後に無効になったものを、再びオンにする方法です。新しい署名用のシークレットを生成するには rotate_secret を true にします。それはレスポンスに表示され、古いものはただちに機能しなくなるため、受信側を更新する必要があります。url のルールは webhooks_create と同じです。webhookを返します。
権限: workspace.manage
curl -X PATCH https://privatusanalytics.com/workspaces/:workspace_id/webhooks/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声
GET
/sites/:site_id/testimonials/overview.json
サイトの数字、対応が必要なもの、最近の出来事を読む
testimonials_overview
statsには概要ページの5つの数字が入ります: 承認済みのお客様の声、保留、今月の新規、平均評価、使用中。attentionは判断が必要なものを件数付きで一覧にします。activityは最新の10件のイベントで、latest_approvedは最近承認された3件のお客様の声です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/overview.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/setup.json
サイトのセットアップチェックリストを取得
testimonials_setup_get
import、testimonials、approve、ask、widget、teammateの項目を、それぞれdoneとdismissed付きで返します。項目は、クリックではなく、サイトが保持しているものから完了と判定されます。すべての項目が完了または非表示になるとhiddenがtrueになり、そのとき受信トレイはカードを表示しなくなります。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/setup.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/setup.json
セットアップチェックリストの項目、またはカード全体を非表示にする
testimonials_setup_update
dismissは項目キー(import、testimonials、approve、ask、widget、teammate)のいずれか、またはカード全体を対象にするallです。非表示にすると項目が隠れるだけで、完了にはならず、APIから元に戻すことはできません。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/setup.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/:id/approve.json
お客様の声を承認して表示できるようにする
testimonials_approve
利用枠待ちのお客様の声は承認できません。サーバーは422とコードwaiting_for_allowanceで応答します。応答にはmeta.undo_idが含まれます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/:id/approve.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/bulk.json
選択したお客様の声、またはフィルターに一致するすべてに対して、1つの操作を実行
testimonials_bulk
ids(最大100件、一度に実行され、すべて成功かすべて失敗)、またはconfirm_count付きのfilters(結果全体)を送信します。100件を超えるものはバックグラウンドで実行され、応答のstateはrunningになります。操作: approve、reject、mark_pending、pin、unpin、add_tags、remove_tags、add_to_collection、remove_from_collection、set_property、trash、restore。それぞれ、testimonials_bulk_undoで7日間使える取り消しIDを返します。delete_permanentlyは元に戻せない唯一の操作で、sites.manageが必要であり、応答にはundoable falseと示されます。MCP経由では、削除を行う2つの操作であるtrashとdelete_permanentlyは実行されず、ツールはhuman_onlyと、人が操作できるアプリのページを返して応答し、それ以外の操作は実行されます。API経由では、操作export(idsまたはfiltersと、csv、json、ndjson、xlsxから選ぶ任意のformat付き)は何も変更せず、analytics.exportが必要で、202とダウンロードするエクスポートで応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/bulk.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/bulk/:id/undo.json
一括操作を7日以内に取り消す
testimonials_bulk_undo
実行で変更されたすべてのお客様の声に、以前の値を戻します。その後さらに変更されたものはそのままにされ、leftに数えられます。MCP経由では、削除またはごみ箱への移動を伴う取り消し(復元、翻訳実行、画像作成実行の取り消し)は実行されません。ツールはhuman_onlyと、人が操作できるアプリのページを返して応答します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/bulk/:id/undo.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials.json
お客様の声を手作業またはAPIで追加
testimonials_create
すべての経路が使う1つの受付を通して保存されます。プランの月間の新規お客様の声の利用枠に数えられ、枠に達するとサーバーは422とコードallowance_reachedで応答します(お客様のフォーム送信だけは、代わりに待機として保持されます)。同じ人が同じ言葉をもう一度送ると、allow_duplicateがtrueでない限りコードduplicateで拒否されます。同じexternal_idをもう一度送ると、すでに保存されているものを返します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/:id/permanent.json
お客様の声を、履歴、同意記録、ファイルとともに完全に削除
testimonials_delete
この操作は元に戻せません。ごみ箱にあるお客様の声にも、ないものにも使え、confirmとsites.manage権限が必要です。MCP経由では、このツールは何も削除せず、人が操作できるページを返して応答します。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/:id/permanent.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/:id.json
お客様の声を30日間ごみ箱に移動
testimonials_trash
お客様の声は状態、タグ、コレクション、ファイルを保持したままどこにも表示されなくなり、30日後に完全に削除されます。testimonials_restoreで元の状態のまま戻せます。応答にはmeta.undo_idが含まれます。すでにごみ箱にあるものを移動しても何も変わりません。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/facets.json
一覧と同じ入力で、すべてのフィルター値ごとのお客様の声を数える
testimonials_facets
お客様の声を1件も読まずに、ライブラリの全体像を把握できます。各ファセットは、自身の選択を除き、他のすべてのフィルターを適用した状態で値を数えます。metaには合計と、言葉で表したフィルターが含まれます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/facets.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/:id/highlight.json
お客様の声の最も良い一文をマーク、または解除
testimonials_highlight
highlightはお客様の声の言葉の中の完全一致する部分でなければならず、そうでない場合サーバーは422で応答します。空のhighlightは解除になります。変更のたびに履歴にバージョンが残ります。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/:id/highlight.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/:id/history.json
お客様の声の言葉、タイトル、評価、ハイライトのすべてのバージョンを一覧表示
testimonials_history
新しい順です。バージョン1は受信時のお客様の声で、作成者はいません。以降のバージョンには、変更したメンバー、日時、残したメモ、そして復元の場合は戻したバージョンが含まれます。pageとper_pageでページ分割されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/:id/history.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials.json
サイトのお客様の声を絞り込みと並べ替え付きで一覧表示
testimonials_list
指定方法は3通りあり、組み合わせて使えます。ファセット入力(status、tag_id、has_videoなど)、q(演算子付きの検索ボックス。例: rating:5 has:video tag:onboarding "saved us")、そしてmatch付きのconditions(構造化された行)です。facetsをtrueにすると、meta.facetsにすべてのファセット値の最新件数が入ります。trashedがtrueでない限り、ごみ箱のものは一覧に含まれず、trashedがtrueの場合はごみ箱のものだけが表示されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/:id/pend.json
お客様の声を保留に戻す
testimonials_pend
承認済みまたは却下済みのお客様の声を保留に戻します。再び判断されるまで、どこにも表示されません。応答にはmeta.undo_idが含まれます。ごみ箱にあるお客様の声はコードin_trashで拒否されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/:id/pend.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/:id/pin.json
お客様の声をピン留めして最初に表示、またはピン留め解除
testimonials_pin
ピン留めされたお客様の声は、表示される場所ではどこでも最初に表示されます。ピン留め解除にはpinnedにfalseを指定します。何かが変わった場合、応答にはmeta.undo_idが含まれます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/:id/pin.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/:id/reject.json
お客様の声を却下。保持されますが、どこにも表示されません
testimonials_reject
お客様の声はすべての内容を保持したまま、どこにも表示されません。すでに却下されているものを却下しても何も変わりません。応答にはmeta.undo_idが含まれ、testimonials_bulk_undoで7日間利用できます。ごみ箱にあるお客様の声はコードin_trashで拒否されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/:id/reject.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/:id/restore.json
お客様の声をごみ箱から元の状態のまま復元
testimonials_restore
ごみ箱にあるお客様の声を、状態、タグ、コレクション、表示されていた場所とともに戻します。新しいお客様の声として数えられることはありません。ごみ箱にないものはコードnot_in_trashで拒否されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/:id/restore.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/:id/restore_version.json
以前のバージョンの言葉、タイトル、評価、ハイライトに戻す
testimonials_restore_version
履歴からは何も削除されません。復元は、どのバージョンから来たかを示す新しいバージョンになります。version 1 を指定すると、お客様の声は受信時の言葉に戻ります。存在しないバージョン番号は422です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/:id/restore_version.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/:id.json
お客様の声を1件、その人物、ファイル、同意記録、タグ、使用場所とともに取得
testimonials_get
サイトのお客様の声を、ごみ箱にあるかどうかに関わらず、ID(tm_...)で1件返します。person.email は、呼び出し元がcontent.writeを持っていない限りnullで、has_emailがメールアドレスの登録有無を示します。mediaはファイルを処理状態とともに一覧にします。used_inは、その声を表示しているすべてのウィジェット、ウォール、画像を一覧にします。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/showable.json
一般に公開してよいお客様の声を、公開される形で一覧表示
testimonials_showable
ウィジェットやウォールの外で独自に表示するための、公開してよい最新の承認済みお客様の声です。それぞれ、同意記録が許す内容だけを含みます。名前を表示してはいけない人物は「A customer」と表示され、写真や録音は許可されていない限り省かれます。保留、却下、ごみ箱のお客様の声や、利用枠待ちのものは一覧に含まれません。応答にメールアドレスはありません。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/showable.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/triage.json
仕分けキューの次のお客様の声を取得
testimonials_triage
フィルターがない場合、キューは利用枠待ちではない保留で、受信が古い順です。受信トレイのフィルターを使うと、その結果がその並び順になります。直前に処理したIDをafterに指定すると、その次の1件を取得できます。キューが終わるとdataはnullです。metaにはremainingとtotalが含まれます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/triage.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/:id.json
お客様の声を編集。言葉、タイトル、評価、ハイライトの変更は履歴に保持されます
testimonials_update
送信した入力だけが変更されます。body、title、rating、highlightのいずれかを変更すると、edit_note付きでバージョンが履歴に追加され、認証済みマークは変わりません。rating に null を指定すると評価が消えます。highlightは言葉の中の完全一致する部分でなければならず、空にすると消えます。propertiesは送信したキーだけを変更します。add_tagsとremove_tagsは名前またはIDを受け取ります。状態、ピン留め、ごみ箱には専用のツールがあります。ごみ箱にあるお客様の声は編集できません。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声のごみ箱
DELETE
/sites/:site_id/testimonials/trash/permanent.json
ごみ箱の最大100件を完全に削除
testimonial_trash_delete_permanently
この操作は元に戻せません。confirmは、1件の場合はその項目の名前(お客様の声の場合は人物の名前)またはID、複数の場合はサイトの名前です。ごみ箱にある項目だけが受け付けられます。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/trash/permanent.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/trash/empty.json
ごみ箱の中身をすべて完全に削除
testimonial_trash_empty
この操作は元に戻せません。confirmはサイトの名前です。一度に最大100件が削除されます。それより大きいごみ箱はバックグラウンドで空にされ、応答のstateはrunningになります。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/trash/empty.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/trash.json
ごみ箱の中身を、1種類ずつ一覧表示
testimonial_trash_list
1つの種類(既定はtestimonial)の項目と、meta.countsにすべての種類のごみ箱内の件数で応答します。各項目には、戻り先、それを表示していたもの、ごみ箱に移動した人、いつ消えるかが示されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/trash.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/trash/restore.json
ごみ箱から最大100件を、元の状態のまま復元
testimonial_trash_restore
IDは同じ種類のものでなければなりません。お客様の声を復元すると、取り消しID(data.idとmeta.undo_id)で応答し、これはtestimonial_undo_records_undoで7日間利用できます。復元が新しいお客様の声として数えられることはありません。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/trash/restore.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声のインポート元
POST
/sites/:site_id/testimonials/imports/sources.json
リンクからインポート元を追加し、最初の実行を開始
testimonial_import_sources_create
プラットフォームはリンクから検出されます。実行で見つかったものは確認ステップ(testimonial_import_sources_review)で待機し、testimonial_import_sources_keepまで何も保存されません。インポートされたものは月間のお客様の声に数えられません。Freeプランでは、レビューサイトまたはページから月に1回インポートを取得できます。それを超えると、応答は402 plan_limitです。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/imports/sources.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/imports/sources/:id.json
ソースを削除。取り込まれたお客様の声は残ります
testimonial_import_sources_delete
ソースを、その実行履歴、確認ステップで待機中のもの、アップロードされたファイルとともに削除します。すでにそこから保持されたお客様の声はサイトに残ります。この操作はソースのページで人が行うため、ツールは何も実行せず、そのページを返します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/imports/sources/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/imports/sources/:id/discard.json
見つかった項目を破棄
testimonial_import_sources_discard
item_ids(testimonial_import_sources_reviewのID)、または待機中のすべてを対象にall trueを指定します。両方は指定できません。破棄された項目は確認ステップから消え、その人物について読み取った内容は消去されます。お客様の声は削除されません。それ以外の場合、サーバーは422とコードselectionまたはunknown_idsで応答します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/imports/sources/:id/discard.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/imports/find.json
サイト自身のウェブサイトでお客様の声を探す
testimonial_import_sources_find
サイトのドメインと、そこからリンクされているお客様の声がありそうなページを、サイトにつき一度だけ読み取ります。無料で、Freeプランの取得したインポートには数えられません。見つかったものは、返されたソースの確認ステップで待機します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/imports/find.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/imports.json
サイトのインポート元を一覧表示
testimonial_import_sources_list
metaにはfetched_imports(今月のused、limit、resets_on。limitがnullなら無制限)とsync(プランで許可される頻度)が含まれます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/imports.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/imports/sources/:id/keep.json
見つかった項目をお客様の声として保持
testimonial_import_sources_keep
item_ids(最大100件)またはallを指定します。保持された項目はすべて、他のお客様の声と同じ経路で保存されるため、重複して保存されることはありません。保持されたものは月間のお客様の声に数えられません。metaに保持された件数が示されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/imports/sources/:id/keep.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/imports/platforms.json
インポートで読み取れるプラットフォームを一覧表示
testimonial_import_platforms_list
検証済みソースの一覧です。プラットフォームは、実際のページでインポートが確認されて初めて掲載されます。各項目に、どのリンクを貼り付けるかが示されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/imports/platforms.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/imports/sources/:id/review.json
ソースが見つけた、まだ判断されていないものを一覧表示
testimonial_import_sources_review
metaにはバッジ別の件数(new、already_here、likely_duplicate)が含まれます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/imports/sources/:id/review.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/imports/sources/:id/run.json
ソースを今すぐ読み込み直す
testimonial_import_sources_run
手動の実行は取得したインポートの1回分となり、Freeプランでは月の回数に数えられます(超えると402 plan_limit)。実行中は拒否され(422 in_progress)、どのプランでもソースの24時間以内の実行が3回に達すると拒否されます(422 too_many_runs)。エラーになったソースでは、失敗の回数がリセットされます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/imports/sources/:id/run.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/imports/sources/:id.json
インポート元を1件、状態と件数とともに取得
testimonial_import_sources_get
プラットフォーム、名前、読み取るアドレス、再読み込みの頻度、状態、確認ステップで待機している件数、保持された件数、連続した失敗、最後に実行した日時と次回の実行日時を返します。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/imports/sources/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/imports/sources/:id.json
ソースのリンク、名前、同期、自動承認を変更、または一時停止
testimonial_import_sources_update
プランを超える同期(Freeではすべて、Proでは毎週)は402 plan_limitで拒否されます。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/imports/sources/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声のインポート実行
GET
/sites/:site_id/testimonials/imports/sources/:import_source_id/runs.json
ソースの実行を新しい順に一覧表示
testimonial_import_runs_list
各実行には、番号、開始のきっかけ、ステータス、読み取ったページ、見つかったお客様の声の件数、新規、重複、失敗、保持された件数、開始と終了の時刻が含まれます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/imports/sources/:import_source_id/runs.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
お客様の声のカスタムドメインリクエスト
POST
/sites/:site_id/testimonials/settings/custom_domain.json
ウォールまたはフォームのカスタムドメインを依頼
testimonial_custom_domain_requests_create
お客様の声のカスタムドメインは、Privatus Analyticsチームが手作業で設定します。この操作はリクエストを保存してチームに通知し、チームが追加するDNSレコードをメールで送ります。リクエストのステータスがactiveになるまで、ホスト名は機能しません。Business以上で利用できます。他のプランは402 plan_limitになります。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/settings/custom_domain.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/settings/custom_domain.json
ホスト名を指定して、カスタムドメインリクエストを取り下げる
testimonial_custom_domain_requests_delete
チームがまだ着手していないリクエスト(statusがrequested)だけを取り下げられます。進行中のものはwrong_stateで応答します。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/settings/custom_domain.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/settings/custom_domain.json
サイトのカスタムドメインリクエストを一覧表示
testimonial_custom_domain_requests_list
ウォールまたはフォームのホスト名に対するすべてのリクエストを、ステータス付きで新しい順に表示します。ホスト名が機能するのは、statusがactiveになってからです。どのプランでも動作するため、以前のリクエストも引き続き読めます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/settings/custom_domain.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
お客様の声のカスタムプロパティ
POST
/sites/:site_id/testimonials/settings/properties.json
サイトにカスタムプロパティを追加
testimonial_properties_create
サイトが保持できる有効なプロパティは最大20件です。フォームのリンク、ルール、APIがキーを使うため、作成後にキーは変更できません。省略すると、ラベルから候補が提案されます。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/settings/properties.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/settings/properties/:id.json
カスタムプロパティとその値を完全に削除
testimonial_properties_destroy
この操作は元に戻せません。すべてのお客様の声から、プロパティとその値が削除されます。confirmはキーです。スマートコレクションまたは自動タグルールが使っているプロパティは、使われている間は削除できません。プロパティを退役させる通常の方法はアーカイブです。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/settings/properties/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/settings/properties.json
サイトのカスタムプロパティを表示順に一覧表示
testimonial_properties_list
それぞれに、キー、型、選択肢、値を持つお客様の声の数(filled)、型をまだ変更できるかどうか、そのプロパティを使っているスマートコレクションと自動タグルールが示されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/settings/properties.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/settings/properties/:id.json
カスタムプロパティの変更、並べ替え、アーカイブ、復元
testimonial_properties_update
送信した入力だけが変更されます。選択肢の名前を変更すると、それを持つすべてのお客様の声でも名前が変わります。スマートコレクションまたは自動タグルールが使っているプロパティは、使われている間はアーカイブできません。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/settings/properties/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声のコレクション
POST
/sites/:site_id/testimonials/collections/:id/items.json
手動コレクションにお客様の声を追加
testimonial_collections_add_items
一度に最大100件です。指定した順で、末尾に追加されます。positionにtopを指定すると先頭に追加されます。応答にはmeta.undo_idが含まれ、testimonials_bulk_undoで7日間利用できます。スマートコレクションには手作業で追加できません。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/collections/:id/items.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/collections.json
手動またはスマートのコレクションを作成
testimonial_collections_create
kindがmanualの場合は手作業でまとめ、testimonial_idsを指定すると最初から中身が入ります。kindがsmartの場合は、matchでつないだfield、operator、valueの行である条件で最新に保たれます。応答には件数と平易な英語のルールが含まれるため、1回の呼び出しで1つの文章が常に更新されるコレクションになります。先にtestimonial_collections_previewでルールを試してください。kindは後から変更できません。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/collections.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/collections/:id.json
コレクションを30日間ごみ箱に移動
testimonial_collections_destroy
お客様の声には影響しません。そのコレクションから取り込んでいるウィジェットやウォールは、復元されるまでそこからは何も表示しません。testimonial_trash_restoreで復元してください。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/collections/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/collections.json
サイトのコレクションを一覧表示
testimonial_collections_list
各コレクションには、現在保持しているお客様の声の数、そのうち承認済みの数、スマートコレクションの場合は平易な英語のルール、取り込み先のウィジェットとウォールが含まれます。ごみ箱にあるコレクションは除外されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/collections.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/collections/preview.json
何も保存せずにルールのセットを試す
testimonial_collections_preview
現在一致するお客様の声の数、平易な英語のルール、5件の例で応答します。testimonial_collections_createまたはtestimonial_tags_updateの前に使ってください。無効な行は、その行を示す422になります。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/collections/preview.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
DELETE
/sites/:site_id/testimonials/collections/:id/items.json
手動コレクションからお客様の声を外す
testimonial_collections_remove_items
一度に最大100件です。お客様の声自体は変更されません。応答にはmeta.undo_idが含まれ、取り消すと、それぞれが元の位置に戻ります。
権限: content.write
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/collections/:id/items.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/collections/:id/reorder.json
手動コレクション内で、お客様の声を1件別の位置に移動
testimonial_collections_reorder
位置は、position(1から数える)、before_id、after_idのうち、ちょうど1つで指定します。この順序が、そのコレクションから取り込むすべてのウィジェットとウォールに配信される順序です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/collections/:id/reorder.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/collections/:id.json
コレクションを1件、件数、ルール、取り込み先とともに取得
testimonial_collections_get
そのお客様の声は、collection_id付きのtestimonials_listで取得できます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/collections/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/collections/:id.json
コレクションの名前、説明、ルール、配信順を変更
testimonial_collections_update
送信したものだけが変更されます。conditionsを送信すると、スマートコレクションのすべてのルールが置き換わります。kindは固定です。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/collections/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声のスプレッドシートインポート
POST
/sites/:site_id/testimonials/imports/spreadsheet.json
スプレッドシートをアップロード(またはCSVテキストを送信)して列を読み取る
testimonial_spreadsheet_imports_create
スプレッドシートインポートのステップ1です。file(CSV、TSV、XLSX。最大10 MBと5,000行、1行目がヘッダー)またはcontent(最大1 MBのCSVテキスト)を送信します。応答には、列、それぞれ3つのサンプル値、各列の対応先の最初の推測が含まれます。まだ何もインポートされません。testimonial_spreadsheet_imports_updateとtestimonial_spreadsheet_imports_runで続けてください。スプレッドシートが月間のお客様の声や取得したインポートに数えられることはありません。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/imports/spreadsheet.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/imports/spreadsheet/:id/run.json
対応付けたファイルを確認ステップに読み込む
testimonial_spreadsheet_imports_run
使える行はチェックボックス付きで待機します。使えない行は、行番号と理由とともに一覧表示されます。スプレッドシートのIDをソースIDとして、testimonial_import_sources_keepで保持してください。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/imports/spreadsheet/:id/run.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/imports/spreadsheet/:id.json
スプレッドシートの列、サンプル、対応付け、オプション、件数を取得
testimonial_spreadsheet_imports_get
ファイルの列とサンプル値、各列の対応先フィールド、オプション(既定のステータス、タグ、コレクション、日付形式、重複の扱い)、そして実行後は、確認ステップで待機している行数と保持された行数を返します。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/imports/spreadsheet/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/imports/spreadsheet/:id.json
どの列をどこに対応付けるかと、ファイルのオプションを保存
testimonial_spreadsheet_imports_update
スプレッドシートインポートのステップ2と3です。mappingは列名からフィールドへのオブジェクトで、除外する列は空の値にします。2つの列を1つのフィールドに対応付けることはできません。オプションは、default_status(pendingまたはapproved)、tags、collection_id(手動コレクション)、default_source_name、date_format(auto、ymd、dmy、mdy)、duplicates(skipまたはqueue)です。送信したものだけが変更され、testimonial_spreadsheet_imports_runまで何もインポートされません。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/imports/spreadsheet/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声のタグ
POST
/sites/:site_id/testimonials/tags/:id/apply_rules.json
すでに保存されているお客様の声に、タグのルールを適用
testimonial_tags_apply_rules
dry_run true(既定)は何も変更せず、件数で応答します。タグが付く件数、対象の総数、すでにタグが付いている件数です。dry_run falseは、それらに1つの一括操作としてタグを付け、undo_idで応答します。このIDはtestimonials_bulk_undoで7日間利用できます。100件を超えるものはバックグラウンドで実行され、応答のstateはrunningになります。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/tags/:id/apply_rules.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/tags.json
タグを作成。自動タグルールも送れば一緒に作成
testimonial_tags_create
ルールは { match, conditions } です。いずれか1つのルールを満たすお客様の声には、到着した時点でタグが付きます。ルールはタグを追加するだけです。すでに保存されているものにタグを付けるには、続けてtestimonial_tags_apply_rulesを呼び出してください。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/tags.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/tags/:id.json
タグを30日間ごみ箱に移動
testimonial_tags_destroy
すべてのお客様の声、フィルター、ピッカーから外れます。testimonial_trash_restoreで復元すると、そのタグが付いていたすべてのお客様の声に戻ります。そのタグを名指ししたルールを持つスマートコレクションは、それまで何にも一致しません。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/tags/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/tags.json
サイトのタグをルールとともに一覧表示
testimonial_tags_list
各タグには、付いているお客様の声の数、構造化された条件と平易な英語での自動タグルール、ルールが最後に適用された日時が含まれます。ごみ箱にあるタグは除外されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/tags.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/tags/:id/merge.json
タグを別のタグに統合
testimonial_tags_merge
このタグが付いていたすべてのお客様の声に、もう一方のタグが付き、すべてのルールがもう一方に移り、このタグを指定していたすべてのスマートコレクション、保存済みビュー、ウィジェット、ウォールがもう一方を指定するようになり、このタグは空の状態でごみ箱に移動します。残るタグで応答します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/tags/:id/merge.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
PATCH
/sites/:site_id/testimonials/tags/:id.json
タグの名前、色、ルールを変更
testimonial_tags_update
送信したものだけが変更されます。rulesを送信すると、そのタグのすべてのルールが置き換わり、空のリストはすべてを削除します。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/tags/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声のブランドキット
DELETE
/sites/:site_id/testimonials/settings/brand_kit.json
サイトのお客様の声のブランドキットを、Privatus Analyticsの既定値に戻す
testimonial_brand_kit_reset
すべての色、フォント、角の丸み、評価のスタイル、ロゴ、カスタムCSSを一度にクリアし、すべてのフォーム、ウィジェット、ウォールがそれに合わせて変わります。元に戻せないため、アシスタントは実行する代わりにブランドキットのページへ案内されます。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/settings/brand_kit.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/settings/brand_kit.json
サイトのお客様の声のブランドキットを、ライトとダーク用にすべての色を解決して取得
testimonial_brand_kit_get
サイトのすべてのフォーム、ウィジェット、ウォールの描画に使われる、色、フォント、角の丸み、評価のスタイル、ロゴ、バッジのスイッチ、カスタムCSSを返します。一度も変更されていない設定は、Privatus Analyticsの既定値で返されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/settings/brand_kit.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/settings/brand_kit.json
サイトのお客様の声のブランドキットを変更
testimonial_brand_kit_update
送信した入力だけが変更されます。設定を1つPrivatus Analyticsの既定値に戻すには、空の文字列を送信します。カスタムCSSは保存時に検査され、許可されないものは、その行を示して拒否されます。カスタムCSSにはBusinessプランが必要で、バッジを非表示にするにもBusinessプランが必要です。それがない場合、サーバーは402 plan_limitで応答します。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/settings/brand_kit.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声のメディア
POST
/sites/:site_id/testimonials/media/uploads.json
アップロードを開始、またはウェブアドレスからファイルを追加
testimonial_media_uploads_create
方法は2つです。アップロードするには、filename、content_type、byte_sizeを送信します。応答にはuploadが含まれ、ファイルをPUTするurl、一緒に送るヘッダー、大きなファイルの場合は1つずつ送れるpartsが入っています。その後、testimonial_media_uploads_finishを呼び出してください。または、source_urlを送信すると、ファイルがダウンロードされて処理されます。stateがreadyになるまでtestimonial_media_getをポーリングしてください。制限: 動画と音声は最大500 MBで、プランが許す長さまで(Proは2分、Businessは10分、Freeはなしで、その場合サーバーは402 plan_limitで応答します)、画像は最大10 MB、ロゴは最大2 MBです。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/media/uploads.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/media/:id.json
どのお客様の声にも保持されていないファイルを削除
testimonial_media_delete
お客様の声に属するファイルは、ごみ箱を経由して、お客様の声と一緒に削除されます。保存されたファイルは削除され、そのアドレスはキャッシュから消去されます。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/media/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/media/uploads/:id/finish.json
アップロードが完了したことを知らせ、ファイルを検査して処理する
testimonial_media_uploads_finish
ファイルを送信し終えたら呼び出してください。ファイルはアップロード先に存在し、約束したサイズとちょうど同じでなければなりません。2回呼び出しても安全です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/media/uploads/:id/finish.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/media/:id/retry.json
失敗したファイルをもう一度試す
testimonial_media_retry
保持されているアップロードから、ファイルを再処理します。アップロードは失敗後24時間保持されます。それを過ぎると、サーバーはnot_retryableで応答し、ファイルを再度アップロードする必要があります。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/media/:id/retry.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/media/:id.json
ファイルを1件、状態と読み込み先とともに取得
testimonial_media_get
urlは、メディアホスト上の完成したファイルの恒久的なアドレスで、stateがreadyになるまでnullです。このアドレスは全員に同じで、署名されていないため、shareableフィールドがtrueのファイルのアドレスだけを渡してください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/media/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
お客様の声のリクエスト
POST
/requests/resubscribe/:token.json
お客様の声のリクエストの受信を再開することを確認
testimonial_request_resubscribes_confirm
確認ページのボタンの背後にあるPOSTです。オプトアウトを解除し、そのアドレスに再び依頼できるようにします。
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/requests/resubscribe/:token.json \
-H "Content-Type: application/json" -d '{…}'
POST
/requests/resubscribe.json
アドレスが再びリクエストを受け取れるようにするメールを依頼
testimonial_request_resubscribes_create
配信停止していた場合、そのアドレス宛に確認メールを送信します。配信停止していたかどうかに関わらず、応答は同じです。
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/requests/resubscribe.json \
-H "Content-Type: application/json" -d '{…}'
POST
/requests/unsubscribe/:token.json
アドレスをお客様の声のリクエストから配信停止にする
testimonial_request_unsubscribes_create
配信停止ページのボタンの背後にあるPOSTで、メールアプリ自身の配信停止ボタンが呼び出すものです。トークンはメール内のリンクから取得します。
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/requests/unsubscribe/:token.json \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/requests.json
リクエストを下書きとして開始
testimonial_requests_create
メールと受信者を含む下書きを作成します。testimonial_requests_sendまでは何も送信されません。省略したものは既定値から始まります: メール、5日後の1回のフォローアップ、送信者としてのサイト名、返信先としてのあなたです。各受信者は、queuedとして、または理由付きのskippedとして保存されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/requests.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/requests/:id.json
下書きを削除
testimonial_requests_delete
一度も送信されていないリクエストだけを削除できます。送信済みのリクエストは、送信されたメールの記録として保持されます。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/requests/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/requests/:id/duplicate.json
リクエストを新しい下書きにコピー
testimonial_requests_duplicate
コピーには同じフォームとメールが入り、受信者はまだいません。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/requests/:id/duplicate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/requests.json
サイトのリクエストを一覧表示
testimonial_requests_list
新しい順で、それぞれにメールとファネルの件数が含まれます。status、form、期間で絞り込めます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/requests.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/requests/:id/preview.json
リクエストのメールを、最初の受信者に届く形で見る
testimonial_requests_preview
差し込みフィールドが入力された、送信者、件名、本文です。何も送信されません。step 0は最初のメールで、1から3はフォローアップです。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/requests/:id/preview.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/requests/:id/resume.json
停止したリクエストを再開
testimonial_requests_resume
停止した場所から続行します。停止中に期限が来たフォローアップは、今から時刻が再設定されるため、まとめて送信されることはありません。これはワークスペース外の人にメールを送るため、アシスタントが再開したことがメンバーにメールで通知されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/requests/:id/resume.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/requests/:id/send.json
リクエストを今すぐ、または指定した時刻に送信
testimonial_requests_send
confirm_relationship: true が必要です。キューにある受信者がもう一度確認され、最初のメールが送られます(またはsend_atまで待機します)。フォローアップは、まだ回答していない人に送られます。リクエストメールはサイト自身のメールプロバイダー(設定 > メール送信、Business以上)を通して送信されるため、有効な接続がないサイトは422 no_email_connectionまたはemail_connection_pausedになり、他のプランは402 plan_limitになります。すべてのメールがサイトのリクエストメールの月間上限(当社が別の値を設定しない限り10,000通)に数えられます。上限に達しても何も破棄されません。人はキューに残り、送信は1日に再開されます。これはワークスペース外の人にメールを送るため、アシスタントが送信したことがメンバーにメールで通知されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/requests/:id/send.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/requests/:id/send_test.json
リクエストのメールを1通、ご自身のアドレスに送信
testimonial_requests_send_test
呼び出し元自身のアドレスにのみ、本物と同じようにサイト自身のメールプロバイダーを通して送信されます(接続がない場合は422 no_email_connection)。個人用リンクも開封カウンターもなく、サイトの月間上限にも数えられません。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/requests/:id/send_test.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/requests/:id.json
リクエストを1件、メール、フォローアップ、ファネルの件数とともに取得
testimonial_requests_get
1件のリクエストの、メール、フォローアップ、ステータス、ファネルの件数(送信、開封、クリック、送信完了、バウンス、配信停止)を返します。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/requests/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/requests/:id/stop.json
リクエストを停止
testimonial_requests_stop
まだ送信されていないすべてのメールを、即座にキャンセルします。すでに送信されたものには影響せず、testimonial_requests_resumeで停止した場所から再開できます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/requests/:id/stop.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
PATCH
/sites/:site_id/testimonials/requests/:id.json
リクエストの名前、フォーム、メールを変更
testimonial_requests_update
いつでも許可されます。変更は、まだ送信されていないすべてのメールに適用されます。フォローアップの遅延を変更すると、待機中のフォローアップの時刻が再設定されます。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/requests/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声のリクエスト受信者
POST
/sites/:site_id/testimonials/requests/:request_id/recipients.json
リクエストに人を追加
testimonial_request_recipients_create
1回の呼び出しで最大500人です。下書きに追加した場合は、testimonial_requests_sendまで待機します。実行中のリクエストに追加した場合は、すぐに最初のメールが送られます。応答には、キューに入った人数と、理由別にスキップされた人数が示されます。実行中のリクエストに追加すると、ワークスペース外の人にメールが送られるため、メンバーにメールで通知されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/requests/:request_id/recipients.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/requests/:request_id/recipients.json
リクエストから選んだ人を削除
testimonial_request_recipients_delete
何も送信されていない人(queuedまたはskipped)だけが対象です。本文で最大100件のアドレスを受け取ります。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/requests/:request_id/recipients.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/requests/:request_id/recipients/import.json
CSVファイルからリクエストに人を追加
testimonial_request_recipients_import
2回の呼び出しです。ファイル(またはそのテキストをcsvとして)を送信すると、列、最初の数行、upload_tokenが返されます。次に、列番号からフィールドへの対応付けを送信します。最大5 MBと10,000行です。実行中のリクエストに追加すると、ワークスペース外の人にメールが送られるため、メンバーにメールで通知されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/requests/:request_id/recipients/import.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/requests/:request_id/recipients.json
リクエストの対象者を一覧表示
testimonial_request_recipients_list
その人の現在の状況で絞り込みます。statusのopenedは「開封したがクリックも回答もしていない」です。メールアドレスは、呼び出し元がコンテンツを編集できない限りnullです。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/requests/:request_id/recipients.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/requests/:request_id/recipients/resume.json
リクエストの選んだ人を再開
testimonial_request_recipients_resume
停止した場所から続行します。本文で最大100件のアドレスを受け取ります。これはワークスペース外の人にメールを送るため、メンバーにメールで通知されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/requests/:request_id/recipients/resume.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/requests/:request_id/recipients/stop.json
リクエストの選んだ人を停止
testimonial_request_recipients_stop
それ以降のメールは送られません。それぞれのステータスは保持され、「stopped」が加わります。本文で最大100件のアドレスを受け取ります。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/requests/:request_id/recipients/stop.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声の人物
POST
/sites/:site_id/testimonials/people/:id/ask_again.json
この人物だけを受信者とするリクエストを開始
testimonial_people_ask_again
最後に使ったフォーム、またはスターターフォームを使います。リクエストが送信されるまで何も送られません。その人物に依頼できない場合、サーバーは422とコードno_email、bounced、unsubscribedで応答し、リクエストが利用できない間はrequests_unavailableで応答します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/people/:id/ask_again.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/people.json
サイトに人物を追加
testimonial_people_create
nameは必須です(最大120文字)。メールアドレスは公開されません。後のお客様の声をこの人物にまとめ、サイトが再依頼できるようにするもので、サイトの別の人物がすでに持っているアドレスは拒否されます。avatar_media_idは、サイトにすでにアップロードされている画像のID(med_...)です。人物を追加しても、お客様の声は追加されません。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/people.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/people/:id/permanent.json
人物を、その人が話したこと、ファイル、依頼履歴とともに完全に削除
testimonial_people_delete_permanently
削除リクエスト用です。この操作は元に戻せません。confirm(人物の名前またはID)が必要で、名前も言葉も含まない監査エントリが1件残ります。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/people/:id/permanent.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/people.json
サイトの人物を絞り込みと並べ替え付きで一覧表示
testimonial_people_list
各人物には、お客様の声の件数、承認済みの件数、平均評価、最後の依頼とその結果が付きます。メールアドレスは、呼び出し元がcontent.writeを持っていない限りnullで、has_emailがメールアドレスの登録有無を示します。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/people.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/people/:id/merge.json
同じ人物の他のレコードをこのレコードに統合
testimonial_people_merge
パスで指定した人物が残ります。他のレコードが話したことと、送られたすべての依頼がこちらに移り、他のレコードは削除されます。この人物の空のフィールドは、古い順に他のレコードから補われ、useでどの値を優先するフィールドかを指定できます。応答にはmeta.undo_idが含まれ、testimonial_undo_records_undoで7日間利用できます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/people/:id/merge.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/people/:id.json
人物を1人、依頼された内容と同一人物に見える人とともに取得
testimonial_people_get
その人物のお客様の声は、person_id付きのtestimonials_listで取得できます。can_askとcannot_ask_reasonは、testimonial_people_ask_againが成功するかどうかを示します。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/people/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/people/:id.json
人物を編集。送信したフィールドだけが変更されます
testimonial_people_update
空の値はフィールドを消去します。ただし名前は除きます。サイトの別の人物がすでに持っているメールアドレスは拒否されます。人物が掲載される会社ページは、会社名とウェブサイトに従います。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/people/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声の会社
GET
/sites/:site_id/testimonials/companies.json
サイトの会社を、人物、お客様の声、平均評価とともに一覧表示
testimonial_companies_list
会社ごとに1行で、サイトの人物の会社名とウェブサイトからまとめられます。会社のない人物はどこにも含まれません。queryは会社名またはウェブサイトのホストの一部に一致します。sortはname(既定)、people_desc、testimonials_desc、received_descです。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/companies.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/companies/:id/merge.json
会社を別の会社に統合(同じ会社の2つの表記用)
testimonial_companies_merge
パスで指定した会社のすべての人物が、intoで指定した会社の名前とURLを引き継ぎます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/companies/:id/merge.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/companies/:id.json
会社を1件、その人物とともに取得
testimonial_companies_get
IDは会社のキーで、testimonial_companies_listが返すウェブサイトのホストまたは正規化された名前です。その会社のお客様の声は、company付きのtestimonials_listで取得できます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/companies/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/companies/:id.json
会社の名前とURLを、所属する全員分まとめて修正
testimonial_companies_update
会社のIDはそのURLまたは名前から決まるため、応答に新しいIDが含まれることがあります。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/companies/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声の保存済みビュー
POST
/sites/:site_id/testimonials/views.json
受信トレイのフィルター、検索テキスト、並び順、レイアウトに名前を付けて保存
testimonial_saved_views_create
個人用ビューに必要なのはanalytics.readだけです。共有ビューにはcontent.writeが必要で、なければコードnot_allowedで拒否されます。ピン留めされたビューは件数付きでサイドバーに表示されます。testimonials_listとview_idで開いてください。
権限: analytics.read
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/views.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/views/:id.json
保存済みビューを削除。お客様の声には影響しません
testimonial_saved_views_destroy
保存済みビューは保存されたフィルターなので、ビューだけが削除されます。そのビューから取り込んでいたウィジェットやウォールは設定を保持しますが、別の取り込み元を設定するまで表示するものがありません。個人用ビューは所有者が削除でき、共有ビューにはcontent.writeが必要です。それ以外の場合、呼び出しはコードnot_allowedで拒否されます。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: analytics.read
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/views/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/views.json
呼び出し元が開ける、サイトの保存済みビューを一覧表示
testimonial_saved_views_list
呼び出し元自身のビューと共有されているすべてのビューを返します。ピン留めされたものが順番どおりに先に並び、その後に名前順です。scopeはall(既定)、mine、sharedです。ビューのIDをview_idとしてtestimonials_listに渡すと、そのビューのお客様の声を読み取れます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/views.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/views/:id.json
保存済みビューの名前変更、保存内容の変更、ピン留め、共有
testimonial_saved_views_update
送信した入力だけが変更されます: name、保存された検索(q)、filters、sort、layout、columns、position、pinned、shared。個人用ビューは所有者が変更します。共有ビューの変更と、どのビューでも共有と共有解除にはcontent.writeが必要です。
権限: analytics.read
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/views/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声の分析
GET
/sites/:site_id/testimonials/analytics/breakdown.json
お客様の声の指標を、フォーム、リクエスト、ウィジェット、ウォール、お客様の声、チャネル、ページ、国、ソースで分ける
testimonial_stats_breakdown
大きい順に行を返し、それぞれにkey、label、value、share(合計に対するパーセント)、または割合の場合はnumeratorとdenominatorが含まれます。レコード(フォーム、リクエスト、ウィジェット、ウォール、お客様の声)の行にはIDが含まれます。各ディメンションが取れる指標は限られています。formとchannelはフォームの指標、requestはリクエストの指標、widgetとwallはそれぞれのviews、clicks、click_rate、video_plays、testimonialはtestimonial_viewsとvideo_plays、pageとcountryは表示とクリックの指標、sourceはnew_testimonialsです。合わない組み合わせは422で応答し、合う指標が示されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/analytics/breakdown.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/analytics/export.json
お客様の声の分析の1つのセクションのファイルをキューに入れる
testimonial_stats_export
指定した期間について、種類testimonial_statsのエクスポートを作成し、キュー済みの状態で返します。statusがcompleteになるまでexports_getをポーリングし、その後exports_downloadを呼び出してください。sectionは行を選びます: days(日、週、月ごとに1行で、すべての指標)、forms、channels、requests、widgets、walls、pages、testimonials、sources、countriesです。ファイルは7日間保持されます。すでにキューにあるエクスポートが多すぎる場合は、422 in_progressで応答します。
権限: analytics.export
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/analytics/export.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/analytics.json
サイトのお客様の声の分析を1回の呼び出しで読む
testimonial_stats_overview
期間について、お客様の声の分析タブが表示するすべてを返します: cards(form_views、submissions、completion_rate、answer_rate、widget_views、wall_views。compareを設定するとそれぞれにpreviousとchangeが付きます)、chart(時系列の1つの指標)、フォーム、リクエスト、ウィジェット、ウォールごとの行、channels(フォームが開かれた経路)、pages(ウィジェットとウォールが表示された場所)、top_testimonials、new_testimonials(ソース別と現在のステータス別)、countriesです。割合は0から100のパーセントで、割る数がなければnullです。blankは、サイトがまだ何も集計していない間はtrueで、recordedはこれまでに集計された指標を一覧にします。これらはウェブ分析ではなく、お客様の声機能の日次合計です。訪問者とページビューにはstats_overviewを使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/analytics.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/analytics/timeseries.json
お客様の声の指標を、日、週、月ごとに1つ読む
testimonial_stats_timeseries
date、to、value、そしてcompareを設定した場合はpreviousとprevious_date、さらにtotal、previous_total、changeを含むポイントを返します。割合(completion_rate、answer_rate、widget_click_rate、wall_click_rate)は各区間の合計から計算され、割る数がない区間ではnullです。new_testimonialsは、お客様の声そのものを、追加された日で数えます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/analytics/timeseries.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
お客様の声の取り消し一覧
GET
/sites/:site_id/testimonials/settings/undo.json
過去7日間に変更された、取り消せるものを一覧表示
testimonial_undo_records_list
新しい順です。各記録には、実行された内容、実行した人、変更した件数とスキップした件数とその理由、いつまで取り消せるかが示されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/settings/undo.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/settings/undo/:id.json
取り消し記録を1件読む
testimonial_undo_records_get
バックグラウンドでの実行では、stateはrunningで、processedが進み具合を示します。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/settings/undo/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/settings/undo/:id/undo.json
一括操作または単独の変更を7日以内に取り消す
testimonial_undo_records_undo
実行で変更されたすべてに、以前の値を戻します。その後さらに変更されたものはそのままにされ、leftに数えられます。人物や重複の統合も同じ方法で取り消されます。MCP経由では、削除またはごみ箱への移動を伴う取り消し(復元、翻訳実行、画像作成実行の取り消し)は実行されません。ツールはhuman_onlyと、人が操作できるアプリのページを返して応答します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/settings/undo/:id/undo.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声の画像
POST
/sites/:site_id/testimonials/images/bulk.json
コレクションの承認済みのお客様の声すべてについて画像を作る
testimonial_images_bulk_create
1回の実行で最大200件のお客様の声で、それぞれサイズごとに1つの画像です。画像に収まらない長さのテキストは、ハイライトから、なければ冒頭の文から描かれます(excerptedが件数を示します)。応答には、開始された画像、理由付きで除外されたお客様の声、export_idが含まれます。描画が終わると、PNGのZIPが1つ、エクスポートページに表示されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/images/bulk.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/images.json
承認済みのお客様の声1件から、サイズごとに1つずつ画像を作る
testimonial_images_create
描画できるのは承認済みのお客様の声だけです。PNGには公開アドレスが付くため、それ以外はnot_approvedで拒否されます。各画像はrenderingから始まり、バックグラウンドで描画されます。応答は、開始された画像のリストです。file_urlはtestimonial_images_getをポーリングして取得してください。text_too_long付きの422は、言葉が収まらないことを意味します。text_modeのhighlightまたはexcerpt、あるいはより縦長のサイズを使ってください。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/images.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/images/:id.json
画像とそのファイルを削除
testimonial_images_delete
PNGはメディアホストから削除され、そのアドレスは機能しなくなります。画像にはごみ箱がありません。そのお客様の声から、testimonial_images_createで作り直せます。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/images/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/images.json
サイトの画像を一覧表示
testimonial_images_list
承認済みのお客様の声から作られた画像を、新しい順に1ページ25件で表示します。status、template、size、testimonial_idで絞り込めます。準備ができたものには、それぞれfile_urlが含まれます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/images.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/images/:id.json
画像を1件、その状態とPNGのアドレスとともに取得
testimonial_images_get
statusはrendering、ready、failedのいずれかです。file_urlは準備ができると設定されます。testimonial_images_createの後は、statusがrenderingでなくなるまでこれをポーリングしてください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/images/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/images/:id.json
画像の描画方法を変更し、再描画する
testimonial_images_update
変更するものだけを送信します。何も送信しない場合は、現在のお客様の声から同じ画像を再描画します。これは失敗したものを再試行する方法でもあります。新しい描画には新しいfile_urlが付き、古いファイルは削除されます。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/images/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声の移行
POST
/sites/:site_id/testimonials/imports/migrations/:id/discard.json
移行が読み取ったものを破棄
testimonial_migrations_discard
item_ids(testimonial_migrations_reviewのID)、または待機中のすべてを対象にall trueを指定します。両方は指定できません。破棄された項目は確認ステップから消え、その人物について読み取った内容は消去されます。お客様の声は削除されません。それ以外の場合、サーバーは422とコードselectionまたはunknown_idsで応答します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/imports/migrations/:id/discard.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/imports/migrations.json
サイトの移行を一覧表示
testimonial_migrations_list
新しい順です。移行は、他のお客様の声ツールからの1つのエクスポートファイルです。それぞれに、元のツール、ステータス、見つかった件数、保持された件数、重複の件数、失敗の件数が含まれます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/imports/migrations.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/imports/migrations/:id/keep.json
移行が読み取ったものをお客様の声として保持
testimonial_migrations_keep
item_ids(1回の呼び出しで最大100件、testimonial_migrations_reviewから)またはall trueを指定します。両方は指定できません。保持された各項目は、statusがpendingまたはapprovedのお客様の声になり、keep_approval trueにすると、他のツールでの承認が保持されます。allを使うと、include_likely_duplicatesがtrueでない限り、重複の可能性が高いものは除外されます。保持されたものは月間のお客様の声に数えられません。保持されなかったものは、30日間確認ステップに残ります。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/imports/migrations/:id/keep.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/imports/migrations/:id/review.json
移行が読み取った、まだ判断されていないものを一覧表示
testimonial_migrations_review
判断待ちの項目を、新しい実行の順に一覧表示します。showはnew、duplicates、all(既定)で、ratingは一覧にある星評価だけを残します。項目IDをtestimonial_migrations_keepまたはtestimonial_migrations_discardに渡してください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/imports/migrations/:id/review.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/imports/migrations/:id.json
移行の進捗と件数を取得
testimonial_migrations_get
ファイルの元のツール、ステータス、見つかった件数、保持された件数、重複の件数、失敗の件数、取り込まれるメディアファイルの数、開始と終了の時刻を返します。ステータスがファイルの読み取り中を示している間は、ポーリングしてください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/imports/migrations/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
お客様の声の翻訳
POST
/sites/:site_id/testimonials/translations.json
お客様の声を、サイトが提供する言語に翻訳
testimonial_translations_create
先にtestimonial_translations_estimateを呼び出してください。選んだお客様の声の本文、タイトル、ハイライトがGoogle Cloud Translationに送られ(名前、メールアドレス、会社は送られません)、アシスタントが開始したことがメンバーにメールで通知されます。翻訳はバックグラウンドで行われ、すでに保存されている行が再取得されることはありません。月の文字数の上限に達すると、残りは待機として保存され、1日に再開されます。Business未満では402 plan_limit、翻訳が設定されていない間は422 not_configuredで応答します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/translations.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/translations/:testimonial_id/:language.json
保存済みの翻訳を1件削除
testimonial_translations_delete
その言語が使われていたすべての場所で、お客様の声が再び本人の言葉で表示されます。すでに使われた文字数は戻りません。どのプランでも動作します。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/translations/:testimonial_id/:language.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/translations/estimate.json
翻訳の実行前に、送信される文字数を数える
testimonial_translations_estimate
対象のお客様の声を次のいずれか1つの方法で指定します: testimonial_ids、collection_id、all_approved。応答には、お客様の声、送信される文字数、すでに保存されている文字数、今月の残りが含まれます。文字数のみで、料金は示されません。何も取得されません。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/translations/estimate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/translations.json
サイトの保存済み翻訳を一覧表示
testimonial_translations_list
お客様の声と言語ごとに1行で、最近変更された順に1ページ25件です。language、state、origin、testimonial_idで絞り込めます。どのプランでも動作するため、ダウングレード前に作られた翻訳も引き続き読めます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/translations.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/translations/:testimonial_id/:language.json
翻訳を1件、手作業で書く、または修正する
testimonial_translations_update
その行は編集済みとして印が付き、overwrite_editedを送信しない限り、後の実行で上書きされません。何も取得されず、上限にも数えられません。原文が変更されることはありません。Business以上で利用できます(それ以外では402 plan_limit)。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/translations/:testimonial_id/:language.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声の言及
GET
/sites/:site_id/testimonials/mentions.json
サイトのお客様の声に繰り返し現れる単語とフレーズを一覧表示
testimonial_mentions_list
各語には、それを含むお客様の声の数、割合、それらの平均評価、直近90日とその前の90日との比較が含まれます。rating_ascで並べると不満の内容がわかり、risingで並べると新しい話題がわかります。meta.refreshed_atは、語が最後に再構築された日時を示します。語をmentionとしてtestimonials_listに渡すと、そのお客様の声を読み取れます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/mentions.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/mentions/tag.json
ある単語やフレーズに言及しているすべてのお客様の声にタグを付ける
testimonial_mentions_tag
結果全体に対する1つの一括操作で、取り消しもできます。語は任意の単語または2語のフレーズで、言及の集計と同じ語幹処理で一致させます。初めて指定した名前のタグは作成されます。testimonials_bulk_undoで7日間使える取り消しIDで応答します。100件を超えるものはバックグラウンドで実行されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/mentions/tag.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
PATCH
/sites/:site_id/testimonials/mentions.json
ノイズでしかない語を非表示にする、または再表示する
testimonial_mentions_update
非表示にした語は、言及の一覧と受信トレイの言及ファセットから消え、語が再構築されても非表示のままです。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/mentions.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声の言語
GET
/sites/:site_id/testimonials/settings/languages.json
サイトのお客様の声の言語設定を取得
testimonial_languages_get
既定の言語、提供される言語、新しく承認されたお客様の声が自動で翻訳されるか、プランに翻訳が含まれるか、翻訳が設定済みか、今月に使用した文字数と残りの文字数です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/settings/languages.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/settings/languages.json
既定の言語、提供する言語、自動翻訳を設定
testimonial_languages_update
変更するものだけを送信します。既定の言語は常に提供される言語に含まれ、フォームが書かれている言語は削除できません(in_use)。auto_translateをオンにするにはBusiness以上が必要です(それ以外では402 plan_limit)。それ以降、新しく承認された各お客様の声の言葉がGoogle Cloud Translationに送られ、アシスタントがこれを変更したことがメンバーにメールで通知されます。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/settings/languages.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
お客様の声の購入連携
DELETE
/sites/:site_id/testimonials/settings/purchase_connections/:id.json
支払いアカウントを切断
testimonial_purchase_connections_delete
連携とそのキーを削除します。最初のメールをまだ待っている購入者には依頼されません。常設リクエストは、送信された内容の記録として残ります。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/settings/purchase_connections/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/settings/purchase_connections.json
サイトの購入連携を一覧表示
testimonial_purchase_connections_list
それぞれに、ルール、状態、常設リクエストが含まれます。キーが返されることはありません。pausedは、購入後のリクエストがないプランでtrueになります。連携は保持されますが、支払いを読み取らず、誰にも依頼しません。
権限: sites.manage
curl https://privatusanalytics.com/sites/:site_id/testimonials/settings/purchase_connections.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
お客様の声の重複
POST
/sites/:site_id/testimonials/duplicates/dismiss.json
グループが重複ではないと判定。キューには二度と戻りません
testimonial_duplicates_dismiss
testimonial_idsは、testimonial_duplicates_listが返す、ごみ箱にない重複キューの未処理の1グループのすべてのコピーでなければなりません。何も統合されず、お客様の声も変更されませんが、二度と一緒にグループ化されることはありません。3件のグループを分けるには、先に同じ2件を統合してください。IDがちょうど1つの未処理グループでない場合、サーバーは422で応答します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/duplicates/dismiss.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/duplicates.json
同じお客様の声が2回ある可能性が高いグループを一覧表示
testimonial_duplicates_list
完全一致が先に並びます。各グループには、そのコピーがすべて含まれ、残されるコピーであるkeeper_idも含まれます。meta.exact_groupsは、testimonial_duplicates_merge_exactが統合するグループの数です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/duplicates.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/:id/merge.json
お客様の声のコピーを、パスで指定した1件に統合
testimonials_merge
残す側は、ステータスと認証状態を保持し、body_fromで別のコピーを指定しない限り言葉も保持します。足りないタグ、手動コレクション、配置、カスタムプロパティが追加されます。コピーは統合済みの印を付けてごみ箱に移動し、1件を復元すると、そのコピーの統合が取り消されます。今月到着したコピーは、新しいお客様の声として数えられなくなります。応答にはmeta.undo_idが含まれます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/:id/merge.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/duplicates/merge_exact.json
キュー内のすべての完全一致を一度に統合
testimonial_duplicates_merge_exact
まずdry_runで件数を取得し、次にその合計をconfirm_countに指定してください。1回の呼び出しで最大100グループが統合されます。応答にはmeta.undo_idが含まれ、1回の取り消しで実行全体が元に戻ります。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/duplicates/merge_exact.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
アカウント
GET
/account.json
プロフィールと設定を取得
account_get
サインイン中のメンバー自身のプロフィールと設定を返します。account_update で変更する前に設定を確認するために使います。対象は個人であり、ワークスペースではありません。ワークスペースのプランと請求書は billing_get にあります。フィールドは、email、unconfirmed_email(メールアドレスの変更が確認待ちの間に設定され、それ以外は null)、name(null 可)、theme(system、light、dark のいずれか)、default_landing(sites または last_site)、locale(サインイン後のアプリの言語コード)、timezone(IANA名、null 可)、shortcuts_enabled、reduce_motion、product_emails、site_audit_emails、marketing_emails、newsletter(すべて真偽値で、true は購読中を意味します)、two_factor(真偽値)、passkeys(登録済みパスキーの数)、created_at(ISO 8601)です。ワークスペースのIDプロバイダー経由でのみ開かれたセッションでは、email と表示設定のみが表示されます。
権限: member
curl https://privatusanalytics.com/account.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/account.json
プロフィールと設定を更新
account_update
サインイン中のメンバー自身のプロフィール、表示設定、メール購読を更新します。送信した項目のみが変更され、それ以外はそのままです。email を変更しても、すぐには反映されません。新しいアドレスに確認メールが送信され(送信回数に制限があります)、確認されるまでは unconfirmed_email に保留中のアドレスが表示されます。APIトークンではメールアドレスを変更できず、配信停止後に marketing_emails を再度オンにすることもできません。どちらもサインイン済みのブラウザが必要です。marketing_emails をオフにすることは可能です。ワークスペースのIDプロバイダーで開かれたセッションでは、表示設定(theme、default_landing、locale、timezone、shortcuts_enabled、reduce_motion)のみ変更できます。更新後のアカウントを account_get と同じ形式で返します。アカウントの削除やワークスペース設定の変更はできません。
権限: member
curl -X PATCH https://privatusanalytics.com/account.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
アシスタント
POST
/sites/:site_id/ask.json
新しい会話で質問する(月間のAI質問数の上限に含まれます)
assistant_ask
1つのサイトで新しいAsk会話を開始し、そのサイトのアナリティクスを使って最初の質問に答えます。サイトに関する普通の言葉での質問に使います。既存の会話を続けるには assistant_ask_followup を、正確なクエリがすでにわかっている場合は stats ツールを使ってください。回答は、読み取り専用のアナリティクスクエリを自分で実行するAIモデルが作成するため、呼び出しには数十秒かかることがあります。ワークスペースの月間許容量(Freeは5、Proは20、Businessは100)に対してAIへの質問1回として数えられ、許容量を使い切ると制限エラーで失敗します。質問は最大2,000文字です。会話は開始したメンバーだけが見ることができ、最後のメッセージから30日後に削除されます。会話(id、site_id、質問から付けられた title、created_at、updated_at、expires_at)と messages 配列を返します。各メッセージには、role(user または assistant)、content(回答のテキスト)、queries(アシスタントが実行した正確なアナリティクスクエリ)、chart(null 可のグラフ定義)、goal_draft(null 可の提案されたゴール)、トークン数、created_at が含まれます。回答に失敗した場合、会話は削除され、質問は数えられません。analytics.read が必要です。
権限: analytics.read
curl -X POST https://privatusanalytics.com/sites/:site_id/ask.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/ask/:id.json
質問の会話とそのメッセージを削除
assistant_conversations_delete
1つのAsk会話とそのすべてのメッセージを、ただちに完全に削除します。この操作は元に戻せません。会話のIDは assistant_conversations_list から取得してください。会話を開始したメンバーだけが、その会話を見たり削除したりできます。analytics.read と site_id が必要です。削除された会話の概要(id、site_id、title、タイムスタンプ)を返します。すでにその月に数えられたAIへの質問は、返却されません。
権限: analytics.read
curl -X DELETE https://privatusanalytics.com/sites/:site_id/ask/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/ask.json
サイトの質問の会話を一覧表示
assistant_conversations_list
サインイン中のメンバーの、1つのサイトでのAsk会話を、更新が新しい順に一覧表示します。他のメンバーの会話は表示されません。assistant_conversations_get、assistant_ask_followup、assistant_conversations_delete で使う会話IDを見つけるために使います。各項目には、id、site_id、title(最初の質問を80文字に切り詰めたもの)、created_at、updated_at、expires_at が含まれ、メッセージは含まれません。page と per_page(最大100)でページ分割されます。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/ask.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/ask/:id.json
質問の会話: 質問、回答、その根拠となったクエリ、グラフ
assistant_conversations_get
1つのAsk会話を、全メッセージ履歴とともに返します。会話IDは assistant_conversations_list または assistant_ask の結果から取得してください。フィールドは、id、site_id、title、created_at、updated_at、expires_at(最後のメッセージから30日後で、その後会話は削除されます)、messages です。各メッセージには、role(user または assistant)、content、queries(アシスタントが実行したアナリティクスクエリ)、chart(null 可)、goal_draft(null 可)、input_tokens と output_tokens(null 可の整数)が含まれます。会話を開始したメンバーだけが読み取れます。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/ask/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/ask/:ask_conversation_id/messages.json
会話でフォローアップの質問をする(月間のAI質問数の上限に含まれます)。回答を返します。
assistant_ask_followup
既存のAsk会話の中でフォローアップの質問をします。アシスタントはそれまでの質問と回答をコンテキストとして保持します。新しい会話を開始するには、代わりに assistant_ask を使ってください。conversation_id は assistant_conversations_list から取得します。アシスタントが読み取り専用のアナリティクスクエリを実行するため、呼び出しには数十秒かかることがあります。各質問は、ワークスペースの月間AI質問許容量(Freeは5、Proは20、Businessは100)に対して数えられ、使い切ると制限エラーで失敗します。質問は最大2,000文字です。会話全体ではなく、新しいアシスタントのメッセージのみを、id、role、content(回答)、queries(実行した正確なクエリ)、chart(null 可)、goal_draft(null 可)、input_tokens、output_tokens、created_at とともに返します。analytics.read が必要で、自分の会話でのみ使えます。
権限: analytics.read
curl -X POST https://privatusanalytics.com/sites/:site_id/ask/:ask_conversation_id/messages.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
アップタイム
POST
/sites/:site_id/uptime.json
サイトのアップタイムチェックを追加
uptime_checks_create
1つのサイトに紐づくアップタイムチェックを追加します。サイトに属さないチェックには workspace_uptime_checks_create を使ってください。kind が対象を決めます。http は url のステータスコードをチェックし、keyword は url のレスポンス本文に keyword が含まれるかをチェックし、tcp は host と port に接続し、dns は host が名前解決されるかをチェックします。他の kind のフィールドは無視されます。http のチェックでは、url の既定はサイトのホームページです。expected_status(100から599、既定は200)、http_method(GET または HEAD)、timeout_seconds(1から30、既定は20)は、http と keyword のチェックに適用されます。interval_seconds は、プローブの間隔で、プランの最小値以上でなければならず(Freeは300、Proは60、Businessは30)、既定は300、または最小値のほうが大きい場合はその値です。public を true にすると、チェックをステータスページに表示できます。プライベートや内部のアドレスは拒否され、ワークスペースごとのチェックの数はプランによって制限されます(Freeは3、Proは20、Businessは100)。最初のプローブはすぐに実行され、status は pending から始まります。uptime.manage 権限が必要です。id(upc_...)を持つチェックを返します。
権限: uptime.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/uptime.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/uptime/checks/:id.json
アップタイムチェックとその履歴を削除
uptime_checks_delete
アップタイムチェックを、その結果とインシデント履歴とともに完全に削除し、それを表示しているステータスページからも外します。この操作は元に戻せません。履歴を残したままプローブを止めるには、uptime_checks_pause を使ってください。id は uptime_checks_list から取得します。uptime.manage 権限が必要です。削除したチェックを返します。
権限: uptime.manage
curl -X DELETE https://privatusanalytics.com/uptime/checks/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/uptime.json
サイトのアップタイムチェックを一覧表示
uptime_checks_list
1つのサイトのアップタイムチェックを一覧表示します。サイトのドメインまたはそのサブドメインをプローブする、ワークスペース全体のチェックも含まれます。名前順です。ワークスペース内のすべてのチェックには workspace_uptime_checks_list を使ってください。status(up、down、pending、paused)または query(name、url、host の一部)で絞り込めます。page と per_page(最大100)でページ分割されます。各チェックには、id(upc_...)、workspace_id、site_id(ワークスペース全体のチェックでは null)、name、kind、url、host、port、keyword、expected_status、http_method、interval_seconds、timeout_seconds、status(up、down、pending、paused)、enabled、public、last_checked_at、next_check_at、last_response_ms(ミリ秒)、ssl_expires_at、ssl_issuer、domain_expires_at、created_at が含まれます。アップタイムの割合とインシデントには uptime_checks_get を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/uptime.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/uptime/checks/:id/pause.json
アップタイムチェックを一時停止
uptime_checks_pause
アップタイムチェックを一時停止し、プローブされなくなります。開いているインシデントはただちに終了し、一時停止中は、ダウンやアップのアラートは送信されません。履歴は保持され、status は paused と表示されます。再開するには uptime_checks_resume を使ってください。id は uptime_checks_list から取得します。uptime.manage 権限が必要です。チェックを返します。
権限: uptime.manage
curl -X POST https://privatusanalytics.com/uptime/checks/:id/pause.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/uptime/checks/:id/resume.json
一時停止中のアップタイムチェックを再開
uptime_checks_resume
一時停止中のアップタイムチェックを再開します。次のスケジューラーのタイミングでプローブされ、最初の結果が届くまで status は pending です。id は uptime_checks_list から取得します。uptime.manage 権限が必要です。チェックを返します。
権限: uptime.manage
curl -X POST https://privatusanalytics.com/uptime/checks/:id/resume.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/uptime/checks/:id.json
アップタイムチェックを取得: 24時間・7日・30日のアップタイム、応答時間、インシデント
uptime_checks_get
1つのアップタイムチェックを、設定だけでなく履歴も含めて返します。応答時間のグラフのために range(既定は 24h、7d、30d)を選びます。レスポンスには、check(設定とライブの状態で、uptime_checks_list を参照)、uptime(24h、7d、30d のパーセントで、最初のプローブが実行されるまでは null)、range、response_times(unit は hour または day、labels はISO 8601の時刻、series は場所ごとの平均応答時間(ミリ秒)で、欠けている箇所は null)、incidents(最新の50件で、started_at、まだ開いている間は null の resolved_at、duration_seconds、cause、failed_locations を含む)が含まれます。応答時間にカウントされるのは、成功したプローブのみです。id は uptime_checks_list から取得します。
権限: analytics.read
curl https://privatusanalytics.com/uptime/checks/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/uptime/checks/:id.json
アップタイムチェックを変更
uptime_checks_update
アップタイムチェックを変更します。送信した項目のみが変更されます。ルールと制限は uptime_checks_create と同じです(間隔はプランの最小値以上でなければならず、プライベートなアドレスは拒否されます)。kind を変更すると、もう適用されない対象のフィールドはクリアされます。interval_seconds を変更すると、次のプローブがただちにスケジュールされます。id は uptime_checks_list から取得します。uptime.manage 権限が必要です。更新後のチェックを返します。
権限: uptime.manage
curl -X PATCH https://privatusanalytics.com/uptime/checks/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/uptime/probes.json
プローブのデータセンター、User-Agent、送信元IP範囲(アップタイムプローブを許可リストに登録するため)
uptime_probes_list
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/uptime/probes.json
POST
/uptime/probes/results.json
外部プローブエージェントからの結果を送信(Bearerのアップタイムプローブトークン)
uptime_probes_results
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/uptime/probes/results.json \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/uptime.json
ワークスペースのアップタイムチェックを追加(サイトに紐付けません)
workspace_uptime_checks_create
1つのサイトではなく、ワークスペース全体に属するアップタイムチェックを追加します。チェックをサイトに紐づけるには uptime_checks_create を使ってください。入力、プランの制限、ルールは同じです(uptime_checks_create を参照)。kind は http、keyword、tcp、dns のいずれかで、url、keyword、host、port のどれが適用されるかを決めます。サイトがないため、http のチェックには明示的な url が必要です。一部のサイトに限定された呼び出し元は、ワークスペース全体のチェックを作成できません。workspaces_list から取得する workspace_id と、uptime.manage 権限が必要です。id(upc_...)を持ち、site_id が null のチェックを返します。
権限: uptime.manage
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/uptime.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/uptime.json
ワークスペース内のすべてのアップタイムチェックを一覧表示
workspace_uptime_checks_list
ワークスペースのすべてのアップタイムチェックを、サイトに紐づかないチェックも含めて、名前順に一覧表示します。一部のサイトに限定された呼び出し元には、それらのサイトのチェックのみが表示されます。1つのサイトのチェックには uptime_checks_list を使ってください。status(up、down、pending、paused)または query(name、url、host の一部)で絞り込めます。page と per_page(最大100)でページ分割されます。各項目には、uptime_checks_list で説明されているフィールドがあります。workspaces_list から取得する workspace_id が必要です。
権限: analytics.read
curl https://privatusanalytics.com/workspaces/:workspace_id/uptime.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
アナリティクス
GET
/sites/:site_id/clicks.json
クリックマップ: サイト全体で最もクリックされた要素。または1つのページについて、各要素をクリックした訪問の割合
clicks_list
clicksトラッカーモジュールが集めた、要素ごとのクリック数です。要素は短いCSSセレクター(タグ、id、最大2つのクラス、最大4階層)で表されます。サイトが名前を付けた場合は [data-privatus-click="name"] になります。1つのページを見るには path(スラッシュで始め、保存されているとおりに)を渡します。その場合、elements は {selector, clicks, visits, visit_share} の形式になり、page_visits はそのページを見た訪問の数、visit_share はそのうち要素をクリックした訪問の割合(0から100のパーセント)です。path がないときは、elements はサイト全体の {path, selector, clicks, visits} の形式になります。visits は1回以上クリックした訪問の数です。period、path、page_visits、elements を、クリックが多い順に返します。要素の文字、座標、マウスの動きは一切集めません。ページのほかの情報は pages_detail で見てください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/clicks.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/overview.json
サイト概要: 指標、グラフ系列、上位パネル、ライブ訪問者、メモ
stats_overview
サイト概要ページに表示されるすべての内容を、1回の呼び出しで返します。サイトの調子はどうかといった幅広い質問に答えるときに、複数のツールを呼び出す代わりに使います。period、metrics(visitors、visits、pageviews、views_per_visit、bounce_rate、visit_duration、revenue)、interval、series(時間バケットごとに1項目)、panels、notes、live_visitors を返します。compare を指定すると、stats_aggregate や stats_timeseries と同様に、comparison_period、comparison、change、comparison_series が追加されます。単位はこれらのツールと同じです。bounce_rate は0から100のパーセント、visit_duration はエンゲージ時間の中央値(ミリ秒)、revenue はマイナー単位(セント)の整数です。panels はディメンション名をキーとするオブジェクトで、それぞれが割合付きの上位10行を保持し、そのディメンションの stats_breakdown と同じ行の形式です。既定では channel、referrer、page、entry_page、country、device、browser、os、utm_campaign、event、goal を返します。他のディメンションを選ぶには panels を送信してください(prop のキーを除く任意のディメンション名)。notes は範囲内の注釈を {id, date, end_date, title, url, color} の形式で一覧にします。live_visitors は直近5分間の訪問者数です。1つのディメンションで10行を超える場合は stats_breakdown を、1つの数値だけが必要な場合は stats_aggregate を使ってください。共通の period、compare、filters、segment の入力を受け付けます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/overview.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/experiments/external.json
実験レポート: バリアントごとのコンバージョン率、コントロールとの差、有意性(2標本比率のz検定)
experiments_report
イベントデータを使ってA/Bテストをレポートします。訪問は、イベントプロパティに含まれるバリアント(その訪問で最初に見られた値。たとえばプロパティ variant で、値が control と b)に割り当てられ、コンバージョンはゴールを達成した訪問です。必須の入力は property(小文字のキーで、64文字まで)と goal_id(goals_list から取得する、有効なゴール)です。period、property、goal {id, name}、control、confidence(0.95)、variants を返します。各バリアントには、visits、conversions、conversion_rate(パーセント、0から100)、control(基準なら true)、uplift(コントロールに対するコンバージョン率の変化率で、コントロール自身、またはコントロールの率が0の場合は null)、z、p_value、significant(p_value が0.05未満の場合に true。2標本の比率のz検定を使用)が含まれます。コントロールは、control に渡したバリアント、なければ control という名前のもの、それもなければ訪問数が最も多いバリアントです。バリアントは最大20件で、訪問数の多い順です。先に、サイトがバリアントをイベントプロパティとして送信していることを確認してください。共通の period と filters の入力を受け付けます。単純なゴールのコンバージョン率には goals_get を使ってください。BusinessプランまたはEnterpriseプランが必要です(それ以外は 402 plan_limit)。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/experiments/external.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/insights.json
前の期間と比べた注目すべき変化を、日常の言葉で説明(大きな変動、ゴールコンバージョンの変化)
insights_get
サイトの注目すべき変化を、同じ長さの前の期間と比較して、わかりやすい文章で返します。period、comparison_period、insights を返します。期間は昨日までの完全な日数で、period(7d、14d、28d、30d。既定は7d)で選びます。各インサイトには、dimension(total、channel、page、country、goal のいずれか)、metric、value、previous、current、change、sentence が含まれます。change は件数ではパーセント、ゴールのコンバージョン率ではパーセントポイントで、sentence はそのまま読める英語の一文です。総訪問者数と総ページビュー、ディメンションごとに変化が大きい上位2件(20パーセント以上の変化で、訪問数またはビュー数が10以上のもの)、そしてコンバージョン率が0.5ポイント以上動いたゴールが含まれます。重要なものが先に並び、limit(既定は8、最大20)で件数が制限されます。結果は1日のあいだ保持されます。正確な数値には stats_aggregate と stats_breakdown を使い、これは何が変わったのかを見つけるために使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/insights.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/journeys.json
ジャーニー: ページ(または任意の入口)の後、またはページやゴールの前の、上位3ステップの経路
journeys_explore
訪問内で最も多い3ステップのページ経路を調べます。forward モード(既定)では、path で指定した開始ページの後の経路を表示します。path が空の場合は、あらゆる流入口の後の経路を表示します。reverse モードでは、終了ページ(path)またはゴール(goal_id。指定すると自動的に reverse に切り替わります)に至る経路を表示します。reverse には path または goal_id が必要です。path はスラッシュで始める必要があります。period、mode、path、goal、sampled、sample_rate(パーセント)、total_visits と、ステップごとの nodes と links を持つ経路グラフを返し、ステップごとのページ数は limit(2から12、既定は6)で制限されます。訪問数が100,000を超えると、データはサンプリングされます。ページフィルターは経路を途中で切ってしまうため、無視されます。永続的な訪問者IDは保存されないため、経路は訪問ごとに構築されます。共通の period、filters、segment の入力を受け付けます。1つのページの前後のページには pages_detail を、ステップごとのコンバージョンには funnels_get を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/journeys.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/pages/detail.json
ページ詳細: 1つのパスについての指標、前後のページ、流入元、Web Vitals、イベント、クリックマップ
pages_detail
1つのページを詳しく見ます。path(スラッシュで始める必要があります。例: /pricing)を、保存されているとおり(クエリ文字列やホストを除く)に渡します。period、path、url、metrics、previous_pages、next_pages、sources、vitals、events、clicks、goals、notes を返します。metrics には、visitors、visits、pageviews、entrances、exits、entry_rate、exit_rate、bounce_rate(パーセント、0から100)、time_on_page(中央値、ミリ秒)、scroll_depth(中央値、パーセント)が含まれ、最後の2つはエンゲージメントのデータがない場合は null です。previous_pages と next_pages は、同じ訪問内でそのページの前後に見られたページで、{value, count, share} の形式です。特別な値として (entrance) と (exit) があります。sources には、このページから入った訪問の上位チャンネルと参照元が含まれます。vitals にはWeb Vitalごとのp75の値と評価が含まれます。events はそのページで発生したカスタムイベント、clicks は最もクリックされた要素のセレクター、goals はそのページで達成されたゴール、notes はそのページに言及している注釈です。ページをランク付けするには dimension を page にして stats_breakdown を、参照元サイトには referrers_detail を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/pages/detail.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/referrers.json
参照元: このサイトにリンクしているサイトと、その訪問者数、エンゲージメント、トラフィックの種類、リンク元ページ数
referrers_list
訪問者を送ってきた外部サイトを、それぞれが送った内容とともにランク付けします。ダイレクト訪問(参照元なし)は除外されます。period、summary、channels、page、limit、has_more、rows を返します。summary には、visitors、visits、pageviews、bounce_rate(パーセント)、visit_duration(エンゲージ時間の中央値、ミリ秒)、revenue(マイナー単位、セント)、sites(参照元サイトの数)、share(参照元からの訪問が全訪問に占めるパーセント)が含まれます。channels はトラフィックの種類を {value, visitors, visits} の形式で示します。各行には、value(参照元のホスト)、visitors、visits、pageviews、bounce_rate、visit_duration、revenue、channel(通常のチャンネル)、linking_pages(そのサイトのうち、ここにリンクしているページの数)、share(参照された訪問者に対するパーセント)が含まれます。並べ替えは sort(visitors、visits、pageviews、revenue。既定は visitors)、絞り込みは search(ホストに含まれるテキスト)で行い、has_more が true の間は page と limit(最大100)でページを送ります。1つのサイトについては referrers_detail を使ってください。共通の period、compare、filters、segment の入力を受け付けます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/referrers.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/referrers/detail.json
参照元の詳細: 1つの参照元サイトの指標と推移、リンク元ページ、ランディングページ、国、デバイス、キャンペーン、コンバージョン
referrers_detail
1つの参照元サイトを詳しく見ます。referrer には、www と パスを除いたホスト(例: news.ycombinator.com)を、referrers_list と同じ値で渡します。period、referrer、url、channel(最も多いチャンネル)、metrics、share(全訪問に対するパーセント)、interval、series(時間ごとのトラフィック)、linking_pages、landing_pages、channels、countries、devices、campaigns、goals を返し、compare を指定すると comparison、change、comparison_series も返します。metrics と series は、stats_aggregate や stats_timeseries と同じフィールドと単位です。linking_pages は訪問者を送ってきた参照元のページで、path、url、visitors、share を持つ行です(クエリ文字列は保存されません)。landing_pages は、それらの訪問者が最初に着地したページです。channels、countries、devices、campaigns は指標付きの上位の値で、goals は達成されたゴールを conversions と conversion_rate とともに一覧にします。参照元サイトをランク付けするには referrers_list を、単純な一覧には dimension を referrer にした stats_breakdown を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/referrers/detail.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/stats/aggregate.json
期間ごとの主要指標(比較付き)
stats_aggregate
1つの期間の主要な数値を、1つのオブジェクトで返します。period {from, to} と metrics {visitors, visits, pageviews, views_per_visit, bounce_rate, visit_duration, revenue} を返します。compare を指定すると、comparison_period、comparison(もう一方の範囲の同じ指標)、change(指標ごとの変化率で、以前の値が0の場合は null)も返します。単位は次のとおりです。bounce_rate は0から100のパーセントです(10.9 は 10.9% を意味します)。visit_duration は訪問のエンゲージ時間の中央値(ミリ秒)です。revenue はサイトの通貨のマイナー単位(セント)の整数です。views_per_visit は小数です。永続的な訪問者IDは保存されないため、訪問者は日ごとにカウントされます。別の日に再訪した人は、再びカウントされます。合計値と期間ごとの変化にはこれを使ってください。時系列のグラフには stats_timeseries を、ディメンションの上位の値には stats_breakdown を、すべてを1回の呼び出しで取得するには stats_overview を使います。いずれも filters で絞り込めます(ディメンション名と演算子は filters を参照)。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/stats/aggregate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/breakdown/:dimension.json
ディメンション(ページ、流入元、国など)の上位の値
stats_breakdown
1つのディメンションの上位の値を、指標とともに重要な順にページ分割して返します。ディメンションはパスの最後の部分で、その説明にある正確な名前でなければなりません(例: country、page、channel、utm_campaign、prop:plan)。period、dimension、label、page、limit、has_more、rows を返します。has_more が true の間は、次のページを要求してください。各行には value と share(期間の合計に対するパーセント)があります。行のその他のフィールドは、ディメンションによって異なります。訪問ディメンション(channel、referrer、referrer_url、utm_*、ref、hostname、country、language、device、browser、browser_version、os、os_version、screen、entry_page、exit_page、interaction、bot_score)は、visitors、visits、pageviews、views_per_visit、bounce_rate、visit_duration、revenue を返します。page は、pageviews、visits、time_on_page(ミリ秒)、scroll_depth(パーセント)を返し、visitors は含みません。event と prop:<key> は、completions、visits、revenue、conversion_rate を返します。goal は、goal_id、completions、conversions、conversion_rate、revenue を返します。単位は次のとおりです。bounce_rate と conversion_rate はパーセント(0から100)、時間はミリ秒、revenue はマイナー単位(セント)です。誤ったディメンションを指定すると、有効な名前を一覧にした422が返されます。search ですべての行から値を探し、filters で先にデータを絞り込めます(例: 1つの国が訪問したページ)。1つのページや1つの参照元を詳しく見るには、pages_detail または referrers_detail を使ってください。interaction と bot_score のディメンションには、BusinessプランまたはEnterpriseプランが必要です。他のプランでは、ブレークダウンとして使うと 402 plan_limit で応答し、それらのフィルターは除外されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/breakdown/:dimension.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/stats/timeseries.json
グラフ用の時間バケットごとの指標
stats_timeseries
グラフや傾向のための、時間バケットごとの指標です。period、interval(実際に使われたバケット)、series を返します。series は {date, visitors, visits, pageviews, views_per_visit, bounce_rate, visit_duration, revenue} のリストで、バケットごとに1項目、date はバケットの開始時刻(ISO 8601)です。compare を指定すると、もう一方の範囲の comparison_series もバケットごとに返します。単位は stats_aggregate と同じです。bounce_rate はパーセント(0から100)、visit_duration はエンゲージ時間の中央値(ミリ秒)、revenue はマイナー単位(セント)です。interval の既定は auto で、範囲に合わせて分、時間、日、週、月が選ばれます。バケットのサイズを固定するには、これを設定してください。単一の合計には stats_aggregate を、country や page などのディメンションで分割するには stats_breakdown を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/stats/timeseries.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
アフィリエイトプログラム
GET
/account/affiliate/commissions.json
アフィリエイトのコミッションを一覧表示
affiliate_commissions_list
コミッション、返金やチャージバックによる取り消し、およびその差し戻しを新しい順に返します。金額はセント単位です。
権限: member
curl https://privatusanalytics.com/account/affiliate/commissions.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/account/affiliate/signup-box.json
アフィリエイトの登録ボックスのコードと結果を取得
affiliate_signup_box_get
選択したテーマ用の登録ボックスの埋め込みコード(スクリプトと通常の iframe)、フォームを事前入力する属性、スクリプトがページ上で発火するイベント、ボックスの数値(確認待ちの登録、確認済みの登録、有料顧客)。アフィリエイト申請が承認されるまで available は false です。
権限: member
curl https://privatusanalytics.com/account/affiliate/signup-box.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/account/affiliate.json
アフィリエイトのステータス、紹介リンク、統計を取得
affiliate_get
アフィリエイト申請のステータス、紹介リンク、紹介した登録数と有料顧客数、通貨ごとの残高(保留中、支払い可能、支払い済み)。申請していない場合、status は none です。
権限: member
curl https://privatusanalytics.com/account/affiliate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
アラート
POST
/alerts/:id/acknowledge.json
最新のインシデントを確認済みにする
alerts_acknowledge
アラートの最新の未確認インシデントを、呼び出したユーザーが確認済みとしてマークします。インシデントの解決やアラートのミュートは行いません。条件が解消されると、アラートは自動的に解決されます。アラートに未確認のインシデントがない場合、呼び出しは検証エラーで失敗します。アラートを返します。acknowledged_at と acknowledged_by を含むインシデントを確認するには alerts_history を使ってください。必要なのはアナリティクスの読み取り権限のみのため、閲覧者でも確認できます。
権限: analytics.read
curl -X POST https://privatusanalytics.com/alerts/:id/acknowledge.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/alerts.json
アラートを作成
alerts_create
サイト(kind が usage の場合はワークスペース全体)を監視し、トリガーされたときに選択したチャンネルへ通知するアラートルールを作成します。パスには workspace_id を指定します。name と kind は必須です。kind によって、必要な項目が変わります。threshold には site_id、metric(visitors、visits、pageviews、bounce_rate、conversion のいずれか)、operator(gt、gte、lt、lte のいずれか)、threshold が必要で、conversion の場合は goal_id も必要です。anomaly には site_id と metric(visitors、visits、pageviews のいずれか)が必要で、直近のウィンドウを過去4週間それぞれの同じウィンドウと比較し、sensitivity(low、medium、high)を使います。operator が lt の場合は減少時のみ、gt の場合は急増時のみ、空の場合は両方でアラートします。goal には site_id、goal_id、threshold(ウィンドウ内の達成数)が必要です。no_data には site_id と、イベントがない時間数としての threshold(既定は24)が必要です。usage にはサイトは不要で、threshold は月間イベント許容量に対するパーセント(既定は80)です。uptime には site_id が必要で、任意で uptime_check_id(既定はサイトのすべてのチェック)を指定します。ssl には site_id と、証明書またはドメインの有効期限が切れるまでの日数としての threshold(既定は14)が必要です。vitals には site_id、metric(lcp、inp、cls、fcp、ttfb のいずれか)、ミリ秒単位の threshold(cls の場合はスコア)が必要です。subscriptions には site_id、metric(mrr_drop: 直近30日間でMRRが threshold パーセントを超えて減少した場合、churn_rate または mrr_churn_rate: 直近30日間の解約が threshold パーセントを上回った場合)、threshold(既定は10)が必要で、サイトに決済プロバイダーが接続されていない場合や測定対象がない場合はスキップされます。window_minutes(既定は60、5から10080)は、各評価がどこまで遡って見るかを表します。channel_ids は notification_channels_list から取得し、sensitivity の既定は medium です。アラートは5分ごとに自動的に評価されます。bounce_rate と conversion のしきい値は0から100のパーセントです。testimonials には site_id と metric が必要で、metric は監視する対象を表します。new(新しいお客様の声が届いた)、low_rating(評価3以下が届いた)、approved(お客様の声が承認された)、allowance(その月の新規お客様の声の許容量の80%を使用した、使い切った、またはお客様の声を待機として保留している)、sync_found(同期で新しいレビューが見つかった)、import_failed(インポートが失敗した、またはソースの同期が3回連続で失敗した)、removal_requested(お客様の声の削除を依頼された)、request_bounced(依頼メールがバウンスした)のいずれかです。testimonials のアラートは5分ごとには評価されず、該当の出来事が起こるたびにただちにトリガーされ、すでに解決済みのインシデントを記録し、state は ok のままです。metric が allowance の場合はワークスペース全体を監視し、サイトは持ちません。state が ok の状態で、作成したアラートを返します。
権限: content.write
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/alerts.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/alerts/:id.json
アラートを削除
alerts_delete
アラートルールとそのインシデント履歴全体を完全に削除します。この操作は元に戻せず、通知はただちに停止します。履歴を残したままアラートを一時停止するには、enabled を false にして alerts_update を使うか、alerts_mute を使ってください。id(alr_...)は alerts_list から取得します。削除前の状態のアラートを返します。コンテンツの書き込み権限が必要です。
権限: content.write
curl -X DELETE https://privatusanalytics.com/alerts/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/alerts/:id/history.json
アラートのインシデント履歴
alerts_history
1つのアラートのインシデントを、新しい順にページ分割して一覧表示します。各インシデントには、triggered_at、resolved_at(未解決の間は null)、value(トリガー時に測定された数値で、アラートのしきい値と同じ単位)、message(読みやすい説明)、acknowledged_at、acknowledged_by(メンバーの表示名、または null)が含まれます。open を true にすると、未解決のインシデントのみが表示されます。最新のものを確認済みにするには alerts_acknowledge を、ルールの現在の状態を確認するには alerts_get を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/alerts/:id/history.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/workspaces/:workspace_id/alerts.json
アラートを一覧表示
alerts_list
ワークスペースのアラートルールを名前順にページ分割して一覧表示します(パスには workspace_id を指定)。アラートの data 配列と、ページネーションの meta を返します。各アラートには、id(alr_...)、site_id(pa_...。ワークスペース全体を監視する usage アラートでは null)、name、kind、metric、operator、threshold、window_minutes、sensitivity、goal_id、channel_ids(nch_... のID)、state(ok または triggered)、enabled、muted_until、last_triggered_at、last_evaluated_at、created_at が含まれます。site_id、state(ok または triggered)、kind で絞り込めます。サイトのパスから1つのサイトのアラートを一覧表示するには site_alerts_list を、単一のアラートには alerts_get を、そのインシデントには alerts_history を使ってください。一部のサイトに限定された呼び出し元には、usage アラートは表示されません。
権限: analytics.read
curl https://privatusanalytics.com/workspaces/:workspace_id/alerts.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/alerts/:id/mute.json
アラートの通知をミュート(またはミュート解除)
alerts_mute
1つのアラートの通知を、指定した分数のあいだ無音にします。その間もアラートは評価を続け、履歴にインシデントを記録します。minutes の既定は60、最大は43200(30日)で、0を指定すると即座にミュートを解除します。レスポンスは、muted_until にミュート終了時刻を設定したアラートです(ミュート解除時は null)。評価を完全に停止するには enabled を false にして alerts_update を使い、ミュートせずにインシデントを確認済みにするには alerts_acknowledge を使ってください。
権限: content.write
curl -X POST https://privatusanalytics.com/alerts/:id/mute.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/alerts/:id.json
アラートを取得
alerts_get
ID(alerts_list または site_alerts_list から取得する alr_...)で1つのアラートルールを返します。レスポンスは、id、site_id(usage アラートでは null)、name、kind、metric、operator、threshold、window_minutes、sensitivity、goal_id、channel_ids、state(ok または triggered)、enabled、muted_until、last_triggered_at、last_evaluated_at、created_at を持つアラートオブジェクトです。インシデントは含まれません。インシデントには alerts_history を使ってください。threshold は数値で、単位は kind によって異なります(alerts_create を参照)。アナリティクスの読み取り権限が必要です。
権限: analytics.read
curl https://privatusanalytics.com/alerts/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/alerts/:id.json
アラートを更新
alerts_update
既存のアラートルール(alerts_list から取得する id)を変更します。送信した項目のみが変更され、それ以外は値がそのまま保たれます。結果には alerts_create と同じ kind ごとのルールが適用されるため、kind や metric を変更する場合は、対応する site_id、goal_id、operator、threshold が必要になることがあります。通知チャンネルのリスト全体を置き換えるには channel_ids を送信し、削除せずに評価を止めるには enabled を false にします。しばらく通知を止めつつインシデントの記録は続けたい場合は、代わりに alerts_mute を使ってください。更新後のアラートを返します。
権限: content.write
curl -X PATCH https://privatusanalytics.com/alerts/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/alerts.json
サイトのアラートを一覧表示
site_alerts_list
1つのサイト(パスには site_id を指定)のアラートルールを名前順にページ分割して一覧表示します。alerts_list と同じアラートオブジェクトを返し、同じ state と kind のフィルターを受け付けますが、対象はこのサイトのみのため、usage アラート(サイトを持たない)は含まれません。すでにサイトIDがある場合はこちらを、ワークスペース内のすべてのアラートが必要な場合は alerts_list を選んでください。各アラートには、id(alr_...)、site_id、name、kind、metric、operator、threshold、window_minutes、sensitivity、goal_id、channel_ids、state(ok または triggered)、enabled、muted_until、last_triggered_at、last_evaluated_at、created_at が含まれます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/alerts.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
アンケート
POST
/sites/:site_id/surveys.json
アンケートを作成
surveys_create
サイト用に、Cookieを使わないサイト内アンケートを作成します。status が active になるまで何も収集しないため、まず draft として作成するか、status に active を渡してすぐに開始します。name(内部用で、訪問者には表示されない。最大120文字)と questions(順序付きで1から5行)は必須です。各質問は、key(任意で、小文字、数字、アンダースコアの安定したID。省略すると生成される)、kind(text、choice、multi、rating、nps、yes_no)、prompt(必須で、最大200文字)、required(真偽値)、choices(最大10個の選択肢のリストで、choice と multi のみ)、scale(3、5、7、10で、rating のみ。既定は5)を持つオブジェクトです。NPSは常に0から10を使います。ターゲティングは、trigger_kind(immediate、delay、scroll、exit、manual)で、delay_seconds(0から600、既定は10で、delay のみ)と scroll_percent(1から100、既定は50で、scroll のみ)、paths(match_type が exact、prefix、glob の行と pattern で、空はすべてのページ)、devices(desktop、mobile、tablet。空はすべて)、position(bottom_right、bottom_left、center)、sample_rate(訪問者の1から100パーセント)、thank_you(最大200文字)、starts_on と ends_on(YYYY-MM-DD)があります。アンケートでメールアドレスを尋ねることはできず、記述回答は個人データが除去されます。Freeプランでは、ワークスペースごとに1つのアンケートと、月ごとに限られた数の回答が許可され、有料プランは無制限です。content.write 権限が必要です。id(svy_...)を持つアンケートを返します。回答は surveys_get で読み取ってください。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/surveys.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/surveys/:id.json
アンケートを回答ごと削除
surveys_delete
アンケートを、そのすべての回答とともに完全に削除します。この操作は元に戻せず、結果は失われます。収集を止めたいだけの場合は、代わりに surveys_pause を使ってください。id は surveys_list から取得し、site_id は必須です。content.write 権限が必要です。削除したアンケートを返します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/surveys/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/surveys.json
サイトのアンケートを回答数とともに一覧表示
surveys_list
サイトのアンケートを、新しい順に、設定と回答数とともに一覧表示します。status(draft、active、paused、all。既定は all)で絞り込めます。page と per_page(既定は25、最大100)でページ分割されます。各アンケートには、id(svy_...)、name、status、questions、ターゲティングの設定、starts_on、ends_on、created_at、updated_at、stats(responses、completed、this_month の件数)が含まれます。1つのアンケートの回答と結果には、surveys_get を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/surveys.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/surveys/:id/pause.json
回答の収集を停止し、すでに集まった回答は保持
surveys_pause
アンケートを一時停止し、訪問者へのオファーをただちに止めます。すでに収集された回答は保持され、surveys_get に表示され、surveys_start で再開できます。収集を止めたいだけの場合は、surveys_delete の代わりに使ってください。id は surveys_list から取得し、site_id は必須です。content.write 権限が必要です。status が paused のアンケートを返します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/surveys/:id/pause.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/surveys/:id.json
期間ごとのアンケート結果を質問別に表示
surveys_get
1つのアンケートの結果レポートを、期間ごとに返します。設定だけではありません(設定と件数には surveys_list を使用)。period のプリセット(既定は 30d)、または from と to を指定したカスタムの period を選びます。レスポンスには、survey(その設定)、period(ISO 8601の時刻での from と to)、responses(少なくとも1つの質問に答えた人)、completed(最後の質問に答えた人)、questions(質問ごとに1エントリで、key、kind、prompt、回答数に加えて、kind ごとの詳細)、そして pages、devices、countries(それぞれ value と count の最大10行)が含まれます。kind ごとの詳細は、text では texts(text と at を持つ、最新の記述回答を最大100件)、choice、multi、yes_no では choices(value、count、小数第1位までのパーセントの share、offered)、rating では average(回答がない場合は null)、scale、distribution、nps では score(-100から100のNPSで、回答がない場合は null)、promoters(9と10)、passives(7と8)、detractors(0から6)、distribution です。記述回答を要約するには surveys_themes を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/surveys/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/surveys/:id/start.json
回答の収集を開始
surveys_start
アンケートを active に設定し、訪問者に表示できるようにします。表示されるのは、現在の日付が starts_on と ends_on の範囲内にある場合(設定されている場合)、ページがその paths と devices に一致する場合、プランの月間回答許容量が使い切られていない場合のみです。draft または paused のアンケートに使ってください。id は surveys_list から取得し、site_id は必須です。content.write 権限が必要です。status が active のアンケートを返します。再び止めるには surveys_pause を使ってください。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/surveys/:id/start.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/surveys/:id/themes.json
1つの質問の自由記述回答をテーマごとにグループ化 (Businessプラン)
surveys_themes
AIを使って、1つの自由記述の質問に対する記述回答を、テーマにグループ化します。Businessプランのみです。surveys_get で、十分な回答のあるテキストの質問が表示された後に選び、question_key(surveys_get にある kind が text の質問の key)を渡してください。少なくとも5件の記述回答が必要で、最新の300件を使います。結果は、最大12個のテーマを一覧にし、それぞれに、label、count、sentiment(positive、neutral、negative)、example(代表的な回答で、null の場合もある)があり、加えて answers(要約された回答の数)と generated_at が含まれます。新しく生成するたびに、ワークスペースの月間AI許容量から質問が1つ消費され、失敗した場合は返却されます。結果は回答に対してキャッシュされるため、新しい回答がなければ、再度呼び出しても費用はかかりません。プランに含まれていない場合、許容量が使い切られた場合、AIが設定されていない場合、回答が少なすぎる場合は、検証エラーで失敗します。
権限: analytics.read
curl -X POST https://privatusanalytics.com/sites/:site_id/surveys/:id/themes.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
PATCH
/sites/:site_id/surveys/:id.json
アンケートを更新
surveys_update
アンケートを変更します。送信した項目のみが変更されます。入力と制限は surveys_create と同じで、status は draft、active、paused です。questions を送信すると、リスト全体が置き換えられるため、残したいすべての質問を含め、収集した回答を保持するために、既存の key をそのまま保ってください(同じ key で prompt の文言を変えても、結果は分かれません)。省略した質問は、結果に表示されなくなります。ターゲティングの変更は、訪問者にただちに反映されます。id は surveys_list から取得し、site_id は必須です。content.write 権限が必要です。更新後のアンケートを返します。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/surveys/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
イベント
GET
/sites/:site_id/events/properties.json
過去30日間に検出されたイベントプロパティのキーを一覧表示
event_properties_list
直近30日間にカスタムイベントが持っていたプロパティのキーを、表示設定とともに一覧表示します。{key, events, display_name, hidden, export_safe} のリストを返します。events はそのキーを持っていたカスタムイベントの数(設定はあるが最近は見られていないキーでは0)、display_name は名前の変更(なければ null)、hidden はそのキーがレポートから非表示になっていること、export_safe は個人データを含まないとマークされていることを示します。最大200個のキーが、よく使われる順に返されます。event を渡すと、1つの生のイベント名で見られたキーのみが表示されます。プロパティの値はここでは返されません。値には、dimension を prop:<key> にした stats_breakdown か、events_get を使ってください。設定の変更には event_properties_update を使います。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/events/properties.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/events/properties.json
イベントプロパティのキーの名前を変更、または非表示にする
event_properties_update
1つのイベントプロパティのキーを、サイト全体で、名前の変更、非表示、またはエクスポート安全のマーク付けをします。送信した項目のみが変更されます。key は、保存されているとおりのキーでなければなりません(小文字、数字、アンダースコアで、64文字まで。例: plan)。display_name は64文字までのラベルです(名前の変更を取り消すには空で送信)。hidden は、データを保持したまま、キーをレポートとイベント詳細のピボットから除外します。export_safe は、キーが個人データを含まないことを宣言するもので、その値が生のエクスポートやウェアハウス同期に含まれるようになるため、それが事実である場合にのみ設定してください。名前の変更と非表示は、レポートの読み取り時に適用され、保存されたデータは書き換えません。{key, display_name, hidden, export_safe} を返します。sites.manage 権限が必要です。キーの一覧には event_properties_list を使ってください。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:site_id/events/properties.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/events.json
イベントとその履歴を削除(バックグラウンドで実行され、名前を入力して確認します)
events_delete
カスタムイベントとその履歴全体を完全に削除します。この操作は元に戻せません。安全確認のため、生のイベント名を name と confirm の2回送信する必要があります。行はバックグラウンドでバッチごとに削除されるため、完了するまで数値は変化し続け、HTTP 202 とともに {name, status: queued} を返します。イベントはただちに非表示にもなり、削除は監査ログに記録されます。ページビューには影響しません。イベントを表示しないだけにしたい場合は、データを保持する、hidden を true にした events_update を使ってください。sites.manage 権限が必要です。名前は events_list から取得します(イベントの名前が変更または統合されている場合は raw_names フィールドを使用)。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/events.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/events.json
完了数、訪問数、コンバージョン率、初回・最終検出日時を含むイベントを一覧表示
events_list
イベントエクスプローラーです。期間内のすべてのカスタムイベントを返します。period、events、hidden を返します。各イベントには、name(名前の変更と統合の後の表示名)、raw_names(トラッカーが送信した名前)、completions、visits、conversion_rate(訪問に対するパーセントで、0から100)、revenue(マイナー単位、セント)、first_seen と last_seen(期間内のISO 8601のタイムスタンプ)、currency(収益の通貨で、未設定の場合は null)が含まれます。hidden は、非表示にしたイベントを {name, display_name} の形式で一覧にします。search を使うと、名前に指定のテキストを含むイベントのみが残ります。ここでは、ページビューはイベントではありません。1つのイベントを詳しく見るには events_get を、ランク付けされたページ分割の一覧には dimension を event にした stats_breakdown を使ってください。共通の period、compare、filters、segment の入力を受け付けます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/events.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/events/merge.json
複数のイベントを1つの表示名に統合
events_merge
複数の生のイベント名を、1つの表示名に統合します。たとえば、signup_click と signup_button を Signup にします。すると、レポートには、合算された数の単一のイベントが表示されます。これはレポートの読み取り時に機能し、保存されたイベントは変更も削除もされません。names(生の名前で、少なくとも1つ)と into(表示名)を渡します。統合された名前ごとに1つの設定オブジェクト {name, display_name, hidden, currency, updated_at} を返します。元に戻すには、その名前に対して display_name を空にして events_update を呼び出してください。sites.manage 権限が必要です。名前は events_list(raw_names)から取得します。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/events/merge.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/events/detail.json
1つのイベント: グラフ、プロパティのピボット、数値プロパティの集計、ページ、流入元
events_get
1つのカスタムイベントの詳細です。name は、events_list に表示されているとおり(名前の変更と統合の後の表示名)に渡します。period、name、raw_names(その背後にある保存された名前)、interval、totals、setting、series、property_keys、pivot、numeric、pages、channels、referrers を返します。totals には、completions、visits(それを発生させた訪問)、revenue(マイナー単位、セント)、conversion_rate(期間内のすべての訪問に対するパーセント)が含まれます。series は時間バケットごとの completions です。setting には、display_name、hidden、currency が含まれます。property_keys は、見られたプロパティのキーを一覧にします。properties(最大3つのキー)を送信すると、値の組み合わせごとの {values, completions, visits} の行を、上位100件まで持つ pivot が返されます。numeric は、数値を持つプロパティについて、合計、平均、その他の数値を返します。pages、channels、referrers は、イベントが発生した上位10か所で、{value, completions, visits} の形式です。すべてのイベントには events_list を、サイト全体での1つのプロパティには dimension を prop:<key> にした stats_breakdown を、名前の変更には events_update を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/events/detail.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/events/settings.json
イベントの名前変更、非表示・再表示、または通貨の設定
events_update
1つのカスタムイベントの表示方法を変更します。display_name で名前を変更したり、hidden で非表示にしたり再表示したり、収益の通貨を設定したりできます。name は、トラッカーが送信した生のイベント名です(events_list の raw_names を参照)。送信した項目のみが変更されます。display_name を空にすると、名前の変更が取り消されます。hidden は、データを保持したまま、イベントを一覧とレポートから除外します。currency は USD のような3文字のISO 4217コードで、大文字で保存されます。これはレポートの読み取り時に機能し、保存されたイベントは書き換えられません。{name, display_name, hidden, currency, updated_at} を返します。複数のイベントを統合するには events_merge を、データを消去するには events_delete を使ってください。sites.manage 権限が必要です。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:site_id/events/settings.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
インポート
DELETE
/sites/:site_id/imports/google/connection.json
Google Analyticsアカウントの接続を解除し、保存されているアクセストークンを削除
imports_google_disconnect
このサイトのワークスペースにおける、呼び出したメンバーの、保存されたGoogle Analyticsの接続を削除します。そのため、アプリで再び接続するまで、GA4のインポートはGoogleから読み取れなくなります。すでに取り込まれたデータは残り、imports_delete でそのインポートを削除した場合にのみ削除されます。付与された権限は、Google側では取り消されません。接続がない場合や、メンバーのGA4インポートがキュー待ちまたは実行中の間は、検証エラーで失敗します。disconnected が true のオブジェクトを返します。接続はアプリ内で行います(Googleのサインイン画面)。そのためのツールはありません。
権限: sites.manage
curl -X DELETE https://privatusanalytics.com/sites/:site_id/imports/google/connection.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/imports/google/properties.json
インポート可能なGoogle Analytics 4のプロパティを一覧表示
imports_google_properties
呼び出したメンバーが接続したGoogleアカウントで読み取れる、Google Analytics 4のプロパティを一覧表示します。source を ga4 にして imports_create を呼び出す前に、これを呼び出して、使用する property_id を取得してください。id(properties/123456789 のような形で、property_id として渡す)、name、account を持つオブジェクトのリストを返します。メンバーがこのワークスペースでGoogleを接続していない場合(アプリ内で行い、そのためのツールはありません)や、Googleがリクエストを拒否した場合は、検証エラーで失敗します。Googleへのライブ呼び出しを行い、何も変更しません。
権限: sites.manage
curl https://privatusanalytics.com/sites/:site_id/imports/google/properties.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/imports.json
インポートを開始(GA4プロパティまたはCSVアップロード)
imports_create
別のアナリティクスツールの過去のデータを、サイトにインポートする処理を開始します。バックグラウンドで処理され、status が queued のインポートを返します。source に ga4 を選ぶと、Google Analytics 4 APIから取得します。これには、アプリ内で行うGoogleの接続、property_id(imports_google_properties から)、date_from が必要です。date_to の既定は、サイトで最初に追跡されたイベントの前日、または昨日です。その他のソース(universal_analytics、fathom、simple_analytics、plausible、matomo、umami、clicky)は、file 入力としてアップロードされたCSVエクスポートを受け取るため(マルチパートのフォームアップロードで、最大50 MB)、MCP経由で開始するのは実用的ではなく、アプリ内で行うのが最適です。dimension は、CSVの行が何で内訳されているかの検出を上書きする必要がある場合にのみ必要です(たとえば、MatomoのLabelエクスポート)。インポートされた行は、イベント許容量にはカウントされず、include_imported を true にした場合にのみ、統計に表示されます。ワークスペースは、キュー待ちまたは実行中のインポートを同時に最大5件まで持てます。status が complete または failed になるまで imports_get をポーリングしてください。sites.manage 権限が必要です。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/imports.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/imports/:id.json
インポートと、そのインポート済みデータをすべて削除
imports_delete
インポートを、取り込まれたすべての行とアップロードされたファイルとともに完全に削除します。include_imported がオンの場合、インポートされたデータを含んでいた統計はただちに変化し、元に戻すことはできませんが、再度インポートすることはできます。id は imports_list から取得し、site_id が必要です。削除したインポートを返します。sites.manage 権限が必要です。トラッカーによって収集されたデータには影響しません。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/imports/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/imports.json
サイトのインポートを一覧表示
imports_list
サイトのインポートを、新しい順に一覧表示します。インポートの id を見つけたり、まだ実行中かを確認したりするために使います。status(queued、running、complete、failed)で絞り込めます。page と per_page(最大100)でページ分割されます。各項目には、id、site_id、source、status、date_from、date_to、rows_imported、error、completed_at、created_at が含まれます。詳細は imports_get を、開始するには imports_create を参照してください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/imports.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/imports/:id.json
インポートとそのステータスを取得
imports_get
サイトの1つのインポートを返します。imports_create で開始したインポートをポーリングするために使います。フィールドは、id(imp_...)、site_id、source、status(queued、running、complete、failed)、date_from と date_to(YYYY-MM-DD で、不明な場合は null)、rows_imported(取り込まれた日次の行の数)、error(失敗時に設定)、completed_at、created_at です。id は imports_create または imports_list から取得します。インポートされた行は、統計の呼び出しで include_imported を true にした場合にのみ、統計に表示されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/imports/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
ウィジェット
POST
/sites/:site_id/testimonials/widgets/:id/copied.json
ウィジェットの貼り付け用HTML埋め込みがコピーされたことを記録
testimonial_widgets_mark_copied
貼り付けられたHTMLは自動では更新されません。この呼び出しの後、testimonial_widgets_embedは、それ以降ウィジェットが何回変更されたかを報告します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/widgets/:id/copied.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/widgets.json
ウィジェットを作成
testimonial_widgets_create
1回の呼び出しでウィジェット全体を渡せます: レイアウトとそのオプション、取り込み元、各カードの表示内容、見た目です。省略したものは既定値から始まり、空のスタイル設定はブランドキットを継承します。続けてtestimonial_widgets_embedを呼び出すと、貼り付けるコードを取得できます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/widgets.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/widgets/:id.json
ウィジェットをごみ箱に移動
testimonial_widgets_trash
復元されるまで、その埋め込みは何も描画せず、スペースも取りません。30日後に完全に削除されます。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/widgets/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/widgets/:id/duplicate.json
ウィジェットをすべての設定ごとコピー
testimonial_widgets_duplicate
新しいIDと、末尾に「copy」が付いた名前でコピーを作成します。コピーには独自の埋め込みコードがあり、どこでも公開で表示されたことはありません。元のウィジェットは変更されません。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/widgets/:id/duplicate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/widgets/:id/embed.json
ウィジェットの埋め込みコードとその重さを取得
testimonial_widgets_embed
スクリプトスニペット(推奨)、貼り付け用HTML、フレームコード、公開データのアドレスを、ローダースクリプトとこのウィジェットの実測サイズとともに返します。貼り付け用HTMLとフレームは、コーナーポップアップではnullです。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/widgets/:id/embed.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/widgets.json
サイトのウィジェットを一覧表示
testimonial_widgets_list
ごみ箱にあるウィジェットは一覧に含まれません。各ウィジェットには、設定、現在表示しているお客様の声の数、直近30日の表示数とクリック数、最初に公開で表示されたページが含まれます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/widgets.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/widgets/:id/installs.json
ウィジェットが公開で表示されたページを一覧表示
testimonial_widgets_installs
最大50ページで、新しい順です。検出できるのはスクリプトとフレームだけです。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/widgets/:id/installs.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/widgets/:id/restore.json
ウィジェットをごみ箱から復元
testimonial_widgets_restore
貼り付けられていたすべての場所に戻ります。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/widgets/:id/restore.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/widgets/:id.json
ウィジェットを1件、すべての設定、表示内容、公開場所とともに取得
testimonial_widgets_get
ビルダーが保存するすべてです。レイアウトとそのオプション、ウィジェットの取り込み元(コレクション、保存済みビュー、タグ、手動で選んだリスト)、各カードの表示内容、スタイル、言語、レビューのマークアップ、公開で表示された場所、現在表示しているお客様の声の数が含まれます。ごみ箱にあるウィジェットは404で応答します。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/widgets/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/widgets/:id.json
ウィジェットを変更
testimonial_widgets_update
送信した入力だけが変更されます。保存された変更は、キャッシュされたコピーが消去されるため、サイトのコードに触れることなく、ウィジェットが置かれているすべてのサイトに反映されます。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/widgets/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
ウェアハウス同期
POST
/workspaces/:workspace_id/warehouses.json
ウェアハウスの送信先を追加
warehouse_destinations_create
毎日の生のイベントを受け取るウェアハウスの送信先を追加します(Businessプランのみ)。毎日02:00 UTCに、前日のUTCの1日分がアップロードされ、最初の実行は次の02:00 UTCで、失敗した実行は1時間後に再試行されます。kind は必須で、必要な設定を決めます。s3(endpoint を通じて、GCS、R2、MinIOも)には、bucket、access_key_id、secret_access_key が必要で、任意の region、prefix、endpoint(httpsで、公開ホストのみ)があります。bigquery には、service_account_json、dataset、table が必要で、任意の project_id があります。snowflake には、account、user、private_key(PEM RSA)、database、schema、table が必要で、任意の warehouse と role があります。azure には、sas_url(書き込み権限を持つ、https のBlobコンテナのSASリンク)が必要で、任意の prefix があります。シークレット(secret_access_key、service_account_json、private_key、sas_url)は書き込み専用で、返されることはありません。site_ids はサイト(pa_... のID)を限定し、空の場合はすべてのサイトを意味し、一部のサイトに限定されたメンバーやトークンは、それらを指定する必要があります。イベントプロパティは、エクスポートしても安全とマークされている場合にのみ送信されます(event_properties_list を参照)。workspace.manage 権限が必要です。id(whd_...)、マスクされた target、configured(入力済みの設定の名前)を持つ送信先を返します。
権限: workspace.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/warehouses.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/warehouses/:id.json
ウェアハウスの送信先を削除
warehouse_destinations_delete
ウェアハウスの送信先を削除し、それ以上は何も送信されなくなります。すでにアップロードされたデータは、バケットやウェアハウスに残ります。この操作は元に戻せませんが、送信先は再び追加できます(履歴は自動的には再送信されません)。キューに残っている手動の同期は、取り消されません。id は warehouse_destinations_list から取得します。workspace.manage 権限が必要です。削除した送信先を返します。
権限: workspace.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/warehouses/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/warehouses.json
ウェアハウスの送信先を一覧表示
warehouse_destinations_list
ワークスペースのウェアハウスの送信先を、名前順に一覧表示します。任意で、1つの kind(s3、bigquery、snowflake、azure)のみに絞り込めます。一部のサイトに限定されたメンバーやトークンには、すべてのサイトが自分のものである送信先のみが表示され、すべてのサイトを送信する送信先は、表示されません。page と per_page(最大100)でページ分割されます。各項目には、warehouse_destinations_get で説明されているフィールドがあります。workspaces_list から取得する workspace_id と、workspace.manage 権限が必要です。
権限: workspace.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/warehouses.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/warehouses/:id.json
ウェアハウスの送信先を取得(シークレットは含まれません)
warehouse_destinations_get
1つのウェアハウスの送信先を、認証情報なしで返します。フィールドは、id(whd_...)、kind(s3、bigquery、snowflake、azure)、name、target(s3://bucket/prefix のような、マスクされた概要)、configured(入力済みの設定の名前で、シークレットは名前のみが表示される)、site_ids(空はすべてのサイトを意味)、schedule(daily)、schema_version(送信される行のレイアウト)、last_run_at、next_run_at、last_error(最後の実行が成功した場合は null)、created_at です。id は warehouse_destinations_list から取得します。同期の結果を確認するには、warehouse_destinations_sync の後に last_error を確認してください。
権限: workspace.manage
curl https://privatusanalytics.com/warehouses/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/warehouses/:id/sync.json
1日分の同期を今すぐキューに追加
warehouse_destinations_sync
毎日のスケジュールとは別に、送信先に対して、UTCの1日分の生のイベントのアップロードを、ただちにキューに入れます。Businessプランのみです。date(YYYY-MM-DD)はUTCで今日より前でなければならず、既定は昨日です。その日を、送信先のすべてのサイトについてアップロードするため、すでに送信した日を同期するのは避けてください。手動の同期は、ワークスペースごとに1時間あたり30回までに制限されています。呼び出しは、送信先とともにすぐに202を返し、アップロードはバックグラウンドで実行されます。結果を確認するには、warehouse_destinations_get をポーリングし、last_run_at と last_error を読み取ってください。id は warehouse_destinations_list から取得します。workspace.manage 権限が必要です。
権限: workspace.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/warehouses/:id/sync.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
PATCH
/warehouses/:id.json
ウェアハウスの送信先を更新(空欄のシークレットは維持されます)
warehouse_destinations_update
ウェアハウスの送信先を変更します(Businessプランのみ)。送信した項目のみが変更され、kind は変更できません。空のシークレットは、保存された値を保つため、認証情報を再び送信せずに、他の設定を編集できます。設定は、warehouse_destinations_create と同様に、その送信先の kind に対して検証されます。site_ids を送信すると、サイトのリストが置き換えられます。対象(別のバケット、データセット、テーブル、データベースなど)が変わると、未完了の日の進捗はやり直しになり、それらの日は、新しい場所に再送信されます。id は warehouse_destinations_list から取得します。workspace.manage 権限が必要です。更新後の送信先を返します。
権限: workspace.manage
· HTTPのみ(MCPツールではありません)
curl -X PATCH https://privatusanalytics.com/warehouses/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
ウェブサイト
GET
/blog.json
ブログ記事を一覧表示
blog_list
Privatus Analyticsブログの記事を新しい順に、slug、title、kicker、rubric(1文の要約)、description、path、日付付きで、本文なしで一覧表示します。1件を読むには、そのslugを指定してblog_getを使ってください。pageとper_page(最大100)でページ分割されます。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/blog.json
GET
/blog/:slug.json
ブログ記事を読む(MarkdownとHTML)
blog_get
slug(blog_listから取得できる、/blog/<slug>の最後の部分)でブログ記事を1件返します。見出し、Markdown本文、レンダリング済みHTMLが含まれます。記事は英語で書かれています。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/blog/:slug.json
GET
/changelog.json
更新履歴のエントリを一覧表示
changelog_list
公開された製品アップデートを新しい順に表示します。/changelog.rss ではRSSでも取得できます。
権限: public
curl https://privatusanalytics.com/changelog.json
POST
/contact.json
Privatus Analyticsチームにメッセージを送信
contact_create
ブラウザクライアントは Cloudflare Turnstile のトークンを `cf-turnstile-response` として送信します。APIトークンを使うリクエストでは不要です。
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/contact.json \
-H "Content-Type: application/json" -d '{…}'
POST
/newsletter/confirm.json
ニュースレターの購読を確認(署名付きトークン)
newsletter_confirm
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/newsletter/confirm.json \
-H "Content-Type: application/json" -d '{…}'
POST
/newsletter.json
メールアドレスをニュースレターに登録
newsletter_subscribe
ブラウザクライアントは Cloudflare Turnstile のトークンを `cf-turnstile-response` として送信します。APIトークンを使うリクエストでは不要です。
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/newsletter.json \
-H "Content-Type: application/json" -d '{…}'
POST
/newsletter/unsubscribe.json
署名付きリンクのトークンで購読を解除
newsletter_unsubscribe
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/newsletter/unsubscribe.json \
-H "Content-Type: application/json" -d '{…}'
GET
/pricing.json
プラン、料金、プランの上限を取得
pricing_get
料金ページと同じデータです。イベント数の段階、各プランの上限、イベントとしてカウントされるもの。events を渡すと該当するティアが返ります。
権限: public
curl https://privatusanalytics.com/pricing.json
GET
/status.json
現在のシステムステータスを取得
status_get
データベース、Redis、バックグラウンドジョブの状態を確認します。チェックは15秒に1回までです。
権限: public
curl https://privatusanalytics.com/status.json
GET
/tools/consent-gap.json
同意ベースのアナリティクスで取りこぼされるトラフィックを推定
tools_consent_gap
Cookie同意が必要なアナリティクスツールが、Cookieレスの計測と比べて、どれだけのトラフィックを見逃すかを推定する、無料の計算ツールです。これは単純なモデルであり、測定ではありません。入力は、monthly_visitors(0より大きい整数)、consent_rate(バナーを承諾する訪問者のパーセントで、0から100)、adblock_share(ブロッカーがスクリプトを止める訪問者のパーセントで、0から100。既定は25)です。入力に加えて、measured_with_consent(同意ツールが見る訪問者)、missed(見えない訪問者)、missed_percent(小数第1位まで)、measured_cookieless(バナーなしで到達できる訪問者)、recovered_by_cookieless(同意ベースの計測に対して追加で得られる訪問者)を返します。訪問者数はすべて整数です。リクエストは行わず、アカウントのデータも使いません。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/tools/consent-gap.json
GET
/tools/header-checker.json
アナリティクス向けに、ページのReferrer-PolicyとCSPを確認
tools_header_check
公開ページを1つ取得し、アナリティクスに影響するレスポンスヘッダーをチェックします。トラッキングのデータが欠けているときや、参照元がおかしく見えるときに使ってください。Referrer-Policy、Content-Security-Policy の script-src と connect-src ディレクティブ(Privatus Analyticsがデータを読み込んで送信できるか)、Permissions-Policy、Set-Cookie ヘッダーの数を調べます。url(最大3回のリダイレクト後の最終的なURL)、status(HTTPステータス)、findings を返し、findings にはそれぞれ、check、value(null 可)、level(ok、warn、info)、わかりやすい言葉での注記が含まれます。URLはhttpまたはhttpsで公開されている必要があり、プライベートや内部のアドレスは拒否され、最初の1 MBのみが読み取られ、取得は5秒でタイムアウトします。クライアントごとに1分あたり10回までにレート制限されています。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/tools/header-checker.json
GET
/tools/privacy-policy-generator.json
Privatus Analytics 向けのプライバシーポリシーの段落を下書き
tools_privacy_policy
Privatus Analyticsがお客様のサイトでどのようにデータを収集するか(Cookieレス、個人データは保存されない、位置情報は国のみ)を説明する、プライバシーポリシーの段落の下書きを作成します。これは出発点であり、法的なアドバイスではありません。入力は、site_name(120文字まで)、contact_email(任意で、連絡先の一文が追加される)、honors_gpc(既定は true で、Do Not TrackとGlobal Privacy Controlが尊重されることを述べる一文が追加される)です。site_name、paragraphs(文字列の配列)、text(段落を空行でつないだもの。名前の後ろに括弧で Privatus Analytics のアドレスが入ります)、html(段落を<p>要素にしたもの。名前はシンプルなリンクになります)を返します。テキストは、リクエストの言語で書かれ、既定は英語です。アカウントには何も変更を加えません。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/tools/privacy-policy-generator.json
GET
/tools/qr-code.json
QRコードをSVGで生成
tools_qr_code
印刷物やポスター向けに、QRコードをSVG画像として生成します。tools_utm_builder で作成した、UTMパラメータ付きのリンクと組み合わせてください。入力は、text(URLまたはテキストで、1,000文字まで)と level(誤り訂正レベルの l、m、q、h。既定は m で、高いほど損傷に強い反面、より密なコードが必要)です。text、level、size(1辺あたりのモジュール数)、svg(白地に黒の、単体のSVGドキュメント)を返します。選択したレベルに対して長すぎるテキストは、拒否されます。追跡する短縮リンクのQRコードには、代わりに links_qr を使ってください。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/tools/qr-code.json
GET
/tools/tracker-scanner.json
ページ上のCookieと既知のトラッカーを一覧表示
tools_tracker_scan
公開ページを1つ取得し、それが設定するCookieと、参照している既知のサードパーティのトラッカーを一覧表示します。同意の方針を選ぶ前に、ページが何を読み込むかをすばやく確認するために使ってください。これはHTMLとレスポンスヘッダーの静的なスキャンのみで、JavaScriptは実行しないため、スクリプトによって設定されるCookieや、後からタグマネージャーによって読み込まれるタグは検出されません。url(最大3回のリダイレクト後の最終的なURL)、status、truncated(最初の1 MBのみが読み取られた場合は true)、cookies(name、domain、path、expires、secure、http_only、same_site。値は決して返されません)、trackers(name、category、match、evidence で、category は advertising、analytics、session_recording、tag_manager、marketing、privacy_analytics のいずれか)、third_party_hosts(他のサイトのホスト名を並べ替えたもの)を返します。URLは公開されたhttpまたはhttpsでなければならず、取得のタイムアウトは5秒で、呼び出しはクライアントごとに1分あたり10回までに制限されています。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/tools/tracker-scanner.json
GET
/tools/utm-builder.json
UTMパラメーター付きのキャンペーンURLを作成
tools_utm_builder
UTMパラメータ付きのキャンペーンURLを作成し、よくある間違いを指摘します。入力は、url(httpまたはhttpsでなければならない)、source、medium、campaign(すべて必須)、任意の term と content です。URLにすでにある utm_ パラメータは置き換えられ、他のクエリパラメータは保持されます。url(完成したリンク)、params(追加された utm_ の値で、空のものは除外)、warnings(大文字、スペース、メールアドレスや長い数字のように見えるテキスト(URLには決して入れてはいけないもの)を含む値についての文字列)を返します。同じキャンペーンがレポートで複数の行に分かれないように、スペースなしの小文字の値を使ってください。何も保存しません。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/tools/utm-builder.json
POST
/waitlist.json
ウェイトリストに参加(EUホスティング)
waitlist_join
ブラウザクライアントは Cloudflare Turnstile のトークンを `cf-turnstile-response` として送信します。APIトークンを使うリクエストでは不要です。
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/waitlist.json \
-H "Content-Type: application/json" -d '{…}'
エクスポート
POST
/workspaces/:workspace_id/exports.json
エクスポートをキューに追加(バックグラウンドで作成)
exports_create
バックグラウンドで作成されるデータエクスポートをキューに入れ、status が queued の状態ですぐに返します。ファイル(CSV、JSON、XLSX、NDJSON、またはダッシュボードパネルのZIP)が必要な場合に選びます。何も作成せずに列とサイズを確認するには、先に exports_preview を使ってください。軽量な数値には、代わりに stats ツールを使います。必須の入力は、workspace_id(パス)、site_id、from と to(YYYY-MM-DD、両端を含み、エクスポートのタイムゾーン)です。kind によって、何がエクスポートされ、どのオプションが適用されるかが決まります。aggregated(既定)は、時間バケットごとの訪問の指標を返し、grouping、dimensions(最大6)、metrics、filters、segment_id を使います。pageviews、events、raw はヒットごとに1行を返し、fields、filters、segment_id を使い、Proプラン以上が必要で、400日までに制限されます(raw は93日まで)。imported は、取り込まれた日次の統計を返し、dimensions のみを使います。dashboard は、概要パネルのZIPを返します(format は zip のみ)。kind ごとに許可される file_format は、aggregated、pageviews、events、imported では csv、json、xlsx、raw では csv または ndjson、dashboard では zip です。選択した kind に適用されないオプションは無視されます。ワークスペースは、キュー待ちまたは実行中のエクスポートを同時に最大5件まで持てます。レスポンスは、id(exp_...)、status、row_count、expires_at(作成されるまでは null)を持つエクスポートです。status が complete になるまで exports_get をポーリングし、その後 exports_download を呼び出してください。準備ができると、リクエストしたユーザーにメールが送信され、webhook の export.ready が送信され、操作は監査ログに書き込まれます。props 列のイベントプロパティには、エクスポートしても安全とマークされたプロパティのみが含まれます(event_properties_list を参照)。
権限: analytics.export
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/exports.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/exports/:id.json
エクスポートとそのファイルを削除
exports_delete
エクスポートと、生成されたファイルを完全に削除します。ダウンロードリンクはただちに機能しなくなり、元に戻せませんが、エクスポートは再び作成できます。ファイルは作成から7日後に自動的に削除されるため、不要になった完了済みまたは失敗したエクスポートを削除するために使ってください。id は exports_list から取得します。削除前の状態のエクスポートオブジェクトを返します。
権限: analytics.export
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/exports/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/exports/:id/download.json
ファイルへの署名付きリンクを取得(10分間有効)
exports_download
完了したエクスポートの、有効期間の短いダウンロードリンクを返します。exports_get で status が complete と表示された後に選びます。レスポンスには、url(10分間有効な署名付きリンクで、すぐに取得してください)、expires_at(リンクが機能しなくなる日時、ISO 8601)、filename、byte_size(バイト)が含まれます。エクスポートが7日より古い場合は、not found エラーコード expired で、エクスポートがまだキュー待ちまたは実行中の場合や、失敗した場合は、検証エラーで失敗します(エラーメッセージが理由を示します)。エクスポート自体の期限が切れていない限り、再度呼び出して新しいリンクを取得できます。id は exports_list から取得します。
権限: analytics.export
curl https://privatusanalytics.com/exports/:id/download.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/workspaces/:workspace_id/exports.json
エクスポートを一覧表示(ジョブキュー)
exports_list
アクセスできるサイトの、ワークスペースのエクスポートを、新しい順に一覧表示します。エクスポートの id を見つけたり、まだ実行中のエクスポートを確認したり、期限が切れたものを確認したりするために使います。site_id、status(queued、running、complete、failed、expired)、kind(aggregated、pageviews、events、imported、raw、dashboard)で絞り込めます。page と per_page(最大100)でページ分割され、data(エクスポートのリストで、フィールドは exports_get を参照)とページネーションの meta を返します。workspaces_list から取得する workspace_id が必要です。
権限: analytics.export
curl https://privatusanalytics.com/workspaces/:workspace_id/exports.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/workspaces/:workspace_id/exports/preview.json
エクスポートのプレビュー: 最初の20行と推定行数
exports_preview
何も作成しない、エクスポートのドライランです。exports_create と同じ入力を受け付け、kind、file_format、columns(順序どおりの列名)、rows(列をキーとするオブジェクトのサンプル行で、最大20行)、estimated_rows(ファイル全体のおおよその行数)を返します。dashboard の kind では、サンプル行にはファイル名ごとの行数が一覧になります。exports_create を呼び出す前に、dimensions、fields、filters、日付範囲を検証し、エクスポートの大きさを確認するために使ってください。同期的に実行されるため、日付範囲は妥当な長さにしてください。検証エラーは、行レベルの kind に必要なProプランの要件を含め、exports_create と同じです。何も保存されず、メールも送信されません。
権限: analytics.export
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/exports/preview.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/exports/:id.json
エクスポートとそのステータスを取得
exports_get
1つのエクスポートを、進捗を含めて返します。exports_create で開始したエクスポートを、status が complete または failed になるまでポーリングするために使います。ステータスは、queued、running、complete、failed、expired です。フィールドには、id(exp_...)、site_id(pa_...)、kind、format、status、params(エクスポートの保存された定義)、row_count(complete になるまでは null)、error(失敗時に設定)、completed_at、expires_at(ファイルは完了から7日間保持)、download_url(ファイルをダウンロードできる間だけ設定。署名付きリンクの取得には exports_download を使用)、created_at が含まれます。id は exports_create または exports_list から取得します。
権限: analytics.export
curl https://privatusanalytics.com/exports/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
キャンペーン
POST
/sites/:site_id/campaigns/costs.json
月ごとのキャンペーン費用を設定
campaign_costs_create
1つのキャンペーンの1か月分の広告費を記録します。これにより、campaigns_list で獲得単価と広告費用対効果を表示できます。同じキャンペーンと月のエントリがすでにある場合は、重複せずに置き換えられるため、2回呼び出しても安全です。campaign は、追跡リンクに含まれる utm_campaign の値、month は YYYY-MM(2026-09-15 のような完全な日付も受け付けられ、月の初日に丸められます)、amount はメジャー単位の数値です(マイナー単位ではなく 1250.50)。currency は任意の3文字のISOコードで、既定はサイトの通貨です。レスポンスは、マイナー単位の amount_minor を含む、保存されたエントリを返します。多数の行を一度に登録するには campaign_costs_import を使ってください。content.write が必要です。BusinessプランまたはEnterpriseプランが必要です(それ以外は 402 plan_limit)。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/campaigns/costs.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/campaigns/costs/:id.json
キャンペーン費用のエントリを削除
campaign_costs_delete
campaign_costs_list の id で指定した、1件の費用エントリを完全に削除します。この操作は元に戻せず、そのキャンペーンと月のCPAとROASには、その費用がただちに含まれなくなります。他の月やキャンペーンには影響しません。削除したエントリを返します。content.write が必要です。BusinessプランまたはEnterpriseプランが必要です(それ以外は 402 plan_limit)。
権限: content.write
curl -X DELETE https://privatusanalytics.com/sites/:site_id/campaigns/costs/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/campaigns/costs/import.json
CSVからキャンペーン費用をインポート(campaign,month,amount[,currency])
campaign_costs_import
CSVから広告費を一括で取り込みます。多数のキャンペーンと月をすばやく読み込む方法です。CSVのテキストを csv で送信するか(ツールやAPI呼び出しに最適)、file でファイルをアップロードします(マルチパートのみ)。最初の行は、campaign、month、amount を含むヘッダーで、任意で currency 列を追加できます。例: campaign,month,amount,currency に続けて spring_sale,2026-09,1250.50,USD。month は YYYY-MM、amount はメジャー単位、currency の既定はサイトの通貨です。行は campaign と month で upsert されるため、同じファイルを再度取り込んでも重複しません。上限は1 MBと5,000行です。不正な行があっても取り込みは止まりません。レスポンスには、imported(保存された件数)、failed(拒否された件数)、errors(最初の50件のメッセージ。それぞれが行を示し、行2が最初のデータ行)が含まれます。ヘッダー列の欠落、ファイルサイズの超過、不正なCSVの場合は、リクエスト全体が失敗します。content.write が必要です。BusinessプランまたはEnterpriseプランが必要です(それ以外は 402 plan_limit)。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/campaigns/costs/import.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/campaigns/costs.json
キャンペーン費用のエントリを一覧表示
campaign_costs_list
サイトに記録された広告費のエントリを、新しい月から順に、続けてキャンペーン名順に一覧表示します。各行は1か月の1つのキャンペーンで、amount_minor(通貨のマイナー単位の整数なので、125050 は 1,250.50 を意味します)、currency(ISO 4217、大文字)、YYYY-MM 形式の month、エントリの id(UUID。campaign_costs_update と campaign_costs_delete で使用)を持ちます。campaign を渡すと、そのキャンペーンのみが表示されます(utm_campaign の値に対して大文字小文字を区別せず一致)。page と per_page(最大100)でページ分割されます。費用は campaigns_list のCPAとROASに反映されるため、キャンペーンにどれだけの費用がかかったかを確認する場所です。analytics.read が必要です。BusinessプランまたはEnterpriseプランが必要です(それ以外は 402 plan_limit)。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/campaigns/costs.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/campaigns/costs/:id.json
キャンペーン費用のエントリを変更
campaign_costs_update
campaign_costs_list の id で指定した、既存の費用エントリを変更します。送信した項目のみが変更されるため、数値を直すだけなら amount だけを送信してください。amount はメジャー単位(1250.50)で、マイナー単位として保存されます。month は YYYY-MM、currency は3文字のISOコードです。campaign または month を、他のエントリがすでに持っている組み合わせに変更すると、統合されずに検証エラーで失敗します。idを知らずに、キャンペーンと月の費用を修正するには、既存のエントリを置き換える campaign_costs_create を呼び出してください。content.write が必要です。BusinessプランまたはEnterpriseプランが必要です(それ以外は 402 plan_limit)。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/campaigns/costs/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/campaigns/builder.json
UTMタグ付きURLを作成して検証
campaigns_builder
ランディングページ用のUTMタグ付きURLを作成し、値を検証します。何も保存されず、データも読み取られないため、繰り返し呼び出しても安全です。destination(https:// で始まる完全なURL)と、必要に応じて utm_source、utm_medium、utm_campaign、utm_content、utm_term を渡します。または、プリセット(newsletter、social、paid_search など)を選ぶと、空欄の utm_source と utm_medium が補完されます。url(エラーがある場合は null)、valid、destination、preset、整形済みの utm_* の値、issues({field, level, message} のリスト。level が error の場合はURLがブロックされ、warning は小文字化などの修正を提案するだけです)、presets(利用可能なプリセットの値)を返します。値は、スペースなしの小文字に整形されます。すでにトラフィックに存在する乱れたUTMの値を見つけるには campaigns_hygiene を、実施したキャンペーンをレポートするには campaigns_list を使ってください。短いURLとクリック数付きでタグ付きリンクを保存するには、代わりに links_create を使います。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/campaigns/builder.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/campaigns/hygiene.json
UTMの整合性: ほぼ重複する値、表記の問題、不明な流入元
campaigns_hygiene
ある期間のトラフィックにある乱れたUTMの値を見つけ、タグ付けを修正できるようにします。period、duplicates、style_issues、unknown_sources を返します。duplicates は、大文字小文字、スペース、句読点だけが異なる utm_source、utm_medium、utm_campaign の値(Facebook、facebook、face-book)をグループ化し、それぞれを {field, suggestion, variants: [{value, visits}]} の形式で示し、最も訪問の多い表記が提案されます。style_issues は、小文字でスペースなしという規則に反する値を {field, value, visits, suggestion} の形式で一覧にします(最大50件)。unknown_sources は、認識されたチャンネルではない utm_source の値を {value, visits} の形式で一覧にします(最大50件)。各フィールドの上位500個の値のみがスキャンされます。件数は訪問数です。提案はアドバイスにすぎず、何も変更されません。バリアントを1つのチャンネルに統合するには channel_rules_create を使ってください。共通の period と filters の入力を受け付けます。パフォーマンスには campaigns_list を、整ったタグ付きURLの作成には campaigns_builder を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/campaigns/hygiene.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/campaigns.json
コンバージョン、収益、費用、CPA、ROASを含むキャンペーンの集計
campaigns_list
utm_campaign をもとにした、費用と広告費用対効果を含むキャンペーンのパフォーマンスレポートです。period、currency(サイトの通貨)、goal_id と goal_name(コンバージョンがカウントされるゴール)、campaigns、totals、unconverted_costs を返します。各キャンペーンには、visitors、visits、conversions、conversion_rate(0から100のパーセントで、conversions を visits で割ったもの)、revenue、sources(ソースとメディアごとの行で、同じ指標を持つ)が含まれます。費用がある場合(campaign_costs_list から)、キャンペーンには cost、cpa(コンバージョンあたりの費用で、コンバージョンがない場合は null)、roas(revenue を cost で割った 2.5 のような比率で、費用がない場合は null)も含まれます。金額(revenue、cost、cpa)は、サイトの通貨のマイナー単位(セント)の整数です。費用は、キャンペーン名と大文字小文字を区別せずに照合され、期間内の各月の日数で按分されます。費用はあってもトラフィックがないキャンペーンも、一覧に表示されます。キャンペーンは最大100件で、訪問の多い順です。utm_campaign を持つ訪問のみが含まれます。goal_id の既定は最初の有効なゴールなので、特定のゴールを測定するには明示的に渡してください(IDは goals_list から取得します)。名前を整えるには campaigns_hygiene を、単純なトラフィックの内訳には dimension を utm_campaign にした stats_breakdown を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/campaigns.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/campaigns/links.json
UTMタグ付きリンクをライブラリに保存
links_create
UTMタグ付きのリンクを、サイトのリンクライブラリに保存します(パスには site_id を指定)。name(120文字まで)と destination(2048文字までのhttpまたはhttpsのURL)は必須です。utm の値は自動的に整形され、小文字化、前後の空白の削除、スペースのアンダースコアへの置換が行われます。個人データのように見える値(たとえばメールアドレス)は拒否されます。タグは最大20個まで保持され、カンマ区切りのエントリは分割され、タグは小文字化されて40文字で切り詰められます。保存されるのはリンクだけで、それ自体は何も追跡しません。返される url は、UTMパラメータが追加された destination で、destination にすでにあるUTMパラメータは置き換えられます。QRコードには links_qr を使ってください。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/campaigns/links.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/campaigns/links/:id.json
保存済みリンクを削除
links_delete
保存されたリンクをライブラリから削除します。削除されるのは保存されたエントリのみです。すでに共有したURLは引き続き機能し、そこからの訪問は引き続きキャンペーンとしてカウントされます。この操作は元に戻せません。id(lnk_...)は links_list から取得します。削除したリンクを返します。
権限: content.write
curl -X DELETE https://privatusanalytics.com/sites/:site_id/campaigns/links/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/campaigns/links.json
保存済みのキャンペーンリンクを一覧表示
links_list
1つのサイト(パスには site_id を指定)の保存済みキャンペーンリンク(UTMタグ付きURL)を、新しい順にページ分割して一覧表示します。各リンクには、id(lnk_...)、name、destination、utm_source、utm_medium、utm_campaign、utm_content、utm_term、url(UTMパラメータが追加された、そのまま共有できる destination)、tags、notes、created_at、updated_at が含まれます。query は name、destination、utm_campaign を検索し、tag はそのタグを持つリンクのみに絞り込みます。これは保存済みのライブラリです。キャンペーンの成果を確認するには、campaigns_list か、dimension を utm_campaign にした stats_breakdown を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/campaigns/links.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/campaigns/links/:id/qr.json
保存済みリンクのQRコード(SVG)
links_qr
保存されたリンクの、タグ付きの完全なURLのQRコードを、印刷用に返します。レスポンスには、link_id、url(コードにエンコードされたタグ付きURL)、svg(白地に黒の、完全な単体のSVGドキュメントを文字列にしたもの)が含まれます。size はピクセル単位のモジュールサイズで、2から20(既定は6)で、画像の拡大率が決まります。id(lnk_...)は links_list から取得します。URLだけが必要な場合は links_get を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/campaigns/links/:id/qr.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/campaigns/links/:id.json
保存済みのキャンペーンリンクを取得
links_get
ID(links_list から取得する lnk_...)で、保存済みのキャンペーンリンクを1件返します。レスポンスには、name、destination、utm_source、utm_medium、utm_campaign、utm_content、utm_term(未設定の場合はそれぞれ null)、url(タグ付きの完全なURL)、tags、notes、created_at、updated_at が含まれます。同じURLの印刷用QRコードには links_qr を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/campaigns/links/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/campaigns/links/:id.json
保存済みリンクを変更
links_update
保存済みのキャンペーンリンク(links_list から取得する id)を変更します。送信した項目のみが変更されます。links_create と同じ整形と個人データのチェックが適用されます。tags を送信すると、タグのリスト全体が置き換えられます。utm フィールドをクリアするには、空文字列を送信してください。再計算された url を含む、更新後のリンクを返します。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/campaigns/links/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
クローラー
DELETE
/sites/:site_id/crawlers/connection.json
Cloudflare の接続を解除し、インポートしたクローラーのヒットを削除
crawlers_cloudflare_disconnect
サイトからCloudflareの接続を解除します。保存されたAPIトークンと、Cloudflareからインポートされたすべてのクローラーのヒットが削除され、元に戻すことはできません。転送されたサーバーログから得られたヒットは残ります。トークンは、Cloudflareのアカウントで削除するまで、そちらには残ります。サイトに接続がない場合は失敗します。削除した接続を返します。sites.manage が必要です。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/crawlers/connection.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/crawlers/sync.json
Cloudflare からクローラーのヒットを今すぐインポート
crawlers_cloudflare_sync
すでに接続されているサイトのCloudflareインポートを、通常のスケジュールを待たずに、ただちにキューに入れます。接続とともにすぐに返り(HTTP 202)、インポートはバックグラウンドで実行されます。crawlers_report をポーリングし、cloudflare.last_synced_at を確認して、完了したタイミングを把握してください。サイトにCloudflareの接続がない場合は失敗します。sites.manage が必要です。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/crawlers/sync.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/crawlers.json
AIクローラーのレポート: クローラーごとのヒット数の推移、クローラーごとの上位パス、カテゴリ別
crawlers_report
どのAI、検索、SEOのクローラーが、サイトをどれくらいの頻度で、どのパスを取得しているかを、転送されたサーバーログとCloudflareのインポートからレポートします。これは訪問者のトラフィックではなくクローラーのトラフィックのため、stats_breakdown には表示されません。category は ai(既定)、search、seo、other、all のいずれかで、crawler は GPTBot や ClaudeBot などの1つのボットに絞り込みます。範囲は period(既定は 30d)か、カスタムの from と to で選びます。結果には、period(日付としての from と to)、category、crawler、totals(ヒット数、異なるパスの数、異なるクローラーの数)、categories(category のフィルターを無視した、カテゴリごとのヒット数)、crawlers(最大50行で、crawler、category、hits、paths)、series(上位8つのクローラーの、日ごとのラベルと日ごとのヒット数)、top_paths(上位8つのクローラーそれぞれの、最も多く取得された10個のパス)、has_data(ヒットが存在するまでは false)、cloudflare(zone、status、last_synced_at を持つ接続、または null)が含まれます。結果は最大30分間キャッシュされますが、Cloudflareに変更があった直後は除きます。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/crawlers.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
ゴール
POST
/sites/:site_id/goals/:id/archive.json
ゴールをアーカイブ(レポートから非表示)
goals_archive
ゴールをアーカイブします。アーカイブされたゴールはレポートから非表示になり、プランのゴール数の上限にカウントされず、定義は保持されるため、後で goals_unarchive で復元できます。データは削除されません。archived が true で archived_at が設定されたゴールを返します。すでにアーカイブされたゴールをアーカイブしても、何も起きません。完全に削除するには goals_delete を使ってください。content.write 権限が必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/goals/:id/archive.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/goals.json
ゴールを作成
goals_create
コンバージョンゴールを作成します。ゴールは、レポートの読み取り時に適用される定義であるため、新しいゴールは、既存のすべての履歴にある一致するイベントを、ただちにカウントします。name と kind は必須です。kind によって、他のどの入力が適用されるかが決まります。page には pattern(パス。例: /thank-you で、match_type は exact、prefix、glob、regex)が必要で、hostname も使えます。event には event_name が必要で、conditions も使えます(プロパティのテストで、{key: plan, operator: is, value: pro} のような形。すべてが一致する必要があり、演算子は is、is_not、contains、gt、lt)。engagement には pattern に加えて、scroll_threshold(1から100のパーセント)や time_threshold_seconds(またはその両方)が必要です(どちらかが満たされると達成)。outbound は、リンクのドメインを pattern(例: stripe.com)で照合し、download は、ファイルを pattern(例: *.pdf)で照合します。value_mode は none(既定)、fixed(fixed_value を使用。49.5 のようなサイトの通貨での小数の金額で、セント単位の fixed_value_minor として保存)、revenue(イベント自身の収益)のいずれかです。count_mode は once_per_visit(既定)または every です。Freeのワークスペースでは、サイトごとに10個の有効なゴールが許可され、有料プランは無制限です。id(goal_...)を持つゴールを返します。content.write 権限が必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/goals.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/goals/:id.json
ゴールを削除(データは保持されます)
goals_delete
ゴールの定義を完全に削除します。イベントデータは削除されませんが、ゴールはレポートから消え、それを指しているファネルのステップ、ジャーニー、実験は機能しなくなります。元に戻すことはできません。ゴールを残したまま非表示にするには、goals_archive を使ってください。削除したゴールを返します。ID(goal_...)は goals_list から取得します。content.write 権限が必要です。
権限: content.write
curl -X DELETE https://privatusanalytics.com/sites/:site_id/goals/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/goals/:id/duplicate.json
ゴールをコピー
goals_duplicate
ゴールの定義を、新しい有効なゴールにコピーします。コピーは、name を送信した場合はその名前に、そうでなければ元の名前の後に (copy) を付けた名前になります。プランのゴール数の上限にカウントされます(Freeではサイトごとに10個の有効なゴール)。新しい id を持つ新しいゴールを返します。ゴールのバリエーションを作り始めるために使い、その後 goals_update で変更してください。content.write 権限が必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/goals/:id/duplicate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/goals.json
期間ごとの完了数、コンバージョン、率、価値を含むゴールを一覧表示
goals_list
サイトのゴールを、期間の結果とともに一覧表示します。各ゴールは、定義(id の goal_...、name、kind、match_type、pattern、hostname、event_name、conditions、scroll_threshold、time_threshold_seconds、value_mode、セント単位の fixed_value_minor、count_mode、archived、archived_at)に、stats {completions, conversions, conversion_rate, value, change} を加えたものです。conversion_rate はパーセント(0から100)、value はマイナー単位(セント)、change は前の期間に対するコンバージョンの変化率のパーセントです(以前の数が0の場合は null)。status で、active(既定)、archived、all に絞り込めます。page と per_page(最大100、既定は25)でページ分割されます。1つのゴールの完全なレポートには goals_get を使ってください。共通の period、compare、filters の入力を受け付けます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/goals.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/goals/:id.json
ゴールレポート: 指標、グラフ、内訳、コンバージョンに至るまでのジャーニー
goals_get
ある期間の、1つのゴールを詳しく見ます。period、goal_id、goal(定義)、metrics、interval、series、breakdowns、journey を返し、compare を指定すると comparison_period、comparison、change も返します。metrics には、completions(一致したすべてのイベント)、conversions(少なくとも1回達成した訪問)、conversion_rate(0から100のパーセント)、value(マイナー単位、セント)が含まれます。conversion_rate は訪問数で割りますが、サイトがそう設定されている場合は訪問者数で割ります。series は、時間バケットごとの {date, completions, conversions, conversion_rate} のリストです(変更するには interval を設定)。breakdowns は、channel、utm_campaign、entry_page、country、device について、コンバージョン数の上位10件を、それぞれ {value, completions, conversions, conversion_rate} の形式で保持します。journey は、converting_visits、median_seconds_to_convert、median_pages_before、pages_before(コンバージョン前に見られた上位10ページで、visits と share を含む)を示します。すべてのゴールを一度に見るには goals_list を、複数ステップのフローには funnels_get を使ってください。共通の period、compare、filters、segment の入力を受け付けます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/goals/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/goals/:id/unarchive.json
アーカイブしたゴールを復元
goals_unarchive
アーカイブされたゴールを復元し、再びレポートに表示されるようにします。プランのゴール数の上限に再びカウントされるため(Freeではサイトごとに10個の有効なゴール)、サイトがすでにいっぱいの場合は、プラン制限エラーで失敗します。アーカイブされていないゴールを復元しても、何も起きません。archived が false のゴールを返します。IDは、status を archived にした goals_list から取得します。content.write 権限が必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/goals/:id/unarchive.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
PATCH
/sites/:site_id/goals/:id.json
ゴールを更新
goals_update
ゴールの定義を変更します。送信した項目のみが変更されます。新しい定義は、すべての履歴にただちに適用されるため、過去のコンバージョン数は変わります。入力は goals_create と同じで、同じ組み合わせが適用されます。たとえば、event_name と conditions は event のゴールでのみ、scroll_threshold と time_threshold_seconds は engagement のゴールでのみ意味を持ちます。fixed_value は、サイトの通貨での小数の金額です(セント単位で保存)。conditions を送信すると、既存のすべての conditions が置き換えられます。ゴールを返します。IDは goals_list から取得します。content.write 権限が必要です。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/goals/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
サイト
POST
/sites/:site_id/data_reset.json
日付範囲内のすべてのイベントと訪問を削除(バックグラウンドで実行され、元に戻せません)
sites_reset_data
サイトのページビュー、カスタムイベント、訪問を、日付範囲を指定して、元に戻せない形で削除します。テストのトラフィックを消したり、不正確な期間を取り除いたりするために使います。サイト、そのゴール、設定は削除されません(サイトには sites_delete を使用)。from と to は YYYY-MM-DD の日付で、どちらも両端を含み、サイトのタイムゾーンで解釈され、to は from より前であってはいけません。confirm は、sites_get で表示されるとおりのサイトのドメインでなければなりません(大文字小文字は区別しません)。リクエストは受理され、status が queued、site_id、from、to を持つ状態で、すぐに返ります。削除はバックグラウンドでバッチごとに実行されるため、stats ツールの数値が落ち着くまで少し時間がかかることがあり、ポーリングするためのステータスエンドポイントはありません。範囲が空になるまで、stats ツールを確認してください。この操作は監査ログに記録されます。sites.manage 権限が必要です。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/sites/:site_id/data_reset.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/filter_stats.json
フィルターされたトラフィックの概要: ボット、トラフィックルール、PII除去を理由と国別に集計(件数のみ)
sites_filter_stats
ここ数日間に、保存前に破棄またはクリーニングされたヒットの数です。サイトにどれだけのボットトラフィック、ルールでブロックされたトラフィック、リダクションがあるかを確認するために使います。kind は、bot(ボットとして破棄されたヒット)、rule(トラフィックルールで破棄されたヒット)、redaction(個人データのスクラバーによって伏せられた値)から選びます。kind、days、total、by_reason、by_country、by_day を返します。by_reason と by_country は {value, count} のリストで(最大50件で、多い順。不明な場合は value が null)、by_day は {date, count} のリストです。days は1から395の範囲に丸められ、既定は30です。これらは集計値のみです。IPアドレス、User-Agent、伏せられた値は保存されないため、個人にたどることはできません。これらのヒットは、課金のイベントとしてカウントされません。ルールの確認や変更には traffic_rules_list を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/filter_stats.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/access.json
メンバーと、そのサイトを閲覧できるかどうかを一覧表示
sites_access_list
どのワークスペースのメンバーが、1つのサイトを見られるかを表示します。ワークスペースのすべてのメンバーが、参加順に、ページ分割なしで一覧表示されます。フィールドは、membership_id(sites_access_update で使う uuid)、email、name、role、access(メンバーがこのサイトを見られる場合は true)、locked(常にアクセスでき、変更できないオーナーと管理者の場合は true)です。他のメンバーは、すべてのサイトを持っているか、このサイトに明示的な付与がある場合にアクセスできます。メンバーの完全なサイトのリストを確認するには、members_list を使ってください。members.manage が必要です。
権限: members.manage
curl https://privatusanalytics.com/sites/:site_id/access.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/access.json
1人のメンバーのこのサイトへのアクセス権を付与または削除
sites_access_update
1人のメンバーの、1つのサイトへのアクセスを付与または削除します。membership_id は sites_access_list(または members_list)から取得し、access は付与する場合は true、削除する場合は false です。オーナーと管理者は常にアクセスでき、変更できません。すべてのサイトを持っていたメンバーのアクセスを削除すると、そのメンバーは、ワークスペース内の他のすべてのサイトを明示的に列挙したリストに切り替わり、include_future_sites がオフになるため、後から作成されるサイトにはアクセスできなくなります。すでにすべてのサイトを持っている人に付与しても、何も変わりません。自分が持っていない権限を持つメンバーや、自分のサイトを超えるサイトを持つメンバーは変更できません。members.manage が必要です。そのメンバーの行を、sites_access_list と同じ形式で返します。
権限: members.manage
· HTTPのみ(MCPツールではありません)
curl -X PATCH https://privatusanalytics.com/sites/:site_id/access.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/favorite.json
サイトにスターを付ける(すべてのサイトの先頭に固定)
sites_favorite
呼び出したユーザーのために、サイトにスターを付けます。そのため、sites_list と「すべてのサイト」ページの先頭に表示されます。影響するのは呼び出したユーザーのみで、他のメンバーには影響しません。すでにスターが付いたサイトにスターを付けても、何も変わりません。呼び出しにはサイトIDの他に入力は不要です。スターを外すには sites_unfavorite を使ってください。analytics.read が必要です。favorite が true のサイトを返します(sites_get を参照)。
権限: analytics.read
curl -X POST https://privatusanalytics.com/sites/:site_id/favorite.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/favorite.json
サイトのスターを外す
sites_unfavorite
呼び出したユーザーの、サイトのスターを外します。そのため、sites_list の先頭には固定されなくなります。影響するのは呼び出したユーザーのみで、サイトにスターが付いていなかった場合は、何もしません。再びスターを付けるには sites_favorite を使ってください。analytics.read が必要です。favorite が false のサイトを返します(sites_get を参照)。
権限: analytics.read
curl -X DELETE https://privatusanalytics.com/sites/:site_id/favorite.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/setup.json
サイトのインストール状況とスニペット
sites_setup_get
サイトにトラッキングをインストールするために必要なものと、データが届いているかどうかを返します。フィールドは、site_id、snippet(すべてのトラッカーモジュールが有効な、そのまま貼り付けられるHTMLのscriptタグ)、receiving_data(最初のイベントを受信すると true)、first_event_at(ISO 8601で、それまでは null)です。インストール後に、イベントが届いているかを確認するために、これをポーリングしてください。カスタマイズしたスニペット(モジュールの選択、手動のページビュー、SPAモード、マスク)が必要な場合は、代わりに tracking_snippet を、ライブのページを取得してスクリプトがあるかを確認するには tracking_verify を使ってください。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/setup.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/transfers/:token/accept.json
サイトの移管を、自分のワークスペースのいずれかに受け入れる
site_transfers_accept
サイトの移管の招待を承諾し、サイトを呼び出した人のワークスペースの1つに移動します。パスパラメータの token は招待リンクにあるもので、workspace_id は、呼び出した人が sites.manage を持つ、移動先のワークスペース(ws_...)です。呼び出した人自身のメールアドレスは、招待が送られたアドレスと一致している必要があり、移動先はサイトの元のワークスペースにはできません。サイトは、id、設定、ゴール、データを保持しますが、メンバーごとのアクセスの付与はクリアされ、共有リンクは新しいワークスペースに移動します。招待がもう保留中でない場合や期限切れの場合、移動先がプランのサイト数の上限に達している場合、または同じドメインの有効なサイトがすでにある場合は、失敗します。移動は、元に戻す移管を行う以外に取り消せません。これを呼び出すトークンは、移動先のワークスペースに属し、sites.manage を持っている必要があります。status が accepted の移管を返します。
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/transfers/:token/accept.json \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/transfer.json
サイトを別のワークスペースへの移管を開始(受信者にメールが届きます)
sites_transfer_start
サイトを別のワークスペースに移す手続きを開始し、7日間有効な招待リンクを受信者にメールで送信します。受信者がそのメールアドレスでサインインして承諾する(site_transfers_accept)まで何も移動しないため、それまでサイトはここに残ります。新しい移管を開始すると、同じサイトの以前の保留中の移管はキャンセルされます。email は有効なアドレスでなければならず、移動先のワークスペースは受信者が選びます。移管のメールにはレート制限があります。取り下げるには sites_transfer_cancel を使ってください。sites.manage が必要です。site_id、site_domain、from_workspace、to_email、status が pending、expires_at を持つ移管を返します。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/sites/:site_id/transfer.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/transfer.json
保留中のサイト移管をキャンセル
sites_transfer_cancel
サイトの保留中の移管の招待をキャンセルし、そのリンクを機能しなくします。保留中の移管がない場合は、検証エラーで失敗します。すでに承諾された移管はキャンセルできません。sites.manage が必要です。status が canceled の移管を返します。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/transfer.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/transfers/:token.json
メールで届いたトークンから保留中の移管を取得
site_transfers_get
リンクの token(パスパラメータの token。sites_transfer_start が送信する招待メールにあるもの)から、サイトの移管の招待を表示します。呼び出し元はサインインしているか、APIトークンを使う必要があります。site_id、site_domain、from_workspace(送信元のワークスペースの名前)、to_workspace_id(承諾されるまでは null)、to_email(招待されたアドレス)、status(pending、accepted、canceled)、expires_at を返します。招待は、送信から7日後に期限切れになります。承諾するには site_transfers_accept を使ってください。
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/transfers/:token.json
POST
/workspaces/:workspace_id/sites.json
サイトを追加
sites_create
ワークスペースにウェブサイトを追加し、インストールするトラッキングスニペットを含めて返します。ワークスペースのプランがサイト数を制限し(Freeは3)、上限に達するとプラン制限エラーで呼び出しが失敗します。domain は必須で、正規化されます(たとえば、完全なURLや www のプレフィックスは、ホスト名に簡略化されます)。name の既定はドメイン、timezone の既定はワークスペースのタイムゾーン(Europe/Berlin のようなIANA名)、currency の既定はワークスペースの通貨(USD のような3文字のISO 4217コード)です。副作用として、ワークスペースの通知チャンネルへの site.created の通知、最初のSEOサイト監査とドメインレーティングのチェックのキュー登録、作成したメンバーへのトラッキングコードのメール(データが届くまでの間はリマインダー付き)があります。選択したサイトに限定され、今後のサイトにもオプトインしているメンバーには、そのサイトへのアクセスが付与されます。sites.manage が必要です。インストールには tracking_snippet または sites_setup_get を、確認には tracking_verify を続けて使ってください。
権限: sites.manage
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/sites.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:id.json
サイトを削除(7日後に完全消去)
sites_delete
サイトを削除します。これは論理削除で、サイトは収集を止め、一覧からただちに消えます。データは7日後に完全に消去されるため、元に戻せないものとして扱い、間違いだった場合はすぐにサポートに連絡してください。confirm は、サイトのドメインでなければなりません(大文字小文字は区別しません)。サイトの保留中の移管はキャンセルされ、site.deleted の通知がワークスペースの通知チャンネルに送信されます。サイトを残したまま、一部のトラフィックのみを消去するには sites_reset_data を使ってください。sites.manage が必要です。サイトを返します。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/sites.json
ワークスペースのサイトを一覧表示
sites_list
呼び出した人がアクセスできるワークスペースのサイトを、スター付きのサイトを先頭にして、ページ分割して一覧表示します。query はドメインまたは名前の検索(部分一致で、大文字小文字を区別しない)、label は1つのラベルを持つサイトのみを残す絞り込み、sort は position(保存された順序で、既定)、name、visitors(直近30日間の訪問者で、多い順)です。レスポンスの meta には、ページごとのページネーションに加えて、stats(サイトIDをキーとするオブジェクトで、visitors(最近のユニーク訪問者)、change(前の期間に対する変化率のパーセント)、sparkline(日ごとの値のリスト)、live(現在の訪問者)を持つ)と、ページ全体の totals が含まれます。各項目は、sites_get と同じフィールドを持ちます。これは、他のすべてのサイトツールで使うサイトID(pa_...)を見つけるための出発点です。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/workspaces/:workspace_id/sites.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:id.json
サイトとそのすべての設定を取得
sites_get
1つのサイトの設定と状態を、公開ID(sites_list から取得する pa_...)で返します。主なフィールドは、id、workspace_id(ws_...)、domain、name、extra_domains、multi_domain_mode(combined または separate)、timezone(IANA名)、currency(ISO 4217)、labels、プライバシーのオプション(honor_dnt、honor_gpc、pii_scrubber、redaction_rules、allowed_params、path_masks)、retention_months(null はすべてのデータを保持することを意味)、bot_filtering、traffic_rule_modes(ルールのリストを block または allow に対応付けたオブジェクト)、vitals_sample_rate(パーセント)、conversion_denominator(visits または visitors)、public_dashboard と public_indexable、ingest_key_prefix(サイトにクローラーログキーがない場合は null)、verified_at、first_event_at、last_event_at(データが届くまでは null)、domain_rating(null 可)、snippet(HTMLのトラッキングタグ)、favorite(呼び出した人がスターを付けたか)、created_at です。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:id.json
サイト設定を更新
sites_update
サイトの設定を更新し、送信したフィールドのみを変更します。名前とIDに関するフィールドは、name、domain(変更するとドメインレーティングが再チェックされる)、extra_domains(ホスト名のリスト)、multi_domain_mode(combined はドメインをまたいで1人の訪問者をカウントし、separate は別々に保つ)です。timezone はIANA名、currency は3文字のISO 4217コードです。プライバシーに関するフィールドは、honor_dnt、honor_gpc、pii_scrubber、redaction_rules(name と pattern を持つオブジェクトのリストで、pattern は正規表現)、allowed_params(保持するクエリパラメータ)、path_masks(pattern と replacement を持つオブジェクトのリスト)、bot_filtering です。リストは、既存のリスト全体を置き換えます。retention_months は、プランの保持期間(Freeは6か月)を超えてはいけません。traffic_rule_modes は、ルールのリスト(hostnames、paths、referrers、countries、ip_ranges、user_agents、events)を block または allow に対応付けます。vitals_sample_rate はパーセントで、プランによって上限があります(Freeは10、有料プランは100)。conversion_denominator は visits または visitors です。public_dashboard は、リンクを持つ誰でも統計を閲覧できるようにし、public_indexable は、そのページを検索エンジンがインデックスできるようにします。変更は、新しいイベントに対して、すぐに有効になります。sites.manage が必要です。更新後のサイトを返します。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
サイト監査
GET
/sites/:site_id/audit/issues.json
サイト監査の問題をチェックごとに1行で一覧表示
site_audit_issues_list
1つの監査の課題を、何かを検出したチェックごとに1行で、悪いものから順に一覧表示します(エラー、次に警告、次に通知で、それぞれ影響を受けるURLの数の順)。各行には、check_key(site_audit_issues_get とミュートのツールで使用)、title、category、severity(error、warning、notice)、affected(検出されたURLで、ミュートされたものを除く)、added と fixed(前回の監査からの変化)、pageviews(監査前の30日間における、影響を受けたページへの訪問)が含まれます。既定は最新の完了した監査で、audit_id を渡すこともできます。severity、category、new_only(前回の監査から新しく発生したURLを持つチェックのみ)で絞り込めます。page と per_page(最大100、既定は50)でページ分割されます。チェックが検出したURLを確認するには site_audit_issues_get を使ってください。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/audit/issues.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/audit/issues/:check_key.json
サイト監査のチェックを1件取得: 重要な理由、修正方法、影響を受けるURL
site_audit_issues_get
site_audit_issues_list の check_key(たとえば title_missing)で指定した、監査の1つのチェックの詳細です。audit_id、issue(一覧と同じ行)、why(その問題の意味)、fix(修正方法)、muted(チェック全体がサイトでミュートされている場合は true)、urls を返します。urls は検出されたURLで、page_id(site_audit_pages_get で使用)、url、pageviews、detail(検出に関する追加情報で、空の場合もある)、is_new、muted を含みます。sort は pageviews(既定で、多い順)または url です。page と per_page(最大100、既定は25)でページ分割されます。既定は最新の完了した監査で、audit_id を渡すこともできます。ミュートされたURLは最後に並びます。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/audit/issues/:check_key.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/audit/mutes/bulk.json
複数のURLに対するサイト監査のチェック、または複数のチェック全体を、1回の呼び出しでミュート
site_audit_mutes_bulk
多数の検出結果を、1回のリクエストで、すべてか何もないかのどちらかでミュートします。2つの形式のいずれかを使います。check_key と urls(最大100件のURL)を送信して、複数のページで1つのチェックをミュートするか、check_keys(最大100件)を送信して、サイトのチェック全体をミュートします。urls と check_keys は混在させないでください。不明なチェックや無効なURLがあると、リクエスト全体が失敗し、何もミュートされません。すでにミュートされている項目は、そのまま返されます。最新の監査の件数とスコアは、最後に1回だけ更新されます。ミュートのリストを返します。それぞれを元に戻すには site_audit_mutes_delete を使ってください。content.write が必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/audit/mutes/bulk.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/audit/mutes.json
サイト全体または1つのURLに対して、サイト監査のチェックをミュート
site_audit_mutes_create
サイト全体、または1つのURLのみについて、1つのチェックをミュートします。check_key は site_audit_issues_list から取得します。すべての場所でチェックをミュートするには url を省略し、そのページのみでミュートするには、完全なURL(https://example.com/old など)を渡します。URLはクローラーと同じ方法で正規化されます。最新の監査の件数とスコアは、ただちに更新されます。同じものを2回ミュートすると、エラーではなく既存のミュートが返されます。多数を一度にミュートするには site_audit_mutes_bulk を、元に戻すには site_audit_mutes_delete を使ってください。content.write が必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/audit/mutes.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/audit/mutes/:id.json
サイト監査のチェックのミュートを解除
site_audit_mutes_delete
site_audit_mutes_list の id で指定したミュートを削除し、そのチェックまたはURLが、再び監査のスコアにカウントされるようにします。最新の監査は、ただちに再集計されます。これはミュートを削除するだけで、監査のデータは削除しません。削除したミュートを返します。content.write が必要です。
権限: content.write
curl -X DELETE https://privatusanalytics.com/sites/:site_id/audit/mutes/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/audit/mutes.json
サイトでミュートしているチェックを一覧表示
site_audit_mutes_list
サイトでミュートされているチェックを、新しい順に一覧表示します。ミュートは、チェックをサイト全体(url が null)または1つのURLに対して非表示にするため、監査がそれらを記録していても、その検出結果は件数とスコアに含まれません。各行には、id(ミュートのid。site_audit_mutes_delete で使用)、site_id、check_key、title、url(サイト全体のミュートでは null)、muted_by(メンバー名で、不明な場合は null)、created_at が含まれます。check_key で絞り込めます。page と per_page(最大100)でページ分割されます。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/audit/mutes.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/audit/notifications.json
サイトの監査サマリーメールをオンまたはオフに切り替え
site_audit_notifications_update
1つのサイトについて、呼び出したメンバーの週次の監査概要メールを、オンまたはオフにします。これは個人の設定で、他のメンバーには影響しません。enabled を true にすると、このサイトの監査の後に、概要がメンバーに送信され、false にすると、送信が止まります。site_id、enabled、all_sites_enabled(メンバーがアカウント設定で、すべてのサイトの監査メールをオフにしている場合は false で、こちらが優先されます)を返します。analytics.read を持つメンバーなら誰でも、自分の設定を変更できます。
権限: analytics.read
curl -X PATCH https://privatusanalytics.com/sites/:site_id/audit/notifications.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/audit/pages.json
サイト監査のページを一覧表示して絞り込み
site_audit_pages_list
ページエクスプローラーで、1つの監査(既定は最新の完了したもの、または audit_id)のURLを一覧表示します。kind は、page(既定で、HTMLドキュメント)、resource(画像、スクリプト、スタイルシート)、external(他のサイトへのリンク)です。state(queued、fetched、skipped、blocked、failed)、status_class(2xx、3xx、4xx、5xx)、indexable、in_sitemap、has_issues(ミュートされていない課題のみカウント)、depth(開始ページからのクリック数)、query(URLまたはタイトル内のテキスト)で絞り込めます。sort は、pageviews(既定)、inlinks、depth、response_ms(遅い順)、word_count(少ない順)です。各行には、id(site_audit_pages_get のためのUUID)、url、path、kind、state、status、depth、indexable、indexability_reason、title、word_count、response_ms、cache_status、inlinks、pageviews、in_sitemap、issues(件数)が含まれます。page と per_page(最大100)でページ分割されます。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/audit/pages.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/audit/pages/:id.json
監査したページを1件取得: メタデータ、問題、内向きリンクと外向きリンク
site_audit_pages_get
監査が1つのURLについて保存したすべての情報を、id(site_audit_pages_list、または site_audit_issues_get の urls から取得するUUID)で返します。id、audit_id、page(url、status、redirect_to、content_type、bytes、response_ms、title、meta_description、h1、canonical、robots_meta、indexable と indexability_reason、word_count、lang、hreflang、schema_types、ソーシャルタグ、images_count、images_missing_alt、リンク数、link_score、in_sitemap、has_tracker、pageviews と search_clicks、fetched_at など)、redirect_target_id(監査内でそのページがリダイレクトする先のページ、または null)、issues(check_key、title、category、severity、detail、is_new、muted)、inlinks と outlinks(それぞれ最大100件で、page_id、url、status、kind、anchor、nofollow、count を含む)を返します。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/audit/pages/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/audit/settings.json
サイトの監査設定を取得
site_audit_settings_get
サイトの監査設定を返します。フィールドは、site_id、enabled(スケジュールされた監査のオンまたはオフ。既定はオン)、include_subdomains、check_external_links、exclude_paths、ignored_params、extra_start_urls、next_run_at(次のスケジュールされた監査の予定時刻で、ない場合は null)、page_limit(現在のプランでの監査あたりのページ数で、無制限の場合は null)、interval_days(プランでのスケジュールされた監査の間隔の日数)です。設定を一度も変更していないサイトには、既定値が返されます。変更するには site_audit_settings_update を使ってください。sites.manage が必要です。
権限: sites.manage
curl https://privatusanalytics.com/sites/:site_id/audit/settings.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/audit/settings.json
サイトの監査設定を変更
site_audit_settings_update
サイトの監査方法を変更します。送信した項目のみが変更されます。enabled は、スケジュールされた監査と手動の監査をオンまたはオフにします(オンにすると、次の監査が、プランの間隔だけ先にスケジュールされます)。include_subdomains と check_external_links は真偽値です。3つのリストは、保存されているリストを置き換え、統合されないため、完全なリストを送信してください。exclude_paths は、クローラーがスキップするパスのプレフィックスで、それぞれスラッシュで始める必要があります(最大50件)。ignored_params は、異なるページを作らないクエリパラメータの名前で、utm_source や sessionid などです(最大50件で、文字、数字、ドット、ダッシュ、アンダースコア)。extra_start_urls は、ホームページに加えてクロールする、完全なhttpまたはhttpsのURLです(最大20件)。リストは、1行に1エントリのテキストとしても送信できます。更新後の設定を返します。sites.manage が必要です。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:site_id/audit/settings.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/audit/unsubscribe/:token.json
メールに記載されたトークンでサイト監査サマリーメールの配信を停止
site_audit_unsubscribes_create
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/audit/unsubscribe/:token.json \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/audit/cancel.json
実行中のサイト監査をキャンセル
site_audit_cancel
サイトで実行中またはキュー待ちの監査を停止します。監査は canceled としてマークされ、未完了のクロールからは何も報告されません。キャンセルされた監査は、Freeプランの月間許容量を消費しません。ライブの監査がない場合は、検証エラーで失敗します。キャンセルされた監査を返します。content.write が必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/audit/cancel.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/audit/compare.json
2つのサイト監査を比較: チェックごとに追加されたURLと修正されたURL
site_audit_compare
サイトの2つの監査を、チェックごとに比較します。audit_id は新しい監査で、base_id は古い監査です。どちらも、適切なものが既定になります(最新の完了した監査と、その前の完了した監査)。順序を逆に渡した場合は、ツールが入れ替えます。audit と base(それぞれ監査の概要で、それより前のものがない場合は base が null)と、URLに変化があったチェックごとのオブジェクト checks を返し、各オブジェクトには、check_key、title、category、severity、base_affected、affected、added と fixed(URLの数)が含まれ、エラーが先に並びます。変化のないチェックは除外されます。連続する2つの監査では、added と fixed は正確で、離れた監査では、正味の変化です。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/audit/compare.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/audit.json
サイト監査を今すぐ開始
site_audit_run
サイトの新しいクロールとSEO監査を、今すぐ開始します。サイトの公開ページをバックグラウンドでクロールするため、status が queued の新しい監査とともにすぐに返ります。status が complete になるまで、site_audit_get(live フィールド)または site_audit_history をポーリングしてください。site_audit_settings_update で監査がオフになっている場合、別の監査がすでにキュー待ちまたは実行中の場合、手動の監査が過去24時間以内に開始されている場合、そしてFreeプランでは過去30日間にいずれかの監査が実行されている場合(失敗とキャンセルされたものはカウントされません)は、検証エラーで拒否されます。イベントのない未確認のサイトも、ドメインごとに1日1回の監査に制限されます。クロールされるページ数は、プランによって上限があります(Freeは100、Proは1,000、Businessは10,000)。先に site_audit_get で can_run を確認してください。content.write が必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/audit.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/audit/history.json
サイトの監査を新しい順に一覧表示
site_audit_history
サイトの監査を新しい順に一覧表示します。それぞれに、id(aud_...)、status(queued、running、analyzing、complete、partial、failed、canceled)、trigger(first、scheduled、manual)、score(0から100で、完了するまでは null)、score_band、page_limit、pages_crawled、urls_discovered、errors、warnings、notices、new_issues、fixed_issues、failure(失敗した場合は理由、それ以外は null)、タイムスタンプが含まれます。status で絞り込めます。page と per_page(最大100)でページ分割されます。id は、site_audit_get、site_audit_compare、課題とページのツールで使います。1つの監査の現在の状態には site_audit_get を使ってください。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/audit/history.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/audit.json
サイト監査の概要を取得: スコア、件数、トラフィック別の主な問題、実行中の監査
site_audit_get
SEOサイト監査の概要で、監査に関する質問に対する最初の呼び出しとして最適です。既定では、最新の完了した監査を返しますが、古い監査には audit_id(site_audit_history から取得する aud_...)を渡します。結果には、audit(完了した監査で、0から100の score、score_band、score_delta、errors、warnings、notices の件数、pages_crawled、page_limit、capped、summary、robots の詳細を含み、完了したものがない場合は null)、live(現在実行中の監査、または null)、enabled と next_run_at(スケジュール)、can_run と run_blocked(live、disabled、too_soon)と run_allowed_at(site_audit_run が再び許可される時刻)、changes(重要度ごとの、追加されたURLと修正されたURLの数)、trend(id、finished_at、score を持つ最近の最大30件のスコア)、top_issues(重要度、次に影響を受けるページのページビューの順にランク付けされた、最大10件のチェック)、email_enabled(自分自身の概要メールの設定)が含まれます。すべての課題には site_audit_issues_list を、URLには site_audit_pages_list を続けて使ってください。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/audit.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
サブスクリプション
DELETE
/sites/:site_id/subscriptions/connections/:provider.json
決済プロバイダーの接続を解除し、キーとサブスクリプションデータを削除
subscriptions_disconnect
決済プロバイダー(stripe、paddle、lemon_squeezy、chargebee、polar)をサイトから切断し、保存されたAPIキーと、そこから読み取ったすべてのサブスクリプション行を完全に削除します。この操作は元に戻せず、MRR、解約、コホートの数値からは、そのプロバイダーのサブスクリプションがただちに除かれます。そのプロバイダーが接続されていない場合は失敗します。削除した接続を返します。sites.manage が必要です。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/subscriptions/connections/:provider.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/subscriptions/sync.json
決済プロバイダーからサブスクリプションを今すぐ読み取る
subscriptions_sync
接続されている1つのプロバイダー(stripe、paddle、lemon_squeezy、chargebee、polar)からのサブスクリプションの同期を、通常のスケジュールを待たずに、ただちにキューに入れます。接続とともにすぐに返り(HTTP 202)、同期はバックグラウンドで実行されます。subscriptions_report をポーリングするか、接続の last_synced_at と last_error を確認してください。レポートは最大15分間キャッシュされます。プロバイダーが接続されていない場合は失敗します。sites.manage が必要です。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/subscriptions/sync.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/subscriptions/cohorts.json
解約コホート表:初回支払い月ごとの解約率または継続率
subscriptions_cohorts
サイトのサブスクリプションの解約コホートグリッドで、最初の支払いの月ごとに1行です。months は 6、12(既定)、24 のコホートです。plan を指定すると、1つのプランのサブスクリプションのみに絞り込みます(subscriptions_report の plans を参照)。metric は subscriptions(件数)または mrr(金額)です。view は churn(その時点までに終了した割合。既定)または retention(まだ継続している割合)です。metric、view、months、plan(絞り込み、または null)、currency、cohorts を返し、各コホートには、month(YYYY-MM)、size(サブスクリプション数、またはサイトの通貨のマイナー単位でのMRR)、cells が含まれます。各セルには、offset(コホートの月からの月数で、0が最初)、retained(size と同じ単位)、percent(0から100で、空のコホートでは null)が含まれます。支払いに至らなかったトライアルは、どのコホートにも含まれません。MRR、ARR、解約の主要な数値には subscriptions_report を使ってください。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/subscriptions/cohorts.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/subscriptions.json
サブスクリプション指標:MRR、ARR、MRRの増減、解約、収益維持率、トライアル、プラン、予測
subscriptions_report
サイトのサブスクリプション指標を、接続されたStripe、Paddle、Lemon Squeezy、Chargebee、Polarのアカウントから読み取ります。months は 6、12(既定)、24 です。plan を指定すると、plans に表示される名前の1つのプランのサブスクリプションのみに絞り込みます。金額のフィールドは、サイトの通貨(レスポンスの currency)のマイナー単位の整数で、他の通貨は今日のレートで換算されます。結果には、currency、connected(プロバイダーが接続されていない場合は false)、plan(プランの絞り込み、または null)、connections(接続されたプロバイダーごとに1つで、provider、account_name、sandbox、status、last_error、last_synced_at、created_at を含み、キーは含まれません)、skipped_currencies(レートがなく、金額がカウントされない通貨)、totals、series、forecast、plans が含まれます。totals には、mrr_minor、arr_minor、previous_mrr_minor(30日前のMRR)、active_subscriptions、arpa_minor(サブスクリプションがない場合は null)、trialing、trial_conversion_rate(直近90日間に終了したトライアルのうち、支払いに至ったもののパーセントで、終了したものがない場合は null)が含まれ、直近30日間については new_subscriptions、new_mrr_minor、expansion_mrr_minor、contraction_mrr_minor、churned_subscriptions、churned_mrr_minor、net_new_mrr_minor、quick_ratio(失った(解約と縮小の)MRR 1単位あたりの、新規とアップグレードによるMRR。何も失っていない場合は null)、subscription_churn_rate と mrr_churn_rate(パーセントで、基準がない場合は null)が含まれます。さらに、net_revenue_retention と gross_revenue_retention(12か月前に支払っていたサブスクリプションが当時支払っていた金額のうち、現在も支払っている割合のパーセント。それぞれアップグレードを含む場合と含まない場合で、基準がない場合は null)と、forecast_mrr_minor(12か月後のMRR、予測がない場合は null)が含まれます。series には、月ごとに1行(month は YYYY-MM)があり、mrr_minor、active_subscriptions、同じ増減のフィールド、churn_rate が含まれます。forecast には、直近3か月の完全な月から予測した、今後12か月の月ごとに1行(month、mrr_minor)があり、MRRで始まった完全な3か月がない場合は空です。plans には、MRRの多い順に最大50件のプランが含まれ、plan(プロバイダーがプラン名を示さなかったサブスクリプションでは null)、mrr_minor、active_subscriptions、churned_subscriptions、subscription_churn_rate(直近30日間)を含み、常にすべてのプランが対象です。サブスクリプションは最初の支払いからカウントされます。アップグレードとダウングレードは最初の同期以降のものが把握され、それ以前の過去の月には、サブスクリプションが最初に読み取られたときの価格が使われます。最初の支払いの月ごとのリテンションには subscriptions_cohorts を使ってください。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/subscriptions.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
ステータスページ
GET
/status/:slug/confirm/:token.json
メールで届いたリンクから購読を確認
public_status_pages_confirm
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/status/:slug/confirm/:token.json
GET
/status/:slug.json
公開ステータスページ: 現在のステータス、90日間のアップタイムバー、インシデント、投稿
public_status_pages_get
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/status/:slug.json
POST
/status/:slug/subscribers.json
メールアドレスを購読登録(ダブルオプトイン)
public_status_pages_subscribe
ブラウザクライアントは Cloudflare Turnstile のトークンを `cf-turnstile-response` として送信します。APIトークンを使うリクエストでは不要です。
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/status/:slug/subscribers.json \
-H "Content-Type: application/json" -d '{…}'
POST
/status/:slug/unsubscribe/:token.json
メールで届いたトークンで購読を解除
public_status_pages_unsubscribe
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/status/:slug/unsubscribe/:token.json \
-H "Content-Type: application/json" -d '{…}'
POST
/status_pages/:status_page_id/posts.json
インシデントの更新を投稿(購読者にメールが届きます)
status_page_posts_create
ステータスページにインシデントの更新を公開し、既定では、確認済みの購読者にメールを送信します。インシデントを知らせたり更新したりするときに選び、既存のインシデントを進める(たとえば resolved にする)ときは、新しい投稿を作成する代わりに status_page_posts_update を使ってください。title は必須です(最大200文字)。status は、investigating(既定)、identified、monitoring、resolved のいずれかです。body はプレーンテキスト(最大10,000文字)、posted_at はISO 8601の時刻で、既定は現在、notify(既定は true)はメールを制御します。メールは、公開されているページに対してのみ送信され、ページごとにレート制限があり、制限を超えると、投稿は公開されますが、誰にもメールは送信されません。status_page_id は status_pages_list から取得します。uptime.manage 権限が必要です。id(spp_...)、title、body、status、posted_at、updated_at を持つ投稿を返します。
権限: uptime.manage
curl -X POST https://privatusanalytics.com/status_pages/:status_page_id/posts.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/status_pages/:status_page_id/posts/:id.json
ステータスページの投稿を削除
status_page_posts_delete
ステータスページのインシデントの投稿を完全に削除します。公開ページからただちに消え、元に戻すことはできません。メールは送信されません。id は status_page_posts_list から取得します。uptime.manage 権限が必要です。削除した投稿を返します。
権限: uptime.manage
curl -X DELETE https://privatusanalytics.com/status_pages/:status_page_id/posts/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/status_pages/:status_page_id/posts.json
ステータスページの投稿を一覧表示
status_page_posts_list
ステータスページのインシデントの投稿を、posted_at の新しい順に一覧表示します。投稿の id を見つけたり、インシデントの履歴を確認したりするために使います。status(investigating、identified、monitoring、resolved)で絞り込めます。page と per_page(最大100)でページ分割されます。各投稿には、id(spp_...)、title、body(空の場合は null)、status、posted_at、updated_at が含まれます。status_page_id は status_pages_list から取得します。
権限: analytics.read
curl https://privatusanalytics.com/status_pages/:status_page_id/posts.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/status_pages/:status_page_id/posts/:id.json
ステータスページの投稿を編集
status_page_posts_update
インシデントの投稿を編集します。送信した項目のみが変更されるため、インシデントを解決するには status だけを送信してください。購読者にメールが送信されるのは、status が実際に変わり、かつ notify が false でない場合のみです(既定は true)。title や body だけを編集しても、メールは送信されません。メールは、公開されているページの確認済みの購読者に送信され、ページごとにレート制限があります。有効な status の値は、investigating、identified、monitoring、resolved です。id は status_page_posts_list から取得します。uptime.manage 権限が必要です。更新後の投稿を返します。
権限: uptime.manage
curl -X PATCH https://privatusanalytics.com/status_pages/:status_page_id/posts/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/status_pages/:status_page_id/subscribers/:id.json
購読者を削除
status_page_subscribers_delete
ステータスページからメール購読者を削除し、インシデントとアップタイムのメールを受け取らないようにします。この操作は元に戻せませんが、その人は公開ページで再び購読できます。id は status_page_subscribers_list の購読者のid(接頭辞のない、通常のUUID)です。uptime.manage 権限が必要です。削除した購読者を返します。
権限: uptime.manage
curl -X DELETE https://privatusanalytics.com/status_pages/:status_page_id/subscribers/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/status_pages/:status_page_id/subscribers.json
ステータスページの購読者を一覧表示
status_page_subscribers_list
ステータスページのメール購読者を、メールアドレス順に一覧表示します。アドレスを確認した人のみ(メールを受け取るのはその人のみ)を表示するには confirmed を true に、保留中のものを表示するには confirmed を false にします。page と per_page(最大100)でページ分割されます。各項目には、id(UUID。status_page_subscribers_delete で使用)、email、confirmed_at(保留中の間は null)、created_at が含まれます。status_page_id は status_pages_list から取得します。uptime.manage 権限が必要で、個人データ(メールアドレス)を返します。BusinessプランまたはEnterpriseプランが必要です(それ以外は 402 plan_limit)。
権限: uptime.manage
curl https://privatusanalytics.com/status_pages/:status_page_id/subscribers.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/workspaces/:workspace_id/status_pages.json
ステータスページを作成
status_pages_create
選択したアップタイムチェック、インシデントの投稿、メール登録を表示する、ワークスペースの公開ステータスページを作成します。name は必須です(最大100文字)。slug(小文字、数字、ハイフンで、すべてのワークスペースで一意)は、名前から自動で作られ、ページは /status/<slug> で提供されます。check_ids は、表示するアップタイムチェック(uptime_checks_list の upc_... のID)を一覧にし、public を true にして作成されたチェックのみが受け付けられます。published の既定は true で、ページはただちにすべての人に表示されます。任意のブランディングは、description(最大2,000文字)、logo_url(https が必須)、brand_color(#06755b のような16進数)、custom_domain(アプリにCNAMEを向けるホスト名で、一意)です。その後、インシデントを公開するには status_page_posts_create を使ってください。uptime.manage 権限が必要です。id(sp_...)、slug、check_ids、subscribers(確認済みの購読者の数)を持つページを返します。ワークスペースが持てるページの数はプランによって決まります。Freeはなし(402 plan_limit)、Proは1、Businessは10です。custom_domain とメール購読者には、BusinessプランまたはEnterpriseプランが必要です。プランの数を超えているページは、保持されたままオフラインになります。
権限: uptime.manage
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/status_pages.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/status_pages/:id.json
ステータスページを削除
status_pages_delete
ステータスページを、そのすべてのインシデントの投稿と購読者とともに完全に削除します。公開ページとそのカスタムドメインはただちに機能しなくなり、元に戻すことはできません。アップタイムチェック自体は削除されません。id は status_pages_list から取得します。uptime.manage 権限が必要です。削除したページを返します。
権限: uptime.manage
curl -X DELETE https://privatusanalytics.com/status_pages/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/status_pages.json
ステータスページを一覧表示
status_pages_list
ワークスペースのステータスページを、名前順に一覧表示します。名前またはスラッグの一部に一致させるには query を使います。呼び出した人が一部のサイトに限定されている場合は、チェックのすべてがそれらのサイト内にあるページのみが返されます。page と per_page(最大100)でページ分割されます。各項目には、status_pages_get で説明されているフィールドがあります。workspaces_list から取得する workspace_id が必要です。
権限: analytics.read
curl https://privatusanalytics.com/workspaces/:workspace_id/status_pages.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/status_pages/:id.json
ステータスページを取得
status_pages_get
1つのステータスページを、設定とともに返します。フィールドは、id(sp_...)、workspace_id、name、slug、custom_domain(ない場合は null)、description、logo_url、brand_color、published、check_ids(ページに表示されるアップタイムチェックのID)、subscribers(確認済みのメール購読者の数)、created_at です。インシデントには status_page_posts_list を、人には status_page_subscribers_list を使ってください。id は status_pages_list から取得します。
権限: analytics.read
curl https://privatusanalytics.com/status_pages/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/status_pages/:id.json
ステータスページを変更
status_pages_update
ステータスページを変更します。送信した項目のみが変更されるため、ページをオフラインにするには published を false だけで送信し、表示するチェックを置き換えるには check_ids を送信してください(リスト全体が置き換えられ、統合はされません)。入力とその制限は、status_pages_create と同じです。カスタムドメインを削除するには、custom_domain を空文字列で送信します。表示できるのは、public が true のチェックのみで、一部のサイトに限定された呼び出し元は、それらのサイトのチェックのみをページに載せることができます。id は status_pages_list から取得します。uptime.manage 権限が必要です。更新後のページを返します。
権限: uptime.manage
curl -X PATCH https://privatusanalytics.com/status_pages/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
スポンサーレポート
POST
/sites/:site_id/experiments/ads/:ad_placement_id/reports.json
広告枠のスポンサーレポートリンクを作成
ad_report_links_create
アカウントを持たない相手に向けた、広告枠の数値を見られる閲覧専用リンクです。すべてのクリエイティブ、またはcreative_idsに列挙したものが対象です。MCP経由の場合、リンクが作成されたことがメンバーにメールで通知されます。Pro以上。content.writeが必要です。リンクをurl付きで返します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/experiments/ads/:ad_placement_id/reports.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/experiments/ads/:ad_placement_id/reports/:id.json
スポンサーレポートリンクを削除
ad_report_links_delete
アドレスはただちに使えなくなります。MCPツールは実行せず、human_onlyと、人が削除するページを返します。content.writeが必要です。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/experiments/ads/:ad_placement_id/reports/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/experiments/ads/:ad_placement_id/reports.json
広告枠のスポンサーレポートリンクを一覧表示
ad_report_links_list
リンクを、アドレスと有効期限付きで返します。analytics.readが必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/experiments/ads/:ad_placement_id/reports.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sponsor/:token.json
リンクのトークンによるスポンサーレポート
ad_reports_get
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/sponsor/:token.json
セグメント
POST
/sites/:site_id/segments.json
フィルターをセグメントとして保存
segments_create
フィルターのセットを、名前付きのセグメントとして保存します。segment_id を通じて、どの stats ツールでも再利用できます。name と filters を渡します(すべての条件が一致する必要があり、{any: [...]} のグループは、いずれかが一致すると一致します。ディメンション名と演算子は filters の入力を参照)。フィルターは検証されるため、不明なディメンションや不正な値があると、行ごとのメッセージを含む422が返されます。フィルターのセットが何に一致するかを確認するには、先に segments_preview を使ってください。shared の既定は true で、サイトにアクセスできるすべての人にセグメントが見えるようになり、false にすると自分だけの非公開になります。id(seg_...)、site_id、name、description、filters、summary(わかりやすい英語の説明)、shared、mine、タイムスタンプを持つセグメントを返します。content.write 権限が必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/segments.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/segments/:id.json
セグメントを削除
segments_delete
保存されたセグメントを完全に削除します。それを使っているダッシュボードやリンクは、すべてのトラフィックに戻ります。アナリティクスのデータには影響せず、元に戻すことはできません。削除したセグメントを返します。ID(seg_...)は segments_list から取得します。content.write 権限が必要です。
権限: content.write
curl -X DELETE https://privatusanalytics.com/sites/:site_id/segments/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/segments.json
サイトで使用できるセグメントを一覧表示
segments_list
サイトの保存されたセグメントを、名前順に一覧表示します。共有されているものと、自分の非公開のものが含まれます。各セグメントには、id(seg_...)、site_id、name、description、filters、summary、shared、mine、タイムスタンプが含まれます。id を segment_id として、どの stats ツール(stats_aggregate、stats_breakdown、funnels_get など)にも渡すと、そのセグメントのフィルターが適用されます。標準のページパラメータでページ分割されます。追加するには segments_create を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/segments.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/segments/preview.json
フィルターを自然な言葉で説明し、過去30日間に一致した訪問者数を数える
segments_preview
何も保存せずに、フィルターのセットを確認します。summary(わかりやすい英語のフィルター)、visitors(直近30日間に一致した訪問者数で、フィルターが無効な場合は null)、period(常に 30d)、filters(保存される、整形された正規の形式)を返します。フィルターは segments_create と同じ形式で、{any: [...]} のグループや、国、チャンネル、ゴールを任意で名前で書き出したものも使え、これらはコードやIDに変換されます。無効なフィルターは、その行を示す422を返します。segments_create の前にフィルターを試すために使い、別の期間の数値には filters を指定した stats_aggregate を使ってください。
権限: analytics.read
curl -X POST https://privatusanalytics.com/sites/:site_id/segments/preview.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/segments/:id.json
セグメントを取得
segments_get
保存された1つのセグメントを返します。id(seg_...)、site_id、name、description、filters(保存された条件)、summary(「モバイルのアメリカからの訪問者」のような、わかりやすい英語の説明)、shared(サイトにアクセスできるすべての人に見える)、mine(自分が作成した場合は true)、タイムスタンプです。共有されたセグメントと、自分の非公開のセグメントを読み取れます。IDは segments_list から取得します。フィルターのセットに何人の訪問者が一致するかを数えるには、segments_preview を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/segments/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/segments/:id.json
セグメントの名前、フィルター、共有設定を変更
segments_update
セグメントの名前を変更したり、フィルターを置き換えたり、閲覧できる人を変更したりします。送信した項目のみが変更されます。filters を送信すると、既存のすべてのフィルターが置き換えられます。形式と検証は segments_create と同じです。shared を false にすると、作成者のみの非公開になります。description は、空で送信するとクリアできます。segment_id を指定した stats の呼び出しなど、そのセグメントを使っているものすべてが、ただちに変化します。セグメントを返します。IDは segments_list から取得します。content.write 権限が必要です。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/segments/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
ダッシュボード
GET
/workspaces/:workspace_id/dashboards/:id/cards/:index.json
カスタムダッシュボードの1枚のカードのデータ
dashboards_card
カスタムダッシュボードの1つのカードのライブデータを返します。ダッシュボードはカードのリストで(カードのリストは dashboards_get を参照)、各カードは別々に読み込まれます。そのため、0から数えたカードの位置を index に指定して、カードごとに1回ずつ呼び出してください。index、type、title、site_id、site_name、params、status、data を返します。status は、ok、not_available(カードに表示するものがない場合。たとえば、ファネルのないサイトのファネルカードや、チェックのないアップタイムカード)、no_access(カードが、お客様のトークンまたはロールで開けないサイトに属している場合で、その場合 title、params、data は空)のいずれかです。data の形式は type によって異なります。metric は、前の期間と比較した {metric, value, previous, change, period} を返します。chart は {metric, interval, period, series: [{date, value}]} を返します。breakdown は {dimension, label, rows} を返します。goal はゴール達成数の {rows} を返します。live は {visitors} を返します。funnel は {funnel_id, name, overall_conversion_rate, steps} を返します。uptime は {checks: [{name, status, uptime}]} を返します。vitals は {scorecard} を返します。subscriptions は {currency, mrr_minor, previous_mrr_minor(30日前)、change(パーセント。30日前にMRRがない場合は null)、active_subscriptions、subscription_churn_rate(直近30日間)} を返し、サイトに決済プロバイダーが接続されていない間は not_available になります。カードの params の既定は、period が 30d、metric が visitors、dimension が page、行数が5です(limit の上限は10)。リストの範囲外の index は404を返します。カードの数を確認するには、先に dashboards_get を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/workspaces/:workspace_id/dashboards/:id/cards/:index.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/workspaces/:workspace_id/dashboards.json
カスタムダッシュボードを作成
dashboards_create
ワークスペースにカスタムダッシュボードを作成します。カスタムダッシュボードは、名前付きで順序のある最大40枚のカードのリストで、カードはワークスペース内の異なるサイトから選べます。name(100文字まで)と cards を渡します。cards は、type(metric、chart、breakdown、goal、live、funnel、uptime、vitals、subscriptions)、site_id(sites_list から取得する pa_...)、任意の title(80文字まで)と params を持つオブジェクトのリストです。type ごとに使われる params は、metric(period、metric)、chart(period、metric、interval)、breakdown(period、dimension、limit)、goal(period、limit)、funnel(period、funnel_id)、uptime(limit)、vitals(period)です。live と subscriptions にはありません。その他の params は破棄されます。period は 30d などのプリセットでなければならず(custom は不可)、metric は visitors、visits、pageviews、views_per_visit、bounce_rate、visit_duration のいずれかです。すべてのカードは、トークンがアクセスできるサイトを指している必要があり、一部のサイトに限定されたトークンでは、少なくとも1枚のカードが含まれている必要があります。id(dash_...)、name、cards、タイムスタンプを持つダッシュボードを返します。dashboards_get で読み取り、dashboards_card で各カードの数値を読み込みます。content.write 権限が必要です。ワークスペースが持てるダッシュボードの数はプランによって決まります。Freeは1、Proは3、Businessは無制限です。数を超えると、検証エラーで拒否されます。
権限: content.write
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/dashboards.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/workspaces/:workspace_id/dashboards/:id.json
カスタムダッシュボードを削除
dashboards_delete
カスタムダッシュボードを完全に削除します。削除されるのはダッシュボードのレイアウトのみで、アナリティクスのデータには影響せず、元に戻すことはできません。ダッシュボードにカードがあるすべてのサイトへのアクセス権が必要で、ダッシュボードには、アクセスできるサイトのカードが少なくとも1枚必要です。削除したダッシュボードを返します。ダッシュボードを変更するには、代わりに dashboards_update を使ってください。ID(dash_...)は dashboards_list から取得します。content.write 権限が必要です。
権限: content.write
curl -X DELETE https://privatusanalytics.com/workspaces/:workspace_id/dashboards/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/dashboards.json
カスタムダッシュボードを一覧表示
dashboards_list
ワークスペースのカスタムダッシュボードを名前順に一覧表示します。各項目には、id(dash_...)、name、cards、タイムスタンプが含まれ、dashboards_get と同じ形式です。一部のサイトに限定されたトークンには、そのサイトのカードを含むダッシュボードのみが表示され、他のサイトのカードは {type, status: no_access} に伏せられます。page と per_page(最大100)でページ分割されます。カードのデータを読み込むには dashboards_card を、ダッシュボードを追加するには dashboards_create を使ってください。1つのサイトについては、ダッシュボードなしでも stats_overview が同じ種類の数値を返します。
権限: analytics.read
curl https://privatusanalytics.com/workspaces/:workspace_id/dashboards.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/workspaces/:workspace_id/dashboards/:id.json
カスタムダッシュボードとそのカードを取得
dashboards_get
1つのカスタムダッシュボードを返します。id(dash_...)、name、cards、created_at、updated_at です。各カードは {type, site_id, title, params} です(type は metric、chart、breakdown、goal、live、funnel、uptime、vitals、subscriptions のいずれか)。アクセスできないサイトのカードは、他のフィールドなしの {type, status: no_access} として返されます。返されるのはレイアウトのみで、数値は含まれません。カードの数値は、0から数えたカードの位置を使って dashboards_card で読み込んでください。IDは dashboards_list から取得します。プランの数(Freeは1、Proは3)を超えているダッシュボードは、保持されたままロックされ、ワークスペースがアップグレードするか、別のダッシュボードを削除するまで、402 plan_limit で応答します。
権限: analytics.read
curl https://privatusanalytics.com/workspaces/:workspace_id/dashboards/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/workspaces/:workspace_id/dashboards/:id.json
カスタムダッシュボードの名前を変更、またはカードを置き換え
dashboards_update
カスタムダッシュボードの名前を変更するか、カードのリスト全体を置き換えます(または両方)。送信した項目のみが変更され、name が空の場合はそのままです。cards を送信すると、すべてのカードが置き換えられるため、dashboards_get から取得して編集した、希望の順序の完全なリストを送信してください。カードの形式と type ごとの params は、dashboards_create と同じです(最大40枚)。{type, status: no_access} として表示されているカードは、開けないサイトに属しています。残したい場合は、そのまま送り返してください。編集はできず、そのようなサイトの最後のカードは削除できません。一部のサイトに限定されたトークンでは、ダッシュボードを空にすることはできません。更新後のダッシュボードを返します。content.write 権限が必要です。
権限: content.write
curl -X PATCH https://privatusanalytics.com/workspaces/:workspace_id/dashboards/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
チャネルルール
POST
/sites/:site_id/channel_rules.json
チャネルルールを追加
channel_rules_create
カスタムチャンネルルールをリストの末尾に追加します。そのため、既存のすべてのルールの後に実行され、組み込みの分類は、どのルールにも一致しない場合にのみ適用されます。channel は割り当てる名前です(32文字まで。例: Partners)。conditions は、field(referrer_host、utm_source、utm_medium、utm_campaign、ref、path)、operator(is、contains、starts_with、regex)、value を持つオブジェクトの、空でないリストです。ルールが適用されるには、すべての条件が一致する必要があり、照合は大文字小文字を区別しません。value が空の条件は除外され、条件が1つも残らないルールは拒否されます。コンパイルできない正規表現は拒否されます。ルールは数分以内に新しい訪問に適用され、過去のデータは変更されません。並べ替えには channel_rules_move を、テストには channel_rules_preview を使ってください。sites.manage が必要です。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/channel_rules.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/channel_rules/:id.json
チャネルルールを削除
channel_rules_delete
channel_rules_list の id で指定した、カスタムチャンネルルールを削除します。すでに分類された訪問のチャンネルはそのまま保たれ、新しい訪問は、次に一致するルールか、組み込みの分類に進みます。残りのルールの順序は保たれます。削除したルールを返します。sites.manage が必要です。
権限: sites.manage
curl -X DELETE https://privatusanalytics.com/sites/:site_id/channel_rules/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/channel_rules.json
チャネルルールを順番に一覧表示
channel_rules_list
サイトのカスタムチャンネルルールを、評価順(position 1 が先頭)に一覧表示します。ルールは、新しい訪問ごとに上から下へ実行され、条件がすべて一致した最初のルールがチャンネルを決定します。どのルールにも一致しない訪問には、組み込みのチャンネル(direct、organic_search、paid_search、email など)が割り当てられます。各ルールには、id(UUID)、channel(割り当てる名前)、position(1始まり)、conditions(field、operator、value オブジェクトのリストで、すべてが一致する必要がある)、created_at が含まれます。ルールは、そのルールの作成後に記録された訪問にのみ影響し、過去のデータは書き換えません。サンプルの訪問をテストするには channel_rules_preview を使ってください。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/channel_rules.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/channel_rules/:id/move.json
チャネルルールを上または下へ移動
channel_rules_move
チャンネルルールを評価順の中で移動します。最初に一致したルールが優先されるため、順序によって訪問に割り当てられるチャンネルが決まります。direction は up または down(1つ分)、もしくは top または bottom(端まで)です。すでに端にあるルールは、エラーにならず、そのままになります。位置は1からnに振り直され、新しい position を持つ更新後のルールが返されます。まず channel_rules_list で現在の順序を確認してください。sites.manage が必要です。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:site_id/channel_rules/:id/move.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/channel_rules/preview.json
サンプルのリファラーとUTMタグに対するチャネルをプレビュー
channel_rules_preview
サンプルの訪問が、サイトの現在のルールでどのチャンネルになるかを確認するドライランです。何も保存されません。referrer(URLまたはホスト名のみ。www と m のプレフィックスは無視されます)、utm_source、utm_medium、utm_campaign、ref、path(/pricing のようなランディングパス)、paid_click(URLに gclid などのクリックIDが含まれていた場合は true)のいずれかを送信します。結果には、channel(採用されたチャンネル名)、custom_rule(カスタムルールが決定した場合は true、組み込みの分類が決定した場合は false)、referrer_host(照合に使われた整形済みのホスト名)が含まれます。サイト自身のドメインからの参照元は、内部としてカウントされます。channel_rules_create や channel_rules_move の後に、その効果を確認するために使ってください。analytics.read が必要です。
権限: analytics.read
curl -X POST https://privatusanalytics.com/sites/:site_id/channel_rules/preview.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
PATCH
/sites/:site_id/channel_rules/:id.json
チャネルルールを変更
channel_rules_update
channel_rules_list の id で指定した、カスタムチャンネルルールを変更します。割り当てるチャンネルの名前を変更するには channel を、条件のリスト全体を置き換えるには conditions を送信します(リストは統合されず置き換えられるため、残したい条件はすべて送信してください)。省略した入力はそのままです。条件のフィールド、演算子、正規表現の有効性は、channel_rules_create と同じ方法でチェックされます。変更は新しい訪問にのみ適用されます。順序を変更するには channel_rules_move を使ってください。sites.manage が必要です。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:site_id/channel_rules/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
トラフィックルール
POST
/sites/:site_id/traffic_rules.json
トラフィックルールを追加
traffic_rules_create
サイトのブロックまたは許可のリストの1つに、パターンを追加します。list は、hostnames、paths、referrers、countries、ip_ranges、user_agents、events のいずれかです。pattern は * をワイルドカードとして使い、照合は大文字小文字を区別しません。たとえば、/admin/*、ホスト名、spam.example のような参照元のホスト、2文字の国コード(大文字で保存)、User-Agentが簡略化されるためメジャーバージョン付きのブラウザ名(例: Chrome 120)、カスタムイベント名などです。ip_ranges はIPv4またはIPv6のアドレスかCIDR(203.0.113.0/24)を受け付け、有効でなければなりません。パターンは、リストごとに1つのみ存在でき、サイトには最大500件のルールを持てます。リストがブロックするか許可するかは、そのモードによって決まります。既定は block で、sites_update で変更します。一致するヒットは、収集時に破棄されて保存されず、ルールは数分以内に新しいヒットにのみ適用されます。sites.manage が必要です。Proプラン以上が必要です(それ以外は 402 plan_limit)。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/traffic_rules.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/traffic_rules/:id.json
トラフィックルールを削除
traffic_rules_delete
トラフィックルールを、traffic_rules_list の id で指定して削除します。そのルールが破棄していたヒットは、その後再びカウントされるようになり、すでに破棄されたヒットは完全に失われます。許可モードのリストの最後のパターンを削除すると、そのリストはフィルタリングを行わなくなることに注意してください。削除したルールを返します。sites.manage が必要です。
権限: sites.manage
curl -X DELETE https://privatusanalytics.com/sites/:site_id/traffic_rules/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/traffic_rules.json
トラフィックルールを一覧表示
traffic_rules_list
サイトのトラフィックルールを一覧表示します。これは、どのヒットをカウントするかを決めるために、収集時に適用されるブロックまたは許可のリストです。各ルールには、id(更新と削除のためのUUID)、list(hostnames、paths、referrers、countries、ip_ranges、user_agents、events)、pattern、label(任意のメモ)、mode(block または allow で、リスト全体のモード)、created_at が含まれます。block モードでは、リストのいずれかのパターンに一致するヒットが破棄され、allow モードでは、どれにも一致しないヒットが破棄され、空のリストは何もフィルターしません。list で絞り込めます。リストのモードはここでは設定できず、traffic_rule_modes を使って sites_update で設定します。サンプルのヒットを確認するには traffic_rules_test を使ってください。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/traffic_rules.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/traffic_rules/test.json
サイトの現在のルールでヒットがカウントされるかをテスト
traffic_rules_test
サンプルのヒットが、サイトの現在のトラフィックルールのもとでカウントされるかどうかを確認するドライランです。何も保存されません。url(完全なページURLで、そのホストとパスがチェックされる)、referrer(URLまたはホスト名)、country(2文字のコード)、ip(ip_ranges に対してチェックされ、保存されることはない)、user_agent(完全なUser-Agent文字列で、ブラウザとメジャーバージョンに簡略化される)、event(カスタムイベント名)のいずれかを送信します。省略した値はチェックされません。結果には、counted(ヒットが記録される場合は true)、blocked_by(それを破棄したリスト、または null)、mode(そのリストの block または allow、または null)、values(チェックされた正規化済みの値)が含まれます。ルールはライブで読み取られるため、新しいルールはただちに反映されます。analytics.read が必要です。Proプラン以上が必要です(それ以外は 402 plan_limit)。
権限: analytics.read
curl -X POST https://privatusanalytics.com/sites/:site_id/traffic_rules/test.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
PATCH
/sites/:site_id/traffic_rules/:id.json
トラフィックルールを変更
traffic_rules_update
トラフィックルールの pattern または label を、traffic_rules_list の id で指定して変更します。送信した項目のみが変更されます。list は変更できません。別のリストに移すには、ルールを削除して作り直してください。pattern は、そのリストに対して有効なままで(ip_ranges ではCIDR)、その中で一意でなければなりません。label をクリアするには、空で送信します。新しいヒットにのみ適用されます。sites.manage が必要です。Proプラン以上が必要です(それ以外は 402 plan_limit)。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:site_id/traffic_rules/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
ドキュメント
GET
/docs/api.json
すべてのAPI操作とMCPツールを一覧表示
docs_api
すべてのAPI操作の完全なカタログを返します。これはすべてのMCPツールでもあります。どのツールやエンドポイントが存在し、何を受け取るかを正確に把握するために使います。各項目には、tool_name、summary、description(null 可)、group、verb(HTTPメソッド)、path(プレースホルダー付きのテンプレート)、permission(メンバーまたはトークンに必要な権限で、公開ツールでは null 可)、input_schema(入力のJSON Schema)、response_schema(レスポンスのJSON Schema)が含まれます。レスポンスは大きくなります。すでに知っている1つのツールについては、ドキュメントのページ(docs_search)を優先してください。docs_openapi は、同じ情報をOpenAPIドキュメントとして返します。公開されており、認証は不要です。
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/docs/api.json
GET
/docs.json
ドキュメントページを一覧表示
docs_list
すべてのドキュメントページを、title、description、path(/docs/api/authentication など)、section とともに、本文なしで一覧表示します。どんなページがあるかを見て回るために使います。トピックでページを探すには docs_search を、ページを読むには section と page を指定して docs_get を使ってください。page と per_page(最大100)でページ分割されます。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/docs.json
GET
/openapi.json
API全体のOpenAPI 3.1ドキュメント
docs_openapi
公開API全体を記述したOpenAPI 3ドキュメントを、生のJSONとして返します(data フィールドでラップされません)。コード生成のために機械可読な仕様が必要なときに使ってください。入力とレスポンスのスキーマを含む、操作の見やすい一覧には docs_api のほうが読みやすいです。MCPツールとして公開されているものと同じ操作を記述しています。公開されており、認証は不要です。
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/openapi.json
GET
/docs/search.json
ドキュメントを検索
docs_search
サーバー上のドキュメントを検索し、ランク付けされたページを返します。推測する前に、機能の仕組みを調べるために使います。q は最大10個の語に分割され、すべての語がページに含まれている必要があり、タイトルと見出しの一致が最も高く評価されます。q が空の場合は、すべてのページをカタログ順に返します。limit は、q を指定したときの既定が20で、最大は100です。各結果には、title、path(section と page の部分を docs_get で使用)、section、headings(id と text のリストで、見出しのアンカーとして便利)、excerpt、score(q が空の場合は null)が含まれます。リクエストの言語で検索し、既定は英語です。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/docs/search.json
GET
/docs/:section/:page.json
ドキュメントページを読む(MarkdownとHTML)
docs_get
section と page はページのパス /docs/<section>/<page> から決まります。セクションの概要には page に "index" を指定します。
権限: public
curl https://privatusanalytics.com/docs/:section/:page.json
パフォーマンス
GET
/sites/:site_id/performance.json
Web Vitals: p75のスコアカード、日次推移、ページ、デバイス、ブラウザ、国別の内訳
performance_report
実際の訪問者によるWeb Vitalsのレポートです。period、metric、sample_rate、scorecard、trend、breakdowns を返します。scorecard には、LCP、INP、CLS、FCP、TTFB のそれぞれに1行があり、p75(75パーセンタイルで、単位はミリ秒ですが、CLS は単位のないスコア)、samples、rating(good、needs_improvement、poor。データがない場合は null)、good、needs_improvement、poor(サンプルに対するパーセント)、previous_p75、change(前の期間に対するパーセントで、不明な場合は null)、thresholds [good の上限, poor の上限] が含まれます。trend は、選択した指標の日ごとのp75で、{date, p75, samples} の形式です。breakdowns には、page、device、browser、country があり、それぞれ選択した指標の最大 limit 行(既定は10、最大100)が {value, p75, samples, rating, slow_share, poor} の形式で、悪い順、次に多い順に含まれます。metric は、大文字で LCP、INP、CLS、FCP、TTFB のうちちょうど1つを選びます(既定は LCP)。sample_rate は、Vitalsを報告する訪問の割合のため、件数はすべての訪問ではなく、サンプルです。共通の period、compare、filters、segment の入力を受け付けます。1つのページのVitalsには pages_detail を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/performance.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
ファネル
POST
/sites/:site_id/funnels.json
ファネルを作成
funnels_create
ファネルを作成します。ファネルは、訪問が進んでいく一連のステップで、訪問ごとに測定されます。name と steps(順序付きの {type, value, match, name} のリスト)を渡します。type は page、event、goal のいずれかです。value は、page のステップではパス(例: /pricing)、event のステップではカスタムイベント名、goal のステップではゴールID(goals_list から取得する goal_...)です。match は page のステップ専用で、exact、prefix、glob(* のワイルドカード)、regex のいずれかです。既定は、value に * が含まれていれば glob、そうでなければ exact です。name は任意のラベルです。value が空のステップは除外されます。order_mode は strict(各ステップは前のステップの後でなければならない。既定)または any(順不同のステップ)です。window は visit(既定)または day で、永続的な訪問者IDは保存されないため、どちらも1回の訪問の内側で測定されます。プランの制限が適用されます。Freeではサイトごとに3つのファネルと5ステップまで、Proは10ステップ、Businessは20ステップまで許可され、ファネルには少なくとも2つのステップが必要です。id(fun_...)を持つファネルを返します。結果の読み取りには funnels_get を使ってください。content.write 権限が必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/funnels.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/funnels/:id.json
ファネルを削除
funnels_delete
ファネルの定義を完全に削除します。アナリティクスのデータには影響しませんが、ファネルとその設定は復元できず、元に戻すこともできません。削除したファネルを返します。ID(fun_...)は funnels_list から取得します。ファネルを変更するには、代わりに funnels_update を使ってください。content.write 権限が必要です。
権限: content.write
curl -X DELETE https://privatusanalytics.com/sites/:site_id/funnels/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/funnels.json
流入数、完了数、率を含むファネルを一覧表示
funnels_list
サイトのファネルを、期間の主要な結果とともに、名前順に一覧表示します。各ファネルには、id(fun_...)、name、steps、order_mode、window、stats {entered, completed, conversion_rate} が含まれます。entered はステップ1に到達した訪問、completed は最後のステップに到達した訪問、conversion_rate はパーセント(0から100)です。page と per_page(最大100、既定は25)でページ分割されます。共通の period と filters の入力を受け付けます。ステップごとの詳細には funnels_get を、ファネルを追加するには funnels_create を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/funnels.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/funnels/:id.json
ファネルレポート: ステップごとの数、コンバージョン、離脱、ステップ間の所要時間、代わりに訪問が向かった先
funnels_get
1つのファネルの、ある期間のコンバージョンレポートです。period、funnel_id、name、order_mode、window、steps、overall_conversion_rate、breakdown を返し、compare を指定すると comparison も返します。各ステップには、index(1から)、name、type、value、match、count(それに到達した訪問)、step_conversion_rate(前のステップに対するパーセント)、overall_conversion_rate(ステップ1に対するパーセント)、dropoff と dropoff_rate(このステップの後に離脱した訪問)、median_seconds_from_previous(ステップ1では null)、next_pages(離脱した訪問が次に見た上位5ページで、離れた訪問は (exit))が含まれます。率は0から100のパーセントです。breakdown を channel、device、country、utm_campaign、utm_source、browser、os のいずれかに設定すると、値ごとの全体のコンバージョンが得られます(上位20件)。comparison には、もう一方の期間の数、overall_conversion_rate、change(パーセントで、以前の率が0の場合は null)が含まれます。ページフィルターは訪問を途中で切ってしまうため、ここでは無視されます。代わりに page ステップを使ってください。共通の period、compare、filters、segment の入力を受け付けます。IDは funnels_list から取得します。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/funnels/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/funnels/:id.json
ファネルを更新
funnels_update
ファネルを変更します。送信した項目のみが変更されます。steps を送信すると、ステップのリスト全体が置き換えられるため、すべてのステップを順番に送信してください(形式とステップの制限は funnels_create と同じで、Freeは5ステップ、Proは10、Businessは20まで、goal のステップはこのサイトのゴールを指定する必要があります)。name、order_mode(strict または any)、window(visit または day)も変更できます。結果は読み取り時に定義から計算されるため、ファネルを変更すると、すべての履歴にただちに適用され、以前に表示されていた過去の数値とは異なるものになります。ファネルを返します。IDは funnels_list から取得します。content.write 権限が必要です。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/funnels/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
フォーム
POST
/sites/:site_id/testimonials/forms.json
フォームを作成
testimonial_forms_create
1回の呼び出しでフォーム全体を渡せます: ステップ、質問、スキップロジック、同意文、言語です。省略したものは、フォームの言語での適切な既定値から始まり、slugは名前から決まります。リンクはhttps://privatus.page/f/<slug>です。低評価ルーティングとカスタムCSSにはBusinessプランが必要です(ない場合は402 plan_limit)。動画と音声での回答は、Pro以上で投稿者に提供されます。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/forms.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/forms/:id/permanent.json
フォームを完全に削除
testimonial_forms_delete
フォーム、その送信記録、特典、非公開フィードバックを削除します。集められたお客様の声は保持されます。元に戻せないため、ページで人が行います。APIはconfirm(フォームの名前またはID)を受け取ります。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/forms/:id/permanent.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/testimonials/forms/:id.json
フォームをごみ箱に移動
testimonial_forms_trash
そのリンクは、復元されるまでフォームが閉鎖されていると応答します。ごみ箱は30日後に空になります。MCP経由では、このツールは何も変更せず、人が操作できるアプリのページを返して応答します。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/testimonials/forms/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/testimonials/forms/:id/duplicate.json
フォームをコピー(必要に応じて別の言語に)
testimonial_forms_duplicate
slug、統計、特典を除くすべての設定をコピーします。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/forms/:id/duplicate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/forms.json
サイトのフォームを一覧表示
testimonial_forms_list
ごみ箱にあるフォームは、trashed trueを指定すると一覧に含まれ、指定しないと除外されます。各フォームには、設定、特典、これまでの送信数が含まれます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/forms.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/testimonials/forms/:id/qr.json
フォームのQRコードをSVGまたはPNGで取得
testimonial_forms_qr
このコードにはフォームのリンクが ?src=qr 付きで入っているため、スキャンは独自のチャネルとして数えられます。slugを変更しても、印刷済みのコードは引き続き機能します。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/forms/:id/qr.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/forms/:id/restore.json
フォームをごみ箱から復元。リンクが再び機能します
testimonial_forms_restore
フォームを、質問、送信、非公開フィードバックとともに、元の状態のままごみ箱から取り出します。リンク(/f/<slug>)と埋め込みが再び回答を受け付けます。ごみ箱にないフォームには、サーバーは422とコードnot_in_trashで応答します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/forms/:id/restore.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/forms/:id.json
フォームを1件、すべてのステップ、質問、ルール、設定とともに取得
testimonial_forms_get
testimonial_forms_createとtestimonial_forms_updateが受け取る形で、フォーム全体を返します。slug、リンク、特典、送信数も含まれます。ごみ箱にあるフォームはここでは見つかりません。先に復元してください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/forms/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/forms/:id.json
フォームを変更。送信した入力だけが変更されます
testimonial_forms_update
ステップ、質問、同意文を変更すると、フォームのバージョンが上がり、これはすべての同意記録に保存されます。slugを変更すると、古いリンクはリダイレクトされるようになります。questionsはリスト全体として送信してください。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/forms/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
プラン
GET
/plans.json
プラン、料金、上限を一覧表示
plans_list
公開されているプラン(free、pro、business、enterprise)を、制限と価格ティアとともに一覧表示します。billing_checkout、billing_preview、billing_change_plan に使える有効な値を選ぶのに役立ちます。各プランには、name、events(含まれる月間イベント数で、ティア制またはカスタムのプランでは null)、badge_bonus(バッジによる月間の追加イベントで、Freeのみ。それ以外は null)、limits(サイト数、メンバー数、履歴の保持期間(月)、サイトごとのゴール数、AIへの質問数、1時間あたりのAPIリクエスト数などのプラン制限のオブジェクト)、tiers(それぞれ月間イベント数と、VATまたは売上税込みの、月額と年額の米ドルの整数の価格)、contact_sales(カスタムプランの場合は true)が含まれます。meta オブジェクトには、currency、年額料金に関する注記、counted(課金対象のイベントとなるもの)、not_counted が追加されます。1つのワークスペース自身のプランには billing_get を使ってください。公開されており、認証は不要です。
権限: public
curl https://privatusanalytics.com/plans.json
ヘルプとフィードバック
POST
/help.json
Privatus Analytics チームに質問やフィードバックを送信
support_message_send
メッセージは、アカウント、ワークスペース、プランの詳細を添えてチームにメールで届きます。返信と受領確認はアカウントのメールアドレスに送られます。1日10件まで。
権限: member
curl -X POST https://privatusanalytics.com/help.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
ボット検出
GET
/sites/:site_id/bot-detection.json
高度なボット検出のレポート: サイトのハニーポットページへのヒットを、ページ別とボットを見抜いた手がかり別に表示します
bot_detection_report
サイトのハニーポットページへのヒットをレポートします。ハニーポットページとは、非表示のリンクからのみ到達でき、アプリの高度なボット検出ページで案内されるとおりに設定されたページです。これらのヒットはボットによるものであるため、ページビューや訪問にはならず、stats_overview や stats_breakdown にも表示されません。範囲は period(7d、30d(既定)、90d、12mo)で選びます。ヒットは12か月間保持されます。結果には、period、from(範囲の開始)、has_data(最初のヒットまでは false)、totals(hits、異なるページの数、automated(トラッカーが自動化されたブラウザを検出したヒット)、no_interaction(ポインター、キー、タッチの入力がないヒット))、pages(最大50行で、path、hits、last_hit_at)、reasons(標準のボットフィルターの結果ごとのヒット数:known_bot、automation、datacenter、empty_user_agent、referrer_spam。フィルターが人としてカウントしたはずのヒットは undetected)、recent(最新の50件のヒットで、occurred_at、path、country、browser、device、bot_reason、automation、interacted)が含まれます。各ヒットには、IPアドレスもUser-Agentも保持されず、それらの鍵付きハッシュのみが保持されます。鍵付きハッシュからは誰も特定できず、返されることもありません。analytics.read と、ProプランまたはBusinessプラン以上が必要です(それ以外は 402 plan_limit)。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/bot-detection.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
メモ
POST
/sites/:site_id/notes.json
サイトにメモを追加(リリースのwebhookには source "deploy" を使用)
notes_create
1つのサイトのグラフに、ローンチ、キャンペーン、リリースなどの注釈を追加します。すべてのサイトに表示されるノートには、代わりに workspace_notes_create を使ってください。date の既定はサイトのタイムゾーンでの今日で、end_date は期間を示します(YYYY-MM-DD)。title はグラフに表示され、body はプレーンテキストで、url はPRや変更履歴を指せます。color は neutral、brand、blue、amber、red、violet のいずれかで、既定は neutral です。source の既定は manual です。デプロイ連携は source に deploy を送信し、その場合 title の既定は version(リリースバージョンまたはコミット)から作られたテキストになり、color の既定は blue になります。content.write が必要です。作成されたノートを返します(フィールドは notes_list を参照)。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/notes.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/notes/:id.json
メモを削除
notes_delete
サイトのノートを完全に削除します。グラフから消え、復元できません。ノートはこのサイトに属している必要があり、ワークスペース全体のノートは workspace_notes_delete で削除します。id(note_...)は notes_list から取得します。content.write が必要です。削除したノートを返します。
権限: content.write
curl -X DELETE https://privatusanalytics.com/sites/:site_id/notes/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/notes.json
サイトのメモを一覧表示(ワークスペース全体のメモを含む)
notes_list
サイトのグラフに表示される注釈(ノート)を、日付の新しい順にページ分割して一覧表示します。サイト自身のノートに加えて、すべてのサイトに適用されるワークスペース全体のノートを返します。from と to(YYYY-MM-DD で、ノートの日付が範囲内にあると一致)、source(manual、deploy、system、import、incident)、query(title、body、url の大文字小文字を区別しない検索)で絞り込めます。すべてのサイトにまたがるワークスペースのビューには workspace_notes_list を使ってください。各ノートには、id(note_...)、site_id(公開サイトID pa_...。ワークスペース全体のノートでは null)、date、end_date(1日の場合は null)、title、body(null 可のプレーンテキスト)、url(null 可)、color(neutral、brand、blue、amber、red、violet)、source、created_at が含まれます。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/notes.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/notes/:id.json
メモを取得
notes_get
サイトの1つのノートを、ID(notes_list から取得する note_...)で返します。サイトに適用されるワークスペース全体のノートも含まれます。ノートは、グラフに表示される日付付きの注釈で、たとえば、ローンチ、キャンペーン、デプロイなどです。フィールドは、id、site_id(ワークスペース全体の場合は null)、date と end_date(YYYY-MM-DD で、1日の場合 end_date は null)、title、body(null 可)、url(null 可)、color(neutral、brand、blue、amber、red、violet)、source(manual、deploy、system、import、incident)、created_at です。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/notes/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/notes/:id.json
メモを編集
notes_update
サイトのノートを編集し、送信したフィールド(date、end_date、title、body、url、color)のみを変更します。source は変更できません。url を空にして送信するとリンクが削除され、date に null を指定した場合は無視されます。ノートはこのサイトに属している必要があり、ワークスペース全体のノートは workspace_notes_update で編集します。id(note_...)は notes_list から取得します。content.write が必要です。更新後のノートを返します。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/notes/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/notes.json
ワークスペース全体のメモを追加(すべてのサイトに表示)
workspace_notes_create
ワークスペース内のすべてのサイトのグラフに表示される、ワークスペース全体の注釈を追加します。たとえば、全社的なローンチや障害です。サイトなしで作成されます(site_id は null)。1つのサイトのノートには notes_create を使ってください。date の既定はワークスペースのタイムゾーンでの今日で、end_date は期間を示し(YYYY-MM-DD)、color は neutral、brand、blue、amber、red、violet のいずれかです。content.write が必要で、一部のサイトに限定された呼び出し元は、ワークスペース全体のノートを作成できません。作成されたノートを返します。
権限: content.write
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/notes.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/workspaces/:workspace_id/notes/:id.json
ワークスペースのメモを削除
workspace_notes_delete
ワークスペース全体のノートを完全に削除します。すべてのサイトのグラフから消え、復元できません。ここで削除できるのはサイトのないノートのみで、サイトのノートには notes_delete を使ってください。id(note_...)は workspace_notes_list から取得します。content.write が必要で、一部のサイトに限定された呼び出し元は、ワークスペース全体のノートを削除できません。削除したノートを返します。
権限: content.write
curl -X DELETE https://privatusanalytics.com/workspaces/:workspace_id/notes/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/notes.json
ワークスペース全体のメモを一覧表示
workspace_notes_list
ワークスペース全体の注釈を、日付の新しい順にページ分割して一覧表示します。ワークスペース全体のノート(すべてのサイトに表示)と、呼び出し元がアクセスできるすべてのサイトのノートを返すため、各項目の site_id を確認してください(null はワークスペース全体を意味します)。1つのサイトには notes_list を使ってください。from と to(YYYY-MM-DD)、source(manual、deploy、system、import、incident)、query(title、body、url を検索)で絞り込めます。フィールドは、id(note_...)、site_id、date、end_date、title、body、url、color(neutral、brand、blue、amber、red、violet)、source、created_at です。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/workspaces/:workspace_id/notes.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/workspaces/:workspace_id/notes/:id.json
ワークスペースのメモを編集
workspace_notes_update
ワークスペース全体のノートを編集し、送信したフィールド(date、end_date、title、body、url、color)のみを変更します。ここで編集できるのはサイトのないノートのみで、サイトのノートには notes_update を使ってください。id(note_...)は workspace_notes_list から取得します。content.write が必要で、一部のサイトに限定された呼び出し元は、ワークスペース全体のノートを編集できません。更新後のノートを返します。
権限: content.write
curl -X PATCH https://privatusanalytics.com/workspaces/:workspace_id/notes/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
メンバー
POST
/workspaces/:workspace_id/invitations.json
メールで招待
invitations_create
1人以上をメールでワークスペースに招待し、14日間有効なリンクを含む招待メールを、それぞれに送信します。emails は最大50件のアドレスのリストです(アプリのフォームでは、カンマ、スペース、セミコロン区切りの文字列も使えます)。すでにメンバーのアドレスはスキップされますが、すべてがメンバーの場合はエラーになります。すでに保留中の招待があるアドレスを招待すると、その招待が置き換えられ、新しいメールが送信されます。role は members_list にあるロールのいずれかです(既定は viewer で、owner は招待できません)。role に custom を使う場合は、custom_role_id(roles_list の id。Businessプラン)も一緒に指定します。既定では、アクセスは今後のものを含むすべてのサイトに及びます。アクセスを制限するには、all_sites を false に設定し、site_ids を公開サイトID(pa_...)として一覧にします。保留中の招待は、プランのメンバー数の上限にカウントされ(Freeは3メンバーまで)、上限を超える場合は呼び出しが失敗します。招待メールにはレート制限があります。自分より多くの権限やサイトを持つロールは付与できません。members.manage が必要です。作成された招待を返します(フィールドは invitations_list を参照)。
権限: members.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/invitations.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/workspaces/:workspace_id/invitations/:id.json
保留中の招待を取り消す
invitations_delete
保留中の招待を取り消し、そのリンクを機能しなくし、確保されていた席を解放します。削除は元に戻せないため、再び招待するには invitations_create を使ってください。id(uuid)は invitations_list から取得します。一部のサイトに限定された呼び出し元は、自分のサイトを超えるアクセスを付与しない招待のみを取り消せます。members.manage が必要です。取り消した招待を返します。
権限: members.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/workspaces/:workspace_id/invitations/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/invitations.json
保留中の招待を一覧表示
invitations_list
ワークスペースの保留中のチーム招待を、新しい順にページ分割して一覧表示します。承諾済みと取り消し済みの招待は表示されません(参加した人には members_list を使用)。期限切れのものは、置き換えられるか取り消されるまで残ります。members.manage が必要です。一部のサイトに限定された呼び出し元には、権限の範囲内の招待のみが表示されます。各項目には、id(uuid。invitations_delete で使用)、email、role、custom_role(role が custom の場合はカスタムロールの名前で、それ以外は null)、all_sites、site_ids(公開サイトID pa_...。all_sites が true の場合は空)、invited_by(招待した人のメールアドレス)、expires_at、created_at が含まれます。
権限: members.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/invitations.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
DELETE
/workspaces/:workspace_id/members/:id.json
メンバーを削除(またはワークスペースから退出)
members_delete
ワークスペースからメンバーを削除します。id が自分自身のメンバーシップの場合は、呼び出した人がワークスペースから退出します。これは即座に行われ、元に戻せません。その人はアクセスを失い、このワークスペースのAPIトークンは無効化され、SCIMのリンクは削除されます。その人のノートと過去の監査エントリは残ります。オーナーは削除も退出もできません。先に ownership_transfers_create でオーナー権限を移譲してください。他の人を削除するには members.manage が必要で、自分より多くの権限やサイトを持つ人は削除できません。退出には権限は不要ですが、権限やサイトが制限されたトークンでは退出できません。その人は、後から invitations_create で再び招待できます。id(メンバーシップの uuid)は members_list から取得します。削除したメンバーを返します。
権限: member
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/workspaces/:workspace_id/members/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/members.json
ワークスペースのメンバーを一覧表示
members_list
ワークスペースのメンバーを、参加した順にページ分割して一覧表示します。名前またはメールアドレスで検索するには query(部分一致で、大文字小文字を区別しない)を、ロールで絞り込むには role を使います。保留中の招待は含まれません(invitations_list を使用)。各メンバーには、id(メンバーシップの uuid。members_update、members_delete、ownership_transfers_create で使用)、email、name(null 可)、role、custom_role(名前で、role が custom でない場合は null)、custom_role_id、all_sites、include_future_sites、site_ids(公開サイトID pa_...。all_sites が true の場合は空)、two_factor(メンバーが認証アプリまたはパスキーを持っているか)、last_active_at(null 可)、created_at が含まれます。一部のサイトに限定された呼び出し元には、権限の範囲内のメンバーのみが表示されます。
権限: member
curl https://privatusanalytics.com/workspaces/:workspace_id/members.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/workspaces/:workspace_id/members/:id.json
メンバーのロールまたはサイトへのアクセス権を変更
members_update
ワークスペースでのメンバーのロールやサイトアクセス(またはその両方)を変更します。送信した項目のみが変更されます。ロールを変更するには role を送信します(admin、editor、analyst、viewer、billing、およびBusinessプランでは roles_list の custom_role_id を指定した custom)。オーナーのロールはここでは変更できないため、代わりに ownership_transfers_create を使ってください。また、自分自身のメンバーシップや、自分より上位の人は編集できません。サイトを制限するには、all_sites を false にして site_ids(公開サイトID pa_...)を送信し、後から作成されるサイトにもアクセスを付与するには、include_future_sites を true にします。すべてのサイトへのアクセスを与えるには、all_sites を true にして送信します。現在すべてのサイトを持っているメンバーに、all_sites を false にせずに site_ids のリストを送信すると、エラーになります。自分が持っている以上の権限やサイトは付与できません。members.manage が必要です。id は members_list から取得します。更新後のメンバーを返します。
権限: members.manage
· HTTPのみ(MCPツールではありません)
curl -X PATCH https://privatusanalytics.com/workspaces/:workspace_id/members/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/ownership_transfer.json
ワークスペースの所有権を別のメンバーに移管(オーナーのみ。あなたは管理者になります)
ownership_transfers_create
ワークスペースのオーナー権限を別のメンバーに移譲し、呼び出した人を admin に降格します。新しいオーナーだけが元に戻せるため、取り消しは困難です。現在のオーナーだけが呼び出せ、トークンは特定のサイトや権限に限定されていてはいけません。membership_id は、members_list から取得する、新しいオーナーのメンバーシップの uuid です(ユーザーIDやメールアドレスではありません)。その人はすでにメンバーである必要があり、そうでない場合は先に招待してください。新しいオーナーには、すべてのサイトへのアクセスを持つ owner ロールが付与され、owner ロールは members_update では付与できません。別のFreeワークスペースをすでに所有している人に、Freeワークスペースを譲渡することはできません。請求はワークスペースに残ります。これを呼び出すトークンには members.manage が必要です。新しいオーナーのメンバーレコードを返します。
権限: member
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/ownership_transfer.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
メールレポート
DELETE
/recipients/:id.json
メールレポートから受信者を削除
email_report_recipients_delete
メールレポートから1つのアドレスを削除します(email_report_recipients_list から取得する、受信者の id)。そのアドレスはレポートを受け取らなくなり、その行は削除されます。そのアドレスが自分で配信停止していた場合、オプトアウトの記録は残るため、削除しても、誰かが再びそのアドレスを招待できるようにはなりません。多数のアドレスを一度に変更するには、代わりに email_reports_update で完全なリストを送信してください。削除した受信者を返します。
権限: content.write
curl -X DELETE https://privatusanalytics.com/recipients/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/reports/:report_id/recipients.json
メールレポートの受信者とそのステータスを一覧表示
email_report_recipients_list
ステータス: active(レポートを受信)、pending(招待済み、未承諾)、declined、unsubscribed。アドレスの追加や削除は、レポートの受信者リストから行います。
権限: analytics.read
curl https://privatusanalytics.com/reports/:report_id/recipients.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/recipients/:id/resend.json
保留中のレポート招待を再送信
email_report_recipients_resend
新しいリンクで招待を再送信します。レポートごと、アドレスごとに7日に1回まで可能です。
権限: content.write
curl -X POST https://privatusanalytics.com/recipients/:id/resend.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/reports.json
メールレポートを作成
email_reports_create
1つ以上のサイトを対象とした、スケジュール配信のアナリティクスメールレポートを作成します(パスには workspace_id を指定)。name と site_ids(pa_... のID)は必須です。frequency は daily、weekly(既定。平日に送信)、monthly(月の1日)のいずれかで、hour はワークスペースのタイムゾーンでの0から23の時刻(既定は8)、weekday は日曜日の0から土曜日の6(既定は1で、weekly のレポートでのみ使用)です。blocks は、kpis、chart、pages、sources、goals、campaigns、vitals、uptime、testimonials、subscriptions から内容を選びます(既定は kpis、chart、pages、sources、goals、testimonials、subscriptions)。subscriptions は、決済プロバイダーが接続されているサイトについて、その期間のMRRとその増減の要因を表示します。recipients はメールアドレスのリストです(最大50件)。ワークスペースのメンバーはただちに有効になり、それ以外のアドレスは保留中となって招待メールが送信され、承諾した後にのみレポートを受け取ります。オプトアウトしたアドレスは拒否されます。recipients を省略すると、呼び出したユーザーが追加されます。有効なレポートには、少なくとも1人の受信者が必要です。Freeプランでは3件のレポートが許可され、有料プランは無制限です。next_run_at を含むレポートを返します。プレビューするには email_reports_send_test を使ってください。
権限: content.write
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/reports.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/reports/:id/deliveries.json
メールレポートの配信ログ
email_reports_deliveries
1つのメールレポートの送信ログを、新しい順にページ分割して一覧表示します。各エントリには、status(スケジュール送信は sent、その他に test、failed、skipped)、recipients_count、error(失敗の理由で、それ以外は null)、sent_at が含まれます。status で絞り込めます。スケジュールされたレポートが送信されたかを確認したり、失敗の理由を調べたりするために使ってください。テストメールを送信するには email_reports_send_test を使います。
権限: analytics.read
curl https://privatusanalytics.com/reports/:id/deliveries.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
DELETE
/reports/:id.json
メールレポートを削除
email_reports_delete
メールレポートを、その受信者と配信ログとともに完全に削除します。この操作は元に戻せず、以後メールは送信されません。レポートは残して送信だけを止めるには、enabled を false にして email_reports_update を使ってください。id(rep_...)は email_reports_list から取得します。削除したレポートを返します。
権限: content.write
curl -X DELETE https://privatusanalytics.com/reports/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/reports.json
メールレポートを一覧表示
email_reports_list
ワークスペースのスケジュール配信のメールレポートを、名前順にページ分割して一覧表示します(パスには workspace_id を指定)。各レポートには、id(rep_...)、name、site_ids、frequency、hour、weekday、recipients(レポートのすべてのアドレス)、recipient_details(それぞれの id、email、status、invited_at、expires_at、confirmed_at)、blocks、attach_pdf、intro、enabled、last_sent_at、next_run_at、created_at が含まれます。frequency(daily、weekly、monthly)で絞り込めます。一部のサイトに限定された呼び出し元には、すべてのサイトが自分のものであるレポートのみが表示されます。status が active の受信者だけが、実際にレポートを受け取ります。送信ログには email_reports_deliveries を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/workspaces/:workspace_id/reports.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/reports/:id/send_test.json
メールレポートをテストとして今すぐ送信
email_reports_send_test
スケジュールや last_sent_at を変更せずに、テストとして、レポートを1つのアドレスにただちに送信します。実際のメールが送信されるため、ユーザーがそれを望む場合にのみ使ってください。recipient の既定は呼び出したユーザーで、指定できるのは、呼び出したユーザー、ワークスペースの別のメンバー、またはレポートの有効な受信者のみです。それ以外のアドレスを指定した場合は、代わりに呼び出したユーザーにテストが送られます。テスト送信は、ワークスペースごと、および外部のアドレスごとにレート制限があり、拒否された送信はレート制限エラーを返します。status(test、または失敗の場合は failed で、理由が error に入る)、recipients_count、sent_at を持つ配信を返します。完全なログには email_reports_deliveries を使ってください。
権限: content.write
curl -X POST https://privatusanalytics.com/reports/:id/send_test.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/reports/:id.json
メールレポートを取得
email_reports_get
ID(email_reports_list から取得する rep_...)で、1つのメールレポートを返します。レスポンスには、name、site_ids、frequency、hour、weekday、recipients、各アドレスとそのオプトインの状態を含む recipient_details、blocks、attach_pdf、intro、enabled、last_sent_at、next_run_at(UTCのタイムスタンプ)が含まれます。recipients は、保留中のものを含むすべてのアドレスを一覧にし、recipient_details で status が active のアドレスのみがレポートを受け取ります。送信された内容には email_reports_deliveries を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/reports/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/reports/:id.json
メールレポートを更新
email_reports_update
メールレポート(email_reports_list から取得する id)を変更します。送信した項目のみが変更されます。recipients を送信すると、リスト全体が置き換えられます。外したアドレスは削除され、新しいアドレスには email_reports_create と同じオプトインのルールが適用され(メンバーはただちに有効、それ以外には招待メールが送信)、すでにレポートにあるアドレスは状態が保たれます。frequency、hour、weekday、enabled を変更すると、next_run_at が再計算されます。一時停止するには enabled を false にしてください。オプトインの状態を確認するには email_report_recipients_list を、個別のアドレスを管理するには email_report_recipients_resend または email_report_recipients_delete を使います。
権限: content.write
curl -X PATCH https://privatusanalytics.com/reports/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/reports/invites/:token/accept.json
レポートの招待を承諾
report_invites_accept
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/reports/invites/:token/accept.json \
-H "Content-Type: application/json" -d '{…}'
POST
/reports/invites/:token/decline.json
レポートの招待を辞退
report_invites_decline
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/reports/invites/:token/decline.json \
-H "Content-Type: application/json" -d '{…}'
POST
/reports/resubscribe/:token.json
配信停止後にレポートの受信を再開
report_resubscribes_confirm
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/reports/resubscribe/:token.json \
-H "Content-Type: application/json" -d '{…}'
POST
/reports/unsubscribe/:token/resubscribe.json
レポートの受信を再開するためのリンクをアドレスにメールで送信
report_resubscribes_create
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/reports/unsubscribe/:token/resubscribe.json \
-H "Content-Type: application/json" -d '{…}'
POST
/reports/unsubscribe/:token.json
メールレポートの配信停止をアドレス単位で登録
report_unsubscribes_create
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/reports/unsubscribe/:token.json \
-H "Content-Type: application/json" -d '{…}'
メール設定
POST
/email/preferences/:token/unsubscribe.json
メール設定リンクのトークンを使って、オフにできるアドレスあてのメールをすべて止めます
email_preferences_unsubscribe_all
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/email/preferences/:token/unsubscribe.json \
-H "Content-Type: application/json" -d '{…}'
POST
/email/preferences/:token.json
メール設定リンクのトークンを使って、アドレスへのメールをオフまたはオンにします
email_preferences_update
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/email/preferences/:token.json \
-H "Content-Type: application/json" -d '{…}'
モバイルアプリ
GET
/workspaces/:workspace_id/app.json
モバイルアプリがワークスペースを開くのに必要な情報を取得する
mobile_bootstraps_get
1 つのワークスペース (パスは workspace_id を取ります) について、呼び出し元のロールと権限、features (プランに含まれる制限付きレポート: traffic_quality、bot_detection、external_experiments、campaign_costs、status_pages、traffic_rules、experiment_advanced (実験の詳細設定)、survey_ai_themes (アンケートの自由記述回答のテーマ) を true または false で示し、retention_months は月数、無制限の場合は null)、sites_count (呼び出し元が開けるサイトの数)、min_app_version (API がまだ対応している最も古いモバイルアプリのバージョン) を返します。モバイルアプリはワークスペースを開くときに一度だけ読み込むので、プランにないレポートを要求せずに「含まれていません」と表示できます。analytics.read が必要です。
権限: analytics.read
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/workspaces/:workspace_id/app.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
DELETE
/account/device.json
モバイルアプリへのプッシュ通知を停止する
mobile_devices_delete
呼び出し元のモバイルアプリログインのプッシュ登録を削除し、デバイスにプッシュが届かなくなります。ログイン自体は残り、アプリは再登録できます。ログアウト (リフレッシュトークンを付けた POST /oauth/revoke) でも削除されます。呼び出せるのはモバイルアプリのトークンだけです。
権限: member
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/account/device.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/account/device.json
モバイルアプリのプッシュ登録を取得する
mobile_devices_get
呼び出し元のモバイルアプリログインのデバイスを返します: registered (アプリがプッシュトークンを登録するまでは false)、platform、locale、timezone、app_version、kinds (プッシュの全種類)、muted_kinds、muted_site_ids (本人がオフにしたもの)。呼び出せるのはモバイルアプリのトークンだけです。
権限: member
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/account/device.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/account/device.json
モバイルアプリをプッシュ通知に登録する
mobile_devices_update
呼び出し元のモバイルアプリログインのデバイスをプッシュ通知に登録するか、受信する内容を変更します。送信した入力だけが変更されます。最初の呼び出しには platform と push_token が必要です。デバイスには、メンバーが開けるすべてのサイトについて、どのプランでも、uptime (チェックがダウンした、または復旧した)、alert (アラートが発動した、または解決した)、site_audit (サイト監査が完了した)、experiment (実験に結果が出た、または終了した)、usage (月間の利用枠がほぼ、または完全に使われた) のプッシュが届きます。muted_kinds と muted_site_ids は種類とサイトをオフにし、それぞれリスト全体を置き換えます。アプリの別のログインが持つプッシュトークンを登録すると、そのトークンはこのログインに移ります。呼び出せるのはモバイルアプリのトークンだけです。このトークンが行える 2 つの書き込みのうちの 1 つです。
権限: member
· HTTPのみ(MCPツールではありません)
curl -X PATCH https://privatusanalytics.com/account/device.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
ライブ
GET
/sites/:site_id/live.json
ライブ訪問者、アクティビティストリーム、今人気のもの(直近30分)
live_get
サイトで今まさに起きていることです。live_visitors(直近5分間の訪問者)、window_minutes(30)、sparkline(直近30分間の、1分ごとの訪問数で、古い順。それぞれ {minute, visits})、feed(最新のアクティビティ)、top_pages、top_referrers、top_countries(それぞれ {value, visits} の最大8行)、top_events(最大8件の {value, completions})を、直近30分間について返します。feed のエントリには、occurred_at、kind、name、path、channel、referrer_host、country、device、browser が含まれます。これらは匿名で、IP、市区町村、訪問者の行動履歴は含まれません。feed は、既定ではすべてのヒットを表示し、ページビューまたはイベントのみにもでき、limit 件のエントリ(既定は50、バッファサイズの100まで)を返します。数値はキャッシュされず、period は受け付けません。filters(stats_aggregate と同じ形式)を渡すと、すべての数値とフィードを一致するヒットに絞り込みます。複数サイトのコンパクトなビューには live_wallboard を、期間全体には stats_overview を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/live.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/live/wallboard.json
1つ以上のサイトのウォールボードカード(ライブと今日)
live_wallboard
オフィスの画面向けに作られた、1つ以上のサイトのコンパクトな大きな数字のカードです。rotate_seconds、generated_at、sites を返します。各サイトのカードには、id(pa_...)、name、domain、live_visitors(直近5分間)、sparkline(直近30分間の、1分ごと)、visitors_today、pageviews_today、bounce_rate_today(パーセント、0から100)、top_pages、top_countries、top_referrers(それぞれ5行)が含まれます。今日とはサイト自身のタイムゾーンでの今日を意味し、数値はライブデータから読み取られます。site_ids には、含めるサイトを一覧にします(最大12件で、トークンで開けるサイトのみ)。指定しない場合は、パスのサイトが使われます。rotate_seconds は5から300の範囲に丸められ、画面に各カードをどれくらいの長さ表示するかを伝えるだけです。共有できる公開画面には wallboard_links_create を使ってください。1つのサイトの完全なライブビューには live_get を使います。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/live/wallboard.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/wallboard/:token.json
ウォールボードトークンによるウォールボード(ログイン不要)
live_public_wallboard
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/wallboard/:token.json
POST
/sites/:site_id/live/wallboard/links.json
ウォールボードリンクを作成(読み取り専用、無効化可能)
wallboard_links_create
URLを持っている人なら誰でも、ログインせずに開ける、読み取り専用のウォールボードURLを作成します。これらの数値を見るべき人とだけ共有してください。パスには site_id を指定し、このサイトは常に含まれます。site_ids は、切り替えて表示するサイトを追加します(アクセスできる pa_... のIDで、合計最大12サイト)。rotate_seconds は、各サイトを画面に表示する時間で、5から300です(既定は20で、範囲外の値は丸められます)。expires_at はISO 8601の日時、または YYYY-MM-DD の日付のみで、これはサイトのタイムゾーンでのその日の終わりを意味します。ウォールボードには、ライブと今日の集計値のみが表示されます。url を含むリンクを返します。無効化するには wallboard_links_delete を使ってください。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/live/wallboard/links.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/live/wallboard/links/:id.json
ウォールボードリンクを無効化
wallboard_links_delete
ウォールボードのリンクを無効化します。それを表示しているテレビは更新されなくなり、URLは機能しなくなります。この操作は元に戻せないため、代わりに新しいリンクを作成してください。すでに無効化されたリンクを無効化しても、何も起きません。id(shr_...)は wallboard_links_list から取得します。revoked_at が設定されたリンクを返します。
権限: sites.manage
curl -X DELETE https://privatusanalytics.com/sites/:site_id/live/wallboard/links/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/live/wallboard/links.json
サイトのウォールボードリンクを一覧表示
wallboard_links_list
サイトのウォールボードのリンクを、無効化されたものも含めて、新しい順に一覧表示します(パスには site_id を指定)。ウォールボードのリンクは、ログインなしで、テレビにライブの訪問者と今日の数値を表示する、秘密のURLです。それぞれに、id(shr_...)、name、url、site_ids(切り替えて表示するサイトの pa_... のID)、rotate_seconds、expires_at、revoked_at(無効化されると設定)、created_at があります。一部のサイトに限定された呼び出し元には、すべてのサイトが自分のものであるリンクのみが表示されます。ウォールボードのデータ自体には live_wallboard を使ってください。sites.manage 権限が必要です。
権限: sites.manage
curl https://privatusanalytics.com/sites/:site_id/live/wallboard/links.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
ロール
POST
/workspaces/:workspace_id/roles.json
カスタムロールを作成
roles_create
カスタムロールを作成します。これは、invitations_create または members_update で、role に custom、ロールの id を custom_role_id として指定することで、メンバーに付与できる、名前付きの権限のセットです。Businessプランと members.manage が必要です。permissions には、許可された値(analytics.read、analytics.export、content.write、sites.manage、uptime.manage、members.manage、tokens.manage、billing.manage、workspace.manage)から、少なくとも1つの名前を指定する必要があり、自分が持っていない権限は含められません。ロールを返します(フィールドは roles_list を参照)。
権限: members.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/roles.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/workspaces/:workspace_id/roles/:id.json
カスタムロールを削除(未使用である必要があります)
roles_delete
カスタムロールを削除します。この操作は元に戻せず、メンバーや保留中の招待がまだそのロールを使っている間は失敗します。先に members_update で、それらの人を別のロールに移してください(members_list で見つけられます)。組み込みのロールは削除できません。id(uuid)は roles_list から取得します。members.manage が必要です。削除したロールを返します。
権限: members.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/workspaces/:workspace_id/roles/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/roles.json
カスタムロールを一覧表示
roles_list
ワークスペースのカスタムロールを名前順に一覧表示します。カスタムロールはBusinessプランの機能で、権限を独自の名前でまとめます。組み込みのロール(owner、admin、editor、analyst、viewer、billing)はここには表示されません。各ロールには、id(uuid。invitations_create と members_update で custom_role_id として使用)、name、permissions(analytics.read、content.write、members.manage などの名前)、members(それを持つメンバーの数)、created_at が含まれます。一部のサイトに限定された呼び出し元には、権限の範囲内のロールのみが表示されます。
権限: member
curl https://privatusanalytics.com/workspaces/:workspace_id/roles.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/workspaces/:workspace_id/roles/:id.json
カスタムロールを更新
roles_update
カスタムロールの名前を変更するか、権限のリスト全体を置き換えます(または両方)。送信した項目のみが変更され、permissions は既存のリストに追加するのではなく置き換えます。変更は、そのロールを持つすべてのメンバーと保留中の招待に、ただちに適用されます。編集できるのは、権限をすべて持っているロールのみで、一部のサイトに限定された呼び出し元は、そのロールの保持者のすべてのサイトに対する権限が必要です。members.manage が必要です。id(uuid)は roles_list から取得します。更新後のロールを返します。
権限: members.manage
· HTTPのみ(MCPツールではありません)
curl -X PATCH https://privatusanalytics.com/workspaces/:workspace_id/roles/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
ワークスペース
GET
/workspaces/:workspace_id/white_label.json
ホワイトラベルのブランドを取得
white_label_get
ワークスペースのホワイトラベルのブランディングを返します。フィールドは、workspace_id(ws_...)、brand_name、brand_logo_url、brand_color(#06755b のような16進数のカラー。未設定の場合はそれぞれ null)、hide_branding、available(プランにホワイトラベルが含まれる場合は true。Business以上)、active(ブランディングが設定されて有効な場合は true)です。ブランディングは、共有ダッシュボード、埋め込み、ステータスページ、メールレポートで、Privatus Analyticsに置き換わります。workspace.manage が必要です。
権限: workspace.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/white_label.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/workspaces/:workspace_id/white_label.json
共有ダッシュボードとメールレポート用のホワイトラベルのブランドを設定(Business)
white_label_update
ワークスペースのホワイトラベルのブランディングを設定します。Businessプランのみで、それ以外の場合はプランエラーで失敗します。送信した項目のみが変更され、空文字列は brand_name、brand_logo_url、brand_color をクリアします。brand_logo_url は画像への https のURLで、brand_color は #06755b のような16進数のカラーでなければなりません。hide_branding を true にすると、共有ダッシュボード、埋め込み、ステータスページからPrivatus Analyticsのリンクが、メールレポートからロゴが削除されます。変更は、既存の共有リンクにただちに適用されます。workspace.manage が必要です。ブランディングを返します(white_label_get を参照)。
権限: workspace.manage
curl -X PATCH https://privatusanalytics.com/workspaces/:workspace_id/white_label.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/security.json
ワークスペースのセキュリティ設定を取得
workspace_security_get
ワークスペースのセキュリティポリシーを返します。フィールドは、workspace_id(ws_...)、enforce_2fa(メンバーは二要素認証を使う必要がある)、login_methods(許可されている方法で、password、magic_link、passkey、google、github、sso から)、session_ttl_hours(この時間数の後にサインアウト。制限がない場合は null)、app_ip_allowlist(アプリとAPIの使用が許可されたIPまたはCIDR範囲で、空はどこからでも可)、support_access_until(Privatus Analyticsのサポートがワークスペースを閲覧できるISO 8601の時刻で、アクセスが付与されていない場合は null)です。workspace.manage が必要です。
権限: workspace.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/security.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/workspaces/:workspace_id/security.json
ワークスペースのセキュリティ設定を更新(2FA、ログイン方法、セッションの有効期間、IP許可リスト、サポートアクセス)
workspace_security_update
ワークスペースのセキュリティポリシーを変更します。送信した項目のみが変更されます。enforce_2fa を true にすると、すべてのメンバーに二要素認証が必須になり、Businessプランが必要です。login_methods は、許可されたリストを、password、magic_link、passkey、google、github、sso の値で置き換え、方法を削除すると、メンバーの記憶されたログインがサインアウトされるため、再度ログインする必要があります。session_ttl_hours は、その時間数の後にメンバーをサインアウトさせます(0で制限がなくなる)。app_ip_allowlist は、アプリとAPIへのアクセスが許可されたIPまたはCIDR範囲のリストを置き換え(Businessプラン。空のリストはどこからでも可)、呼び出した人のIPを除外してしまう場合は拒否されるため、自分が締め出されることはありません。support_access を true にすると、Privatus Analyticsのサポートが7日間ワークスペースを閲覧でき、false にするとそのアクセスが取り消されます。workspace.manage が必要です。ポリシーを返します(workspace_security_get を参照)。
権限: workspace.manage
· HTTPのみ(MCPツールではありません)
curl -X PATCH https://privatusanalytics.com/workspaces/:workspace_id/security.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces.json
ワークスペースを作成(あなたがオーナーになります)
workspaces_create
権限: member
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/workspaces/:id.json
ワークスペースとそのすべてのサイトを削除(オーナーのみ。サブスクリプションも解約されます)
workspaces_delete
ワークスペースを、そのすべてのサイトとともに削除します。これは論理削除で、すべてがただちに消え、7日後に完全に消去されるため、元に戻せないものとして扱ってください。オーナーだけが実行でき、confirm は、ワークスペースの正確な名前でなければなりません(大文字小文字を区別します)。有効な有料サブスクリプションは、先にただちにキャンセルされ、そのキャンセルが失敗した場合は、何も削除されません。ワークスペースからの保留中のサイト移管はキャンセルされます。メンバーはアクセスを失います。名前を読み取るには workspaces_get を使ってください。workspace.manage と owner ロールが必要です。ワークスペースを返します。
権限: workspace.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/workspaces/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces.json
あなたのワークスペースを一覧表示
workspaces_list
呼び出した人が所属するワークスペースを、名前順に一覧表示します。APIトークンやMCP接続には、それが発行された1つのワークスペースのみが表示されます。各項目には、id(ws_...。ほとんどのツールで workspace_id として使用)、name、timezone、currency、plan、plan_events、subscription_status、role(呼び出した人のロール)が含まれます。次に、ワークスペースIDを指定して sites_list を呼び出し、サイトIDを見つけてください。ワークスペースの作成は、アプリ内でのみ可能です。
権限: member
curl https://privatusanalytics.com/workspaces.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/workspaces/:id.json
ワークスペースを取得
workspaces_get
1つのワークスペースを、公開ID(workspaces_list から取得する ws_...)で返します。フィールドは、id、name、timezone(IANA名)、currency(ISO 4217)、plan(free、pro、business、enterprise)、plan_events(プランの月間イベント許容量)、subscription_status(none、trialing、active、past_due、paused、canceled)、role(その中での呼び出した人のロール)、created_at です。請求の詳細は billing_get を、今月の使用量は billing_usage を使ってください。どのメンバーでも読み取れます。
権限: member
curl https://privatusanalytics.com/workspaces/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/workspaces/:id.json
ワークスペース設定を更新
workspaces_update
ワークスペースの名前、既定のタイムゾーン、既定の通貨を変更します。送信した項目のみが変更されます。timezone は Europe/Berlin のようなIANA名で、currency は3文字のISO 4217コードです。これらは新しいサイトの既定値で、既存のサイトは変更されません(それらには sites_update を使用)。workspace.manage が必要です。ワークスペースを返します(workspaces_get を参照)。
権限: workspace.manage
curl -X PATCH https://privatusanalytics.com/workspaces/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
共有
GET
/badge/:site_id.json
公開サイト用の訪問者カウンターバッジ(SVG)
badges_get
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/badge/:site_id.json
削除リクエスト
POST
/sites/:site_id/testimonials/removal_requests/:id/dismiss.json
削除リクエストを却下
testimonial_removal_requests_dismiss
メモを添えてリクエストを閉じ、お客様の声は表示されたままにします。何も削除されず、依頼した人にメールも送信されません。メモは必須です。すでに判断済みのリクエストは422で応答します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/removal_requests/:id/dismiss.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/removal_requests.json
サイトの削除リクエストを一覧表示
testimonial_removal_requests_list
別のステータスを指定しない限り、未処理のリクエストです。投稿者が入力したメールアドレスは、コンテンツを変更できる呼び出し元にのみ返されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/removal_requests.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/removal_requests/:id/resolve.json
削除リクエストに判断を下す
testimonial_removal_requests_resolve
trashはお客様の声をごみ箱に移動し、すべてのウィジェット、ウォール、公開ページから即座に外れ、30日間は元に戻せます。dismissは表示を続け、メモが必要です。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/removal_requests/:id/resolve.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/removal_requests/:id.json
削除リクエストを1件取得
testimonial_removal_requests_get
1件のリクエストを、対象のお客様の声、その人が残したメモ、入力されたメールアドレスがお客様の声のメールアドレスと一致するか、依頼された回数、判断が出ている場合はその判断とともに返します。メールアドレス自体は、content.writeを持つ呼び出し元にのみ返されます。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/removal_requests/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
収集
POST
/embed/ads/e.json
クリエイティブが表示、視認、クリックされたことを記録(広告ローダーが呼び出します)
ad_serving_event
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/embed/ads/e.json \
-H "Content-Type: application/json" -d '{…}'
GET
/embed/ads/:site.json
サイトの広告スロットと各スロットが表示するクリエイティブ(広告ローダーが呼び出します)
ad_serving_slots
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/embed/ads/:site.json
POST
/api/overlay.json
1つのページのクリックをページ上に表示するためのデータです。pa.overlay.js がパスを付けて呼び出します
click_overlays_read
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/api/overlay.json \
-H "Content-Type: application/json" -d '{…}'
POST
/api/logs.json
AIクローラーのレポート用にサーバーアクセスログを送信(JSON {lines: [...]} または combined 形式のログテキスト。サイトのクローラーログキーをBearerトークンとして使用)
crawler_logs_create
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/api/logs.json \
-H "Content-Type: application/json" -d '{…}'
POST
/api/event.json
ブラウザのヒットを収集(/js/pa.js が使用)
ingest_event
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/api/event.json \
-H "Content-Type: application/json" -d '{…}'
GET
/api/experiment.json
実験がこの訪問者をバリアントのページに送るかどうか。実験のheadスクリプトから呼び出されます
ingest_experiment
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/api/experiment.json
GET
/js/exp/:site.json
サイト用の任意の実験headタグが読み込むスクリプト
ingest_experiment_script
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/js/exp/:site.json
POST
/api/survey.json
アンケートカードの表示、閉じる操作、回答を記録
ingest_survey
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/api/survey.json \
-H "Content-Type: application/json" -d '{…}'
GET
/api/surveys.json
ページに表示するアンケート。トラッカーのaskモジュールが呼び出します
ingest_surveys
権限: public
· HTTPのみ(MCPツールではありません)
curl https://privatusanalytics.com/api/surveys.json
実験
POST
/sites/:site_id/experiments.json
下書きとして実験を作成
experiments_create
サイトのA/Bテストまたは分割URLテストを作成します。下書きとして保存され、人がアプリで開始するまで訪問者はどこにも送られません。必須は、name、path(元のページ。例: /pricing)、goal_id(goals_list から取得)、variants です。variants は { name, path, weight } のリストで、最初の行が元のページ(その path は無視されます)、他の各行は同じサイトのページです。均等に分ける場合は weight をすべて省略し、そうでない場合は合計が100になる weight を送ってください。Free プランでは、元のページとバリアント1つの実験を同時に1つ実行できます。Pro 以上では、より多くのバリアント、自動配分、ターゲティング、パス内の *、追加ゴール、開始の予約、排他グループが加わります。content.write が必要です。実験を返します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/experiments.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/experiments/:id.json
実験を結果ごと削除
experiments_delete
実験をバリアントと結果ごと完全に削除します。この操作は元に戻せません。結果を残して止めるには experiments_pause を使ってください。MCPツールは実行せず、human_only と、人が削除するページで応答します。content.write が必要です。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/experiments/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/experiments/:id/duplicate.json
実験を新しい下書きとしてコピー
experiments_duplicate
既存の実験と同じページ、割合、ゴール、ルールを持ち、結果は含まない下書きを作成します。すでに開始したテストを変更したいときに使います。新しい実験と同様にプランの上限にカウントされます。content.write が必要です。新しい実験を返します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/experiments/:id/duplicate.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/experiments/:id/end.json
実験を完全に終了
experiments_end
実行中または一時停止中の実験を終了します。再開はできず、結果は保持され、プランの上限にはカウントされなくなります。MCPツールは実行せず、human_only と、人が終了させるページで応答します。APIでは実行されます。content.write が必要です。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/sites/:site_id/experiments/:id/end.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/experiments.json
サイトの実験を一覧表示
experiments_list
サイトのA/Bテストと分割URLテストを新しい順に一覧表示します。status で絞り込めます(draft、scheduled、running、paused、ended、all。デフォルトは all)。page と per_page でページ分割されます(デフォルト25、最大100)。各実験には、id(exp_...)、name、status、path(元のページ)、goal_id、variants(id、name、path、weight、control)、終了のルール、locked(プランが対象外になった場合は true)が含まれます。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/experiments.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/experiments/:id/pause.json
実験を一時停止して結果を保持
experiments_pause
実行中または予約済みの実験を一時停止します。すべての訪問者に直ちに元のページが表示されるようになり、これまでの結果は保持されます。experiments_start で再開できます。content.write が必要です。実験を返します。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/experiments/:id/pause.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/experiments/:id.json
1つの実験を結果付きで取得
experiments_get
実験を id(exp_...、experiments_list から取得)で1件返し、その結果を含めます。結果には、バリアントごとの訪問数、ゴールでのコンバージョン数とコンバージョン率に加え、元のページとの比較として、アップリフト、差の想定範囲、p値、選択した信頼度で有意かどうか、元のページを上回る確率が含まれます。results.progress は、勝者を判定できるまでの進み具合を示します。results.mismatch.found が true の場合、訪問が設定した割合どおりに配分されていないため、結果を信頼しないでください。split は、結果をデバイス、チャンネル、国で内訳表示します(Pro 以上)。humans_only は、ボットスコアで人間の可能性が高いと判定された訪問のみを対象にします(Business)。訪問は、そのバリアントを見たときにそのバリアントとして数えられ、コンバージョンはその後のものだけが数えられます。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/experiments/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/experiments/:id/start.json
実験を開始
experiments_start
下書きまたは一時停止中の実験を開始し、元のページの訪問者がバリアントに送られ始めます。starts_at が未来の場合は、その時刻まで待機します。実際の訪問者をリダイレクトするため、MCPツールは実行せず、human_only と、人が開始するページで応答します。APIでは実行されます。content.write が必要です。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/sites/:site_id/experiments/:id/start.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
PATCH
/sites/:site_id/experiments/:id.json
実験を更新
experiments_update
実験を変更します。送信した入力だけが変更され、variants はリスト全体を置き換えます。実験が開始されると、途中で新しいページ、割合、ゴールを変えると結果が損なわれるため、変更できるのは name と send_to_winner だけになります。その場合は experiments_duplicate を使い、コピーを編集してください。content.write が必要です。実験を返します。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/experiments/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
広告クリエイティブ
POST
/sites/:site_id/experiments/ads/:ad_placement_id/creatives.json
広告枠にクリエイティブを追加
ad_creatives_create
広告枠の比率の画像(サイズ以上。2倍のサイズが最も鮮明です)と、クリック先のアドレスを追加します。画像はmultipartファイルで送るか、image_urlでダウンロードさせます。処理はバックグラウンドで行われるため、stateがreadyになるまでad_creatives_getをポーリングしてください。スケジュール、デバイス、パスはPro以上です。content.writeが必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/experiments/ads/:ad_placement_id/creatives.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/experiments/ads/:ad_placement_id/creatives/:id.json
クリエイティブと画像を削除
ad_creatives_delete
クリエイティブとその画像を完全に削除します。実験で比較されているものは削除できないため、代わりにオフにしてください。MCPツールは実行せず、human_onlyと、人が削除するページを返します。content.writeが必要です。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/experiments/ads/:ad_placement_id/creatives/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/experiments/ads/:ad_placement_id/creatives/:id.json
クリエイティブを状態付きで取得
ad_creatives_get
クリエイティブは画像が作られるまでprocessing、その後ready(失敗した場合はfailedで、理由はerrorに入ります)になります。analytics.readが必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/experiments/ads/:ad_placement_id/creatives/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/experiments/ads/:ad_placement_id/creatives/:id.json
クリエイティブを変更
ad_creatives_update
リンク、重み、スケジュール、ターゲティングを変更したり、オフにしたり(active false)、画像を差し替えたりします。指定した入力だけが変わります。新しい画像は準備ができた時点で古い画像と置き換わります。content.writeが必要です。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/experiments/ads/:ad_placement_id/creatives/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
広告枠
POST
/sites/:site_id/experiments/ads.json
広告枠を作成
ad_placements_create
サイトに1つのサイズのスロットを作成します。size(medium_rectangleやleaderboardなどの一般的なサイズ)、またはピクセル単位のwidthとheightを指定します。keyはサイト上のタグがこの枠を指す名前で、省略すると名前から作られます。その後ad_creatives_createでクリエイティブを追加し、ad_placements_embedのタグをサイトに設置してください。content.writeが必要です。
権限: content.write
curl -X POST https://privatusanalytics.com/sites/:site_id/experiments/ads.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/experiments/ads/:id.json
広告枠をクリエイティブごと削除
ad_placements_delete
広告枠をクリエイティブとその画像、広告実験とその結果、スポンサーリンクごと完全に削除します。サイト上のタグは何も描画しなくなります。MCPツールは実行せず、human_onlyと、人が削除するページを返します。content.writeが必要です。
権限: content.write
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/experiments/ads/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/experiments/ads/:id/embed.json
広告枠をサイトに表示するタグを取得
ad_placements_embed
貼り付け用のHTMLとして、ローダースクリプト(1ページに1回)とこの広告枠のスロットを返します。スロットはローダーが実行される前もサイズを保ちます。analytics.readが必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/experiments/ads/:id/embed.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/experiments/ads.json
サイトの広告枠を直近30日の数値付きで一覧表示
ad_placements_list
各広告枠のキー、サイズ、クリエイティブ数、直近30日の統計(impressions、viewable impressions、clicks、ctr。ctrは視認可能な表示回数あたりのクリック率)を返します。analytics.readが必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/experiments/ads.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/sites/:site_id/experiments/ads/:id.json
広告枠と各クリエイティブの数値を取得
ad_placements_get
広告枠、期間(7d、30d、90d)中の各クリエイティブの統計、広告枠の日別の数値を返します。humans_onlyを指定すると、ボットスコアで人間の可能性が高いとされたものだけを対象にします(Pro以上)。analytics.readが必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/experiments/ads/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/experiments/ads/:id.json
広告枠を変更
ad_placements_update
名前、キー、サイズ、ラベルを変更します。指定した入力だけが変わります。新しいキーにはサイト上の新しいタグが必要です。content.writeが必要です。
権限: content.write
curl -X PATCH https://privatusanalytics.com/sites/:site_id/experiments/ads/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
検索
GET
/sites/:site_id/search.json
検索レポート: クリック数、表示回数、CTR、掲載順位、上位のクエリ・ページ、ランディングページ、改善の機会
search_report
Google Search ConsoleとBing Webmasterの検索パフォーマンスを、サイト自身のランディングページの指標と結合したものです。provider を選びます。all(既定)は、接続されているすべての検索エンジンを合算し、position は表示回数で重み付けされ、国とデバイスは Google のみのデータになります。google または bing を指定すると、そのエンジンだけになります。通常の period またはカスタムの from と to も選べます。limit(1から100、既定は25)は、各テーブルの行数の上限です。結果には、period、provider、connection(選んだエンジンの property、status、last_synced_at。接続されていない場合や provider が all の場合は null)、connections(接続されている各エンジンの provider、property、status、last_synced_at)、latest_date(データのある最新の日)、delayed(範囲が latest_date を超えて延びている場合は true)、totals と series(日ごと)(それぞれ clicks、impressions、ctr(割合ではなくパーセントで、小数第2位まで)、position(平均順位で、1が最良。不明な場合は null))、query、page、country、device の breakdowns(value と同じ4つの指標を持つ行)、landing_pages(visits、パーセントの bounce_rate と conversion_rate、conversions を持つ上位ページ)、opportunities(インプレッションが100以上でCTRが2パーセント未満の low_ctr_queries と、平均掲載順位が8から20のページの striking_distance)が含まれます。国の値は、プロバイダーが報告するとおりです。訪問者のデータには stats_breakdown を使い、クリックの前に起きていることにはこのツールを使ってください。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/search.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
DELETE
/sites/:site_id/search/connections/:provider.json
Search ConsoleまたはBingの接続を解除し、そのデータを削除
search_disconnect
サイトから検索プロバイダー(google または bing)の接続を解除し、そのプロバイダーのインポート済みの検索データを完全に削除します。この操作は元に戻せません。Googleの認可は、どのサイトも使わなくなると、同時に削除されます。そのプロバイダーが接続されていない場合は失敗します。削除した接続を返します。sites.manage が必要です。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/search/connections/:provider.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/search/sync.json
検索データを今すぐインポート
search_sync
接続されたプロバイダー(google が既定、または bing)の検索データのインポートを、通常のスケジュールを待たずに、ただちにキューに入れます。接続とともにすぐに返り(HTTP 202)、インポートはバックグラウンドで実行されます。search_report をポーリングし、connection.last_synced_at を確認してください。検索エンジンのレポートには数日の遅れがあるため、同期した後でも、最新の数日は空のままです。プロバイダーが接続されていない場合は失敗します。sites.manage が必要です。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/search/sync.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
特典
POST
/sites/:site_id/testimonials/settings/rewards/:id/copy.json
フォームの特典を、同じサイトの他のフォームにコピー
testimonial_rewards_copy
このフォームの特典のタイトル、テキスト、コード、オンまたはオフの状態を、form_ids(同じサイトのごみ箱にない1から100件のフォーム)の各フォームにコピーします。対象のフォームにすでにある特典は置き換えられます。IDがサイトのフォームでない場合、サーバーは422とコードunknown_idsで応答し、何もコピーされません。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/settings/rewards/:id/copy.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/settings/rewards.json
サイトのすべてのフォームの特典を一覧表示
testimonial_rewards_list
フォームごとに1行です。特典が設定されていないフォームは、enabledがfalseです。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/settings/rewards.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/sites/:site_id/testimonials/settings/rewards/:id.json
フォームのお礼ステップに表示する特典を設定
testimonial_rewards_update
idはフォームのIDです。コードはご自身が用意するテキストです。Privatus Analyticsがコードを作成、検証、失効させることはありません。
権限: sites.manage
curl -X PATCH https://privatusanalytics.com/sites/:site_id/testimonials/settings/rewards/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
監査ログ
GET
/workspaces/:workspace_id/audit_log.json
監査ログのエントリを一覧表示(.csv を付けるとエクスポート)
audit_logs_get
ワークスペースの監査ログを返します。誰が何を変更したか(設定、メンバー、サイト、ゴール、トークンなど)を、新しい順にページ分割して記録したものです。workspace.manage 権限と、監査履歴のあるプランが必要です。Freeプランにはなく、呼び出しはプラン制限エラーで失敗します。Proは30日間、Businessは365日間を保持し、Enterpriseは無制限です。保持期間より古いエントリは返されません。actor(メンバーのメールアドレス、完全一致)、item_type(Site、Goal、Membership などのレコードの種類)、event(create、update、destroy)、from と to(YYYY-MM-DD、両端を含み、UTC)で絞り込めます。各エントリには、id、created_at、event、item_type、item_id、target(Site: example.com のような読みやすいラベル)、actor_email(変更がシステムまたは削除済みのユーザーによって行われた場合は null)、actor_name、token_name(使用されたAPIトークン。ブラウザのセッションでは null)、changes(変更された各フィールドを [before, after] のペアに対応付けたオブジェクトで、シークレットは除去されます)、ip(メンバーまたはAPIクライアントが使用したアドレス。不明な場合は null)が含まれます。同じログのCSVエクスポートは、アプリ内でのみ利用できます。
権限: workspace.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/audit_log.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
計測
POST
/sites/:site_id/tracking/ingest_key.json
クローラーログキーを作成またはローテーション(一度だけ表示されます)
tracking_ingest_key_rotate
サイトの新しい秘密のクローラーログキー(pik_ で始まる)を作成し、既存のキーを置き換えます。このキーは、AIクローラーのレポート用のサーバーアクセスログのアップロード(POST /api/logs)を認証します。最初のキーの作成にも、ローテーションにも使います。新しいキーはただちに機能し、古いキーはただちに機能しなくなるため、ログのアップロードで401が出ないよう、新しいキーをすぐにデプロイしてください。完全なキーは、このレスポンスの key フィールドでのみ返されるため、シークレットストアに保存してください。その後は、短いプレフィックスのみが保持され、表示されます(ここでは prefix、サイトでは ingest_key_prefix)。site_id、key、prefix を返します。sites.manage が必要です。置き換えずにキーを削除するには、tracking_ingest_key_revoke を使ってください。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/sites/:site_id/tracking/ingest_key.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/sites/:site_id/tracking/ingest_key.json
クローラーログキーを無効化
tracking_ingest_key_revoke
サイトのクローラーログキーを削除します。以後、そのキーで送信されたすべてのログのアップロードは、tracking_ingest_key_rotate で新しいものを作成するまで、401で拒否されます。公開サイトIDを使ったブラウザのトラッキングには影響しません。キーは復元できません。sites.manage が必要です。ingest_key_prefix が null になったサイトオブジェクトを返します(sites_get を参照)。
権限: sites.manage
· HTTPのみ(MCPツールではありません)
curl -X DELETE https://privatusanalytics.com/sites/:site_id/tracking/ingest_key.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/sites/:site_id/tracking/verify.json
サイトにトラッカーがインストールされているか確認(scriptタグ、サイトID、CSP、リファラーポリシー)
tracking_verify
サイトのページを取得し、Privatus Analyticsのトラッキングスクリプトが正しくインストールされているかを確認します。このサイトのIDを持つスクリプトが見つかると、サイトを確認済みとしてマークします。既定ではホームページ(https://domain/)をリクエストし、url で別のページを指定できますが、サイト自身のドメイン、追加ドメイン、またはそれらのサブドメイン上のページに限られます。結果(data の下)には、url、status(HTTPステータス)、script_found、site_ids(ページ上で見つかったすべての data-site のID)、installed(このサイトのIDがその中にある場合は true)、csp と csp_ok(ページの Content-Security-Policy がトラッカーの読み込みと送信を許可しているか)、referrer_policy と referrer_ok(no-referrer ポリシーでは、すべての訪問がダイレクトとして表示される)、checked_at が含まれます。公開インターネット経由で取得し、最大2 MBまで読み取り、ワークスペースごと、およびホストごとにレート制限があるため、呼び出しが多すぎると429で応答します。ページに到達できない場合は、検証エラーを返します。イベントが届いたかを確認するには、sites_setup_get を使ってください。sites.manage が必要です。
権限: sites.manage
curl -X POST https://privatusanalytics.com/sites/:site_id/tracking/verify.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/tracking/snippet.json
選択したオプションの計測スニペットを作成
tracking_snippet
サイトにトラッキングをインストールするためのHTMLのscriptタグを作成し、サイトIDを data.site_id に、スニペットを data.snippet に入れて返します。カスタマイズが必要な場合は、sites_setup_get よりもこちらを選び、その後 tracking_verify でライブのページを確認してください。既定では、すべてのトラッカーモジュールが読み込まれ、ページビューは自動です。modules は、engage(時間とスクロール)、auto(外部リンク、ダウンロード、フォーム、404)、vitals(Web Vitals)、clicks(クリックマップ)、ask(サイト内アンケート)のサブセットに絞り込みます。manual を true にすると、自動のページビューが無効になり、自分で送信することになります。spa は、シングルページアプリのナビゲーション追跡を auto、history、hash、off に設定します。domains は、追跡をそれらのホスト名に限定し、exclude はスキップするパスのグロブを、query_params は保持する追加のクエリパラメータを、mask は /u/*->/u/:id のように書くクライアント側のパスマスクを一覧にします。何も保存されず、スニペットは、そのたびに入力から生成されます。analytics.read が必要です。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/tracking/snippet.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
請求
POST
/workspaces/:workspace_id/billing/badge.json
バッジ特典への参加・不参加を切り替え(無料プラン)
billing_badge
Freeワークスペースを、月間イベント許容量が増えるPrivatus Analyticsバッジのボーナスにオプトイン、またはオプトアウトします。オプトインするには enabled を true に設定します。その後、バックグラウンドのチェックがワークスペースのサイトでバッジを探して確認します。これには少し時間がかかることがあるため、あとで billing_get を読み取り、badge.verified_at を確認してください。オプトアウトするには enabled を false にします。チェックと確認の日付がクリアされ、ボーナスが削除されます。有料プランにはボーナスがないため、ProまたはBusinessのワークスペースでのオプトインは拒否されます。billing_get と同様に、ワークスペースの請求オブジェクトを返します。billing.manage が必要です。
権限: billing.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/billing/badge.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/billing/cancel.json
請求期間の終了時に解約
billing_cancel
有料サブスクリプションを、現在の支払い期間の終了時にキャンセルします。返金はなく、current_period_ends_at までプランは有効なままで、その後ワークスペースはFreeプランに移行します。それまでの間に取り消すには、billing_resume を使ってください。ワークスペースにサブスクリプションがない場合、またはすでにキャンセルが予約されている場合は失敗します。任意の reason(enumの値のいずれか)と comment は、退会時のアンケートです。comment を指定した場合は、メンバーからのフィードバックメッセージとしてPrivatus Analyticsチームにメールで送信され、保存はされません。cancel_at_period_end が true の請求オブジェクトを返します。billing.manage が必要です。
権限: billing.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/billing/cancel.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/billing/change_plan.json
プラン、ティア、請求間隔を変更(日割り計算)
billing_change_plan
既存のサブスクリプションを、別のプラン、イベントティア、または請求間隔に移行します。これは課金されます。変更は即座に反映され、Paddleが日割り計算するため、登録済みの支払い方法に対して、請求またはクレジットがすぐに適用されます。正確な金額を確認するには、先に同じ入力で billing_preview を実行してください。ワークスペースにサブスクリプションがない場合(その場合は billing_checkout を使用)、移行先が現在のプラン、ティア、間隔と同じ場合、またはプランとイベント数の組み合わせに対応する価格がない場合は失敗します。events の値は、plans_list にあるティアのいずれかでなければなりません。更新後の請求オブジェクトを返します。billing.manage が必要です。
権限: billing.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/billing/change_plan.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/billing/checkout.json
有料プランのPaddleチェックアウトを開始
billing_checkout
まだサブスクリプションのないワークスペースのPaddleチェックアウトを開始し、ホスト型チェックアウトのURLを返します。人がブラウザでチェックアウトを完了するまで課金は行われないため、url はその人に渡してください。ワークスペースにすでにサブスクリプションがある場合は、代わりに billing_change_plan を使ってください。入力は、plan(pro または business)、events(plans_list にある月間イベント数のティア)、interval(month または year。既定は month)です。価格にはVATまたは売上税が含まれています。承認済みの割引プログラムは自動的に適用され、discount_id で報告されます。transaction_id、url(null 可)、price_id、plan、events、interval、amount(その間隔の米ドルの整数)、client_token、environment(sandbox または production。Paddleオーバーレイで使用)、custom_data、discount_id(null 可)を返します。ワークスペースにすでにサブスクリプションがある場合は失敗します。billing.manage が必要です。
権限: billing.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/billing/checkout.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/billing/discount.json
非営利団体、教育機関、オープンソース向け割引を申請
billing_discount
ワークスペースの割引プログラムに申し込みます。スタッフによる審査のための申請を送信し、Privatus Analyticsチームにメールで通知します。それだけで割引が適用されるわけではありません。プログラムは、nonprofit、education、open_source(50パーセント割引)、open_source_free(月間100万イベントまでのProが無料)、agency(所有するすべてのワークスペースが20パーセント割引)です。ワークスペースごとに、未完了の申請(pending、approved、active)は1件のみ許可され、却下または取り消しの後は再度申し込めます。license は2つのオープンソースプログラムでのみ保持されます。program、status、percent、comp_events(null 可)、organization_name、website、proof_url、license、note、rejection_reason、created_at、reviewed_at、applied_at、revoked_at(null 可のタイムスタンプ)を持つ申請を返します。進捗は、後から billing_get の discount フィールドで確認できます。billing.manage が必要です。
権限: billing.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/billing/discount.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/billing/payment_method.json
お支払い方法を更新するためのリンクを取得
billing_payment_method
サブスクリプションの支払い方法を更新できるPaddleのリンクを返します。この呼び出し自体では何も変更されません。url は、ブラウザで開いてもらうためにその人に渡してください。結果には kind(payment_method)と url が含まれます。ワークスペースに有効なサブスクリプションがない場合は失敗します。請求書、住所、その他すべての請求の詳細には、billing_portal を使ってください。billing.manage が必要です。
権限: billing.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/billing/payment_method.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
POST
/workspaces/:workspace_id/billing/portal.json
Paddleカスタマーポータルのリンクを取得
billing_portal
請求書、支払い方法、住所を確認できるPaddleカスタマーポータルへのリンクを返します。この呼び出し自体では何も変更されません。url は、ブラウザで開いてもらうためにその人に渡してください。結果には kind(portal)と url が含まれます。ワークスペースにまだPaddleの顧客がいない場合(チェックアウトしたことがない場合)や、呼び出し元がアクセスできない他のワークスペースと顧客を共有している場合は失敗します。ポータルには、その顧客のすべてのデータが表示されるためです。カードだけが必要な場合は billing_payment_method を使ってください。billing.manage が必要です。
権限: billing.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/billing/portal.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/billing/preview.json
日割り計算付きでプラン変更をプレビュー
billing_preview
サブスクリプションを別のプラン、ティア、間隔に移行した場合に、今の時点でいくらかかるかを、何も変更せずに表示します。billing_change_plan を実行する前に、必ず同じ plan、events、interval の入力で実行してください。ワークスペースにサブスクリプションがない場合、または移行先が現在の価格と同じ場合は失敗します。plan、events、interval、price_id、amount(その間隔の米ドルの定価の整数)、currency、charge_minor(今回請求される額)、credit_minor(未使用期間のクレジット)、result_minor(正味の金額。すべて通貨のマイナー単位)、result_action(charge または credit、null 可)、next_billed_at(null 可)、warnings(文字列。たとえば、先月の利用が新しいティアを超える場合や、新しいプランでは超過してしまうサイト数やメンバー数などのプラン制限)を返します。billing.manage が必要です。
権限: billing.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/billing/preview.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/workspaces/:workspace_id/billing/resume.json
予定していた解約を取り消す、または一時停止を再開
billing_resume
予約されたキャンセルを取り消すか、一時停止中のサブスクリプションを再開し、プランが更新され続けるようにします。billing_cancel の後、current_period_ends_at より前に使ってください。一時停止中のサブスクリプションはただちに再開されます。予約されたキャンセルがなく、サブスクリプションも一時停止中でない場合は失敗します。更新後の請求オブジェクトを返します。billing.manage が必要です。
権限: billing.manage
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/workspaces/:workspace_id/billing/resume.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/billing.json
プラン、サブスクリプション、使用量を取得
billing_get
ワークスペースのプランと請求の状態を返します。請求に関する何かを変更する前や、サブスクリプションが有効か解約中かを知るために使います。フィールドは、workspace_id、plan(free、pro、business、enterprise のいずれか)、plan_events(販売されている月間イベント数のティア)、allowance(バッジボーナスを含む、実際に許可されている月間イベント数)、billing_interval(month または year、null 可)、price(その間隔の米ドルの整数、null 可)、subscription_status、current_period_ends_at、cancel_at_period_end(キャンセルが予約されている場合は true)、canceled_at、auto_upgrade、discount(最新の割引申請、null 可)、discount_percent、billing_emails(配列)、tax_id、badge(opted_in、verified_at、checked_at、ボーナスの大きさ)、usage(billing_usage が返すものと同じオブジェクト)です。billing.manage が必要です。請求書は billing_invoices_list にあり、月ごとの利用状況は billing_usage で確認できます。
権限: billing.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/billing.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
PATCH
/workspaces/:workspace_id/billing.json
請求先メール、税ID、自動アップグレードを更新
billing_update
ワークスペースの請求設定を更新します。送信した項目のみが変更されます。billing_emails は、請求書や請求に関する通知のための追加アドレスの配列(最大5件)で、リスト全体を置き換えます。tax_id はワークスペースに保存されますが、請求書には追加されないため、チェックアウトでも入力する必要があります。auto_upgrade の既定は false です。true の場合、月間イベント上限に達すると、収集を停止する代わりに、ワークスペースが次のティアに移行し、差額が請求されます。上限で収集がすでに一時停止している状態でオンにすると、ただちにアップグレードして請求し、確認メールが送信されます。Paddleがアップグレードを拒否した場合は、何も保存されません。billing_get と同様に、請求オブジェクトを返します。billing.manage が必要です。
権限: billing.manage
· HTTPのみ(MCPツールではありません)
curl -X PATCH https://privatusanalytics.com/workspaces/:workspace_id/billing.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/billing/usage.json
今月の使用量、予測、サイトごとの内訳を取得
billing_usage
ワークスペースの1か月分のイベント使用量を返します。ワークスペースが月間のハード上限にどれだけ近いかを確認するために使います。入力は month(その月のいずれかの日で、既定は当月)です。ページビューとカスタムイベントのみがカウントされます。フィールドは、month、events、bots(ボットの集計数で、課金対象外)、allowance、percent(0から100以上、小数第1位まで)、forecast と forecast_percent(月末までの直線的な予測で、過去の月では null)、days_left、status(ok、80パーセントで warning、100パーセントで over、paused、locked)、sites(サイトごとの site_id、domain、name、events、share のパーセント。多い順)、history(過去の月の month と events)、access_locked_at、collection_paused(新しいイベントが破棄されている場合は true)、pause_reason(limit または staff、null 可)、collection_paused_at、resumes_at(上限で一時停止している場合は翌月1日)です。billing.manage が必要です。
権限: billing.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/billing/usage.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/workspaces/:workspace_id/billing/invoices.json
請求書を一覧表示
billing_invoices_list
ワークスペースの請求トランザクションを新しい順に一覧表示します。各項目には、id(billing_invoices_get で使用)、invoice_number(null 可)、status、amount_minor(通貨のマイナー単位の整数なので、900 は 9.00 を意味します)、currency(USD などのISOコード)、billed_at(null 可のISO 8601)が含まれます。page と per_page(最大100)でページ分割されます。一覧表示されるのはトランザクションのみです。PDFを取得するには billing_invoices_get を、カードを更新するには billing_payment_method を使ってください。billing.manage が必要です。
権限: billing.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/billing/invoices.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
GET
/workspaces/:workspace_id/billing/invoices/:id.json
請求書のPDFリンクを取得
billing_invoices_get
請求された1件のトランザクションのPDF請求書へのリンクを返します。請求書のID(id フィールド。PaddleのトランザクションID)は billing_invoices_list から取得してください。結果には kind(invoice)と url が含まれます。url はPaddleのPDFへのリンクのため、呼び出し後はすぐに取得または共有してください。IDがこのワークスペースのものでない場合や、Paddleにその請求書がない場合は失敗します。billing.manage が必要です。
権限: billing.manage
curl https://privatusanalytics.com/workspaces/:workspace_id/billing/invoices/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
通知チャネル
DELETE
/channels/:id.json
通知チャネルを削除
notification_channels_delete
通知チャンネルを削除し、それを使っていたすべてのアラートから外します。そのため、それらのアラートはそこへ通知しなくなります。この操作は元に戻せませんが、アラート自体は残ります。id(nch_...)は notification_channels_list から取得します。削除したチャンネルを返します。
権限: content.write
curl -X DELETE https://privatusanalytics.com/channels/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/workspaces/:workspace_id/channels.json
通知チャネルを一覧表示
notification_channels_list
ワークスペースの通知チャンネルを、名前順にページ分割して一覧表示します(パスには workspace_id を指定)。チャンネルは、アラートの配信先です。それぞれに、id(nch_...)、kind(email、slack、teams、discord、webhook、pagerduty、opsgenie、push)、name、target(メールアドレスやwebhook URLの末尾などをマスクした概要で、シークレットは決して返されません)、last_used_at、created_at があります。kind で絞り込めます。alerts_create と alerts_update では、id を channel_ids として使います。一部のサイトに限定された呼び出し元には、自分のサイトのアラートが使っているチャンネルのみが表示されます。
権限: analytics.read
curl https://privatusanalytics.com/workspaces/:workspace_id/channels.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/channels/:id/send_test.json
チャネル経由でテストメッセージを送信
notification_channels_send_test
チャンネルを通じて、実際のテストメッセージを送信します(メール、チャットへの投稿、webhookの呼び出しなど)。そのため、ユーザーがそれを望む場合にのみ使ってください。配信が機能しない場合は、原因を示すエラーで呼び出しが失敗し、そうでなければチャンネルを返します。テスト送信はワークスペースごとにレート制限があり、メールチャンネルは外部のアドレスごとにも制限があります。URLやキーが正しいことを確認するために、notification_channels_create または notification_channels_update の後に使ってください。
権限: content.write
curl -X POST https://privatusanalytics.com/channels/:id/send_test.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/channels/:id.json
通知チャネルを取得
notification_channels_get
ID(notification_channels_list から取得する nch_...)で、1つの通知チャンネルを返します。レスポンスには、kind、name、target(マスクされた概要で、webhook URLやキーなどのシークレットは決して返されません)、last_used_at、created_at が含まれます。配信されることを確認するには、notification_channels_send_test を使ってください。
権限: analytics.read
curl https://privatusanalytics.com/channels/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/notifications/unsubscribe/:token.json
メールのトークンを使って、アドレスを1つのアラートチャネルまたはアップタイムチェックから配信停止
notification_unsubscribes_create
権限: public
· HTTPのみ(MCPツールではありません)
curl -X POST https://privatusanalytics.com/notifications/unsubscribe/:token.json \
-H "Content-Type: application/json" -d '{…}'
POST
/push_subscription.json
プッシュ通知用にブラウザを登録
push_subscriptions_create
現在のブラウザを、ウェブプッシュのアラート用に登録します。ブラウザの PushSubscription から得られる3つの値(endpoint、p256dh、auth)を使います。サブスクリプションは、メンバーが所属するすべてのワークスペースの、すべてのサイトのアラートを受け取ります。そのため、APIトークンがこれを使えるのは、そのワークスペースのすべてを読み取れ、かつメンバーに他のワークスペースがない場合のみです。同じ endpoint で再度呼び出すと、キーが更新され、サブスクリプションが呼び出した人に移されます。endpoint は、公開された https のプッシュサービスのURLでなければなりません。これはブラウザを登録するだけなので、アラートには、kind が push の通知チャンネルがやはり必要です(notification_channels_create)。endpoint_host(完全なendpointではなく、プッシュサービスのホスト名)と created_at を返します。ワークスペースのIDプロバイダー経由で開かれたセッションでは使用できません。
権限: member
curl -X POST https://privatusanalytics.com/push_subscription.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
DELETE
/push_subscription.json
ブラウザのプッシュ登録を削除
push_subscriptions_delete
サインイン中のメンバーのブラウザのプッシュ登録を1つ削除し、そのブラウザがアラート通知を受け取らないようにします。push_subscriptions_create で使ったのと同じ endpoint を渡します。そのメンバーにそのようなサブスクリプションが存在しない場合は、not found で失敗します。削除したサブスクリプションを、endpoint_host と created_at として返します。通知チャンネルは削除されません。push_subscriptions_create と同じトークンの制限が適用されます。
権限: member
curl -X DELETE https://privatusanalytics.com/push_subscription.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
非公開フィードバック
GET
/sites/:site_id/testimonials/forms/:form_id/feedback.json
フォームの非公開フィードバックを新しい順に一覧表示
testimonial_feedback_list
非公開フィードバックは、低評価ルーティングがオンのフォーム(Business以上)で、評価が1から3の回答です。お客様の声になることはなく、公開されることも、数えられることもありません。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/forms/:form_id/feedback.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"
POST
/sites/:site_id/testimonials/forms/:form_id/feedback/:id/mark_read.json
非公開フィードバックの回答を既読にする、または未読に戻す
testimonial_feedback_mark_read
1件の非公開フィードバックの回答にread_atを設定し、read falseでクリアします。すでに既読の回答を既読にしても、最初に読まれた時刻が保持されます。書いた人には何も送信されません。
権限: analytics.read
curl -X POST https://privatusanalytics.com/sites/:site_id/testimonials/forms/:form_id/feedback/:id/mark_read.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN" \
-H "Content-Type: application/json" -d '{…}'
GET
/sites/:site_id/testimonials/forms/:form_id/feedback/:id.json
非公開フィードバックの回答を1件取得
testimonial_feedback_get
評価、テキスト、その人が入力した名前、既読になった日時を返します。非公開フィードバックは、低評価ルーティングがオンのフォームで、評価が低い回答です。お客様の声になることも、公開されることもありません。
権限: analytics.read
curl https://privatusanalytics.com/sites/:site_id/testimonials/forms/:form_id/feedback/:id.json \
-H "Authorization: Bearer $PRIVATUS_TOKEN"