AND で区切られます。フィールドは、その単純型に応じて、次のいずれかとして表されます。
ビルトイン RESTful サービス
Related information
はじめに
使用されるアーキテクチャは ROA (Resource-Oriented Architecture) と呼ばれ、SOA (Service-Oriented Architecture) に代わるものと考えられます。選択したリソースは、リクエストのコンテンツに応じて、サードパーティのシステムで読み取りおよび書き込みが可能です。
ビルトイン RESTful サービスの HATEOAS アプローチにより、直感的で分かりやすいナビゲーションも可能になります。これは、リンクを介してデータの詳細を取得できることを意味します。
注意:
すべての操作はステートレスです。
リクエスト
HTTP メソッド
ビルトイン RESTful サービスで考慮される HTTP メソッドは次のとおりです。
-
GET:URL で定義されたマスターデータの選択に使用されます (URL のサイズ制限は、アプリケーションサーバーとブラウザーによって異なります。2KB 以下である必要があります)。 -
POST:テーブルへのレコードの挿入、または URL で定義されたマスターデータの選択に使用されます (サイズ制限は 2MB 以上ですが、アプリケーションサーバーによって異なります。各パラメーターは、1024 バイトまでの値に制限されます)。 -
PUT:URL で定義されたマスターデータの更新に使用されます。 -
DELETE:URL で定義されたレコード、またはテーブル URL とメッセージ本文のレコードキーで定義された複数レコードのいずれかを削除するために使用されます。
URL
REST URL には次のものが含まれます。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/{categoryVersion}/{specificPath}[:{extendedAction}]?{queryParameters}
説明
-
<ebx-dataservices>は、「ebx-dataservices.war」Web アプリケーションのパスに対応します。パスは、複数の URI セグメント (またはなし) と Web アプリケーションの名前の順序で構成されます。 -
{category}は、操作カテゴリに対応します。 -
{categoryVersion}は、カテゴリのバージョンに対応します。現在の値はv1です。 -
{specificPath}は、カテゴリ内の特定のパスに対応します。 -
{extendedAction}は、拡張アクション名に対応します (オプション)。 -
{queryParameters}は、URL で渡される共通または専用の操作パラメーターに対応します。
操作カテゴリ
操作を特定します。URL のパスの
{category} に追加され、次のいずれかの値を指定します。
admin
|
管理者専用の管理操作です。
詳細については、管理操作を参照してください。
|
auth
|
トークン認証方法を管理します。
詳細については、トークン認証操作およびトークン認証スキームを参照してください。
|
data または data-compact
|
データセットのコンテンツを表示します。テーブル、レコード、またはフィールドレコードのコンテンツ (データセットノード、テーブル、レコード、レコードフィールドでの変更操作を含む) をリクエストします (単純な使用では、インタラクションを簡易にするためコンパクトフォーマットが使用可能)。
データスペースとスナップショットのライフサイクルを管理します。
|
form-data または form-data-compact
|
受信データを検証し、データセットノード、レコード、またはレコードフィールドを挿入または更新する前にレポートを返します (単純なユースケースでの対話を容易にするために、コンパクトフォーマットが利用可能です)。
詳細については、フォームデータ操作およびコンパクトフォーマットの制限を参照してください。
|
health
|
サーバーのヘルス情報は、監視ツールまたはコンテナプローブの情報を返します。
詳細については、ヘルスオペレーションを参照してください。
|
history
|
履歴データセットのコンテンツを表示します。履歴テーブル、レコードの履歴、または履歴レコードをリクエストします。
詳細については、データ操作を参照してください。
以下も参照してください。:
|
api
|
選択したリソースの OpenAPI ドキュメントを生成します。
詳細については、OpenAPI 操作を参照してください。
|
ヘッダーフィールド
これらのヘッダーフィールド定義は、TIBCO EBX® によって使用されます。
Accept
|
応答で使用されるコンテンツタイプを (優先順に) 指定するために使用されます。最初にサポートされたものが選択され、応答ヘッダー
Content-Type で指定されます。現在、サポートされているのは application/json のみです。サポートされていない場合、結果はプロパティ ebx.dataservices.rest.request.checkAccept によって異なります。
以下も参照してください。:
|
Accept-Language
|
応答の優先ロケールを指定するために使用されます。サポートされているロケールは、スキーマモデルで定義されています。
優先ロケールがサポートされていない場合は、現在のモデルのデフォルトロケールが使用されます。
|
Authorization
|
サポートされている認証スキームには、「基本認証スキーム」と「トークン認証スキーム」が含まれます。別のスキームが使用されている場合、要求は拒否されます。
以下も参照してください。:
|
Content-Type
|
リクエスト本文のメディアタイプを指定するために使用されます。サポートされているタイプは
application/json と application/x-www-form-urlencoded です。リクエスト値がサポートされていない場合、コード 415 (Unsupported media type) を含む HTTP エラーメッセージが返されます。
以下も参照してください。:
|
X-Requested-With
|
存在する場合、認証が失敗した場合に応答に
WWW-Authenticate ヘッダーが追加されないようにします。
以下も参照してください。:
|
HTTP ヘッダーフィールド定義の詳細については、RFC2616 を参照してください。
共通パラメーター
これらのオプションのパラメーターは、すべてのデータサービス操作で使用できます。
|
パラメーター
|
説明
|
|---|---|
disableRedirectionToLastBroadcast
|
このパラメーターは、D3 アーキテクチャにのみ影響します。
true の場合、D3 プライマリノードの配信データスペースへのアクセスは、最後のブロードキャストスナップショットにリダイレクトされません。それ以外の場合、そのようなデータスペースへのアクセスは常に最後のブロードキャストスナップショットにリダイレクトされます。
指定されたデータスペースが D3 プライマリノードの配信データスペースでない場合、このパラメーターは無視されます。
ブール値型の値。このパラメーターが存在しない場合、構成プロパティ ebx.dataservices.disableRedirectionToLastBroadcast.default が設定されていない限り、デフォルトは false (D3 マスターへのリダイレクトが有効) です。
以下も参照してください。:
|
ebx-indent
indent (6.0.0 以降非推奨)
|
読みやすくするために、応答をインデントするかどうかを指定します。
ブール値型。デフォルト値は false です。
|
ebx-channel
|
セッションチャネルを指定します。
文字列型。使用可能な値は次のとおりです。
デフォルト値は
dataServices です。
以下も参照してください。:
|
メッセージ本文
JSON 形式を使用したリクエストデータが含まれています。拡張 JSON リクエスト本文およびコンパクト JSON リクエスト本文を参照してください。
注意:
リクエストは、
POST または PUT HTTP メソッドを使用する場合にのみメッセージ本文を定義できます。
応答
ここでは、ビルトイン RESTful サービスで返される応答について説明します。
-
標準エラー処理の詳細については、例外処理を参照してください (HTTP コードが
300以上の場合)。
ヘッダーフィールド
これらのヘッダーフィールド定義は、EBX® によって使用されます。
Content-Language
|
ラベルと説明の応答で使用されるロケールを示します。
|
Content-Type
|
応答本文のコンテンツタイプを示します。
|
Location
|
新しいレコードが正常に挿入された場合、このレコードのクエリ URL がこのフィールドで返されます。
|
WWW-Authenticate
|
このヘッダーフィールドは、401 (Unauthorized) HTTP コードで認証が失敗した場合に HTTP 応答に追加されます。その値は、リクエスト URI に適用可能な少なくとも 1 つの認証方法を含むリストで構成されます。次の条件が確認された場合にのみ存在します。
クライアントが認証方法を解釈できる場合は、適切な資格情報を提供してリクエストを再送信できます。
管理プロパティ ebx.dataservices.rest.auth.tryBasicAuthentication を
true に設定する必要があります。
以下も参照してください。:
|
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (OK)
|
リクエストは正常に処理されました。
|
201 (Created)
|
新しいレコードが作成されました。この場合、ヘッダーフィールド Location がそのリソース URL とともに返されます。
|
204 (No content)
|
リクエストは正常に処理されましたが、応答本文は返されません。
|
400 (Bad request)
|
リクエストの URL または本文が整形式でないか、無効なコンテンツが含まれています。
|
401 (Unauthorized)
|
認証に失敗しました。
|
403 (Forbidden)
|
認証済みユーザーの指定されたリソースの読み取りまたは変更権限が拒否されました。
このエラーは、ユーザーが次の場合にも返されます。
|
404 (Not found)
|
URL で指定されたリソースが見つかりません。
|
406 (Not acceptable)
|
リクエストの Accept パラメーターで定義されたコンテンツタイプはサポートされていません。このエラーは、EBX® プロパティ ebx.rest.request.checkAccept が true に設定されている場合にのみ返されます。
|
409 (Conflict)
|
同時変更が発生しました。
以下も参照してください。:
|
415 (Unsupported media type)
|
リクエストコンテンツはサポートされません。リクエストヘッダー値 Content-Type はこの操作でサポートされません。
|
422 (Unprocessable entity)
|
セマンティック上の理由により、新しいリソースのコンテンツを受け入れできません。
|
500 (Internal error)
|
アプリケーションによる予期しないエラー。エラーの詳細は通常、EBX® ログに記録されます。
|
メッセージ本文
応答本文のコンテンツのフォーマットは、HTTP コード値によって異なります。
-
200included から300excluded までの HTTP コード:コンテンツのフォーマットは、関連するリクエストによって異なります (拡張 JSON および コンパクト JSON のサンプル)。コード204(No content) は例外です。 -
300以上の HTTP コード。コンテンツはエラーを説明しています。フォーマットの詳細については、JSON を参照してください。
管理操作
管理操作は以下に関連します。
-
管理カテゴリ。
-
データカテゴリからアクセス可能な管理データスペース。
注意:
管理カテゴリと管理データスペースは、管理者のみが使用できます。
ディレクトリ操作
EBX® のデフォルトのディレクトリ構成は、ビルトイン RESTful サービスで管理できます。ユーザーとロールテーブル、メーリングリストおよびその他のオブジェクトが関係します。詳細については、ユーザーとロールのディレクトリを参照してください。
注意:
トリガーはディレクトリのテーブルに存在し、データの一貫性を保証します。
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/data/v1/Bebx-directory/ebx-directory
ディレクトリ構成操作
メーリングリストの操作
ディレクトリユーザー操作
ディレクトリロール操作
ロールは
データ カテゴリのレコードであり、その操作で管理できます。 EBX® ロールは、「usersRoles」関連テーブルを通じてユーザーに割り当てられます。「usersRoles」は、ディレクトリがユーザーインターフェイスを介して管理されるときに自動的に供給されます。ただし、データサービスではそうではなく、ロールの割り当てには手動操作が必要です。ロールの包含は、「rolesInclusions」関連テーブルで指定されます。「usersRoles」テーブルに関しては、ロールの包含の管理には手動操作が必要です。メタモデルが要求されると、各テーブルは自己記述的です。
ユーザーインターフェイスの操作
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/data/v1/Bebx-manager/ebx-manager/domain/toolStatus
以下も参照してください。:
ユーザーインターフェイスの状態の取得
ユーザーインターフェイスのステータスと使用不可メッセージには、データセットノードと同様にアクセスできます。
ユーザーインターフェイスを開くまたは閉じる
ユーザーインターフェイスのステータスと使用不可メッセージは、Update 操作を使用してデータセットノードと同様に変更できます。ユーザーインターフェイスを開く場合は、
toolStatus のコンテンツを true に設定し、閉じる場合は false に設定します。
システム情報操作
この操作は、EBX® サーバー上のシステム情報を返します。これは、
GET および POST HTTP メソッドで受け入れられます。警告:リクエスト本文が無視されるため、 POST HTTP メソッドでは更新できません。返される情報は、ログヘッダー kernel.log または タブの > に含まれている情報と同じです。レスポンスには、EBX® の構成とステータスを表すいくつかのキー、ラベル、および値が含まれます。レスポンスの表示モードは、フラットにすることも階層にすることもできます。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/admin/v1/systemInformation
以下も参照してください。:
パラメーター
以下のパラメーターが適用されます。
|
パラメーター
|
説明
|
|---|---|
systemInformationMode
|
返されるモードを指定します。
文字列型。デフォルト値は flat です。
|
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (OK)
|
システム情報が正常に返されました。
|
400 (Bad request)
|
リクエストが正しくありません。次のエラーのいずれかが含まれています。
|
403 (Forbidden)
|
ユーザーは管理者ではありません。
|
応答本文
トークン認証操作
これらの操作により、認証トークンを作成または取り消すことができます。認証トークンにはタイムアウト期間があります。この期間内にトークンを使用して EBX® サーバーにアクセスしなかった場合、トークンは自動的に取り消されます。このタイムアウト期間は、EBX® サーバーへのアクセスごとに更新されます。
注意:
トークンのタイムアウトは、管理プロパティ ebx.dataservices.rest.auth.token.timeout で変更できます (デフォルト値は 30 分)。
トークンの作成操作
この操作では、ユーザーの資格情報と、オプションで
セッションパラメーターを含むリクエストで POST HTTPメソッドを使用する必要があります。
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/auth/v1/token:create
メッセージ本文
メッセージ本文は HTTP リクエストで定義する必要があります。必然的に、次のデータセットのいずれかが含まれます。
-
loginとpasswordの値。両方の JSON 属性は必須で、文字列型です。詳細については、Directory.authenticateUserFromLoginPasswordを参照してください。 -
specificJSON 属性をtrueに設定します。このフラグを有効にすると、HTTP リクエスト全体に対してユーザー認証を実行できます。loginおよびpassword属性が JSON リクエストの本文で定義されている場合でも、Specificをtrueに設定すると、特定のユーザーの認証を有効にできます。詳細については、Directory.authenticateUserFromHttpRequestを参照してください。
トークン作成リクエストの JSON の例を参照してください。
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (OK)
|
トークンは正常に作成されました。
|
400 (Bad request)
|
原因は次のいずれかです。
|
401 (Unauthorized)
|
原因は次のいずれかです。
|
422 (Unprocessable entity)
|
原因は次のいずれかです。
|
応答本文
HTTP コードが
200 (OK) の場合、本文はトークン値とそのタイプを保持します。
トークン作成レスポンスの JSON の例を参照してください。
トークンは、後で HTTP-Header
Authorization を適宜設定することにより、ユーザーを認証するために使用できます。
以下も参照してください。:
パスワード変更操作
この操作により、既存のユーザーアカウントのパスワードが変更されます。これは、認証済みコンテキストで使用できます。
login パラメーターが存在する場合は現在のセッションに対して検証され、存在しない場合は現在のセッションから取得されます。また、未認証のコンテキストで使用することもできます。たとえば、トークンの作成操作が、HTTP コード 422 (Unprocessable entity) (原因: PasswordMustChange) で中止された場合などです。
以下を使用する必要があります。
-
EBX® のデフォルトディレクトリ
-
POSTHTTP メソッド -
以下に指定された構造を含むメッセージ本文
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/auth/v1/user:changePassword
メッセージ本文
メッセージ本文はリクエストで定義する必要があります。
password と passwordNew が必須で、 login はオプションです (すべて文字列)。
パスワードの変更とトークンの作成リクエストの JSON の例を参照してください。
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
204 (No content)
|
パスワードが変更されました。
|
400 (Bad request)
|
原因は次のいずれかです。
|
401 (Unauthorized)
|
原因は次のとおりです。
|
422 (Unprocessable entity)
|
原因は次のいずれかです。
|
応答本文
HTTP コード
204 (No content) が返された場合は、パスワードが変更されています。
トークンの無効化操作
この操作では、
POST HTTP メソッドを使用する必要があります。メッセージ本文は必要ありません。
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/auth/v1/token:revoke
ヘッダーフィールド
Authorization
|
このフィールドは必須です。 tokenType および accessToken フィールドには、「トークンの作成」操作から返された値が必要です。
> Authorization: <tokenType> <accessToken> |
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
204 (No content)
|
トークンは正常に無効化されました。
|
400 (Bad request)
|
原因は次のいずれかです。
|
401 (Unauthorized)
|
認証に失敗しました。
|
データ操作
data カテゴリの操作は、データセット、データセットフィールド、テーブル、レコード、またはレコードフィールドに関係します。
data-compact カテゴリの操作は、データセットフィールド、テーブル、レコード、レコードフィールドに関係します。
history カテゴリの操作は、データセット、テーブル、レコード、またはレコードフィールドからの履歴コンテンツに関係します。
form-data カテゴリの操作は、コンテンツの作成または更新で制約を有効に保つ必要がある場合に、データセットフィールド、レコード、またはレコードフィールドに関係します。
form-data-compact カテゴリの操作は、コンテンツの作成または更新で制約を有効に保つ必要がある場合に、データセットフィールド、レコード、またはレコードフィールドに関係します。
詳細については、フォームデータ操作を参照してください。
Select 操作
Select 操作は、階層コンテンツを返します。この操作では、次のいずれかのメソッドを使用できます。
-
GETHTTP メソッド -
POSTHTTP メソッド (メッセージ本文なし) -
URL形式は次のとおりです。
-
データセットツリー (操作カテゴリに基づく)
dataカテゴリは、選択したデータセットの階層を返します。これには、グループノードとテーブルノードが含まれます。historyカテゴリは、選択した履歴データセットの階層を返します。これには、履歴テーブルノードのプルーニングされたグループのみが含まれます。http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}[:select]注意:ターミナルノードとサブノードは含まれていません。 -
データセットノード:
dataまたはdata-compactカテゴリは、選択したノードに含まれるターミナルノードを返します。http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}[:select]注意:historyカテゴリには適用されません。 -
テーブル (操作カテゴリに基づく)
dataまたはdata-compactカテゴリは、テーブルコンテンツやメタモデル、現在のページ レコード、およびページネーション用の URL を返します。historyカテゴリは、履歴テーブルのコンテンツやメタモデル、現在のページレコード、およびページネーションの URL を返します。http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}[:select]以下も参照してください。: -
レコード (操作カテゴリに基づく)
dataまたはdata-compactカテゴリは、レコードコンテンツおよび/またはメタモデルを返します。historyカテゴリは、履歴レコードのコンテンツおよび/またはメタモデルを返します。http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}/{encodedPrimaryKey}[:select]http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}[:select]?primaryKey={xpathExpression}注意:主キー (primaryKeyパラメーター) によるレコードアクセスは、そのルートノードに制限されています。この制限を無効にするために、detailsフィールドで利用可能なエンコードされた主キーを使用することをお勧めします。同様に、履歴レコードの場合は、historyDetailsフィールドで使用可能なエンコードされた主キーを使用します。 -
フィールド (操作カテゴリ に基づく)
dataまたはdata-compactカテゴリは、構造がその型に依存するフィールドレコードのコンテンツを返します。historyカテゴリは、構造がそのタイプに依存するフィールド履歴レコードの内容を返します。http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}/{encodedPrimaryKey}/{pathInRecord}[:select]注意:フィールドは、関連付けノード、選択ノード、ターミナルノード以上のいずれかである必要があります。説明 -
{dataspace}は、Bの後にデータスペース識別子が続くか、Vの後にスナップショット識別子が続くことに対応します。 -
{dataset}はデータセット識別子に対応します。 -
{pathInDataset}は、データセットノードのパスに対応します。データセットノードは、グループノードまたはテーブルノードの場合があります。 -
{encodedPrimaryKey}は、主キーのパーセントエンコード表現に対応します (RFC-3986 Uniform Resource Identifier を参照)。 -
{xpathExpression}は、XPath 式を使用して、レコードの主キーに対応します。 -
{pathInRecord}は、テーブルノードから始まるパスに対応します。 -
POST HTTP メソッドを本文メッセージで使用する場合は、
:select拡張アクションが必要です。
パラメーター
以下のパラメーターは、Select 操作に適用できます。
|
パラメーター
|
説明
|
|---|---|
includeContent
|
選択に対応するコンテンツを含む
content フィールドが含まれます。
ブール値型。デフォルト値は true です。
|
includeDetails
|
間接的に到達可能なリソースごとに、メタモデルとコンテンツに
details フィールドを含めます。返される値は、その URL リソースに対応します。
ブール値型。デフォルト値は true です。
以下も参照してください。:
|
includeHistory
|
履歴コンテンツのこれらのフィールドが含まれます。
ブール値型。デフォルト値は false です。
注意:
includeHistory パラメーターは history カテゴリでは無視されます。デフォルト値は true です。
以下も参照してください。:
|
includeLabel
|
各単純タイプの
content に関連付けられた label フィールドが含まれます。
可能な値は次のとおりです。
文字列型。デフォルト値は yes です。
注意:
label フィールドは、content フィールドと等しい場合は含まれません。
|
includeMeta
|
6.1.0 以降非推奨。includeMetamodel に置き換えられました。
|
includeMetadata
|
応答には、指定されたメタデータが含まれています。返された各レコードには、
ebx-metadata ルートエレメントの下にステップと呼ばれる追加エレメントが含まれています。
たとえば、「system」ステップ値には技術データが含まれます。詳細については、楽観ロックを参照してください。
文字列値 (デフォルト値は空) ステップはカンマで区切る必要があります (
system, teamUp)。ebx-all 値を使用して、すべてのステップを返すことができます。
以下も参照してください。:
|
includeMetamodel
|
content フィールドで返される構造の説明に対応する meta フィールドが含まれます。
ブール値型。デフォルト値は false です。
以下も参照してください。:
|
includeMergeInfo
|
履歴トランザクションの技術データのフィールドに対応する
merge_info を含めます。アクセスコストが高くなる可能性があります。
ブール値型。デフォルト値は true です。
注意:
このパラメーターは、
data カテゴリでは無視されます。
以下も参照してください。:
|
includeOpenApiDetails
|
記述可能な各ノードのOpenAPI仕様URLが含まれています。
ブール値型。デフォルト値は false です。
注意:
includeDetails が
false に設定されている場合、このクエリパラメーターは無視されます。
以下も参照してください。:
|
includeSelector
|
間接的に到達可能なリソースごとに、応答に
selector フィールドを含めます。戻り値はその URL リソースに対応します。
ブール値型。デフォルト値は true です。
以下も参照してください。:
|
includeSortCriteria
|
適用されたソート基準のリストに対応する
sortCriteria フィールドが含まれます。
ソート基準パラメーターは、以下を使用して追加されます。
ブール値型。デフォルト値は false です。
JSON の例
|
includeTechnicals
|
6.1.0 以降非推奨。
includeMetadata に置き換えられました。
注意:
このパラメーターは、
history カテゴリでは無視されます。
|
includeValidation
|
選択に対応する検証レポートを含めます。
ブール値型。デフォルト値は false です。
注意:
このパラメーターは、
history カテゴリでは無視されます。
以下も参照してください。:
|
テーブルパラメーター
次のパラメーターは、テーブル、関連、および選択ノードに適用できます。
|
パラメーター
|
説明
|
|---|---|
filter
|
クイック検索述語または完全な XPath 述語式は、リクエストが適用されるフィールド値を定義します。空の場合、すべてのレコードが取得されます。
文字列型の値。
注意:
履歴コードの操作値は、このフィールドに関連付けられた
meta セクションの ebx-operationCode パスフィールドで使用できます。
以下も参照してください。:
以下も参照してください。:
|
historyMode
|
テーブルに適用されるフィルターコンテキストを指定します。
文字列型。使用可能な値は次のとおりです。
デフォルト値は
CurrentDataSpaceOnly です。
以下も参照してください。:
注意:
このパラメーターは、
data カテゴリでは無視されます。
|
includeOcculting
|
非表示モードのレコードが含まれます。
ブール値型。デフォルト値は false です。
以下も参照してください。:
|
primaryKey
|
XPath 式を使用して、主キーでレコードを検索します。XPath 述語式には、主キーとそのすべてのフィールドのみを含める必要があります。フィールドは、演算子
構成された主キーの例:
./pk1i=1 and date-equal(./pk2d,'2015-11-13')
文字列型の値。
|
pageFirstRecordFilter
|
5.9.0 以降非推奨。 pageRecordFilter に置き換えられました。
|
pageRecordFilter
|
レコードを指す、ページネーション用のサーバー側で構築されたフィルターを指定します。このフィルターは強く
pageAction 値にリンクされているため、クライアント側で変更しないでください。フィルターは、ページネーションコンテキストを把握するために使用されるレコード XPath 述語式の形式を取ります。
文字列型。
以下も参照してください。:
|
pageAction
|
pageRecordFilter が保持する識別子から実行するページ機能の操作を指定します。
文字列型。デフォルト値は first です。可能な値は次のとおりです。
以下も参照してください。:
|
pageSize
|
1 ページあたりのレコードの最大数を指定します。
整数型。デフォルト値はユーザー設定に基づいています。指定された値が 0 の場合、推奨される最大ページサイズで選択します。デフォルトは 10000 です。
以下も参照してください。:
注意:
指定したページサイズの値が最大ページサイズを超える場合は、最大ページサイズが選択されます。
|
sort
|
指定した基準に基づく操作結果の並べ替えを指定します。条件は 1 つ以上の基準で構成され、結果は左から優先度で並べ替えられます。基準は、フィールドパスと、オプションで並べ替え順序 (値またはラベルの昇順または降順) で構成されます。このパラメーターは、以下と組み合わせることができます。
値の構造は次のとおりです。
<path1>:<order>;...;<pathN>:<order>
説明
文字列型。デフォルト値は、主キーフィールドに従って順序付けられます (値の昇順)。
注意:
履歴コードの操作値は、このフィールドに関連付けられた
meta セクションの ebx-operationCode パスフィールドで使用できます。
注意:
関連性による並べ替えがアクティブになっている場合、このパラメーターは無視されます。
以下も参照してください。:
|
sortByRelevancy
|
次の条件が満たされた場合にのみ、操作結果の関連性ソートが指定されます。
関連性による並べ替えが有効になっている場合、次のパラメーターは無視されます:sort、sortOnLabel、sortPriority、および viewPublication で定義された並べ替え条件。
以下も参照してください。:
|
sortOnLabel
|
レコードラベルに基づく操作結果の並べ替えを指定します。このパラメーターは、以下と組み合わせることができます。
値の構造は次のとおりです。
<order>
説明
このパラメーターの動作については、defaultLabel セクションに説明が記載されています。
文字列型の値。
以下も参照してください。:
注意:
関連性による並べ替えがアクティブになっている場合、このパラメーターは無視されます。
|
sortPriority
|
ソートグループのデフォルトの優先度を上書きします。
カンマ区切りの
文字列型。デフォルト値は sort,sortOnLabel,sortFromView です。
注意:
関連性による並べ替えがアクティブになっている場合、このパラメーターは無視されます。
|
viewPublication
|
公開されたビューの名前を指定します。このパラメーターは、以下と組み合わせることができます。
このパラメーターの動作については、Web コンポーネントとしての EBX® セクションに説明が記載されています。
文字列型の値。
注意:
関連性ソートが有効の場合、このパラメーターで定義されたソート基準は無視されます。
以下も参照してください。:
|
セレクターパラメーター
次のパラメーターは、列挙型、外部キー、または
osd:resource を返すフィールドにのみ適用できます (例、JSON)。デフォルトでは、ページ機能は常に有効です。一部のセレクターの Select 操作には、入力値が必要です。したがって、 POST HTTP メソッドのメッセージ本文を使用してレコードコンテンツを提供できます。
|
パラメーター
|
説明
|
|---|---|
selector
|
次のいずれかを指定します。
ブール値型。デフォルト値は false です。
注意:
このパラメーターは、
history カテゴリでは無視されます。
|
firstElementIndex
|
セレクターによって返される最初のエレメントのインデックスを指定します。
0 以上の整数である必要があります。
整数型。デフォルト値は 0 です。
|
pageSize
|
ページあたりの最大エレメント数を指定します。
整数型。デフォルト値はユーザー設定に基づいています。指定された値が 0 の場合、推奨される最大ページサイズで選択します。デフォルトは 10000 です。
以下も参照してください。:
注意:
指定したページサイズの値が最大ページサイズを超える場合は、最大ページサイズが選択されます。
|
selectorFilter
|
セレクターのフィルターを指定します。
文字列型の値。構文はクイック検索に準拠しています。
|
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (OK)
|
選択したリソースが正常に取得されます。
|
400 (Bad request)
|
リクエストが正しくありません。これは次の場合に発生します。
|
403 (Forbidden)
|
選択したリソースは、認証されたユーザーに対して非表示になります。
|
404 (Not found)
|
選択したリソースが見つかりません。
|
応答本文
データセット、テーブル、レコード、またはフィールドの選択が成功すると、結果が応答本文に返されます。内容は、提供されたパラメーターと選択されたデータによって異なります。
準備操作
作成または複製操作の準備は、初期コンテンツまたは複製するレコードのコンテンツを含む新しい一時レコードを作成するために使用されます。一時的なレコードは、まだ永続化されていないコンテンツに対応します。テーブルトリガーによって初期化されたデフォルト値とフィールドが考慮されます。少なくとも読み取り専用のアクセス権限を持つフィールド値のみが返されます。これらの操作は、オプションでメタデータを返し、クライアント側でのデータキャプチャを改善および支援できます。自動インクリメントされたフィールドは、メタデータでのみ返されます。セレクターパラメーターを有効にすることで、一時レコードのフィールドを照会して、列挙フィールドや外部キーなどの可能な値を取得できます。さらに、セレクターの Select 操作により、入力レコードデータを提供し、カスタムプログラム列挙でメタデータを取得するなど、使用を管理できます。
以下も参照してください。:
以下も参照してください。:
これらの準備操作では、次のいずれかのメソッドを使用できます。
-
GETHTTP メソッド -
POSTHTTP メソッド (メッセージ本文なし) -
POSTHTTP メソッド (メッセージ本文あり)。オプションでセッションパラメーターを使用。使用可能な URL フォーマットは次のとおりです。 -
作成の準備
-
レコード
http[s]://<host>[:<port>]/ebx-dataservices/rest/{category}/v1/{dataspace}/{dataset}/{tablePath}:prepareForCreation -
レコードフィールド
http[s]://<host>[:<port>]/ebx-dataservices/rest/{category}/v1/{dataspace}/{dataset}/{tablePath}:prepareForCreation/{pathInRecord}
-
-
複製の準備
-
レコード
http[s]://<host>[:<port>]/ebx-dataservices/rest/{category}/v1/{dataspace}/{dataset}/{tablePath}/{encodedPrimaryKey}:prepareForDuplication -
レコードフィールド
http[s]://<host>[:<port>]/ebx-dataservices/rest/{category}/v1/{dataspace}/{dataset}/{tablePath}/{encodedPrimaryKey}:prepareForDuplication/{pathInRecord}
説明 -
-
{dataspace}は、Bおよびデータスペース識別子に対応します。 -
{dataset}はデータセット識別子に対応します。 -
{tablePath}はテーブルパスノードに対応します。 -
{encodedPrimaryKey}は、主キーのパーセントエンコード表現に対応します (RFC-3986 Uniform Resource Identifier を参照)。 -
{pathInRecord}は、テーブルノードから始まるパスに対応します。
パラメーター
次のパラメーターは、準備操作に適用できます。
|
パラメーター
|
説明
|
|---|---|
includeDetails
|
間接的に到達可能なリソースごとに、メタモデルとコンテンツに
details フィールドを含めます。返される値は、その URL リソースに対応します。
ブール値型。デフォルト値は true です。
以下も参照してください。:
|
includeMeta
|
6.1.0 以降非推奨。includeMetamodel に置き換えられました。
|
includeMetamodel
|
content フィールドで返される構造の説明を保持する meta フィールドが含まれます。
ブール値型。デフォルト値は false です。
以下も参照してください。:
|
includeSelector
|
間接的に到達可能なリソースごとに、コンテンツに
selector フィールドを含めます。戻り値はその URL リソースに対応します。
ブール値型。デフォルト値は true です。
以下も参照してください。:
|
セレクターパラメーター
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (OK)
|
選択したリソースは正常に取得されました。
|
400 (Bad request)
|
リクエストが正しくありません。これは次の場合に発生します。
|
401 (Unauthorized)
|
認証に失敗しました。
|
403 (Forbidden)
|
選択したリソースは、認証済みユーザーに表示されません。
|
404 (Not found)
|
選択したリソースが見つかりませんでした。
|
応答本文
作成または複製要求の準備が正常に完了すると、一時レコードが応答本文に返されます。内容は、提供されたパラメーターと選択されたデータによって異なります。ただし、Select 操作レコードと類似のフォーマットを取ります。
Inset 操作
Insert 操作では、
POST HTTP メソッドを使用します。データを指定するには、本文メッセージが必要です。この操作は、単一のトランザクションでの 1 つ以上のレコードの挿入をサポートします。さらに、パラメーター化によってレコードを更新することもできます。
-
レコード:選択したテーブルに新しいレコードを挿入するか、既存のレコードを変更します。
-
レコードテーブル:一貫した応答を確保しながら、選択したテーブルに 1 つ以上のレコードを挿入または変更します。操作は、クライアント側で定義された順序で順番に実行されます。テーブル操作中にエラーが発生すると、すべての更新がキャンセルされ、クライアントは詳細情報を含むエラーメッセージを受信します。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}[:mass]
説明
-
{dataspace}は、Bの後にデータスペース識別子が続くか、Vの後にスナップショット識別子が続くことに対応します。 -
{dataset}はデータセット識別子に対応します。 -
{pathInDataset}は、テーブルノードのパスに対応します。 -
:mass拡張アクションは、フィルター処理された一連のレコードを更新するときに必要です (filter パラメーターを参照)。
パラメーター
以下のパラメーターは、Insert 操作に適用できます。
|
パラメーター
|
説明
|
|---|---|
includeDetails
|
データの詳細にアクセスするために、コンテンツに
details フィールドを含めます。戻り値は、その URL リソースに対応しています。
ブール値型。デフォルト値は false です。
注意:
レコードテーブルにのみ適用されます。
以下も参照してください。:
|
includeForeignKey
|
各レコードの応答に
foreignKey フィールドを含めます。戻り値は、このレコードを参照していた外部キーフィールドの値に対応します。
ブール値型。デフォルト値は false です。
注意:
レコードテーブルにのみ適用されます。
以下も参照してください。:
|
includeLabel
|
各レコードの応答に
label フィールドを含めます。
可能な値は次のとおりです。
文字列型。デフォルト値は no です。
注意:
レコードテーブルにのみ適用されます。
以下も参照してください。:
|
updateOrInsert
|
挿入するレコードがすでに存在する場合の動作を指定します。
ブール値型の値。
|
byDelta
|
リクエスト本文で定義されていないノードの値を設定する動作を指定します。これについては、更新モードセクションに説明が記載されています。
ブール値型。デフォルト値は true です。
注意:
更新モードのレコードで、updateOrInsert パラメーターが
true の場合に適用されます。
|
filter
|
多数のレコードが更新される場合は、クイック検索述語、または完全な XPath 述語式を使用して、更新されるレコードを決定します。リクエスト本文は、更新するフィールドを含む record 構造である必要があります。このパラメーターは、:mass 拡張アクションを使用する必要があります。それ以外の場合は、エラーが返されます。
すべてのレコードを選択するには、ebx-all 値を使用します。
viewPublication クエリパラメーターを使用すると、スコープはフィルターが設定されたビューに限定されます。
文字列型の値。空にすることはできません。空の場合、エラーが返されます。
注意:
クエリパラメーター includeDetails、includeLabel、または includeForeignKey を使用すると、最初の 1000 件のレポートエントリのみがレポートに返されます。
|
viewPublication
|
大規模な更新中に考慮される公開済みビューの名前を指定します。
このパラメーターの動作については、Web コンポーネントとしての EBX®セクションで説明されています。
文字列型の値。
|
blockingConstraintsDisabled
|
ブロッキング制約を無視するかどうかを指定します。存在する場合、作成された検証エラーに関係なく、操作はコミットされます。それ以外の場合、操作は中止されます。
ブール値型。デフォルト値は false です。
詳細については、ブロッキングと非ブロッキングの制約を参照してください。
|
メッセージ本文
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (OK)
|
リクエストがレコードテーブルに関連している場合。
挿入要求が正常に適用され、オプションのレポートが応答本文に返されます。
|
201 (Created)
|
リクエストがレコードに関連している場合。
新しいレコードが作成されました。この場合、ヘッダーフィールド Location がそのリソース URL とともに返されます。
|
204 (No content)
|
リクエストがレコードに関連している場合。
updateOrInsert が true の場合にのみ使用可能で、既存のレコードは正常に更新されています。この場合、ヘッダーフィールド Location がリソース URL とともに返されます。
|
400 (Bad request)
|
リクエストが正しくありません。これは、本文のメッセージ構造がメッセージ本文に記載されている内容に準拠していない場合に発生します。
|
403 (Forbidden)
|
認証済みユーザーはレコードの作成が許可されていないか、リクエスト本文に読み取り専用フィールドが含まれています。
|
404 (Not found)
|
選択したリソースが見つかりません。
|
409 (Conflict)
|
|
422 (Unprocessable entity)
|
リクエストを処理できません。これは次の場合に発生します。
|
応答本文
Update 操作
この操作により、単一のデータセットまたはレコードを変更できます。
PUT HTTP メソッドを使用する必要があります。使用可能な URL フォーマットは次のとおりです。
-
データセットノード:選択したノードに含まれるターミナルノードの値を変更します。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset} -
レコード:選択したレコードのコンテンツを変更します。
http[s]://<host>[:<port>]/ebx-dataservices/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}/{encodedPrimaryKey}注意:POSTHTTP メソッドでも使用できます。この場合、URL はテーブルを指す必要があり、パラメーターupdateOrInsertはtrueに設定されている必要があります。注意: -
フィールド:選択したレコードの単一フィールドの更新。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}/{encodedPrimaryKey}/{pathInRecord}注意:フィールドは、ターミナルノード以上である必要があります。説明 -
{dataspace}は、Bの後にデータスペース識別子が続くか、Vの後にスナップショット識別子が続くことに対応します。 -
{dataset}はデータセット識別子に対応します。 -
{pathInDataset}は、データセットノードのパスに対応します。-
データセットノード操作の場合、これはテーブルノードを除く任意のターミナルノード以上である必要があります。
-
レコードおよびフィールド操作の場合、これはテーブルノードに対応します。
-
-
{encodedPrimaryKey}は、主キーのパーセントエンコード表現に対応します (RFC-3986 Uniform Resource Identifier を参照)。 -
{pathInRecord}は、テーブルノードから始まるパスに対応します。
パラメーター
Update 操作に適用できるパラメーターは次のとおりです。
| パラメーター | 説明 |
|---|---|
blockingConstraintsDisabled |
ブロッキング制約を無視するかどうかを指定します。無視する場合は、作成された検証エラーに関係なく操作をコミットします。無視しない場合、操作は中止されます。 ブール値型。デフォルト値は false です。 詳細については、ブロッキングと非ブロッキングの制約を参照してください。 |
byDelta |
リクエスト本文で定義されていないノードの値を設定する動作を指定します。これについては、更新モードセクションに説明が記載されています。 ブール値型。デフォルト値は true です。 |
checkNotChangedSinceLastUpdateTime |
レコードが最後に読み取られてから変更されていないことを確認するために使用される日時フォーマットのタイムスタンプ。楽観ロックセクションも参照してください。 DateTime 型の値。 |
メッセージ本文
リクエストはメッセージ本文を定義する必要があります。
構造は、次の場合は同一です。
-
データセットノード (例 拡張 JSON、コンパクト JSON)
-
レコードフィールド (例:拡張JSON、コンパクト JSON)
更新された範囲に応じて、
content エントリのみを保持します。
以下も参照してください。:
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
204 (No content)
|
レコード、フィールド、またはデータセットノードが正常に更新されました。
|
400 (Bad request)
|
リクエストが正しくありません。これは、本文のリクエスト構造が準拠していない場合に発生します。
|
403 (Forbidden)
|
認証されたユーザーは、指定されたリソースを更新できません。または、リクエスト本文に読み取り専用フィールドが含まれています。
|
404 (Not found)
|
選択したリソースが見つかりません。
|
409 (Conflict)
|
同時変更。楽観ロックが有効で、その間にコンテンツが変更された場合は、更新前にリロードする必要があります。
|
422 (Unprocessable entity)
|
リクエストを処理できません。これは次の場合に発生します。
|
Delete 操作
この操作では、
DELETE HTTP メソッドを使用します。
2 つの URL フォーマットを使用できます。
-
レコード:URL で指定されたレコードを削除します。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/data/v1/{dataspace}/{dataset}/{pathInDataset}/{encodedPrimaryKey} -
レコードテーブル:一貫した応答を提供しながら、指定されたテーブル内の複数のレコードを削除します。このモードでは、レコードテーブルを含む本文メッセージが必要です。削除は、テーブルで定義された順序に従って順番に実行されます。テーブル操作中にエラーが発生すると、すべての削除がキャンセルされ、詳細情報を含むエラーメッセージが表示されます。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/data/v1/{dataspace}/{dataset}/{pathInDataset}[:mass]説明 -
{dataspace}は、Bの後にデータスペース識別子が続くか、Vの後にスナップショット識別子が続くことに対応します。 -
{dataset}はデータセット識別子に対応します。 -
{pathInDataset}は、テーブルノードのパスに対応します。 -
{encodedPrimaryKey}は、主キーのパーセントエンコード表現に対応します (RFC-3986 Uniform Resource Identifier を参照)。 -
:mass拡張アクションは、フィルター処理された一連のレコードを削除するときに必要です (filter パラメーターを参照)。子データセットコンテキストでは、この操作により、レコードのinheritanceModeプロパティ値が次のように変更されます。 -
継承モードが
inheritまたはoverwriteに設定されているレコードは、occultになります。 -
inheritIfInOccultingMode操作パラメーターがtrueに設定されているか、未定義の場合、継承モードがoccultに設定されているレコードはinheritになります、それ以外の場合は変更はありません。 -
継承モードが
rootに設定されているレコードは単純に削除されます。
以下も参照してください。:
パラメーター
Delete 操作に適用できるパラメーターは次のとおりです。
| パラメーター | 説明 |
|---|---|
includeOcculting |
非表示のレコードを含みます。 ブール値型。デフォルト値は false です。 |
inheritIfInOccultingMode |
*バージョン 5.8.1 以降非推奨。*下位互換性の理由から引き続き使用できますが、今後のバージョンでは最終的に削除される予定です。 非表示モードの場合、レコードを継承します。 ブール値型。デフォルト値は true です。 |
checkNotChangedSinceLastUpdateTime |
レコードが最後に読み取られてから変更されていないことを確認するために使用される日時フォーマットのタイムスタンプ。楽観ロックセクションも参照してください。 DateTime 型の値。 |
blockingConstraintsDisabled |
ブロッキング制約を無視するかどうかを指定します。無視する場合は、作成された検証エラーに関係なく操作をコミットします。無視しない場合、操作は中止されます。 ブール値型。デフォルト値は false です。 詳細については、ブロッキングと非ブロッキングの制約を参照してください。 |
filter |
一括削除が適用されるレコードを定義するクイック検索述語または完全な XPath 述語式。このパラメーターは、:mass 拡張アクションで強制的に使用する必要があります。そうしないと、エラーが返されます。 ebx-all 値は、すべてのレコードを選択するために使用されます。 viewPublication クエリパラメーターを使用すると、スコープはフィルターが設定されたビューに限定されます。 文字列型の値。空にすることはできません。空の場合、エラーが返されます。 |
viewPublication |
大規模な削除中に考慮される公開済みビューの名前を指定します。 このパラメーターの動作については、Web コンポーネントとしての EBX® セクションに説明が記載されています。 文字列型の値。 |
メッセージ本文
filter または deleteAll クエリパラメーターを使用せずに複数のレコードを削除する場合にのみ、リクエストはメッセージ本文を定義する必要があります。
-
レコードテーブル:メッセージには、レコードに関連するエレメントのテーブルが含まれ、エレメントごとに次のプロパティのいずれかが含まれます。
-
details:レコードの URL に対応し、Select 操作によって返されます。 -
primaryKey:XPath 式を使用して、レコードの主キーに対応します。 -
externalKey:レコードを参照した場合に外部キーが持つ値に対応します。
以下も参照してください。: -
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (OK)
|
操作は正常に実行されました。レポートは応答本文に返されます。
|
400(Bad request)
|
リクエストが正しくありません。これは次の場合に発生します。
|
403 (Forbidden)
|
認証されたユーザーは、指定されたレコードを削除または非表示にすることはできません。
|
404 (Not found)
|
選択したレコードが見つかりません。子データセットのコンテキストでは、 includeOcculting パラメーターを使用する必要があります。
|
409 (Conflict)
|
同時変更。楽観ロックが有効で、その間にコンテンツが変更された場合は、レコードの削除前にコンテンツをリロードする必要があります。
パラメータ値 checkNotChangedSinceLastUpdateTime は存在しますが、レコードの実際の最終更新日に対応していません。
|
422 (Unprocessable entity)
|
blockingConstraintsDisabled が false の場合にのみ使用可能で、ブロッキング検証エラーにより操作が失敗します。
|
応答本文
レコードの削除または非表示化が成功すると、応答本文にレポートが返されます。これには、削除、非表示化、継承されたレコードの数が含まれます。
例:JSON。
Count 操作
Count 操作では、次のいずれかのメソッドを使用できます。
-
GETHTTP メソッド -
POSTHTTP メソッド (メッセージ本文なし) -
POSTHTTP メソッド (メッセージ本文はあるがルートにcontentフィールドがない)URL フォーマットは次のとおりです。 -
データセットノード:
dataカテゴリは、選択したノードに含まれるターミナルノードの数を返します。http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}:count注意:historyカテゴリには適用されません。 -
テーブル (操作カテゴリに基づく)
dataカテゴリは、テーブルレコードの数を返します。historyカテゴリは、テーブル履歴レコードの数を返します。http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}:count -
フィールド (操作カテゴリに基づく)
dataカテゴリは、レコードフィールドをカウントします。historyカテゴリは、履歴レコードフィールドをカウントします。http[s]://<host>[:<port>]/<ebx-dataservices>/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}/{encodedPrimaryKey}/{pathInRecord}:count注意:フィールドは、関連付けノード、選択ノード、ターミナルノード以上のいずれかである必要があります。説明 -
{dataspace}は、Bの後にデータスペース識別子が続くか、Vの後にスナップショット識別子が続くことに対応します。 -
{dataset}はデータセット識別子に対応します。 -
{pathInDataset}は、データセットノードのパスに対応します。データセットノードは、グループノードまたはテーブルノードの場合があります。 -
{encodedPrimaryKey}は、主キーのパーセントエンコード表現に対応します (RFC-3986 Uniform Resource Identifier を参照)。 -
{pathInRecord}は、テーブルノードから始まるパスに対応します。
パラメーター
以下のパラメーターは、Count 操作に適用できます。
| パラメーター | 説明 |
|---|---|
count |
6.0.0 以降非推奨。URL からの拡張アクションに置き換えられました。これが Count 操作か Select 操作かを指定するために使用されます。 ブール値型。デフォルト値は false です。 |
テーブルパラメーター
次のパラメーターは、テーブル、関連、および選択ノードに適用できます。
|
パラメーター
|
説明
|
|---|---|
filter
|
クイック検索述語または完全な XPath 述語式は、リクエストが適用されるフィールド値を定義します。空の場合、すべてのレコードが考慮されます。
文字列型の値。
注意:
履歴コードの操作値は、このフィールドに関連付けられた
meta セクションの ebx-operationCode パスフィールドで使用できます。
|
historyMode
|
テーブルに適用されるフィルターコンテキストを指定します。
文字列型。使用可能な値は次のとおりです。
デフォルト値は
CurrentDataSpaceOnly です。
以下も参照してください。:
注意:
このパラメーターは、
data カテゴリでは無視されます。
|
includeOcculting
|
非表示モードのレコードが含まれます。
ブール値型。デフォルト値は false です。
|
viewPublication
|
カウントの実行中に考慮される公開済みビューの名前を指定します。このパラメーターは、以下と組み合わせることができます。
このパラメーターの動作については、Web コンポーネントとしての EBX® セクションに説明が記載されています。
文字列型の値。
|
セレクターパラメーター
次のパラメーターは、列挙型、外部キー、または
osd:resource を返すフィールドにのみ適用できます。
|
パラメーター
|
説明
|
|---|---|
selector
|
次のいずれかを指定します。
ブール値型。デフォルト値は false です。
注意:
このパラメーターは、
history カテゴリでは無視されます。
|
selectorFilter
|
セレクターのフィルターを指定します。
文字列型の値。構文はクイック検索に準拠しています。
|
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (OK)
|
選択したリソースは正常にカウントされます。
|
400 (Bad request)
|
リクエストが正しくありません。これは次の場合に発生します。
|
403 (Forbidden)
|
選択したリソースは、認証されたユーザーに対して非表示になります。
|
404 (Not found)
|
選択したリソースが見つかりません。
|
楽観ロック
以前に読み取られたが、その間に変更された可能性のあるレコードの Update または Delete 操作を回避するために、楽観ロックメカニズムが提供されます。
楽観ロックを有効にするには、Select リクエストで
system 値を含む includeMetadata パラメーターを設定する必要があります。
詳細については、技術データを参照してください。
次のリクエストには、
update_time プロパティ値を含める必要があります。指定した時間以降にレコードが変更された場合、Update または Delete 操作はキャンセルされます。
-
レコード:選択したレコードのコンテンツ全体または一部を更新します。
update_time値をリクエスト本文に追加して、変更されたレコードが更新されないようにする必要があります。レコードの JSON の例を参照してください。 -
フィールド:選択したレコードの単一フィールドの更新。
update_time値は、変更されたレコードの更新を防ぐために、checkNotChangedSinceLastUpdateTimeパラメーターによってリクエスト URL で宣言する必要があります。
update_time プロパティの値をリクエスト URL の checkNotChangedSinceLastUpdateTime パラメーターで使用して、変更されたレコードが削除されないようにすることもできます。
注意:
checkNotChangedSinceLastUpdateTime パラメーターは複数回使用できますが、同じレコードでのみ使用できます。これは、リクエスト URL が複数のレコードを返す場合、リクエストが失敗することを意味します。
継承
EBX® の継承機能は、特定のプロパティと自動動作を使用するビルトイン RESTful サービスによってサポートされます。ほとんどの場合、継承状態は、レコードとフィールドの定義またはコンテンツに従ってサーバーによって自動的に計算されます。レコードまたはフィールドを変更するすべてのアクションは、それらの状態に間接的な影響を与える可能性があります。継承のライフサイクルを完全に処理するために、特定の条件下で状態を直接変更することが許可されています。禁止または一貫性のない明示的な変更の試みは無視されます。
以下も参照してください。:
ビルトイン RESTful サービスでの継承ライフサイクル
継承プロパティ
下表は、EBX® の継承機能に関連するプロパティを示しています。
|
プロパティ
|
位置
|
説明
|
|---|---|---|
inheritance
|
レコードまたはテーブルのメタモデル
|
データセットの継承がテーブルで有効にするかどうかを指定します。値はデータモデルから計算され、ビルトイン RESTful サービスを介して変更することはできません。
以下も参照してください。:
|
inheritedField
|
フィールドメタモデル
|
フィールドの値のソースを指定します。ソースデータはデータモデルから直接取得され、ビルトイン RESTful サービスを介して変更することはできません。
以下も参照してください。:
|
inheritanceMode
|
子データセットのレコード
|
レコードの継承状態を指定します。レコードの継承を
overwrite から inherit に設定するには、その inheritanceMode 値をリクエストで明示的に指定する必要があります。この特定のケースでは、content プロパティが存在する場合は無視されます。occult および root の明示的な値は常に無視されます。content プロパティが存在しない場合の明示的な overwrite の値は無視されます。
注意:
継承されたレコードのフィールドは、常に
inherit です。
注意:
子データセットのルートレコードは常に
root になります。
|
上書きレコードのフィールド
|
フィールドの継承状態を指定します。フィールドの継承を
inherit に設定するには、その inheritanceMode 値をリクエストで明示的に指定する必要があります。この場合、content プロパティは無視されます。content プロパティが存在しない場合の明示的な overwrite の値は無視されます。
注意:
フィールドレベルの
inheritanceMode は、root、inherit、および occult レコードには表示されません。
注意:
inheritedFieldMode プロパティと inheritanceMode プロパティの両方を同一フィールドに設定することはできません。
|
|
inheritedFieldMode
|
継承されたフィールド
|
継承されたフィールドの継承状態を指定します。フィールドの継承を
inherit に設定するには、その inheritedFieldMode 値をリクエストで明示的に指定する必要があります。この場合、content プロパティは無視されます。content プロパティが存在しない場合の明示的な overwrite の値は無視されます。
注意:
inheritedFieldMode プロパティと inheritanceMode プロパティの両方を同一フィールドに設定することはできません。
注意:
inheritedFieldMode は inheritanceMode プロパティよりも優先されます。
|
ルックアップテーブルビュー操作
「公開されたビューの検索」操作では、次のいずれかのメソッドを使用できます。
-
GETHTTP メソッド -
POSTHTTP メソッド (メッセージ本文なし)URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/<ebx-dataservices>/rest/data/v1/{dataspace}/{dataset}/{tablePath: [^:]*}:publishedViews
説明
-
{dataspace}は、Bとデータスペース識別子、またはVと画像識別子 (この順序) に対応します。 -
{dataset}はデータセット識別子に対応します。 -
{tablePath: [^:]*}はテーブルパスに対応します。
パラメーター
この操作に特定のパラメーターはありません。
HTTP コード
| HTTP コード | 説明 |
|---|---|
200 (OK) |
情報が正常に返されました。 |
400 (Bad request) |
不正なリクエスト、エラーが含まれています。 |
401 (Unauthorized) |
認証に失敗しました。 |
403 (Forbidden) |
指定されたリソースの読み取り許可は、認証済みユーザーに対して拒否されました。 |
404 (Not found) |
選択したリソースが見つかりません。 |
応答本文
これには、許可されたビュー情報 (アクセスURIを含む) のコレクションが含まれています。
例:JSON。
フォームデータ操作
フォームデータカテゴリの操作は、コンテンツの作成または変更がユーザーフォーム送信の制約に準拠する必要がある場合に、データセットフィールド、レコード、またはレコードフィールドに関係します。これらは、ユーザーフォーム管理コンテキストで使用することを目的としています。
操作のリクエスト本文は、受信データ検証機能と結果レポートがレスポンスに追加されるという意味で、
data カテゴリの同等の操作と非常によく似ています。データ検証を無効にすることはできず、 data カテゴリ操作のパラメーター blockingConstraintsDisabled は適用されません。 blocksCommit レベルが onInsertUpdateOrDelete または onUserSubmit-checkModifiedValues に設定た少なくとも 1 つの制約に違反すると、検証フェーズは失敗します。
詳細については、ブロッキングと非ブロッキングの制約を参照してください。
フォーム挿入操作
フォームの挿入では、
POST HTTP メソッドを使用し、データを保持するメッセージ本文を必要が必要です。この操作は、単一トランザクション内の 1 つまたは複数のレコードをサポートします。また、レコードを更新することもできます。
-
レコード:新しいレコードを検証して挿入するか、選択したテーブルの既存のレコードを変更します。
-
レコードテーブル:一貫した応答を確保しながら、選択したテーブルの 1 つ以上のレコードを検証および挿入または変更します。操作は、クライアント側で定義された順序で実行されます。テーブル操作中にエラーが発生すると、すべての更新がキャンセルされ、クライアントは詳細情報を含むエラーメッセージを受け取ります。レコードの最大数は 100 に制限されています。
http[s]://<host>[:<port>]/ebx-dataservices/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}[:mass]
説明
-
{dataspace}は、Bの後にデータスペース識別子が続くか、Vの後にスナップショット識別子が続くことに対応します。 -
{dataset}はデータセット識別子に対応します。 -
{pathInDataset}は、テーブルノードのパスに対応します。 -
:mass拡張アクションは、フィルター処理された一連のレコードを更新するときに必要です (filter パラメーターを参照)。
パラメーター
この挿入操作には、次のパラメーターが適用されます。
|
パラメーター
|
説明
|
|---|---|
includeDetails
|
データの詳細にアクセスするため、応答に
details フィールドを含めます。戻り値は、その URL リソースに対応しています。
ブール値型。デフォルト値は false です。
注意:
複数レコードの挿入にのみ適用されます。
|
includeForeignKey
|
各レコードの応答に
foreignKey フィールドを含めます。戻り値は、このレコードを参照していた外部キーフィールドの値に対応します。
ブール値型。デフォルト値は false です。
注意:
複数レコードの挿入にのみ適用されます。
|
includeLabel
|
各レコードの応答に
label フィールドを含めます。
可能な値は次のとおりです。
文字列型。デフォルト値は no です。
注意:
複数レコードの挿入にのみ適用されます。
|
updateOrInsert
|
挿入するレコードがすでに存在する場合の動作を指定します。
ブール値型。デフォルト値は false です。
|
filter
|
クイック検索述語、または大量のレコードが更新される場合は完全な XPath 述語 式を使用して更新されたレコードを特定します。リクエストの本文は、更新するフィールドを含む record 構造である必要があります。このパラメータは、:mass 拡張アクションを使用する必要があります。それ以外の場合は、エラーが返されます。
すべてのレコードを選択するには、ebx-all 値を使用します。
viewPublication クエリパラメーターを使用すると、スコープはフィルターが設定されたビューに限定されます。
文字列型の値。空にすることはできません。空の場合、エラーが返されます。
注意:
クエリパラメーター includeDetails、includeLabel、または includeForeignKey を使用すると、最初の 1000 件のレポートエントリのみがレポートに返されます。
|
viewPublication
|
大規模更新中に使用される公開ビューの名前を指定します。
このパラメーターの動作については、Web コンポーネントとしての EBX® セクションで説明されています。
文字列型の値。
|
メッセージ本文
リクエストはメッセージ本文を定義する必要があります。フォーマットは、
data カテゴリ Insert 操作のメッセージ本文に似ています。
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (OK)
|
|
201 (Created)
|
リクエストの本文には、存在しないレコードが 1 つだけ保持されます。新しいレコードが作成され、ヘッダーフィールドの Location がそのリソース URL とともに返されます。さらに、レポートは応答本文に返されます。
|
400 (Bad request)
|
リクエストが正しくありません。これは、本文のメッセージ構造が以下の場合に発生します。
|
403 (Forbidden)
|
認証済みユーザーはレコードの作成が許可されていないか、リクエスト本文に読み取り専用フィールドが含まれています。
|
404 (Not found)
|
選択したリソースが見つかりません。
|
409 (Conflict)
|
|
422 (Unprocessable entity)
|
リクエストを処理できません。これは次の場合に発生します。
|
応答本文
応答本文は常に検証レポートを保持します。ただし、失敗した場合、応答本文は JSON
例外処理応答に対応します。
-
レコード:ヘッダーフィールド
Locationが URL リソースとともに返されます。検証レポートはレスポンス本文に含まれます。 -
レコードテーブル:(オプション) 複数の検証レポートに対応する、各エレメントの検証レポートのリストが含まれます。
以下も参照してください。:
フォーム更新操作
data または data-compact カテゴリの Update 操作については、単一のデータセットまたはレコードの変更が可能であり、 PUT HTTP メソッドを使用する必要があります。使用可能な URL フォーマットは次のとおりです。
-
データセットノード:選択したノードに含まれるターミナルノードの値を検証および変更します。
http[s]://<host>[:<port>]/ebx-dataservices/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset} -
レコード:選択したレコードのコンテンツを検証および変更します。
http[s]://<host>[:<port>]/ebx-dataservices/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}/{encodedPrimaryKey}注意:POSTHTTP メソッドでも使用できます。この場合、URL はテーブルを指す必要があり、パラメーターupdateOrInsertはtrueに設定されている必要があります。 -
フィールド:選択したレコードの単一フィールドを検証および更新します。
http[s]://<host>[:<port>]/ebx-dataservices/rest/{category}/v1/{dataspace}/{dataset}/{pathInDataset}/{encodedPrimaryKey}/{pathInRecord}注意:フィールドは、ターミナルノード以上である必要があります。説明 -
{dataspace}は、Bの後にデータスペース識別子が続くか、Vの後にスナップショット識別子が続くことに対応します。 -
{dataset}はデータセット識別子に対応します。 -
{pathInDataset}は、データセットノードのパスに対応します。-
データセットノード操作の場合、これはテーブルノードを除く任意のターミナルノード以上である必要があります。
-
レコードおよびフィールド操作の場合、これはテーブルノードに対応します。
-
-
{encodedPrimaryKey}は、主キーのパーセントエンコード表現に対応します (RFC-3986 Uniform Resource Identifier を参照)。 -
{pathInRecord}は、テーブルノードから始まるパスに対応します。
パラメーター
メッセージ本文
リクエストはメッセージ本文を定義する必要があります。フォーマットは、
data カテゴリ更新操作メッセージ本文と同じです。
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (Ok)
|
更新要求が正常に適用され、応答本文にレポートが返されます。
|
400 (Bad request)
|
リクエストが正しくありません。これは、本文のリクエスト構造が準拠していない場合に発生します。
|
403 (Forbidden)
|
認証されたユーザーは、指定されたリソースを更新できません。または、リクエスト本文に読み取り専用フィールドが含まれています。
|
404 (Not found)
|
選択したリソースが見つかりません。
|
409 (Conflict)
|
同時変更。楽観ロックが有効で、その間にコンテンツが変更された場合は、更新前にリロードする必要があります。
|
422 (Unprocessable entity)
|
リクエストを処理できません。これは次の場合に発生します。
|
応答本文
レスポンス本文のフォーマットと動作は、フォーム挿入操作と同じです。
ベータ機能:データスペース操作
ベータ機能:データスペースまたはスナップショットの選択
Select 操作では、
GET または POST のいずれかのメソッドを使用できます。ページネーションメカニズムは常に有効になっています。
URL フォーマットは次のとおりです。
-
Root:ルートデータスペースを返します。
http[s]://<host>[:<port>]/ebx-dataservices/rest/data/v1/ -
Children:指定されたデータスペースの子データスペースを返します。
http[s]://<host>[:<port>]/ebx-dataservices/rest/data/v1/{dataspace}:children -
Snapshots:指定されたデータスペースのスナップショットを返します。
http[s]://<host>[:<port>]/ebx-dataservices/rest/data/v1/{dataspace}:snapshots -
Information:データスペースまたはスナップショットの情報を返します。
http[s]://<host>[:<port>]/ebx-dataservices/rest/data/v1/{dataspace}:information説明 -
{dataspace}は、Bの後にデータスペースの識別子が続くか、Vの後にスナップショットの識別子が続くことに対応します。
パラメーター
次のクエリパラメーターは、** Root**、** Children**、および Snapshots の操作に適用できます。
|
パラメーター
|
説明
|
|---|---|
includeClosed
|
閉じたデータスペースを選択範囲に含めます。
ブール値型。デフォルト値は false です。
|
includeAdministration
|
選択に管理データスペースを含めます。
ブール値型。デフォルト値は false です。
|
pageRecordFilter
|
レコードを指す、ページネーション用のサーバー側で構築されたフィルターを指定します。このフィルターは強く
pageAction 値にリンクされているため、クライアント側で変更しないでください。フィルターは、ページネーションコンテキストを把握するために使用されるレコード XPath 述語式の形式を取ります。
文字列型。
以下も参照してください。:
|
pageAction
|
pageRecordFilter が保持する識別子から実行するページ機能の操作を指定します。
文字列型。デフォルト値は first です。可能な値は次のとおりです。
以下も参照してください。:
|
pageSize
|
1 ページあたりのレコードの最大数を指定します。
整数型。デフォルト値はユーザー設定に基づいています。値は 2 から 100 の間である必要があります。
|
HTTP コード
|
HTTP コード
|
説明
|
|---|---|
200 (OK)
|
リクエストは正常に処理されました。
|
400 (Bad request)
|
リクエストが正しくありません。これは次の場合に発生します。
|
401 (Unauthorized)
|
認証に失敗しました。
|
403 (Forbidden)
|
選択したリソースは、認証済みユーザーに表示されません。
|
404 (Not found)
|
選択したリソースが見つかりませんでした。
|
応答本文
ベータ機能:子データスペースまたはスナップショットの作成
指定されたとおりにデータスペースまたはスナップショットを作成します。この操作では、本文リクエストで
POST メソッドを使用します (特定のクエリパラメーターはありません)。
以下も参照してください。:
URL フォーマットは次のとおりです。
-
データスペース
http[s]://<host>[:<port>]/.../data/v1/{dataspace}:createDataspace -
スナップショット
http[s]://<host>[:<port>]/.../data/v1/{dataspace}:createSnapshot説明 -
{dataspace}は、Bおよびデータスペース識別子に対応します。
リクエスト本文
HTTP コード
| HTTP コード | 説明 |
|---|---|
201 (Created) |
新しいデータスペースまたはスナップショットが作成されました。この場合、ヘッダーフィールド Location がそのリソース URL とともに返されます。 |
400 (Bad request) |
リクエストの本文が整形式でないか、無効なコンテンツが含まれています。 |
401 (Unauthorized) |
認証に失敗しました。 |
403 (Forbidden) |
認証されたユーザーに指定されたリソースを作成する権限が拒否されました。 |
404 (Not found) |
リクエスト本文で指定されたリソースが見つかりません。 |
500 (Internal error) |
アプリケーションによる予期しないエラー。エラーの詳細は通常、EBX® ログに記録されます。 |
ベータ機能:データスペースのロック
指定されたデータスペースをロックします。データスペースがすでにロックされている場合、次のことが適用されます。
-
同一ユーザーによるロックでは、ロックが保持されます。
-
別のユーザーによるロックで待機期間中の場合、ロックが取得されます。
-
それ以外の場合、ロックは拒否されます。この操作は
POSTメソッドを使用し、次のように設定されたContent-Typeヘッダーを使用します。 -
application/x-www-form-urlencoded:本文に HTTP パラメーターを使用します。 -
application/json:URL に HTTP パラメーター、JSON 本文にセッションパラメーターを使用します。成功した場合、応答本文は返されません。
以下も参照してください。:
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/.../data/v1/{dataspace}:lock
説明
-
{dataspace}は、Bおよびデータスペース識別子に対応します。
パラメーター
次のクエリパラメーターが操作に適用されます。
| パラメーター | 説明 |
|---|---|
durationToWaitForLock |
データスペースが別のユーザーによってロックされている場合、ロックの取得を待機する最大期間を指定します。 期間は秒単位で指定されます。値が 0 に設定されている場合、ロックの試行はすぐに実行されます。いくつかの理由により、待機時間は 60 秒を超えることはできません。それ以外の場合、値は最大値で上書きされます。 整数型。デフォルト値は 0 です。 |
HTTP コード
| HTTP コード | 説明 |
|---|---|
204 (No content) |
リクエストは正常に処理されましたが、応答本文は返されません。 |
400 (Bad request) |
リクエストの URL または本文が整形式でないか、無効なコンテンツが含まれています。 |
401 (Unauthorized) |
認証に失敗しました。 |
403 (Forbidden) |
認証されたユーザーの指定されたリソースをロックする権限が拒否されました。 |
404 (Not found) |
URL で指定されたリソースが見つかりません。 |
409 (Conflict) |
リソースはすでに別のユーザーによってロックされており、 durationToWaitForLock パラメーターの値の後でロックが拒否されます。 |
500 (Internal error) |
アプリケーションによる予期しないエラー。エラーの詳細は通常、EBX® ログに記録されます。 |
ベータ機能:データスペースのロック解除
指定されたデータスペースのロックを解除します。データスペースの状態により、次のことが適用されます。
-
同一ユーザーによるロックでは、ロックが解除されます。
-
別のユーザーによるロックでは、現在のユーザーが管理者であり、
forceByAdministratorクエリパラメーターがtrueに設定されている場合、ロックが解除されます。 -
ロックされていない場合、ロックステータスは変更されません。
-
それ以外の場合、ロック解除は拒否されます。この操作は
POSTメソッドを使用し、次のように設定されたContent-Typeヘッダーを使用します。 -
application/x-www-form-urlencoded:本文に HTTP パラメーターを使用します。 -
application/json:URL に HTTP パラメーター、JSON 本文にセッションパラメーターを使用します。成功した場合、応答本文は返されません。
以下も参照してください。:
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/.../data/v1/{dataspace}:unlock
説明
-
{dataspace}は、Bおよびデータスペース識別子に対応します。
パラメーター
次のクエリパラメーターが操作に適用されます。
| パラメーター | 説明 |
|---|---|
forceByAdministrator |
データスペースが別のユーザーによってロックされている場合、管理者は強制的にロック解除できます。 ブール値型。デフォルト値は false です。 |
HTTP コード
| HTTP コード | 説明 |
|---|---|
204 (No content) |
リクエストは正常に処理されましたが、応答本文は返されません。 |
400 (Bad request) |
リクエストの URL または本文が整形式でないか、無効なコンテンツが含まれています。 |
401 (Unauthorized) |
認証に失敗しました。 |
403 (Forbidden) |
認証済みユーザーの指定されたリソースのロック解除権限が拒否されました。 |
404 (Not found) |
URL で指定されたリソースが見つかりません。 |
409 (Conflict) |
リソースはすでに別のユーザーによってロックされているか、現在のユーザーが管理者であっても forceByAdministrator パラメーターが false の場合、ロック解除は拒否されます。 |
500 (Internal error) |
アプリケーションによる予期しないエラー。エラーの詳細は通常、EBX® ログに記録されます。 |
ベータ機能:データスペースのマージ
指定されたデータスペースをその親にマージします。マージ後、履歴やデータに対して削除を実行することができます。
この操作は
POST メソッドを使用し、次のように設定された Content-Type ヘッダーを使用します。
-
application/x-www-form-urlencoded:本文に HTTP パラメーターを使用します。 -
application/json:URL に HTTP パラメーター、JSON 本文にセッションパラメーターを使用します。
成功した場合、応答本文は返されません。
注意:
データサービスを介して実行されるマージでは、マージ決定ステップはバイパスされます。このような場合、子データスペースのデータは、親のデータを自動的に上書きします。
以下も参照してください。:
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/.../data/v1/{dataspace}:merge
説明
-
{dataspace}は、Bおよびデータスペース識別子に対応します。
パラメーター
次のクエリパラメーターが操作に適用されます。
| パラメーター | 説明 |
|---|---|
deleteHistoryOnMerge |
指定したデータスペースに関連付けられている履歴をマージ時に削除するかどうかを設定します。 ブール値型。デフォルト値は false です。 このパラメーターがリクエストで指定されていない場合、デフォルト値は false です。 EBX® メイン構成ファイルでプロパティ ebx.dataservices.historyDeletionOnCloseOrMerge.default を指定することにより、デフォルト値を再定義することができます。 |
deleteDataOnMerge |
指定したデータスペースとそれに関連するスナップショットをマージ時に削除するかどうかを設定します。 ブール値型。デフォルト値は false です。 このパラメーターがリクエストで指定されていない場合、デフォルト値は false です。 EBX® メイン構成ファイルでプロパティ ebx.dataservices.dataDeletionOnCloseOrMerge.default を指定してデフォルト値を再定義することができます。 |
HTTP コード
| HTTP コード | 説明 |
|---|---|
204 (No content) |
リクエストは正常に処理されましたが、応答本文は返されません。 |
400 (Bad request) |
リクエスト URL に無効なコンテンツが含まれています。 |
401 (Unauthorized) |
認証に失敗しました。 |
403 (Forbidden) |
認証済みユーザーの指定されたリソースのマージ権限が拒否されました。 |
404 (Not found) |
URL で指定されたリソースが見つかりません。 |
500 (Internal error) |
アプリケーションによる予期しないエラー。エラーの詳細は通常、EBX® ログに記録されます。 |
ベータ機能:データスペースまたはスナップショットを閉じる
指定されたデータスペースまたはスナップショットを閉じます。閉じた後、履歴および/またはデータに対して削除を実行することができます。
この操作は
POST メソッドを使用し、次のように設定された Content-Type ヘッダーを使用します。
-
application/x-www-form-urlencoded:本文に HTTP パラメーターを使用します。 -
application/json:URL に HTTP パラメーター、JSON 本文にセッションパラメーターを使用します。成功した場合、応答本文は返されません。
以下も参照してください。:
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/.../data/v1/{dataspace}:close
説明
-
{dataspace}は、Bの後にデータスペース識別子が続くか、Vの後にスナップショット識別子が続くことに対応します。
パラメーター
次のクエリパラメーターが操作に適用されます。
| パラメーター | 説明 |
|---|---|
deleteHistoryOnClose |
指定したデータスペースに関連付けられている履歴を、閉じるときに削除するかどうかを設定します。 ブール値型。デフォルト値は false です。 このパラメーターがリクエストで指定されていない場合、デフォルト値は false です。 EBX® メイン構成ファイルでプロパティ ebx.dataservices.historyDeletionOnCloseOrMerge.default を指定することにより、デフォルト値を再定義することができます。 |
deleteDataOnClose |
指定したデータスペースとそれに関連するスナップショットを、閉じるときに削除するかどうかを設定します。 ブール値型。デフォルト値は false です。 このパラメーターがリクエストで指定されていない場合、デフォルト値は false です。 EBX® メイン構成ファイルでプロパティ ebx.dataservices.dataDeletionOnCloseOrMerge.default を指定してデフォルト値を再定義することができます。 |
HTTP コード
| HTTP コード | 説明 |
|---|---|
204 (No content) |
リクエストは正常に処理されましたが、応答本文は返されません。 |
400 (Bad request) |
リクエストの URL または本文が整形式でないか、無効なコンテンツが含まれています。 |
401 (Unauthorized) |
認証に失敗しました。 |
403 (Forbidden) |
認証されたユーザーの指定されたリソースを閉じるための権限が拒否されました。 |
404 (Not found) |
URL で指定されたリソースが見つかりません。 |
422 (Unprocessable entity) |
ブロッキング制約に違反しています。 |
500 (Internal error) |
アプリケーションによる予期しないエラー。エラーの詳細は通常、EBX® ログに記録されます。 |
ヘルスオペレーション
概要
オペレーションの正常性は、EBX® サーバーの監視に役立ちます。
運用開始
EBX® が開始されて初期化されている場合はステータスコード 200 (Ok) を返し、それ以外の場合は 503 (Service unavailable) を返します。
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/.../health/v1/started
HTTP コード
| HTTP コード | 説明 |
|---|---|
200 (OK) |
リクエストは正常に処理され、応答本文が返されます。 |
503 (Service unavailable) |
EBX® はまだ開始および初期化されていません。診断に役立つメッセージが返されます。 |
応答本文
JSON の例を参照してください。
動作確認
EBX® が開始されて確認された場合はステータスコード 200 (Ok) を返し、それ以外の場合は 503 (Service unavailable) を返します。
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/.../health/v1/check
HTTP コード
| HTTP コード | 説明 |
|---|---|
200 (OK) |
リクエストは正常に処理され、応答本文が返されます。 |
503 (Service unavailable) |
EBX® はまだ開始および初期化されていません。診断に役立つメッセージが返されます。 |
応答本文
JSON の例を参照してください。
運用停止
EBX® リポジトリがシャットダウンされている場合は、ステータスコード 200 (Ok) を返し、それ以外の場合は 503 (Service unavailable) を返します。
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/.../health/v1/stopped
HTTP コード
| HTTP コード | 説明 |
|---|---|
200 (OK) |
リクエストは正常に処理され、応答本文が返されます。 |
503 (Service unavailable) |
EBX® はまだ開始および初期化されていません。診断に役立つメッセージが返されます。 |
応答本文
JSON の例を参照してください。
OpenAPI 操作
概要
api カテゴリの操作は、OpenAPI 仕様 3.0.X に準拠して JSON ドキュメントを生成します。これらのドキュメントは、使用可能な REST ビルトインリソースとそれらに関連付けられた操作を構造化して説明することにより、開発と使用を容易にします。
includeOpenApiDetails クエリパラメーターを使用すると、データの Select 操作を通じて OpenAPI ドキュメントの HATEOAS リンクを利用できます。
REST OpenAPI サービスの権限は、グローバル許可でグローバルに定義されています。
特定の言語でクライアントを生成する場合は、データ型を正しくマップすることが重要です。OpenAPI 形式を使用して、入力を検証するか、選択したプログラミング言語の特定の型に値をマップします。詳細については、単純型のコンテンツを参照してください。
注意:
特定のフォーマットをサポートしないツールは、デフォルトで
type のみに戻る場合があります。
OpenAPI ドキュメントの生成
この操作では、
GET または POST HTTP メソッドを使用して、データセットテーブルまたはスキーマノードの OpenAPI ドキュメントを生成します。
URL フォーマットは次のとおりです。
http[s]://<host>[:<port>]/ebx-dataservices/rest/api/v1/{category}/v1/{dataspace}/{dataset}/{pathInDataset}
説明
-
{dataspace}は、Bの後にデータスペース識別子が続くか、Vの後にスナップショット識別子が続くことに対応します。 -
{dataset}はデータセット識別子に対応します。 -
{pathInDataset}は、次のパスに対応します。-
テーブルノード
-
データセットターミナルノードまたはそれ以上
-
注意:
生成されたドキュメントは、ユーザーの権限に依存しません。フィールド全体が表示されます。
HTTP コード
| HTTP コード | 説明 |
|---|---|
200 (OK) |
リクエストは正常に処理されました。 |
401 (Unauthorized) |
認証に失敗しました。 |
403 (Forbidden) |
指定されたリソースを読み取るための権限が拒否されました。 |
404 (Not found) |
URL で指定されたリソースが見つかりません。 |
ステージングオペレーション
Staging REST API は、ソースサーバーとターゲットサーバーと対話するように設計されています。ユーザーは、ステージングアーカイブのエクスポートとインポートを使用してドメインを管理できます。
サービスの完全な説明は、次のリンクの OpenAPI を介して入手できます。
http[s]://<host>[:<port>]/ebx-dataservices/rest/api/v1/staging/v1
開発実行モードでは、次のリンクから Swagger UI を利用できます。
http[s]://<host>[:<port>]/ebx-dataservices/rest/api/v1/staging/v1/ui
以下も参照してください。:
ドメイン管理操作
domains サービスにより、ユーザーはドメインを管理できます。提供される機能は次のとおりです。
-
利用可能なドメインのリストを選択します。
-
一意の名前でドメインを選択します。
-
新しいドメインを作成します。
-
ドメインのコンポーネントを選択します。
-
コンポーネントをドメインに追加します。
-
ドメインからコンポーネントを削除すると、コンポーネントが削除されます。
ステージングエレメントのナビゲーション操作
elements サービスは、インスタンスのエレメント全体を階層的に表示するように設計されています。これは主に、レベルを処理する階層ビューをサポートする UI インターフェイス用に設計されています。構造化された本文の代わりにクエリパラメーターを使用する目的は、リンクを使用してナビゲーションを容易にすることです。提供される機能は次のとおりです。
-
エレメントのコンテンツを展開します。
-
選択したエレメントの下にある特定の種類のエレメントのコンテンツを展開します。
アーカイブ操作
archives サービスは、単一のリクエストで実行中のインスタンスとの間でステージングアーカイブをインポート/エクスポートするように設計されています。また、非同期インポート用のアーカイブのアップロードにも使用されます。提供される機能は次のとおりです。
-
ドメインのアーカイブをエクスポートします。
-
実行中のインスタンスにアーカイブをインポートします。
-
非同期インポート用のアーカイブをアップロードします。
cURL 経由でステージングアーカイブをエクスポートする最も簡単な方法
curl --request GET 'http[s]://<host>[:<port>]/ebx-dataservices/rest/staging/v1/archives/<domain>?login=<login>&password=<password>'
cURL 経由でステージングアーカイブをインポートする最も簡単な方法
curl --request POST 'http[s]://<host>[:<port>]/ebx-dataservices/rest/staging/v1/archives?login=<login>&password=<password>'
--header 'Content-Type: application/zip'
--data-binary '@/<archive-path-on-disk>'
エクスポート操作
exports サービスは、高度なエクスポート機能を処理するように設計されています。アーカイブはエクスポートされ、事前に定義された期間、サーバーに保存されます。ユーザーはアーカイブに関する情報を取得でき、有効期限が切れるまでダウンロードできます。提供される機能は次のとおりです。
-
エクスポートを開始します。
-
開始されたエクスポートのステータスを取得します。
-
エクスポートされたアーカイブをダウンロードします。
このエンドポイントは、同期モードと非同期モードの両方で機能します。
同期モード
サーバー上のアーカイブ全体をエクスポートした後に応答するブロッキングモード。アーカイブはすぐにダウンロードできます。
非同期モード
エクスポート ID で応答し、アーカイブをエクスポートするタスクを起動する非ブロッキングモード。クライアントは、ステータスエンドポイントをポーリングして、エクスポートのステータスを取得する必要があります。ステータスが「エクスポート済み」に変わると、アーカイブはダウンロード可能になります。
一貫性を保つために、ステージング非同期ジョブは、60 分以内に完了しない場合は中止されます。
インポート操作
imports サービスは、高度なインポート機能を処理するように設計されています。アーカイブはアップロードされ、事前に定義された期間サーバーに保存されます。ユーザーは、インポートを非同期的に開始したり、進行中または完了したインポートに関する情報を取得したりできます。
アーカイブは、オプション asyncImport=true を指定した
archives サービスを使用してアップロードされます。
提供される機能は次のとおりです。
-
アップロード済みのアーカイブを使用してインポートを開始します。
-
開始されたインポートのステータス/レポートを取得します。古いインポートからアーカイブ名を取得して、異なるオプションで同じアーカイブの再インポートを開始できます。有効期限が切れるまで利用できます。このエンドポイントは非同期モードでのみ機能します。
制限事項
一般的な制限事項
-
リクエスト URL
{pathInDataset}または{pathInRecord}のインデックスはサポートされていません。 -
データセットノードおよびサブターミナルのノードに適用されるフィールド操作はサポートされません。ターミナルノードの詳細については、アクセスプロパティを参照してください。
コンパクトフォーマットの制限事項
-
履歴カテゴリは、コンパクトフォーマットではサポートされません。
読み取り操作
-
セレクター内では、ページネーションコンテキストはnextPageプロパティに制限されています。 -
sortByRelevancyパラメーターが有効な場合、sort、sortOnLabel、sortPriority、および viewPublication で定義されたソート基準パラメーターは無視されます。 -
viewPublicationパラメータ内では、階層ビューとタイル ビューはサポートされていません。 -
sortOnLabelパラメーターは、プログラムによるラベルを無視します。 -
システム情報レスポンスのプロパティは、階層表示を使用して REST URL で参照することはできません。詳細については、システム情報操作を参照してください。
-
作成の準備操作は、データセットノードをサポートしていません。
-
データスペースの Select 操作では、ラベルで並べ替えられません。
-
スナップショットの Select 操作では、スナップショットは作成日で並べ替えられません。
-
スナップショットの Select 操作に初期スナップショットを含めることはできません。
書き込み操作
-
関連付けフィールドは更新できないため、関連付けられたレコードのリストを直接変更することはできません。
-
ユーザーインターフェイスの制御ポリシー
onUserSubmit-checkModifiedValuesはサポートされていません。検証エラーを取得するには、includeValidationパラメーターを含めて、リソースで Select 操作を呼び出します。詳細については、ブロッキングと非ブロッキングの制約を参照してください。
ディレクトリ操作
-
ユーザーのパスワードの変更またはリセットはサポートされていません。
OpenAPI 操作
-
ドキュメントの生成は、ユーザーインターフェイスからは利用できません。
-
ドキュメント生成 REST サービスは YAML フォーマットをサポートしていません。
-
-
データセットツリー、データセットノード、フィールドの Select 操作。
-
1 回のリクエストで複数のレコードを挿入または削除します。
-
HTTP ヘッダー
content-type: x-www-form-urlencodedを使用して、本文リクエストでクエリパラメーターを送信します。
-
-
「基本認証スキーム」は、説明されている唯一の方法です。