Open API ドキュメント


1. 共通事項

1.1 概要

Ptengine Open API は RESTful インターフェースを提供し、ヒートマップ分析データをプログラム的にクエリできます。本ドキュメントを AI Agent に提供すると、AI Agent が自然言語の要件に基づいてクエリリクエストを自動構築し、インターフェースを直接呼び出してデータを取得します。

インターフェースベース URL:

https://xbackend.ptengine.com/

1.2 認証方式

すべての API リクエストは x-api-key リクエストヘッダーで API Key を渡す必要があります。

x-api-key: pt-your-api-key-here

API Key の取得手順:

権限要件:API Key の作成と管理は Admin および Owner ロールのみが可能です。

  1. Ptengine にログイン

  2. Experience モジュールに移動

  3. 右上の設定アイコン(⚙)をクリックし、「外部アプリ連携」を選択

  4. 「API キー」タブに切り替え

  5. 「API キーを作成」をクリックし、名前を入力して権限範囲(データアップロード/データクエリ)を選択

  6. キーをコピーして安全に保管してください(キーは作成時にのみ表示されます)


1.3 リクエスト頻度制限

プランにより制限値が異なります:

プラン
RPM(毎分)
RPD(毎日)

Free

3

100

Free Trial

10

1,000

Growth

30

3,000

頻度制限情報はレスポンスヘッダーで返されます:


2. ヒートマップデータクエリ

2.1 ヒートマップデータのクエリ

POST /open-api/v1/heatmap/query

統一クエリエンドポイント。queryType パラメータでクエリタイプを選択します。

リクエストボディ

リクエストパラメータ

パラメータ
必須
説明

queryType

はい

string

クエリタイプ、選択肢:page_metrics(ページ指標)、page_insight(ページ詳細指標)、block_metrics(ブロック指標)、element_metrics(エレメント指標)

profileId

はい

string

サイト ID(8文字の文字列)、API Key に紐づくプロファイルと一致する必要があります。Ptengine の URL から取得できます(例:https://www.ptengine.jp/app/{profileId}/home566d12f9

url

はい

string

データをクエリするページの URL

startDate

はい

string

開始日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

endDate

はい

string

終了日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

deviceType

はい

string

デバイスタイプフィルター、2.4 節を参照

rangeType

いいえ

string

URL マッチモード。MERGE_URL(デフォルト)パラメータを統合してクエリ、URL パラメータの違いを無視;URL 元の URL で正確にクエリ

metrics

いいえ

string[]

指定しない場合はすべての指標を返し、指定した場合は指定した指標のみ返します。利用可能な指標は2.3 節を参照

conversionNames

いいえ

string[]

コンバージョン目標名リスト(あいまい一致)、例:["購入完了", "登録"]

filters

いいえ

object[]

フィルター条件、各項目に name(フィルタータイプ)、opinclude/exclude)、value(値の配列)を含みます。下記フィルタータイプ表を参照

lang

いいえ

string

返却ラベルの言語:EN(デフォルト)、ZH(中国語)、JP(日本語)。無効な値の場合は EN にフォールバック

funName

条件付き必須

string

page_insight タイプの場合のみ必須。選択肢:terminalType(デバイスタイプ)、sourceType(トラフィックソース)、visitType(新規/リピーター)、aiName(トラフィック獲得チャネル)、utmCampaign(UTM Campaign)、utmSource(UTM Source)、utmMedium(UTM Medium)、utmTerm(UTM Term)、utmContent(UTM Content)、week(週)、day(日)

フィルター条件(filters)

各フィルター条件のフォーマット:{ "name": "フィルタータイプ", "op": "include または exclude", "value": ["値1", "値2"] }

サポートされるフィルタータイプ:

固定値(filter-values インターフェースの呼び出し不要):

name
説明
利用可能な値

deviceType

デバイスタイプ

PCMobileTablet

sourceType

ソースタイプ

Direct(ダイレクト)、Search(検索エンジン)、Social(ソーシャルネットワーク)、Referral(外部リンク)、Campaign(広告)、AISearch(AI検索)

visitType

ユーザータイプ

New visits(新規訪問)、Returning visits(リピート訪問)

exitType

離脱タイプ

Bounce visits(直帰訪問)、Non-bounce visits(非直帰訪問)

動的値(filter-values インターフェースで利用可能な値をクエリ):

name
説明
value 例

os

OS

["Windows", "Mac OS X"]

osVersion

OSバージョン

["Windows 10", "Mac OS X 10.15.7", "iOS 17.0"]

browser

ブラウザ

["Chrome", "Mobile Safari", "Edge"]

browserVersion

ブラウザバージョン

["Chrome 124.0.0", "Edge 146.0.0", "Mobile Safari 13.0.3"]

screenResolution

解像度

["1920x1080", "1440x900"]

deviceBrand

ブランド

["Apple", "Samsung"]

country

国/地域

["Japan", "China", "United States"]

region

都道府県/州

["Tokyo", "Beijing", "Hong Kong"]

searchEngine

検索エンジン

["google"]

socialNetwork

ソーシャルネットワーク

["facebook"]

socialUrl

ソーシャルURL

["https://www.facebook.com/"]

aiName

AI名

["ChatGPT", "Perplexity"]

referralSource

外部リンクサイト

["www.muji.com"]

referralUrl

外部リンクURL

["https://www.muji.com/"]

campaignUrl

広告URL

["https://www.google.com/"]

utmCampaign

広告名

["summer_sale"]

utmSource

広告ソース

["google", "facebook"]

utmMedium

広告メディア

["cpc", "email"]

utmTerm

広告キーワード

["heatmap tool"]

utmContent

広告コンテンツ

["banner_a"]

combinedPages

統合パラメータページ

["https://ptengine.jp/app/login"]

originalPages

元ページ

["https://ptengine.jp/app/select_project?from=login"]

conversionName

コンバージョン名

["ptmind"]

eventName

イベント名

["checkout_completed", "product_viewed"]

customDimension

カスタムディメンション

eventVariant と組み合わせて使用、下記説明を参照

eventVariable

カスタムディメンション(イベント名)

eventNameeventVariant と組み合わせて使用、下記説明を参照

例: 検索エンジンからの PC ユーザーデータをクエリ


フィルター利用可能値のクエリ

動的フィルタータイプで利用可能な値が不明な場合、以下のインターフェースでクエリできます:

POST /open-api/v1/heatmap/filter-values

リクエストボディ:

パラメータ
必須
説明

profileId

はい

サイト ID

name

はい

フィルタータイプ(countrybrowsersourceType など)

startDate

いいえ

開始日、フォーマット:YYYY-MM-DD または YYYY/MM/DD、指定しない場合はデフォルトで直近30日

endDate

いいえ

終了日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

search

いいえ

あいまい検索キーワード

例:

レスポンス:


カスタムディメンションフィルター

カスタムディメンションは2つのステップで使用します:

ステップ1:カスタムディメンションリストのクエリ

レスポンス:

ステップ2:特定ディメンションの利用可能値のクエリ

レスポンス:

クエリでのフィルター使用:


カスタムディメンション(イベント名)フィルター

カスタムディメンションは3つのステップで使用します:

ステップ1:イベントカスタムディメンションリストのクエリ

レスポンス:

ステップ2:特定ディメンションの利用可能値のクエリ

レスポンス:

ステップ3:クエリでのフィルター使用


2.2 クエリタイプ

2.2.1 page_metrics — ページ基本指標

指定ページのトラフィック、エンゲージメント、コンバージョンなどの指標データを返します。

デバイスタイプ: ALL(全デバイス)、PCMOBILETABLET をサポート

指標パラメータ: metrics(指定しない場合はすべての指標を返却)

コンバージョンクエリ: すべてのクエリタイプでコンバージョンをサポートしています。metricscompletions(コンバージョン数)または conversionRate(コンバージョン率)を追加し、conversionNames でコンバージョン目標名を指定してください。

リクエスト例:

レスポンス例:

説明: conversions には metrics でリクエストしたコンバージョン指標のみが返されます。上記の例では metricsconversionRate のみ含まれているため、conversions にはコンバージョン率のみが含まれ、完了数は含まれません。コンバージョン数も同時に返す場合は、metricscompletions を追加してください。


2.2.2 page_insight — ページ詳細指標(ディメンション別グループ化)

指定ディメンションでグループ化されたページ指標データを返します。

デバイスタイプ: ALLPCMOBILETABLET をサポート

必須パラメータ: funNamemetrics は指定しない場合はすべて返却)

funName の選択肢:

funName
説明

terminalType

デバイスタイプ別グループ化(PC/Smart phone/Tablet)

sourceType

トラフィックソース別グループ化(Direct/Search/Social など)

visitType

訪問タイプ別グループ化(New visits/Returning visits)

aiName

AI名別グループ化

utmCampaign

UTM Campaign 別グループ化

utmSource

UTM Source 別グループ化

utmMedium

UTM Medium 別グループ化

utmTerm

UTM Term 別グループ化

utmContent

UTM Content 別グループ化

week

週別グループ化

day

日別グループ化

リクエスト例(デバイスタイプ別グループ化):

レスポンス例:


2.2.3 block_metrics — ブロック指標

ページ内の各ブロック(セクション)の指標データとスクリーンショットURLを返します。ページが製品内でスキャンされ、ブロックが設定されている必要があります。

デバイスタイプ: PCMOBILE または TABLET を指定する必要があり、ALL はサポートされていません

metrics パラメータ: 任意。指定しない場合はすべての指標を返し、指定した場合は指定した指標のみ返します。blockNamescreenshotUrl は常に返されます。

利用可能な指標: impressionimpressionRateavgDurationdropoffdropoffRatecompletionsconversionRate

stayTimeFilter: 任意、ブロック滞在時間フィルター(秒)、デフォルトは5秒。

リクエスト例:

レスポンス例:


2.2.4 element_metrics — エレメント指標

ページ内のトラッキングされた各エレメントの指標データを返します。ページが製品内でスキャンされ、エレメントが設定されている必要があります。

デバイスタイプ: PCMOBILE または TABLET を指定する必要があり、ALL はサポートされていません

metrics パラメータ: 任意。指定しない場合はすべての指標を返し、指定した場合は指定した指標のみ返します。elementName は常に返されます。

利用可能な指標: impressionimpressionRateclickclickRatecompletionsconversionRate

リクエスト例:

レスポンス例:


2.3 利用可能な指標

2.3.1 ページ指標(page_metricspage_insight で使用)

metrics 配列で以下のフィールド名を使用します。

トラフィック

フィールド
説明
タイプ

visits

ページが閲覧された訪問回数

value

pv

ページが閲覧された回数

value

uv

このページを閲覧したビジター数

value

newVisitsRate

このページを閲覧した新規訪問の割合

rate

entrances

ページがランディングページとして使用された訪問回数。このページが主にトラフィック受け入れに使用されているかどうかを把握できます

value

エンゲージメント

フィールド
説明
タイプ

fvRate

ユーザーがページに入った後、スクロールせず、コンバージョンも次のページへの遷移もしなかった割合。ファーストビュー離脱率が高い場合、ページのファーストビューがユーザーを引き留められていないことを意味します

rate

timeOnPage

ページの平均滞在時間。ページのコンテンツが訪問者をより長く滞在させているかどうかを把握できます

time

clicks

ページの総クリック数(リンクの有無に関わらず)

value

clickRate

1PVあたりのクリック数。ユーザーのページに対するインタラクション度を評価できます

rate

ctaClicks

ページ内の主要CTAのクリック数。ヒートマップで主要エレメントをCTAとして設定できます

value

ctaClickRate

ページ内の主要CTAのクリック率。CTAクリック率=CTAクリック数/PV。ヒートマップで主要エレメントをCTAとして設定できます

rate

bounceRate

このページから流入し、他のページに移動せずに離脱した訪問者の割合。ランディングページがユーザーをさらなるページ閲覧に誘導できているかを把握できます

rate

avgPageViews

このページからランディングした訪問者の平均閲覧ページ数。このページからランディングしたユーザーのサイト内での閲覧深度を把握できます

decimal

コンバージョン

フィールド
説明
タイプ

completions

このページを訪問し、コンバージョンを完了した訪問数

value

conversionRate

このページを訪問し、コンバージョンを完了した割合。コンバージョン率が高いほど、このページがコンバージョン行動に良い影響を与えていることを示します

rate

注意: コンバージョンデータをクエリする場合、conversionNames でコンバージョン目標の名前を必ず指定してください。


2.3.2 ブロック指標(block_metrics で使用)

metrics パラメータを指定しない場合はすべて返され、指定した場合は指定した指標のみ返されます。blockNamescreenshotUrl は常に返されます。

フィールド
説明
タイプ

blockName

ブロック名

text

screenshotUrl

ブロックスクリーンショットURL

text

impression

ユーザーが画面上で当該ブロックを見始めたPV数

value

impressionRate

ユーザーが画面上で当該ブロックを見始めたPVの割合

rate

dropoff

当該ブロックから離脱し、他のページへのクリックやコンバージョンを完了しなかったPV数

value

dropoffRate

当該ブロックから離脱し、他のページへのクリックやコンバージョンを完了しなかったPVの割合

rate

avgDuration

このブロックを見たユーザーが、このブロックに留まった平均時間。平均滞在時間が長いほど、ユーザーがこのブロックに興味を持っていることを示します

time

completions

各コンテンツブロックに特定時間滞在し、コンバージョンを完了した訪問回数

value

conversionRate

各コンテンツブロックに特定時間滞在した訪問のうち、コンバージョンを完了した訪問の割合

rate


2.3.3 エレメント指標(element_metrics で使用)

metrics パラメータを指定しない場合はすべて返され、指定した場合は指定した指標のみ返されます。elementName は常に返されます。

フィールド
説明
タイプ

elementName

エレメント名

text

impression

ユーザーが画面上で当該エレメントを見始めたPV数

value

impressionRate

ユーザーが画面上で当該エレメントを見始めたPVの割合

rate

click

当該エレメントのクリック回数

value

clickRate

クリック数÷インプレッション数。クリック率が高いほど、そのエレメントがユーザーのクリックを引きつけやすいことを示します

rate

completions

各エレメントをクリックし、コンバージョンを完了した訪問回数

value

conversionRate

各エレメントをクリックした訪問のうち、コンバージョンを完了した訪問の割合

rate


2.4 デバイスタイプルール

クエリタイプ
サポートされる deviceType
説明

page_metrics

ALLPCMOBILETABLET

ALL は全デバイスの集計データを返します

page_insight

ALLPCMOBILETABLET

ALL は全デバイスの集計データを返します

block_metrics

PCMOBILETABLET

ALLサポートされていません

element_metrics

PCMOBILETABLET

ALLサポートされていません


2.5 ブロック・エレメントクエリの前提条件

block_metrics または element_metrics でクエリする前に、Ptengine 製品内でページのスキャン設定を完了する必要があります:

  1. Ptengine ヒートマップで対象ページを開く

  2. ブロック/エレメント検出機能を有効にする

  3. 設定を保存する

ページが設定されていない場合、インターフェースはエラーコード 4008(ブロック未設定)または 4016(エレメント未設定)を返します。


2.6 リクエスト例

例 1:ページトラフィック概要のクエリ

例 2:デバイスタイプ別ページ詳細指標のクエリ

例 3:モバイル端末ブロック分析のクエリ

例 4:指定コンバージョン目標データのクエリ

例 5:PC端末エレメントクリック分析のクエリ


2.7 補足事項

  • 時間関連のフィールド(ページの timeOnPage、ブロックの avgDuration など)は単位付きの可読文字列で返されます(例:"5s""1m 30s")。

  • 比率タイプの値は小数(例:bounceRate: 0.45 は 45% を表します)です。

  • conversionNames はあいまい一致をサポートしており、部分的な名前でも対応するコンバージョン目標にマッチできます。

  • API が使用するデータソースは Ptengine 製品のインターフェースと同一であり、クエリ結果は一致するはずです。

  • リクエストされた URL が該当プロファイルで未収集の場合、API は 200 を返し、すべての指標値が 0 になります(エラーは返しません)。


3. Experience データクエリ

3.1 体験リストの取得

POST /open-api/v1/experience/list

現在のプロファイル配下にあるすべての体験の基本情報(ゴールやバージョンリストを含む)を取得します。以降のインターフェースで使用する idgoalIdversionId はすべてこのインターフェースの返却値から取得します。

リクエストボディ:

パラメータ
必須
説明

profileId

はい

サイト ID

レスポンス例:

返却フィールド
説明

id

体験 ID、レポートインターフェースの id パラメータに使用

name

体験名

status

ステータス:DRAFT / RUNNING / PAUSE / SCHEDULED

type

タイプ:POPUP / STICKY_BAR / INLINE / ADVANCED / REDIRECT

goals

ゴールリスト、A/B テストインターフェースの goalId パラメータに使用

versions

バージョンリスト、フォームインターフェースの versionId パラメータに使用


3.2 ユーザープロパティリストの取得

POST /open-api/v1/experience/user-properties

利用可能なユーザープロパティリストを取得します。ディメンション細分インターフェースの dimensionuserProperty の場合、このインターフェースから property パラメータを取得する必要があります。

リクエストボディ:

レスポンス例:


3.3 体験概要指標

POST /open-api/v1/experience/report/overview

複数の体験の指標データを一括クエリします。

リクエストボディ:

パラメータ
必須
説明

profileId

はい

サイト ID

experiences

はい

体験リスト(id + name、list インターフェースから取得)

metrics

いいえ

返却する指標フィールド。指定しない場合はすべてのデフォルト指標を返却。サポートされるフィールドは下記の指標テーブルを参照

lang

いいえ

返却言語:EN(デフォルト)、ZHJP

metrics でサポートされるフィールド:

フィールド
説明
タイプ

viewedUsers

体験が表示されたユーザーの数

value

views

体験を表示した回数

value

clickedUsers

作成されたボタンやリンクをクリックしたユーザーの数

value

clickRate

クリックユーザー数/表示ユーザー数

rate

closedUsers

作成した体験を取り消したユーザーの数

value

closeRate

取り消しユーザー数/表示ユーザー数

rate

formSubmittedUsers

フォームに回答したユーザーの数

value

formSubmitRate

フォーム回答UU/表示ユーザー数

rate

goalReachedUsers

ゴールに到達したユーザーの数

value

goalReachRate

表示したユーザーのうち、ゴールに到達したユーザーの割合

rate

goalStatus

人数の割合、属性の合計、または平均値で目標達成状況を表示

value

avgVisitDuration

表示ユーザーの平均滞在時間

time

avgPagesPerVisit

表示ユーザーの1訪問あたりの平均ページビュー数

decimal

bounceRate

表示ユーザーの直帰率

rate

lastUpdatedTime

設定が最後に更新された時間

text

lastUpdatedMember

設定の最後の更新者

text

createdTime

体験が作成された日時

text

createdMember

体験の作成者

text

runningPeriod

体験の初回配信日から最終停止日までの期間

text

tags

各体験のカスタム属性ラベル

text

レスポンス例:

すべての指標は { value, label, description } 構造で返却されlabeldescriptionlang に応じた言語で返されます。


3.4 基本指標

POST /open-api/v1/experience/report/metrics

単一の体験の総合指標をクエリします。

リクエストボディ:

パラメータ
必須
説明

profileId

はい

サイト ID

id

はい

体験 ID

startDate

はい

開始日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

endDate

はい

終了日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

lang

いいえ

返却言語

レスポンス例:

注意:返却される指標は体験タイプに応じて自動的にフィルタリングされます。例えば INLINE タイプでは clickedUsers / closedUsers は返却されず、フォームのない体験では formSubmittedUsers は返却されません。


3.5 詳細分析

POST /open-api/v1/experience/report/insight

ディメンション別にグループ化して、単一体験の指標データをクエリします。

リクエストボディ:

パラメータ
必須
説明

profileId

はい

サイト ID

id

はい

体験 ID

startDate

はい

開始日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

endDate

はい

終了日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

dimension

はい

主ディメンション、下記ディメンション表を参照

subDimension

いいえ

二次ディメンション

property

条件付き必須

dimensionuserProperty の場合必須、user-properties インターフェースから取得

lang

いいえ

返却言語

dimension の選択肢:

dimension
説明
subDimension 対応

visitPage

ページ

terminalType

デバイスタイプ

sourceType

トラフィックソース

utmCampaign

広告名

utmSource

広告ソース

utmMedium

広告メディア

utmTerm

広告キーワード

utmContent

広告コンテンツ

sourceUrl

ソース URL

sourceHost

ソースドメイン

aiName

AI 名

visitType

新規/リピーター

country

国/地域

✅(region との組み合わせ不可)

region

地域

✅(country との組み合わせ不可)

userProperty

ユーザープロパティ

❌(property の指定が必要)

userProperty の例:

レスポンス例:


3.6 A/Bテストの結果

POST /open-api/v1/experience/report/abtest/metrics

A/B テストの各バージョンの指標比較データ(uplift と勝率を含む)をクエリします。

リクエストボディ:

パラメータ
必須
説明

profileId

はい

サイト ID

id

はい

体験 ID

startDate

はい

開始日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

endDate

はい

終了日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

compareBy

はい

バージョン比較の基準指標、下記を参照

goalId

条件付き必須

compareBygoalReached の場合必須(list インターフェースの goals から取得)

showDeletedVersions

いいえ

削除済みバージョンを含めるかどうか、デフォルトは false

lang

いいえ

返却言語

compareBy の選択肢:

compareBy
説明

viewedUsers

表示UU

clickedUsers

クリックUU

closedUsers

閉じたUU

formSubmittedUsers

フォーム送信UU

goalReached

ゴール達成(goalId が必要)

avgVisitDuration

表示ユーザーの平均滞在時間

avgPagesPerVisit

表示ユーザーの1訪問あたりの平均ページビュー数

bounceRate

表示ユーザーの直帰率

レスポンス例:

  • 返却値には compareBy に対応する指標 + uplift + probabilityToBeBest のみが含まれます

  • 基準バージョンの uplift 値は "Baseline" で、他のバージョンはパーセンテージ(例:"+50.00%" または "-10.00%")です


3.7 A/Bテストの結果 — 詳細分析

POST /open-api/v1/experience/report/abtest/insight

A/B テストの各バージョンをディメンション別にグループ化した指標比較です。

リクエストボディ:

パラメータ
必須
説明

profileId

はい

サイト ID

id

はい

体験 ID

startDate

はい

開始日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

endDate

はい

終了日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

compareBy

はい

バージョン比較の基準指標(3.6 と同様)

goalId

条件付き必須

compareBygoalReached の場合必須

dimension

はい

主ディメンション(3.5 と同様)

subDimension

いいえ

二次ディメンション

property

条件付き必須

dimensionuserProperty の場合必須

showDeletedVersions

いいえ

削除済みバージョンを含めるかどうか、デフォルトは false

lang

いいえ

返却言語

レスポンス例:


3.8 フォーム送信

POST /open-api/v1/experience/report/form

指定バージョンのフォーム送信明細データをクエリします。

リクエストボディ:

パラメータ
必須
説明

profileId

はい

サイト ID

id

はい

体験 ID

versionId

はい

バージョン ID(list インターフェースの versions から取得)

startDate

はい

開始日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

endDate

はい

終了日、フォーマット:YYYY-MM-DD または YYYY/MM/DD

レスポンス例:

  • columns は動的なヘッダーで、フォームの実際のフィールドに基づいて自動生成されます

  • rows の各行はフォーム送信1件に対応し、値のないフィールドは空文字列になります


3.9 利用可能な指標

基本指標(すべてのタイプで対応)

フィールド
フォーマット
説明

viewedUsers

数値

表示UU

views

数値

表示回数

avgVisitDuration

時間(MM:SS/HH:MM:SS

平均訪問時間

avgPagesPerVisit

小数("2.50"

平均閲覧ページ数

bounceRate

パーセンテージ("42.86%"

直帰率

ポップアップ系指標(POPUP / STICKY_BAR / REDIRECT / ADVANCED でポップアップがある場合のみ)

フィールド
フォーマット
説明

clickedUsers

数値

クリックUU

clickRate

パーセンテージ

クリック率

closedUsers

数値

閉じたUU

closeRate

パーセンテージ

閉じた率

フォーム系指標(フォームが設定された体験のみ)

フィールド
フォーマット
説明

formSubmittedUsers

数値

フォーム送信UU

formSubmitRate

パーセンテージ

フォーム送信率

ゴールデータ

フィールド
説明

goals[].name

ゴール名

goals[].reachedUsers

達成UU

goals[].reachRate

達成率

goals[].value

達成価値(null = ユーザー数で集計)


4. イベントデータクエリ

カスタムイベント分析。Ptengine 製品の イベント > セグメント(/event/segment ページと同じディメンション/指標を提供します。

4.1 イベントデータのクエリ

POST /open-api/v1/event/query

ディメンション・指標・フィルター・カスタムイベントプロパティのフィルターを自由に組み合わせてクエリできます。

リクエストボディ:

項目
必須
説明

profileId

はい

string

プロファイル(サイト)ID

startDate

はい

string

YYYY-MM-DD または YYYY/MM/DD

endDate

はい

string

YYYY-MM-DD または YYYY/MM/DD

dimensions

はい

(string | object)[]

グループ化ディメンション配列、必ず "eventName" を含めてください非時間ディメンションは最大 3 つ + 時間ディメンション(day / hour / week / month)は最大 1 つ——製品の /event/segment ページと同じ制限です。各項目は文字列(標準ディメンション名)または { name: "eventVariable", eventVariant: "<プロパティ名>" }(カスタムイベントプロパティ)

metrics

いいえ

string[]

指標名。デフォルト ["eventCount"]、許可値: eventCountsessions

filters

いいえ

object[]

フィルター条件、/heatmap/query と同じ形式: { name, op, value, eventName?, eventVariant? }

演算子: include / exclude/heatmap/query と同じ)。value は空でない配列(例:["Japan"]["Japan", "China"])。

カスタムイベントプロパティ:

  • dimensions 内:{ name: "eventVariable", eventVariant: "<プロパティ名>" }

  • filters 内:{ name: "eventVariable", eventName: "<イベント名>", eventVariant: "<プロパティ名>", op, value } —— /heatmap/queryeventVariable filter と同じ形式。

  • eventVariable filter を使う場合は、{ name: "eventName", op: "include", value: ["<イベント名>"] } も合わせて指定してください(製品 /event/segment ページと同じ動作)。

レスポンスのカラム名はプロパティ名そのまま。

リクエスト例:

レスポンス例:

4.2 その他のサンプル

a) 最小構成 — イベント名ごとのカウント

b) 時系列 — 日次集計

c) コンバージョン目標でフィルター(名前のあいまい一致)

conversionName は名前に "ptmind" を含む全てのコンバージョン目標と一致します。一致なしの場合は 4012

d) カスタムイベントプロパティ — グループ + フィルター

両方の filter が必須で、役割が異なります:独立した eventName filter はクエリを gallery_item_impression イベントに絞る(集約スコープ);eventVariable filter はさらに position == "home" で行を絞り込む(segment)。

e) 流入分析 — UTM + ソースタイプ

f) 新規訪問者 + PC + 日本/中国

g) 直帰セッションを除外

4.3 利用可能なフィールド一覧の取得

GET /open-api/v1/event/fields?lang=JP

サポートされる指標・ディメンション・演算子(多言語ラベル付き)を返します。

4.4 利用可能な指標

フィールド
説明
dataType

eventCount

イベント発生回数

INTEGER

sessions

イベントが発生したセッション数

INTEGER

4.5 利用可能なディメンション(dimensions[] グループ化用)

フィールド名は /heatmap/query のフィルター項目と同じ命名です。

カテゴリ
フィールド
説明

event

eventName

イベント名

visit

visitType

New visits / Returning visits

visit

exitType

Bounce visits / Non-bounce visits

page

originalPages

入口ページ(完全URL)

page

combinedPages

入口ページ(クエリ文字列を除く)

conversion

conversionName

コンバージョン名

time

day

日付 YYYY-MM-DD

time

hour

時間(0–23)

time

week

ISO 週

time

month

年月 YYYY-MM

source

sourceType

Direct / Search / Social / Referral / Campaign / AISearch

source

campaignUrl

キャンペーンURL

source

referralSource / referralUrl

リファラルホスト / URL

source

searchEngine

検索エンジン

source

socialNetwork / socialUrl

ソーシャル / URL

source

aiName

AI検索エンジン

ad

utmCampaign / utmSource / utmMedium / utmTerm / utmContent

UTM フィールド

terminal

deviceType

PC / Mobile / Tablet

terminal

deviceBrand

デバイスブランド

terminal

os / osVersion / browser / browserVersion

OS / ブラウザ + バージョン

terminal

screenResolution

画面解像度

geography

country / region

国 / 都道府県・州

4.6 利用可能なフィルターフィールド(filters[] 用)

フィールド名・値ともに /heatmap/query と完全に一致。上のディメンションリストとの違い:

  • フィルターには時間フィールドは含まれません(startDate / endDate で指定)

  • conversionName は名前で曖昧一致(サーバー側で目標IDに解決して検索)

  • eventVariable(カスタムイベントプロパティ)を追加

固定列挙値フィールド(下のリストの値のみ使用可):

フィールド
許可値

visitType

New visitsReturning visits

exitType

Bounce visitsNon-bounce visits

deviceType

PCMobileTablet

sourceType

DirectSearchSocialReferralCampaignAISearch

全フィルターフィールド一覧:

カテゴリ
フィールド
説明

visit

visitType / exitType

列挙値表参照

visit

originalPages / combinedPages

入口ページ(完全URL / クエリ無し)

source

sourceType

列挙値表参照

source

campaignUrl

キャンペーンURL

source

referralSource / referralUrl

リファラルホスト / URL

source

searchEngine

検索エンジン

source

socialNetwork / socialUrl

ソーシャル / URL

source

aiName

AI検索エンジン

terminal

deviceType / deviceBrand

列挙値表 / デバイスブランド

terminal

os / osVersion / browser / browserVersion

OS / ブラウザ + バージョン

terminal

screenResolution

画面解像度

geography

country / region

国 / 都道府県・州

conversion

conversionName

コンバージョン目標名(曖昧一致。例:["ptmind"] で名称に "ptmind" を含む全ての目標にマッチ)

campaign

utmCampaign / utmSource / utmMedium / utmTerm / utmContent

UTM フィールド

event

eventName

イベント名

custom

eventVariable

{ name: "eventVariable", eventName: "<イベント名>", eventVariant: "<プロパティ名>" } —— /heatmap/query filter と同じ形式

4.7 カスタムイベントプロパティ

Ptengine SDK はイベント送信時にカスタムイベントプロパティを付加できます。Open API では dimensionsfilters で形式が少し異なります:

  • dimensions 内:{ "name": "eventVariable", "eventVariant": "<プロパティ名>" }

  • filters 内:{ "name": "eventVariable", "eventName": "<イベント名>", "eventVariant": "<プロパティ名>", "op": "include"|"exclude", "value": [...] } —— /heatmap/queryeventVariable filter と同じ形式。

  • eventVariable filter を使う場合は、{ "name": "eventName", "op": "include", "value": ["<イベント名>"] } も合わせて渡してください。欠如すると 4018 を返します。

レスポンスのカラム名はプロパティ名そのまま(例:"price")。

4.8 補足事項

  • visitType / exitType / deviceType / sourceType は §4.6 の固定列挙値のみ受け付けます。表に記載されている通りの値を渡してください。

  • dimensions は必須で、"eventName" 文字列を必ず含めてください(製品の /event/segment ページと同じ動作で、イベントクエリは常にイベント名でグループ化されます)。他のディメンションや eventVariable オブジェクトと併用可能です。

  • ディメンション数の制限:非時間ディメンションは最大 3 つ + 時間ディメンション(day / hour / week / month)は最大 1 つ。いずれかを超えると 4018 を返します。製品の /event/segment ページと同じ制限です。

  • eventName filter が必須となる条件 — 以下のいずれかに該当する場合:

    • dimensionseventName / 時間ディメンション以外の項目が含まれる(例:countrysourceType

    • dimensionseventVariable オブジェクトが含まれる

    • filterseventVariable 項目が含まれる

    形式:{ "name": "eventName", "op": "include", "value": ["<イベント名>"] }。欠如すると 4018 を返します。

  • columns の順序はバックエンドの返却順に従い、リクエストの順序と一致しない場合があります。


付録

A. エラーコード

エラーコード
HTTP ステータスコード
説明

4010

401

リクエストヘッダーに x-api-key がありません

4011

401

API Key が無効です

4030

403

profileId が API Key に紐づくプロファイルと一致しません

4031

403

API Key にクエリ権限がありません。必要な scope: query

4001

400

無効な queryType

4002

400

日付フォーマットエラー、YYYY-MM-DD または YYYY/MM/DD 形式が必要です

4003

400

クエリ日付がプランのデータ保持期限を超えています

4006

400

page_insight タイプには funName が必須です

4007

400

block_metrics にはデバイスタイプの指定(PC/MOBILE/TABLET)が必要、ALL はサポートされていません

4008

400

ページブロックが未設定、製品内でページをスキャンしてください

4009

400

element_metrics にはデバイスタイプの指定(PC/MOBILE/TABLET)が必要、ALL はサポートされていません

4012

400

一致するコンバージョン目標が見つかりません

4013

400

必須項目が未指定です(レスポンスメッセージで具体的な項目名を返します)

4014

400

deviceType が無効です。ALLPCMOBILETABLET のいずれかを指定してください

4015

400

dimension / subDimension が無効です(レスポンスメッセージで具体的な理由を返します)

4016

400

ページエレメントが未設定、製品内でページをスキャンしてください

4017

400

compareBy が無効です(レスポンスメッセージで許可値を返します)

4018

400

イベントフィールドが無効です(/event/query:許可リスト外のディメンション/指標)

4019

400

フィルター演算子が無効です(/event/queryinclude または exclude

4040

404

対象のExperienceが見つかりません(id がこのプロファイル配下に存在しません)

4290

429

リクエスト頻度超過(毎分)

4291

429

リクエスト頻度超過(毎日)

5000

500

サーバー内部エラー

message はリクエストの lang(body または query)に応じて EN/ZH/JP で返されます。lang が未指定または非対応の場合は英語にフォールバックします。

エラーレスポンスフォーマット:

最終更新