LoginSignup
1
1

More than 1 year has passed since last update.

Hexabase APIのuse_display_idの使い方

Posted at

Hexabaseは企業向けにBaaS(Backend as a service)を提供しています。データベースやファイルストア、認証などを提供することで、フロントエンドエンジニアだけでも企業向けシステムを開発可能にします。

HexabaseではAPIをREST API、そしてGraphQLで提供しています。今回はこのAPIの中で登場するuse_display_idについて解説します。

ディスプレイIDとは

Hexabaseでは幾つかの機能について、IDを利用しています。

機能 ID名
プロジェクト プロジェクトID
データストア データストアID

どちらも管理画面にて確認できます(執筆時点で管理画面変更中につき、アプリケーションID/データベースIDとなっています)。このIDは開発者の方が、自由に付けられる名称になります。英数字と幾つかの記号(スペース/_/-など)が利用できます。また、日本語名や英語名も自由に付けられます。

image.png

検索時などでの指定

そして、このIDを検索条件に使う場合にはAPIを呼ぶ際にuse_display_idパラメーターをtrueにしてください。例えばデータストアのアイテム詳細を取得する際には次のようにします。

query(
  $datastoreId: String!,
  $datastoreItemDetailParams: DatastoreItemDetailParams,
  $itemId: String!,
  $projectId: String
) {
  getDatastoreItemDetails(
    datastoreItemDetailParams: $datastoreItemDetailParams,
    datastoreId: $datastoreId,
    itemId: $itemId,
    projectId: $projectId
  ) {
    title
    rev_no
    field_values
    status_list
    item_actions
    status_actions
    status_order
    status_action_order
    item_action_order
  }
}

パラメーターは以下のような形です。

{
  "datastoreId": "Task",
	"datastoreItemDetailParams": {
    "format": "map",
    "use_display_id": true // <- ここ
  },
	"itemId": "635108665a0adcf0808fa221",
	"projectId": "Task Manager"
}

この use_display_id を付けることで、 Task ManagerTask といった名称が使えるようになります。 false だと Request failed with status code 500 が発生するので注意してください。

まとめ

数字で指定すると、後でどのプロジェクトだったのか、正しいテーブルを指定できているのか分かりづらくなります。 use_display_idtrue にしていても数字で指定した検索は可能なので、特に制約がない場合には use_display_idtrue にしておくのをお勧めします。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1