参照テーブルAPI
呼び出し方法は、Open APIドキュメントの呼び出し方法の説明を参照してください。
1. 参照テーブルの作成
- リクエストボディは参照テーブルの内容です。詳細は参照テーブル作成パラメータ
createParamの設定を参照してください - デフォルトのファイルサイズ上限は200Mです
インターフェースURL
/open/dict-create?token=xxx&projectId=0
リクエストメソッド
POST
Content-Type
text/csv
リクエストQueryパラメータ
| パラメータ名 | サンプル値 | パラメータタイプ | 必須 | パラメータの説明 |
|---|---|---|---|---|
| token | xxx | String | はい | クエリキー |
| projectId | 0 | Integer | はい | プロジェクトID |
| createParam | {"mainColumn":{"property":{"columnName":"channel","tableType":"event"}},"columns":[{"property":{"columnName":"channel_id","selectType":"string"}},{"property":{"columnName":"channel_name","columnDesc":"チャネルタイプ","selectType":"string"}}]} | String | はい | 作成するディメンション列の情報の記述 |
参照テーブル作成パラメータcreateParamの設定
参照テーブルのプロパティの作成
ここでのメインフィールドはchannelで、参照テーブルの1列目のchannelに対応します。追加する参照テーブルのプロパティはchannel_nameです
1. 参照テーブルの例
- 参照テーブルのデータはcsv形式です。1列目は関連フィールドで、参照テーブルのプロパティとしては作成されません。2列目以降が追加する参照テーブルのプロパティです
- データの1行目はフィールド名、2行目以降がデータです
channel,channel_name
1,竜騰サーバー1
2,竜騰サーバー2
3,竜騰サーバー3
2. createParamの例(イベントテーブルのchannelフィールドに上記の参照テーブルを作成)
columnsリストの要素の順序は、参照テーブルのデータの列の順序と一致し、名前も一致している必要があります。そのうち最初の要素(先頭の関連列に対応)の名前は、親要素と同じでも異なっていてもかまいません(異なる場合は、アルファベットで始まり、アルファベット、数字、アンダースコアのみを含む名前にする必要があります)。
{
"mainColumn": {
"property": {
"columnName": "channel",
"tableType": "event",
"timestampJoinFormat": null
}
},
"columns": [
{
"property": {
"columnName": "channel",
"selectType": "number"
}
},
{
"property": {
"columnName": "channel_name",
"columnDesc": "チャネルタイプ",
"selectType": "string"
}
}
]
}
3. createParamのフィールドの説明
mainColumnノード(参照テーブルを作成するメインフィールドの記述ノード)
| プロパティ名 | プロパティの説明 |
|---|---|
| property | メインプロパティ(物理プロパティ、仮想プロパティのどちらも可) |
| columnName | メインプロパティのフィールド名 |
| tableType | メインプロパティが属するテーブルのタイプ。event:イベントプロパティ、user:ユーザープロパティ |
| timestampJoinFormat | メインプロパティが時間タイプ(timestamp)の場合、タイムスタンプを指定の粒度で計算してから参照テーブルのプロパティをバインドできます |
timestampJoinFormatは次の粒度タイプに対応しています。
| 値 | 説明 |
|---|---|
| DATE_STR_YEAR | プロパティを"yyyy"形式の文字列にフォーマットしてから参照テーブルのプロパティをバインドします |
| DATE_STR_MONTH | プロパティを"yyyy-MM"にフォーマットしてから参照テーブルのプロパティをバインドします |
| DATE_STR_DAY | プロパティを"yyyy-MM-dd"にフォーマットしてから参照テーブルのプロパティをバインドします |
| DATE_STR_HOUR | プロパティを"yyyy-MM-dd hh"にフォーマットしてから参照テーブルのプロパティをバインドします |
| DATE_STR_MINUTE | プロパティを"yyyy-MM-dd HH:mm"にフォーマットしてから参照テーブルのプロパティをバインドします |
| DATE_STR_SECOND | プロパティを"yyyy-MM-dd HH:mm:ss"にフォーマットしてから参照テーブルのプロパティをバインドします |
| DATE_STR_MILLISECOND | プロパティを"yyyy-MM-dd HH:mm:ss.SSS"にフォーマットしてから参照テーブルのプロパティをバインドします |
columnsリスト(ディメンションフィールドの記述ノード)
columnsリストの要素の順序は、参照テーブルのデータの列の順序と一致している必要があります。
| プロパティ名 | プロパティの説明 |
|---|---|
| property | ディメンションフィールドのプロパティリスト |
| columnName | ディメンションフィールド名 |
| columnDesc | ディメンションフィールドの説明。フィールドの表示名です(任意) |
| selectType | ディメンションフィールドのタイプ:number 数値、bool ブール値、string 文字列、datetime 日付タイプ、array_string リスト(プライマリキー列のみ。その他の列は不可) |
4. 作成結果
作成に成功すると、プロパティ名がchannel@channel_nameの参照テーブルのプロパティが表示されます
成功レスポンスの例
{
"data": {
"duplcatedMainKeyColumns": ["activity_type@type_test"],
"duplcatedMainKeyLineNum": 2,
"mainKeyErrorColumns": ["activity_type@type_test"],
"mainKeyErrorLineNum": 3,
"successLineNum": 27,
"totalLineNum": 40,
"typeErrorColumns": ["numwrong_test", "boolwrong_test"],
"typeErrorLineNum": 8
},
"return_code": 0,
"return_message": "success"
}
| $$パラメータ名 | サンプル値 | パラメータタイプ | パラメータの説明 |
|---|---|---|---|
| return_code | 0 | Integer | リターンコード |
| return_message | success | String | リターンメッセージ |
| data | - | Object | 戻り値 |
| data.duplcatedMainKeyColumns | ["activity_type@type_test"] | List | 関連メインフィールドが重複している列名 |
| data.duplcatedMainKeyLineNum | 2 | Integer | 関連メインフィールドが重複している行数(自動的に破棄されます) |
| data.mainKeyErrorColumns | ["activity_type@type_test"] | List | 関連メインフィールドの解析エラーが発生した列名 |
| data.mainKeyErrorLineNum | 3 | Integer | 関連メインフィールドの解析エラーが発生した行数(自動的に破棄されます) |
| data.successLineNum | 27 | Integer | 成功した行数 |
| data.totalLineNum | 40 | Integer | 総行数 |
| data.typeErrorColumns | ["numwrong_test", "boolwrong_test"] | List | その他のフィールドでタイプエラーが発生した列名 |
| data.typeErrorLineNum | 8 | Integer | その他のフィールドでタイプエラーが発生した行数(空になります) |
エラーレスポンスの例
{
"return_code": -1008,
"return_message": "アップロードするファイルのサイズは209715200バイトを超えることはできません"
}
| パラメータ名 | サンプル値 | パラメータタイプ | パラメータの説明 |
|---|---|---|---|
| return_code | -1100 | Integer | リターンコード |
| return_message | アップロードするファイルのサイズは209715200バイトを超えることはできません | String | リターンメッセージ |
curlの例
curl --header 'Content-Type: text/csv' --data-binary '@test.csv' 'http://ta2:8992/open/dict-create?token=YOUR_TOKEN&projectId=377&createParam=%7B%22mainColumn%22%3A%7B%22property%22%3A%7B%22columnName%22%3A%22channel%22%2C%22tableType%22%3A%22event%22%7D%7D%2C%22columns%22%3A%5B%7B%22property%22%3A%7B%22columnName%22%3A%22channel_id%22%2C%22selectType%22%3A%22string%22%7D%7D%2C%7B%22property%22%3A%7B%22columnName%22%3A%22channel_name%22%2C%22columnDesc%22%3A%22%E6%B8%A0%E9%81%93%E7%B1%BB%E5%9E%8B%22%2C%22selectType%22%3A%22string%22%7D%7D%5D%7D'

