次の方法で共有


データ API ビルダー構成スキーマ リファレンス

データ API ビルダーを実行するには、少なくとも 1 つの構成ファイルが必要です。 この JSON ベースのファイルは、環境設定からエンティティ定義まで、API のセットアップを定義します。 ファイルの残りの部分のスキーマ検証を有効にする $schema プロパティで始まります。

Top-level properties

Property Description
$schema この構成の JSON スキーマの URI。
data-source データベース接続設定を含むオブジェクト。
data-source-files その他の構成ファイル パスの配列。
runtime ランタイム動作を構成するオブジェクト。
entities REST または GraphQL を介して公開されるすべてのエンティティを定義するオブジェクト。

Data-source properties

Property Description
data-source データベース接続設定を含むオブジェクト。
data-source.database-type バックエンドで使用されるデータベースの種類 (mssql、postgresql、mysql、cosmosdb_nosql、cosmosdb_postgresql)。
data-source.connection-string 選択したデータベースの種類の接続文字列。
data-source.options データベース固有のオプションと詳細設定。
data-source.health データ ソースの正常性チェックの構成。
data-source-files その他の構成ファイル パスの配列。

Runtime properties

Property Description
runtime ランタイム動作を構成するオブジェクト。
runtime.pagination API 応答の改ページ設定。
runtime.rest REST API グローバル構成。
runtime.graphql GraphQL API グローバル構成。
runtime.cache グローバル応答キャッシュ構成。
runtime.telemetry テレメトリ、ログ記録、監視の構成。
runtime.health グローバル正常性チェックの構成。

Entities properties

Property Description
entities REST または GraphQL を介して公開されるすべてのエンティティを定義するオブジェクト。
entities.entity-name.source エンティティのデータベース ソースの詳細。
entities.entity-name.rest エンティティの REST API 構成。
entities.entity-name.graphql エンティティの GraphQL API 構成。
entities.entity-name.permissions エンティティのアクセス許可とアクセス制御。
entities.entity-name.relationships 他のエンティティとのリレーションシップ。
entities.entity-name.cache エンティティ レベルのキャッシュ構成。
entities.entity-name.health エンティティ レベルの正常性チェックの構成。

Schema

Parent Property タイプ Required Default
$root $schema 文字列 ✔️ Yes None

Each configuration file begins with a $schema property, specifying the JSON schema for validation.

Format

{
  "$schema": <string>
}

Example

{
  "$schema": "https://github.com/Azure/data-api-builder/releases/latest/download/dab.draft.schema.json"
}

Tip

最新のスキーマは常に https://github.com/Azure/data-api-builder/releases/latest/download/dab.draft.schema.jsonで使用できます。

Versioning

スキーマ ファイルは特定の URL で使用できるため、適切なバージョンまたは使用可能な最新のスキーマを使用できます。

https://github.com/Azure/data-api-builder/releases/download/<VERSION>-<suffix>/dab.draft.schema.json

VERSION-suffix を目的のバージョンに置き換えます。

https://github.com/Azure/data-api-builder/releases/download/v0.3.7-alpha/dab.draft.schema.json

データ ソース ファイル

Parent Property タイプ Required Default
$root data-source-files string array ❌ いいえ None

データ API ビルダーは、複数の構成ファイルをサポートします。1 つは、 runtime 設定を管理する最上位ファイルとして指定されています。 すべての構成で同じ JSON スキーマが共有されるため、エラーなしで任意のファイルまたはすべてのファイルで runtime 設定が可能になります。 組織を改善するためにエンティティを分割します。

1 つの構成ファイル内で配列として参照される複数の構成ファイルの図。

Format

{
  "data-source-files": [ "<string>" ]
}

複数の構成規則

  • すべての構成ファイルに、data-source プロパティを含める必要があります。
  • すべての構成ファイルに、entities プロパティを含める必要があります。
  • 最上位の構成には、 runtimeを含める必要があります。
  • 子構成には runtimeを含めることができますが、無視されます。
  • 子構成ファイルには、独自の子ファイルを含めることができます。
  • 構成ファイルはサブフォルダーに編成できます。
  • エンティティ名は、すべての構成ファイルで一意である必要があります。
  • 異なる構成ファイル内のエンティティ間のリレーションシップはサポートされていません。

Examples

{
  "data-source-files": [
    "dab-config-2.json",
    "my-folder/dab-config-3.json",
    "my-folder/my-other-folder/dab-config-4.json"
  ]
}