統合された既定のWebサービス「DocuWare Platform API」を介して、ファイルキャビネットやファイルキャビネット内のドキュメントにアクセスできます。
以下のリストは、既定のREST Webサービス「DocuWare Platform API」で利用可能なエンドポイントを示しています。
情報:複数の操作を実行できるエンドポイントがあります
たとえば、エンドポイント「documentAnnotations」は、自動位置または固定位置にスタンプを配置したり、テキスト注釈を追加したりできます。これら3つの機能のパス/エンドポイントは「documentAnnotations」で共通です。違いはHTTPボディにあります。ただし、DocuWareが自動的にHTTPボディを事前入力できるのは1つの機能のみです。「documentAnnotations」の例では、「自動的に定義された位置にスタンプを追加」機能のHTTPボディが既定で入力されます。「documentAnnotations」で別の機能を使用する場合は、HTTPボディを手動で置き換えて調整する必要があります。対応するテンプレートは、エンドポイント一覧の末尾にあります。
エンドポイント一覧のタグ「Default」は、どのHTTPボディが自動的に事前入力されるかを示しています。
同じパス/エンドポイントを共有する操作を確認するには、以下の一覧をご覧ください。
documentAnnotations
POST /FileCabinets/{TrayId/FileCabinetId}/Operations/ProcessDocumentAction?docId={DocId}
自動的に定義された位置にスタンプを追加 - default
固定位置にスタンプを追加
固定位置にテキスト注釈を追加
processDocumentAction
PUT /FileCabinets/{TrayId/FileCabinetId}/Documents/{DocId}/Annotation
レイヤーの統合 - default
ドキュメントの追加
userRoles
PUT /Organization/UserRoles?UserId={UserId}
ユーザーをロールに追加 - default
ユーザーをロールから削除
userGroups
PUT /Organization/UserGroups?UserId={UserId}
ユーザーをグループに追加 - default
ユーザーをロールから削除
ユーザーのID/GUIDを渡すには、ユーザー名を「User」タイプのグローバル変数に書き込み、その変数をHTTPリクエストに渡します。システムが自動的に適切なGUIDを提供します。
エンドポイント一覧
ファイルキャビネットまたは文書トレイ内のドキュメント総数を取得
説明:DialogId(オプション):使用する検索ダイアログの識別子。
FieldName(オプション):値がグループ化およびカウントされるフィールドの名前。Default:yes
操作:countResult
コマンド:POST
Route/パス:
/DocuWare/Platform/FileCabinets/ {TrayId/FileCabinetId}/Query/CountExpression?dialogId={DialogId}&fieldName= {FieldName}
ダイアログによる検索
説明:DialogId(オプション):使用する検索ダイアログの識別子。
Default:yes
操作:dialogExpression
コマンド:POST
Route/パス:
/DocuWare/Platform/FileCabinets/ {TrayId/FileCabinetId}/Query/CountExpression?dialogId={DialogId}&fieldName= {FieldName}HTTPボディ(例):
{ "Condition":[ {"DBName":"COMPANY", "Value":["Peter's Engineering"]},{"DBName":"CONTACT", "Value":["EMPTY()"]},{"DBName":"DocuWareFulltext", "Value":["Solar Panels"]}], "Operation":"And"}
文書トレイまたはファイルキャビネットに新しいデータベースエントリを作成
Default:yes
操作:documents
コマンド:POST
Route/パス:/FileCabinets/{TrayId/FileCabinetId}/Documents
HTTPボディ(例):
{ "Fields": [ { "FieldName": "COMPANY", "Item": "Peter's Engineering" }, { "FieldName": "CONTACT", "Item": "Peter Sanders" }, { "FieldName": "DOCUMENT_DATE", "Item": "2020-01-01" }, { "FieldName": "COST_CENTER", "Item": { "$type": "DocumentIndexFieldKeywords", "Keyword": [ "A", "B", "C" ] } } ] }
ドキュメントの情報を取得
Default:yes
操作:document
コマンド:GET
Route/パス:/FileCabinets/{TrayId/FileCabinetId}/Documents/{DocId}
ドキュメントの削除
Default:yes
操作:documentDelete
コマンド:DELETE
Route/パス:/FileCabinets/{TrayId/FileCabinetId}/Documents/{DocId}
ドキュメントのセクションを削除
説明:ドキュメントの唯一のセクションが削除された場合、そのドキュメントは自動的にデータベースエントリに変換されます。
Default:yes
操作:sectionDelete
コマンド:DELETE
Route/パス:/FileCabinets/{TrayId/FileCabinetId}/Sections/{SectionId}
自動的に定義された位置にスタンプを追加
説明:最適な位置にスタンプを追加します。
Default:yes
操作:documentAnnotations
コマンド:POST
Route/パス:/FileCabinets/{TrayId/FileCabinetId}/Documents/{DocId}/Annotation
HTTPボディ(例):
{ "Annotations": [ { "PageNumber": 0, "SectionNumber": 0, "AnnotationsPlacement": { "Items": [ { "$type": "StampPlacement", "StampId": "73d54f34-1b80-4b43-81ec-f0d31176d990", "Layer": 1, "Field": [ { "Name": "<#1>", "TypedValue": { "Item": "*Test007*" }, "Value": "Jenkins" }, { "Name": "<#2>", "TypedValue": { "Item": "*Test007*" }, "Value": "Approved" } ], "Password": null } ] } } ] }
固定位置にスタンプを追加
操作:documentAnnotations
コマンド:POST
Route/パス:FileCabinets/{TrayId/FileCabinetId}/Documents/{DocId}/Annotation
HTTPボディ(例):
{ "Annotations": [ { "PageNumber": 0, "SectionNumber": 0, "AnnotationsPlacement": { "Items": [ { "$type": "StampPlacement", "Location": { "X": "100", "Y": "100" }, "StampId": "6ab67774-074d-4d93-99c5-5bc46262b84c", "Layer": 1, "Field": [ { "Name": "<#1>", "TypedValue": { "Item": "September" }, "Value": "Sep." } ], "Password": null } ] } } ] }
テキスト注釈を追加
操作:documentAnnotations
コマンド:POST
Route/パス:FileCabinets/{TrayId/FileCabinetId}/Documents/{DocId}/Annotation
HTTPボディ(例):
{ "Annotations": [ { "PageNumber": 0, "SectionNumber": 0, "AnnotationsPlacement": { "Items": [ { "$type": "Annotation", "Layer": [ { "Id": "1", "Items": [ { "$type": "TextEntry", "Font": { "FontName": "Lucida Console", "Bold": true, "Italic": true, "Underlined": false, "StrikeThrough": false, "FontSize": 200, "Spacing": 0 }, "Value": "Test annotation", "Location": { "Left": 100, "Top": 100, "Width": 1500, "Height": 500 }, "Color": "Black", "Rotation": 0, "Transparent": false, "StrokeWidth": 50 } ] } ] } ] } } ] }
ドキュメントの転送
説明:ソースのファイルキャビネットまたは文書トレイから、指定されたファイルキャビネットまたは文書トレイにドキュメントを転送します。
コンテンツタイプはapplication/vnd.docuware.platform.documentstransferinfo+jsonに設定する必要があります。
Default:yes
操作:transfer
コマンド:POST
Route/パス:/FileCabinets/ {TrayId/FileCabinetId} /Task/Transfer
HTTPボディ(例):
{ "SourceFileCabinetId": "ae156510-ffa8-48b1-a3ec-baec3180669c", "Documents": [ { "Id": 123456, "Fields": null } ], "KeepSource": true, "FillIntellix": false,"UseDefaultDialog": true}
ドキュメントのファイルを置換
説明:ドキュメントのファイルを、ワークフロー内のドキュメントに置き換えます。
Default:yes
操作:sectionData
コマンド:POST
Route/パス:/FileCabinets/{TrayId/FileCabinetId}/Sections/{SectionId}/Data
新しいファイルを追加
説明:現在のドキュメントを、ファイルキャビネットまたは文書トレイ内の別のドキュメントに追加します。
ドキュメントは元の形式で追加するか、注釈やスタンプなしのPDFとして追加できます。
対象がDBエントリの場合、自動的にドキュメントに変換されます。
Default:yes
操作:sections
コマンド:POST
Route/パス:/FileCabinets/{TrayId/FileCabinetId}/Sections?DocId={DocId}
ドキュメントのクリップ解除
説明:ファイルの分離を自動化します。たとえば、クリップされたドキュメントがファイルキャビネットに保管されている場合、文書トレイに転送してクリップを解除し、再度ファイルキャビネットに保管できます。
リクエストルートに、トレイのGUIDを指定します。
リクエストクエリに、ドキュメントIDを追加します。
Default:yes
操作:unclipDocument
コマンド:POST
Route/パス:/FileCabinets/{TrayId/FileCabinetId}/Operations/ContentDivide?docId={docId}
レイヤーの統合
説明:注釈レイヤーをドキュメントに統合します。新しいPDFが作成され、古いPDFが置き換えられます。
Default:yes
操作:processDocumentAction
コマンド:PUT
Route/パス:
/FileCabinets/{TrayId/FileCabinetId}/Operations/ProcessDocumentAction?docId={DocId}HTTPボディ(例):
{ "DocumentAction": "MergeAnnotations","DocumentActionParameters":{"$type":"MergeAnnotationsParameters","SectionNumber":0}}
ドキュメントの追加
説明:DialogId(オプション):使用する検索ダイアログの識別子。FieldName(オプション):値がグループ化およびカウントされるフィールドの名前。
操作:processDocumentAction
コマンド:PUT
Route/パス:
/FileCabinets/{TrayId/FileCabinetId}/Operations/ProcessDocumentAction?docId={DocId}HTTPボディ(例):
{ "DocumentAction": "Append", "DocumentActionParameters": { "$type": "AppendActionParameters", "RemoveSourceDocuments": false, "DocumentsInFront": [ ], "DocumentsAtBack": [ { "SourceCabinetId": "ae156510-ffa8-48b1-a3ec-baec3180669c", "Documents": [ 123456 ] } ] } }
ユーザーの作成
説明:コンテンツタイプはapplication/vnd.docuware.platform.createorganizationuser+jsonに設定する必要があります。
Default:yes
操作:createUser
コマンド:POST
Route/パス:/Organization/UserInfo
HTTPボディ(例):
{ "EMail": "firstname.lastname@domain.com", "Name": "MyUserName", "DBName": "MYUSERNA", "Password": "eLK%4s*Z", "NetworkID": "Domain\\MyUserName" }
ユーザープロパティの変更
Default:yes
操作:modifyUser
コマンド:PATCH
Route/パス:/Organization/UserInfo
組織のすべてのユーザーを取得
Default:yes
操作:users
コマンド:GET
Route/パス:/Organization/Users?Active={true|false}&Name={UserName}
グループのすべてのユーザーを取得
説明:GroupID(必須):グループの識別子。
Default:yes
操作:usersByGroup
コマンド:GET
Route/パス:/Organization/GroupUsers?groupId={GroupId}
ロールのすべてのユーザーを取得
説明:RoleID(必須):グループの識別子。
IncludeGroupUsers(オプション):ブール値 - 既定値:「false」Default:yes
操作:usersByRole
コマンド:GET
Route/パス:
/Organization/UserRoles?UserId={UserId}&Active={true|false}&Name={RoleName}&Type={Standard|Default|Administrator}
ユーザーの情報を取得
説明:アクティブ状態や不在状態など、特定のユーザーのプロパティを取得します。
UserID(必須):
ユーザーの識別子。
Default:yes
操作:userById
コマンド:GET
Route/パス:/Organization/UserByID?userId={UserId}
ユーザーのすべてのロールを取得
説明:
UserID(必須):ユーザーの識別子。Active(オプション):ブール値 - 既定値:空
Name(オプション):ロールの名前
Type(オプション):{Standard|Default|Administrator}
Default:yes
操作:userRoles
コマンド:GET
Route/パス:/Organization/UserRoles?UserId={UserId}
ユーザーをロールに追加
説明:UserID(必須):ユーザーの識別子。
Default:yes
操作:userRoles
コマンド:PUT
Route/パス:Organization/UserRoles?UserId={UserId}
HTTPボディ(例):
{ "Ids": [ "2d89fc45-a3c4-49c6-971b-ebc696a67d78" ], "OperationType": "Add" }
ユーザーをロールから削除
説明:UserID(必須):ユーザーの識別子。
操作:userRoles
コマンド:PUT
Route/パス:Organization/UserRoles?UserId={UserId}
HTTPボディ(例):
{ "Ids": [ "2d89fc45-a3c4-49c6-971b-ebc696a67d78" ], "OperationType": "Remove" }
ユーザーのすべてのグループを取得
説明:
UserID(必須):ユーザーの識別子。Active(オプション):ブール値 - 既定値:空
Name(オプション):グループの名前
Default:yes
操作:userGroups
コマンド:GET
Route/パス:/Organization/UserGroups?UserId={UserId}
ユーザーをグループに追加
説明:UserID(必須):ユーザーの識別子。
Default:yes
操作:userGroups
コマンド:PUT
Route/パス:/Organization/UserGroups?UserId={UserId}
HTTPボディ(例):
{ "Ids": [ "2d89fc45-a3c4-49c6-971b-ebc696a67d78" ], "OperationType": "Add" }
ユーザーをグループから削除
説明:UserID(必須):ユーザーの識別子。
Default:yes
操作:userGroups
コマンド:PUT
Route/パス:/Organization/UserGroups?UserId={UserId}
HTTPボディ(例):
{ "Ids": [ "2d89fc45-a3c4-49c6-971b-ebc696a67d78" ], "OperationType": "Remove" }
組織のすべてのロールを取得
説明:
Active(オプション):ブール値 - 既定値:空Name(オプション):ロールの名前
Type(オプション):{Standard|Default|Administrator}
操作:roles
コマンド:GET
Route/パス:/Organization/Roles? Active={true|false}&Name={RoleName}&Type={Standard|Default|Administrator}
ロールの情報を取得
説明:
アクティブ状態など、ロールの情報を取得します。RoleID(必須):ロールの識別子。
Default:yes
操作:role
コマンド:GET
Route/パス:/Organization/Role?roleId={RoleId}
組織のすべてのグループを取得
説明:
Active(オプション):ブール値 - 既定値:空Name(オプション):グループの名前
Default:yes
操作:groups
コマンド:GET
Route/パス:/Organization/Groups?&Active={true|false}&Name={GroupName}
グループの情報を取得
説明:
アクティブ状態など、グループの情報を取得します。GroupID(必須):グループの識別子。
Default:yes
操作:group
コマンド:GET
Route/パス:/Organization/Group?groupId={GroupId}
新しいグループの作成
説明:DocuWareグループの作成を自動化します。たとえば、新しいプロジェクトファイルが保管された際に、プロジェクト名のグループを作成し、インデックス値プロファイルをそのグループに割り当てることができます。
必須プロパティ:id
name
active
Default:yes
操作:createGroup
コマンド:POST
Route/パス:/Organization/Groups
HTTPボディ(例):
{ "Ids": [ "group-1234" ], "name": "Accounting Team", "Active": "true" }
使用例 エンドポイント「documentAnnotations」を使用したスタンプの設定
請求書が会計ソフトウェアで処理された後、DocuWare内の請求書に自動的に「支払済」スタンプを設定したい場合を考えます。
これを行うには、請求書のインデックスエントリを「支払済」に変更するAutoindexジョブを作成します。請求書のインデックスエントリの変更がワークフローをトリガーし、そのWebサービスアクティビティが自動的に請求書ドキュメントに「支払済」スタンプを配置します。
「支払済」スタンプは、ワークフローの自動アクティビティを実行するために指定されたユーザーに対して設定および割り当てられている必要があることに注意してください。