データ API ビルダーのコマンド ライン インターフェイス リファレンス
Data API Builder コマンド ライン インターフェイス (CLI) (dab CLI または dab
) は、Data API Builder を使用してアプリケーションのローカル開発エクスペリエンスを効率化するコマンド ライン ツールです。
先端
Data API Builder CLI には、統合されたヘルプ システムが付属しています。 使用可能なコマンドの一覧を取得するには、--help
コマンドの dab
オプションを使用します。
dab --help
特定のコマンドに関するヘルプを表示するには、--help
オプションを使用します。 たとえば、init
コマンドの詳細については、次を参照してください。
dab init --help
コマンド ライン動詞とオプション
init
データ API ビルダー ランタイム エンジンのランタイム構成を初期化します。 オプションとして指定されたプロパティを使用して、新しい JSON ファイルが作成されます。
構文
dab init [options]
例
dab init --config "dab-config.mssql.json" --database-type mssql --connection-string "@env('SQL_CONNECTION_STRING')"
dab init --database-type mysql --connection-string "@env('MYSQL_CONNECTION_STRING')" --graphql.multiple-create.enabled true
オプション
オプション | オプション必須 | 既定値 | 必要な値 | 値の型 | 形容 |
---|---|---|---|---|---|
--database-type | ✔️ はい | ✔️ はい | 糸 | 接続するデータベースの種類。 サポートされる値: mssql 、cosmosdb_nosql 、cosmosdb_postgresql 、mysql 、postgresql 。 |
|
--connection-string | ❌ いいえ | "" |
✔️ はい | 糸 | データベースに接続するための接続の詳細。 |
--cosmosdb_nosql-database | ✔️ はい ¹ | ✔️ はい | 糸 | Cosmos DB for NoSql のデータベース名。 | |
--cosmosdb_nosql-container | ❌ いいえ | ✔️ はい | 糸 | NoSql 用 Cosmos DB のコンテナー名。 | |
--graphql-schema | ✔️ はい ¹ | ✔️ はい | 糸 | GraphQL スキーマパス | |
--set-session-context | ❌ いいえ | false |
❌ いいえ | セッション コンテキストを使用して MsSql へのデータの送信を有効にします。 | |
--host-mode | ❌ いいえ | production |
✔️ はい | 糸 | ホスト モード (開発または運用) を指定する |
--cors-origin | ❌ いいえ | "" |
✔️ はい | 糸 | 許可される配信元の一覧を指定します。 |
--auth.provider | ❌ いいえ | StaticWebApps |
✔️ はい | 糸 | ID プロバイダーを指定します。 |
--rest.path | ❌ いいえ | /api |
✔️ はい | 糸 | REST エンドポイントのプレフィックスを指定します。 |
--rest.enabled | ❌ いいえ | true |
✔️ はい | ブーリアン | すべてのエンティティに対して REST エンドポイントを有効にします。 |
--rest.request-body-strict | ❌ いいえ | true |
✔️ はい | 要求本文で余分なフィールドを許可しません。 | |
--graphql.path | ❌ いいえ | /graphql |
✔️ はい | 糸 | GraphQL エンドポイントのプレフィックスを指定します。 |
--graphql.enabled | ❌ いいえ | true |
✔️ はい | ブーリアン | すべてのエンティティに対して GraphQL エンドポイントを有効にします。 |
--graphql.multiple-create.enabled | ❌ いいえ | false |
✔️ はい | GraphQL で複数の作成機能を有効にします。 | |
--auth.audience | ❌ いいえ | ✔️ はい | 糸 | Json Web トークン (JWT) の対象となる受信者を識別します。 | |
--auth.issuer | ❌ いいえ | ✔️ はい | 糸 | JWT トークンを発行したパーティを指定します。 | |
-c,--config | ❌ いいえ | dab-config.json |
✔️ はい | 糸 | 構成ファイルへのパス。 |
¹ このオプションは、--database-type
が cosmosdb_nosql
に設定されている場合にのみ必要です。
add
新しいデータベース エンティティを構成ファイルに追加します。 このコマンドを実行する前に構成ファイルが既にあることを確認してください。それ以外の場合はエラーが返されます。
構文
dab add [entity-name] [options]
例
dab add Book -c "dab-config.MsSql.json" --source dbo.books --permissions "anonymous:*"
オプション
オプション | オプション必須 | 既定値 | 必要な値 | 値の型 | 形容 |
---|---|---|---|---|---|
-s,--source | ✔️ はい | ✔️ はい | 糸 | ソース テーブルまたはコンテナーの名前。 | |
--permissions | ✔️ はい | ✔️ はい | 糸 | ソース テーブルまたはコンテナーにアクセスするために必要なアクセス許可。 形式: [role]:[actions] . |
|
--source.type | ❌ いいえ | table |
✔️ はい | 糸 | データベース オブジェクトの型。 サポートされている値: table 、view 、stored-procedure 。 |
--source.params | ❌ いいえ | ✔️ はい | 糸 | ストアド プロシージャ パラメーターとそのデータ型のディクショナリ。 サポートされているデータ型は、string 、number 、および boolean です。 パラメーターは、paramName:type 形式で指定します。 例: --source.params "id:number,isActive:boolean,name:string" . |
|
--source.key フィールド | ✔️ はい ¹ | ✔️ はい | 糸 | テーブルとビューのみの主キーとして使用する 1 つ以上のフィールド。 コンマ区切りの値。
--source.key-fields "id,name,type" の例 |
|
--rest | ❌ いいえ | 大文字と小文字 区別されるエンティティ名の | ✔️ はい | 糸 | REST API のルート。 例: --rest: false -> このエンティティの REST API 呼び出しを無効にします。
--rest: true - エンティティ名> 残りのパスになります。
--rest: "customPathName" -> 指定された customPathName が REST パスになります。 |
--rest.methods | ❌ いいえ | post |
✔️ はい | 糸 | ストアド プロシージャでサポートされる HTTP アクション。 アクションをコンマ区切りリストとして指定します。 有効な HTTP アクションは次のとおりです:[get, post, put, patch, delete]。 |
--graphql | ❌ いいえ | 大文字と小文字 区別されるエンティティ名の | ✔️ はい | Bool/String | GraphQL 用に公開されているエンティティ型。 例: --graphql: false -> は、このエンティティの graphql 呼び出しを無効にします。
--graphql: true -> GraphQL のエンティティを既定の名前で公開します。 エンティティ名の単一の形式は、クエリ名とミューテーション名と見なされます。
--graphql: "customQueryName" -> 明示的に単数形の値を設定し、DAB はクエリと変更に対して指定された値を複数形化します。
--graphql: "singularName:pluralName" -> クエリと変更に使用される単数形と複数形の値 (コロン : で区切られた値) の両方を設定します。 |
--graphql.operation | ❌ いいえ | mutation |
✔️ はい | 糸 | ストアド プロシージャでサポートされる GraphQL 操作。 サポートされている値: query 、mutation 。 |
--fields.include | ❌ いいえ | ✔️ はい | 糸 | アクセス許可を持つフィールド。 | |
--fields.exclude | ❌ いいえ | ✔️ はい | 糸 | アクション リストから除外されるフィールド。 | |
--policy-database | ❌ いいえ | ✔️ はい | 糸 | データベースに送信されるクエリに挿入される OData スタイルフィルタールールを指定します。 | |
-c,--config | ❌ いいえ | dab-config.json |
✔️ はい | 糸 | 構成ファイルへのパス。 |
¹ このオプションは、--source.type
が view
に設定されている場合にのみ必要です。
update
構成ファイル内の任意のデータベース エンティティのプロパティを更新します。
手記
dab update
では、dab add
でサポートされているすべてのオプションがサポートされます。 さらに、一覧表示されているオプションもサポートしています。
構文
dab update [entity-name] [options]
例
dab update Publisher --permissions "authenticated:*"
オプション
オプション | オプション必須 | 既定値 | 必要な値 | 値の型 | 形容 |
---|---|---|---|---|---|
--relationship | ❌ いいえ | ✔️ はい | 糸 | 2 つのエンティティ間のリレーションシップを指定します。 リレーションシップの名前を指定します。 | |
--カーディナリティ | ✔️ はい ¹ | ✔️ はい | 糸 | 2 つのエンティティ間のカーディナリティを指定します。 1 つまたは複数の場合があります。 | |
--target.entity | ✔️ はい ¹ | ✔️ はい | 糸 | ソース エンティティが関連付けられている別の公開エンティティ。 | |
--linking.object | ❌ いいえ | ✔️ はい | 糸 | M:N リレーションシップをサポートするために使用されるデータベース オブジェクト。 | |
--linking.source.fields | ❌ いいえ | ✔️ はい | 糸 | リンク オブジェクト内のデータベース フィールド。ソース エンティティ内の関連アイテムに接続します。 コンマ区切りフィールド。 | |
--linking.target.fields | ❌ いいえ | ✔️ はい | 糸 | リンク オブジェクト内のデータベース フィールド。ターゲット エンティティ内の関連アイテムに接続します。 コンマ区切りフィールド。 | |
--relationship.fields | ❌ いいえ | ✔️ はい | 糸 | エンティティのマッピングに使用するフィールドを指定します。 例: --relationship.fields "id:book_id" . ここでは、id は sourceEntity の列を表し、targetEntity から book_id します。 指定しない場合は、基になるソース間で外部キーが必要です。 |
|
-m,--map | ❌ いいえ | ✔️ はい | 糸 | データベース フィールドと GraphQL フィールドと REST フィールドの間のマッピングを指定します。 形式: --map "backendName1:exposedName1, backendName2:exposedName2,..." . |
¹ このオプションは、--relationship
オプションを使用する場合にのみ必要です。
export
必要なスキーマをファイルとしてエクスポートし、オプションに基づいてディスクに保存します。
構文
dab export [options]
例
dab export --graphql -o ./schemas
オプション
オプション | オプション必須 | 既定値 | 必要な値 | 値の型 | 形容 |
---|---|---|---|---|---|
--graphql | ❌ いいえ | false |
❌ いいえ | GraphQL スキーマをエクスポートします。 | |
-o,--output | ✔️ はい | ✔️ はい | 糸 | スキーマ ファイルを保存するディレクトリを指定します。 | |
-g,--graphql-schema-file | ❌ いいえ | schema.graphql |
✔️ はい | 糸 | Graphql スキーマ ファイルの名前を指定します。 |
-c,--config | ❌ いいえ | dab-config.json |
✔️ はい | 糸 | 構成ファイルへのパス。 |
start
REST 要求と GraphQL 要求を処理するための指定された構成ファイルを使用してランタイム エンジンを起動します。
構文
dab start [options]
例
dab start
オプション
オプション | オプション必須 | 既定値 | 必要な値 | 値の型 | 形容 |
---|---|---|---|---|---|
--verbose | ❌ いいえ | ❌ いいえ | 情報としてログ 記録レベルを指定します。 | ||
--LogLevel | ❌ いいえ |
Debug 時に HostMode=Production 時に |
✔️ はい | 糸 | 指定された値としてログ 記録レベルを指定します。 例: デバッグ、エラー、情報など |
--no-https-redirect | ❌ いいえ | ✔️ はい | - | https の自動リダイレクトを無効にします。 | |
-c,--config | ❌ いいえ | dab-config.json |
✔️ はい | 糸 | 構成ファイルへのパス。 |
手記
--verbose
と --LogLevel
を同時に使用することはできません。 さまざまなログ 記録レベルの詳細については、「.NET ログ レベル
validate
データ API ビルダーランタイム エンジンによって使用されるランタイム構成ファイルを検証します。 検証プロセスにより、構成ファイルがスキーマに準拠し、ランタイム エンジンが正しく機能するために必要なすべての情報が含まれていることが保証されます。
構文
dab validate [options]
例
dab validate
オプション
オプション | オプション必須 | 既定値 | 必要な値 | 値の型 | 形容 |
---|---|---|---|---|---|
-c,--config | ❌ いいえ | dab-config.json |
✔️ はい | 糸 | 検証の対象となる構成ファイルへのパス。 |