データファイル定義取得APIを実装したい

データファイル定義取得APIとは

本APIの概要

データファイル定義取得APIとは、貴社の基幹システム/アプリケーションとb→dashを繋ぐことで指定したデータファイルの定義を取得することができるAPIです

貴社の基幹システム/アプリケーションから直接データファイルの定義を取得したい場合は、本API仕様書をご参照のもと貴社開発環境に実装してください。

データファイル定義とは、「データファイルID」「データファイル名」などのデータファイルの情報と、「カラムID」「主キー情報」などのデータファイルのカラムの情報のことを指します。

本APIで取得できるb→dash管理画面上のデータ

データファイル定義取得APIで取得できるデータファイルの情報/データファイルのカラム情報は、以下の12項目になります。

カテゴリ 項目
データファイル情報 データファイルID
データファイル名称
データファイル種別
データファイルステータス
データファイル最終更新日時
カラム情報 カラム一覧
カラム連番ID
カラムID
カラム名称
カラムのデータ型
個人情報フラグ
主キー

API利用にあたっての前提事項

事前準備

データファイル定義取得APIを利用する事前準備として、b→dash管理画面上で定義を取得したいデータファイルの「取込設定」を完了させておく必要があります

定義を取得したいデータファイルの取込設定がまだ完了していない場合は
データファイルの取込方法」をご参照の上、設定を完了させてください。

共通仕様

データファイル定義取得APIでは、b→dash APIの共通仕様も参照する必要があります。共通仕様の詳細については「b→dash APIの共通仕様を知りたい」をご参照ください。

事前準備と共通仕様の確認ができましたら、データファイル定義取得APIの利用方法について説明していきます!

データファイル定義取得APIの仕様

処理フロー図

データファイル定義取得リクエスト

データファイル定義取得APIのURIURIパラメータを指定してデータ連携をリクエストするリクエストURIを準備します

〇データファイル定義取得APIのURI

URI https://api.smart-bdash.com/api/v1/datafiles/{datafile_id}/describe

〇URIパラメータ

プロパティ データ型
/サイズ
必須 説明
datafile_id string
/255byte
{データファイルID} 定義を取得したいデータファイルのID

【リクエストURIサンプル】

https://api.smart-bdash.com/api/v1/datafiles/12345/describe
※上記URIは以下の条件の場合のサンプルとなります
datafile_id:12345
URIパラメータは、URIの「{xxx_xx}」に該当する値を代入することで指定することができます。
準備したリクエストURIと、下記のリクエストヘッダパラメータを用いて、貴社Webアプリから「GET」リクエスト形式でデータファイル定義取得のリクエストをします

〇リクエスト形式

HTTPメソッド GET

〇リクエストヘッダパラメータ

プロパティ
/サイズ
必須 説明
Authorization string
/2055字
Bearer {アクセストークン} 「認証方式を選択したい」で取得したアクセストークン

リクエストコードサンプル

GET https://api.smart-bdash.com/api/v1/datafiles/12345/describe

データファイル定義取得レスポンス

リクエストの送信に成功すると、下記のレスポンス形式でデータファイル定義が記載されたレスポンスが返されます

〇レスポンスボディパラメータ

パラメータ名 Key データ型 説明
階層1:result object -
階層2:code integer($int32) ●ステータスコード
リクエスト成功:「200」
リクエストエラー:「400」
階層2:id string ●データファイルのID
階層2:name string ●データファイルの名称
階層2:datafile_type string ●データファイルの種別
・マスターデータファイル:「MASTER」
・統合データファイル:「INTEGRATED」
・b→dashデータファイル:「BDASH」
階層2:status integer($int32) ●データファイルのステータス
・編集中:「1」
・処理前:「2」
・処理中:「3」
・処理完了:「4」
・エラー:「5」
階層2:lastmodified string ●データファイルの最終更新日時
※yyyy/MM/dd hh24:mi:ss形式
階層2:columns object[] ●カラムの一覧
階層3:number integer($int32) ●全データファイルを通したカラムの連番id
階層3:id string ●カラムのID
階層3:name string ●カラムの名称
階層3:data_type string ●カラムのデータ型
・テキスト型:「string」
・整数型:「bigint」
・小数型:「double」
・日付型:「date」
・日時型:「datetime」
・真偽値型:「boolean」
階層3:is_primary_key boolean ●カラムが主キーであるか
・主キーである:「true」
・主キーでない:「false」
階層3:is_personal_data boolean ●カラムに個人情報フラグが立っているか
・フラグあり:「true」
・フラグなし:「false」

【レスポンスボディサンプル】

{ 
  "result": { 
    "code": 200, 
    "id": "10001", 
    "name": "データファイルA", 
    "datafile_type": "MASTER", 
    "status": 1, 
    "lastmodified": "2021/12/31 23:59:00", 
    "columns": [ 
      { 
        "number": "1", 
        "id": "COLUMN_1", 
        "name": "顧客ID", 
        "data_type": "string", 
        "is_primary_key": true, 
        "is_personal_data": false 
      }, 
      { 
        "number": "2", 
        "id": "COLUMN_2", 
        "name": "年齢", 
        "data_type": "bigint", 
        "is_primary_key": false, 
        "is_personal_data": false 
      }, 
      { 
        "number": "3", 
        "id": "COLUMN_3", 
        "name": "メールアドレス", 
        "data_type": "string", 
        "is_primary_key": false, 
        "is_personal_data": true 
      }, 
      { 
        "number": "4", 
        "id": "COLUMN_4", 
        "name": "優良顧客フラグ", 
        "data_type": "boolean", 
        "is_primary_key": false, 
        "is_personal_data": false 
      }, 
      { 
        "number": "5", 
        "id": "COLUMN_5", 
        "name": "最終更新日時", 
        "data_type": "datetime", 
        "is_primary_key": false, 
        "is_personal_data": false 
      } 
    ] 
  } 
}