ドキュメントの更新
/capture/api/v1.1/documents/{docId}
この操作はドキュメントの変更に使用します。 ドキュメント・データとそのコンテンツの両方を1回の操作で変更できます。
操作のリクエスト本文には、少なくともdocumentパラメータが必要です。 contentパラメータはオプションで、ドキュメント・コンテンツの変更が必要な場合にのみ必要です。
documentパラメータはドキュメント・オブジェクトで、基本的にリクエスト本文に存在し更新可能な属性を持つドキュメントを「パッチ」します。 merge-patchメディア・サブタイプは使用されません。これは、ドキュメント・オブジェクトに配列が含まれ、それによって配列のコンテンツ全体がリクエスト本文に含まれる必要があるためです。 merge-patchを管理するRFC 7386は、配列で要素を更新する重要な要素を提供しません。 merge-patchは使用されませんが、リクエスト本文に必要な変更のみが必要であるため、更新されるフィールドのみが存在する必要があります。 更新可能な属性は次のとおりです:
titleprofilefieldscomment
titleまたはcommentの更新は単純な文字列変更です。 ドキュメント・プロファイル( profile)を更新するには、その値を別のドキュメント・プロファイル・オブジェクトに設定する必要があります。 オブジェクトには、id属性またはname属性のいずれか、または両方が含まれている必要があります。 プロシージャ定義では名前が一意であるため、必要な属性は1つのみです。 現在のドキュメント・プロファイルまたはその他の属性をクリアするには、ドキュメント・オブジェクトのその値をnullに設定する必要があります。 最後に、設定または変更されるフィールドのみがfields配列に存在する必要があります。
ドキュメント・オブジェクトには、stateTokenも含まれている必要があります。 これは、オブジェクトが更新されているものと同じになるようにするために必要です。 stateTokenは、最後にリクエストされた時点からすでに更新されている場合には異なります。 これにより、同時更新が行われず、データの上書きが防止されます。
ノート: このリクエストで使用されるOAuthトークンは、このドキュメントが存在するステップへの攻撃アクセス権を付与されたアカウントを表す必要があります。 アカウントが「管理者の取得」または「ユーザーの取得」を表す場合、違いは発生しません。
リクエスト
- multipart/form-data
- docId: string
取得内の文書の一意の識別子。
- X-Requested-With: string
クロスサイト・リクエスト・フォージェリ(CSRF)攻撃を防ぐために使用されるヘッダー。 サポートされている値はXMLHttpRequestのみです。
- content(optional): file
これは、処理の結果として更新されたイメージなど、実際のドキュメント・コンテンツです。
マルチパートのContent-Typeは、ファイルのタイプを識別する必要があります。 また、Content-Dispositionにはfilenameが含まれている必要があります。 - document: string
これはドキュメント・オブジェクトです。 mulitpartのContent-Typeを使用する必要があり、文字列値に使用されるアプリケーション・エンコーディングを識別する必要があります。 これはapplication/jsonである必要があります。
ドキュメント・オブジェクトには、現在の状態を表す
stateTokenも含める必要があります。 指定されたstateTokenがドキュメントの現在のstateTokenと一致しない場合、更新操作によってエラーが発生します。
レスポンス
- application/json
200レスポンス
すべての更新を含むドキュメント。
objectDocument取得の「ドキュメント」は、カスタム・メタデータ・フィールドと組み合されたファイルです。 メタデータ・フィールドは、キャプチャ・プロシージャで定義され、キャプチャ内で管理される情報の所有者として機能します。 「ドキュメント」には、添付を含めることもできます。 「添付」は、「ドキュメント」を拡張することを目的としており、多数のベア・リング・タイプの添付があります。
- batch(optional): object batch
このドキュメントを含む取得バッチ。
- comment(optional): string
このドキュメントの全般的な使用コメント。
- createdBy(optional): object createdBy
ドキュメントを作成したユーザー。
- createdDate(optional): string(date-time)
これは、文書が作成された時期を識別します。 「ISO-8601日時」形式(
yyyy-MM-dd'T'HH:mm:ss.SSSZ) UTCの日付/時間は、RFC 3339によって管理されます。 - fields(optional): array fields
これは、このドキュメントで使用できるすべてのフィールド値の配列です。
- id(optional): string
取得内の文書の一意の識別子。
- links(optional): array links
このリソースに対する関連リソースおよびアクションへのHATEOSリンク。 これには、リソースへの少なくともcanonical関連リンクが含まれます。
- mediaType(optional): string
ドキュメントのメディア・タイプを表します。 これは、インターネットで送信されるファイル・フォーマットおよびフォーマット・コンテンツの2部分識別子です。
- profile(optional): object profile
この文書に割り当てられている文書プロファイル。
- size(optional): integer(int64)
ドキュメントのサイズ(バイト単位)。
- sourceName(optional): string
インポート時の文書のファイル名。
- stateToken(optional): string
ドキュメントの特定の状態を表す生成された文字列値。
一般に、ドキュメントの変更を続行できるようにするために使用されます。 本質的に言っているのだ... 「現在の
stateTokenがこの値と一致する場合は、このドキュメントを変更」。 値が一致しない場合、変更は許可されず、操作によってエラーが発生します。 - step(optional): object step
現在の処理ステップ(存在する場合)は、この文書を実行中です。
- title(optional): string
ドキュメントのtitle。 これは通常、ドキュメントのインポート時に使用されるファイル名です。
- updatedBy(optional): object updatedBy
ドキュメントを更新した最後のユーザー。
- updatedDate(optional): string(date-time)
文書が最後に更新された日時を識別します。 「ISO-8601日時」形式(
yyyy-MM-dd'T'HH:mm:ss.SSSZ) UTCの日付/時間は、RFC 3339によって管理されます。
arrayこれは、このドキュメントで使用できるすべてのフィールド値の配列です。
- Array of: object Field Value
タイトル:
Field Valueフィールド値は、基本フィールド定義と実際の値を組み合せた取得メタデータ・フィールドです。
arrayこのリソースに対する関連リソースおよびアクションへのHATEOSリンク。 これには、リソースへの少なくともcanonical関連リンクが含まれます。
- Array of: object HATEOAS Link
タイトル:
HATEOAS Linkこれは、HATEOASリンクおよび関連メタデータです。 レスポンスがリンクを提供する場合(リソース自体への
selfリンクなど)、提供されるリンクには、このリンク構造で定義された1つ以上のプロパティが含まれます。Internet Assigned Numbers Authority (IANA)は、HATEOASリンクで使用するために「リンク関係」のレジストリを保持します。 これらは有名な関係で、特定の意味を持つ。 応募者がキャプチャでいる場合は、それらが使用されます。 たとえば、canonicalは既知の関係で、Captureではそれを使用します。
どのような登録関係でも適切な意味が提供されていないため、キャプチャでは、特定のケースで独自のリンク関係が定義されます。 Webリンク(RFC 8288)のRFCで定義されているように、関係はURIである必要があります。 次のリンク関係は、Captureによって定義されます:
urn:oce:capture:document-content- 文書コンテンツの取得に使用されるリンクを表しますurn:oce:capture:document-complete- 「ステップ」タスク・キュー内のドキュメントの処理を完了するために使用されるリンクを表しますurn:oce:capture:attachment-content- 添付コンテンツの取得に使用されるリンクを表します
objectこの文書に割り当てられている文書プロファイル。
- object 「ドキュメント・プロファイル」
タイトル:
Document Profile「ドキュメント・プロファイル」は、キャプチャ・プロシージャで定義されたカスタム・メタデータ・フィールドのコレクションをドキュメントに関連付けます。 また、添付タイプを関連付けることもできます。
これらは、ドキュメントを分類して処理するために取得で使用されます。 ドキュメント・プロファイルでは、プロシージャからドキュメントへのカスタム・メタデータ・フィールドおよび添付タイプが関連付けられますが、これらのフィールドまたは添付のみにメタデータが制限されることはありません。 取得クライアント内での表示/管理に使用されます。
object現在の処理ステップ(存在する場合)は、この文書を実行中です。
- object 「プロシージャ・ステップ」
タイトル:
Procedure Stepプロシージャ・フロー内のステップ。
objectCapture Batchプロシージャの作業単位を表す、キャプチャ内のドキュメントのコレクション。
- createdBy(optional): object createdBy
バッチを作成したユーザー。
- createdDate(optional): string(date-time)
これは、バッチが作成された時期を識別します。 「ISO-8601日時」形式(
yyyy-MM-dd'T'HH:mm:ss.SSSZ) UTCの日付/時間は、RFC 3339によって管理されます。 - error(optional): string
バッチの現在のエラー・メッセージ(存在する場合)。
バッチがERROR
stateにある場合、バッチ処理に失敗した理由を示すエラー・メッセージが表示されます。 このメッセージは、バッチ処理が再エンターされるまで残ります。 - id(optional): string
バッチの一意識別子。
- links(optional): array links
このリソースに対する関連リソースおよびアクションへのHATEOSリンク。 これには、リソースへの少なくともcanonical関連リンクが含まれます。
- lock(optional): object lock
batchがlockedの場合(ユーザーがバッチを作成/編集する場合、またはキャプチャが現在バッチを処理している場合)、このオブジェクトにはロックに関する情報が含まれます。 バッチの
stateは、このオブジェクトが存在するかどうかを決定します。 - name(optional): string
バッチに指定された名前。
取得でバッチを作成する場合、名前は定義済のプレフィクスと連番になります。 たとえば、inv_4781です
- notes(optional): string
バッチに関連付けられたユーザー指定の一般ノート。
- priority(optional): integer(int32)
最小値:
0最大値:10デフォルト値:0ユーザーがバッチの優先度を指定しました。
この値は、ユーザーの注意のためにバッチを優先するために使用されます。 クライアントで表示するバッチをフィルタおよびソートするために使用されます。
- procedure(optional): object procedure
このバッチに関連付けられた取得プロシージャ。
- state(optional): string
デフォルト値:
READYバッチの現在の状態。
READY- バッチの標準保存状態。 クライアントによってロックできます。LOCKED- バッチは、ドキュメントの追加/削除やメタデータ・フィールド値の設定など、編集のためにクライアントによってロックされます。ERROR- 処理中にエラーが発生しました。 処理エラーを修正するために、編集のためにクライアントによってロックできます。PROCESSING- 取得は現在バッチを処理しています。 バッチは、取得プロシージャで定義されたジョブのいずれかにあります。
- status(optional): string
バッチに割り当てられた現在のステータス。
ステータス値はプロシージャで定義され、バッチ作成時および処理ジョブ間の遷移時に割り当てることができます。
- updatedBy(optional): object updatedBy
バッチを更新した最後のユーザー。 これはキャプチャ・システムです。
- updatedDate(optional): string(date-time)
これにより、バッチの最終更新日時が識別されます。 「ISO-8601日時」形式(
yyyy-MM-dd'T'HH:mm:ss.SSSZ) UTCの日付/時間は、RFC 3339によって管理されます。
arrayこのリソースに対する関連リソースおよびアクションへのHATEOSリンク。 これには、リソースへの少なくともcanonical関連リンクが含まれます。
- Array of: object HATEOAS Link
タイトル:
HATEOAS Linkこれは、HATEOASリンクおよび関連メタデータです。 レスポンスがリンクを提供する場合(リソース自体への
selfリンクなど)、提供されるリンクには、このリンク構造で定義された1つ以上のプロパティが含まれます。Internet Assigned Numbers Authority (IANA)は、HATEOASリンクで使用するために「リンク関係」のレジストリを保持します。 これらは有名な関係で、特定の意味を持つ。 応募者がキャプチャでいる場合は、それらが使用されます。 たとえば、canonicalは既知の関係で、Captureではそれを使用します。
どのような登録関係でも適切な意味が提供されていないため、キャプチャでは、特定のケースで独自のリンク関係が定義されます。 Webリンク(RFC 8288)のRFCで定義されているように、関係はURIである必要があります。 次のリンク関係は、Captureによって定義されます:
urn:oce:capture:document-content- 文書コンテンツの取得に使用されるリンクを表しますurn:oce:capture:document-complete- 「ステップ」タスク・キュー内のドキュメントの処理を完了するために使用されるリンクを表しますurn:oce:capture:attachment-content- 添付コンテンツの取得に使用されるリンクを表します
objectbatchがlockedの場合(ユーザーがバッチを作成/編集する場合、またはキャプチャが現在バッチを処理している場合)、このオブジェクトにはロックに関する情報が含まれます。 バッチのstateは、このオブジェクトが存在するかどうかを決定します。
- lockedBy(optional): object lockedBy
取得クライアント・インスタンス内でbatchがlockedの場合、この属性にはバッチをlockedするユーザーが含まれます。
- lockedDate(optional): string(date-time)
これは、バッチがいつロックされたかを識別します。 「ISO-8601日時」形式(
yyyy-MM-dd'T'HH:mm:ss.SSSZ) UTCの日付/時間は、RFC 3339によって管理されます。 - step(optional): object step
取得が現在バッチを処理している場合、このオブジェクトには、バッチが進行中の現在の処理ステップが含まれます。
- workstation(optional): string
取得クライアント・インスタンス内のbatchがlockedの場合、この属性には、キャプチャ・クライアント・インスタンスがバッチをlockedするコンピュータ名が含まれます。
objectこのバッチに関連付けられた取得プロシージャ。
- object 「プロシージャの取得」
タイトル:
Capture Procedure取得プロシージャでは、フローのメタデータおよび進捗ステップを定義します。
objectUser Informationこのオブジェクトには、取得の指定ユーザーに関する情報が含まれます。
モデルは、このオブジェクトを使用して、ユーザーと他のオブジェクトの関係を示します。 たとえば、APIのモデルでは、ユーザー・オブジェクトである属性updatedByを定義できます。 これは、そのユーザーが最後に更新されたことを示します。
- name: string
ユーザー名。
objectHATEOAS Linkこれは、HATEOASリンクおよび関連メタデータです。 レスポンスがリンクを提供する場合(リソース自体へのselfリンクなど)、提供されるリンクには、このリンク構造で定義された1つ以上のプロパティが含まれます。
Internet Assigned Numbers Authority (IANA)は、HATEOASリンクで使用するために「リンク関係」のレジストリを保持します。 これらは有名な関係で、特定の意味を持つ。 応募者がキャプチャでいる場合は、それらが使用されます。 たとえば、canonicalは既知の関係で、Captureではそれを使用します。
どのような登録関係でも適切な意味が提供されていないため、キャプチャでは、特定のケースで独自のリンク関係が定義されます。 Webリンク(RFC 8288)のRFCで定義されているように、関係はURIである必要があります。 次のリンク関係は、Captureによって定義されます:
urn:oce:capture:document-content- 文書コンテンツの取得に使用されるリンクを表しますurn:oce:capture:document-complete- 「ステップ」タスク・キュー内のドキュメントの処理を完了するために使用されるリンクを表しますurn:oce:capture:attachment-content- 添付コンテンツの取得に使用されるリンクを表します
- href(optional): string
- mediaType(optional): string
デフォルト値:
application/jsonRFC 2046で定義されたメディア・タイプで、リンク・ターゲットを記述します。 プロパティが存在しない場合、
application/jsonとみなすことができます。 - method(optional): string
デフォルト値:
GETリンクのターゲットをリクエストするためのHTTPメソッド。
有効な値は次のとおりです。
OPTIONS- HTTP OPTIONSHEAD- HTTP HEADGET- HTTP GETPOST- HTTP POSTPUT- HTTP PUTPATCH- HTTP PATCHDELETE- HTTP DELETE
プロパティが存在しない場合、
GETとみなすことができます。 - profile(optional): string(uri)
ターゲット・リソースを参照解除するときにリソースを指定するJSONスキーマなどのリソースのメタデータへのリンク。 使用できない場合は、このプロパティは存在しません。
- rel(optional): string
リンクの詳細を取得するために使用できるリンク・リレーションの名前。
- templated(optional): boolean
デフォルト値:
falsehrefプロパティを指定するブール・フラグは、URIまたはURIテンプレートです。 プロパティが存在しない場合、falseとみなすことができます。
object取得クライアント・インスタンス内でbatchがlockedの場合、この属性にはバッチをlockedするユーザーが含まれます。
object取得が現在バッチを処理している場合、このオブジェクトには、バッチが進行中の現在の処理ステップが含まれます。
- object 「プロシージャ・ステップ」
タイトル:
Procedure Stepプロシージャ・フロー内のステップ。
objectProcedure Stepプロシージャ・フロー内のステップ。
- id(optional): string
プロシージャ内のステップの一意の識別子。
- name(optional): string
作成時にステップに指定された名前。 たとえば、処理ジョブまたはコミット・プロファイルの名前。
- type(optional): string
ステップのタイプ。 次に例を示します: 外部プロセッサ, TIFF換算プロセッサ, アセット参照プロセッサ, etc.
objectCapture Procedure取得プロシージャでは、フローのメタデータおよび進捗ステップを定義します。
- id(optional): string
取得でのプロシージャの一意の識別子。
- name(optional): string
作成時にプロシージャに指定された名前
objectField Valueフィールド値は、基本フィールド定義と実際の値を組み合せた取得メタデータ・フィールドです。
- dataType(optional): string
デフォルト値:
ALPHA_NUMERICフィールドのデータ型。 Captureでは、次の6つのデータ型がサポートされています:
NUMERIC- 整数ベースの数値ALPHA_NUMERIC- 一般的なテキストまたは文字列値DATE- RFC 3339で管理される「ISO-8601日時」形式(yyyy-MM-dd'T'HH:mm:ss.SSS'Z')の日付/時間値FLOAT- 浮動小数点数値ITEM_REFERENCE- Oracle Content Managementのコンテンツ・アイテムへの「人差し指」ASSET_REFERENCE- Oracle Content Managementのデジタル・アセットへの「人差し指」CATEGORY_REFERENCE- Oracle Content Managementのタクソノミ・カテゴリに対する「人差し指」LANGUAGE- RFC 4647で定義されている言語コード。
- name(optional): string
フィールドの名前。
- value(optional): string
指定されたキャプチャ・ドキュメントに関連する、このメタデータ・フィールドの実際の値。
フィールドには最初の値は含まれません。 これらは設定する必要があります。 これは、メタデータ・フィールド定義のデフォルト値、取得クライアントで指定されたユーザー、または取得処理ジョブによって実行されます。
取得のフィールドには、null値の概念がありません。 フィールドに値があるか、値がありません。 「空白」は、値がないことを意味します。
objectDocument Profile「ドキュメント・プロファイル」は、キャプチャ・プロシージャで定義されたカスタム・メタデータ・フィールドのコレクションをドキュメントに関連付けます。 また、添付タイプを関連付けることもできます。
これらは、ドキュメントを分類して処理するために取得で使用されます。 ドキュメント・プロファイルでは、プロシージャからドキュメントへのカスタム・メタデータ・フィールドおよび添付タイプが関連付けられますが、これらのフィールドまたは添付のみにメタデータが制限されることはありません。 取得クライアント内での表示/管理に使用されます。
- id(optional): string
ドキュメント・プロファイルの一意識別子。
- name(optional): string
文書プロファイルに指定された名前。
400レスポンス
不正リクエスト
情報が欠落しているか無効であるため(入力フィールドでの検証エラー、必須値の欠落など)、リクエストを処理できませんでした。 レスポンスは「エラーの詳細」オブジェクトになります。
403レスポンス
禁止
リクエストは有効で、認識されましたが、サーバーはアクションを拒否しています。 これは、リソースに必要な権限がないアカウント、または禁止されたアクション(たとえば、1つのみが許可されている重複アイテムの作成)を試みていることが原因である可能性があります。 レスポンスは「エラーの詳細」オブジェクトになります。
404レスポンス
Not Found
リクエストに、存在しないリソースURIが含まれています。 レスポンスは「エラーの詳細」オブジェクトになります。
409レスポンス
競合
このレスポンスは、リクエストがターゲット・リソースの現在の状態と競合することを示します。 レスポンスは「エラーの詳細」オブジェクトになります。
通常、412 (Precondition Failed)のエラー・レスポンスが返されます。 ただし、「競合」は、リソースに同時編集がある場合に発生する可能性があります。
412レスポンス
Precondition Failed
サーバーはリクエストの前提条件を満たしていません。 レスポンスは「エラーの詳細」オブジェクトになります。
このエラー・レスポンスは、リクエスト本文で使用されているstateTokenがリソースの現在のstateTokenと一致しない場合、特に使用されます。
500レスポンス
内部サーバー・エラー
サーバーで予期しない状態が発生し、リクエストを処理できませんでした。 レスポンスは「エラーの詳細」オブジェクトになります。
例
例1:
次の例は、ドキュメントを更新する方法を示しています。
curl -X PUT -H 'Accept: application/json' 'https://host:port/content/capture/api/v1/documents/dcf65d45-4f53-4f82-998c-5e189de1b6a1'
これにより、'dcf65d45-4f53-4f82-998c-5e189de1b6a1'というIDでドキュメントが更新され、そのタイトルが設定され、いくつかのメタデータ・フィールド値が設定されます。 この操作のリクエスト本文は、multipart/form-dataのコンテンツ・タイプです。 この例では、RAW HTTP PUTを示しています。
リクエスト本文
PUT /capture/api/v1/documents/dcf65d45-4f53-4f82-998c-5e189de1b6a1 HTTP/1.1
Host: server.example.com:443
X-Requested-With: XmlHttpRequest
Authorization: Basic c3N2cmludC5tdGFkbWluOndlbGNvbWUx
Content-Length: 886
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
----WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="document"
Content-Type: application/json
{
"title": "Tire's Plus Invoice",
"stateToken": "340f804ff4118f2f419bc3ca87ef1213",
"fields": [
{
"name": "Invoice Date",
"dataType": "DATE",
"value": "2010-08-30"
},
{
"name": "Invoice Number",
"dataType": "NUMERIC",
"value": "56842"
},
{
"name": "Company Name",
"dataType": "ALPHA_NUMERIC",
"value": "Tire's Plus"
},
{
"name": "Invoice Total",
"dataType": "FLOAT",
"value": "5168.54"
}
]
}
----WebKitFormBoundary7MA4YWxkTrZu0gW
レスポンス本文
{
"id": "dcf65d45-4f53-4f82-998c-5e189de1b6a1",
"title": "Tire's Plus Invoice",
"batch": {
"id": "864",
"name": "ep_53"
},
"step": {
"id": "a82321c2-f288-4545-8795-e3c0f035f7ba",
"name": "Find Invoice Date",
"type": "External Processor"
},
"profile": {
"id": "4933f335-0861-4e6a-84ca-86ccae6b7ed8",
"name": "Invoice Profile"
},
"stateToken": "340f804ff4118f2f419bc3ca87ef1213",
"mediaType": "image/tiff",
"sourceName": "Invoice20210810124042797000.TIF",
"size": 32709,
"fields": [
{
"name": "Invoice Date",
"dataType": "DATE",
"value": "2010-08-30"
},
{
"name": "Invoice Number",
"dataType": "NUMERIC",
"value": "56842"
},
{
"name": "Company Name",
"dataType": "ALPHA_NUMERIC",
"value": "Tire's Plus"
},
{
"name": "Invoice Total",
"dataType": "FLOAT",
"value": "5168.54"
}
],
"createdBy": {
"name": "ssvrint.mtadmin"
},
"createdDate": "2021-08-18T05:01:37.181Z",
"updatedBy": {
"name": "ssvrint.mtadmin"
},
"updatedDate": "2021-08-30T14:49:26.172Z",
"links": [
{
"rel": "canonical",
"href": "http://server.example.com/capture/api/v1/documents/dcf65d45-4f53-4f82-998c-5e189de1b6a1",
"method": "GET",
"mediaType": "application/json"
},
{
"rel": "urn:oce:capture:document-content",
"href": "http://server.example.com/capture/api/v1/documents/dcf65d45-4f53-4f82-998c-5e189de1b6a1/content",
"method": "GET",
"mediaType": "image/tiff"
},
{
"rel": "urn:oce:capture:document-complete",
"href": "http://server.example.com/capture/api/v1/steps/a82321c2-f288-4545-8795-e3c0f035f7ba/tasks/documents/complete",
"method": "PUT",
"mediaType": "image/tiff"
}
]
}