メインコンテンツへスキップ
Web APIを使用して、オペレーターのワークロード、処理済みのドキュメント、特定のクライアントからのドキュメント、その他の条件に関するレポートをダウンロードできます。APIメソッドのパラメーターは、管理および監視コンソールのGUIからレポートを作成する際に使用するものと同一です。出力されるCSVファイルも、管理および監視コンソールのGUIを使用して作成したCSVファイルと同一です。レポートによって収集されるさまざまなデータの詳細については、管理および監視コンソールのヘルプにあるレポートセクションを参照してください。 レポートをダウンロードするには、GET リクエストを使用して次の URI を指定します: http://localhost/FlexiCapture12/Monitoring/Report/GetCsv?reportType=<reportType>&filterParametersJson=<filterParametersJson>. この URI では、reportTypefilterParametersJson に以下の値を指定できます:

名前

レポートの種類。指定可能な値:

  • 1 - General Operators レポート
  • 3 - Processing Performance レポート
  • 9 - Site Performance レポート
  • 10 - Tenants 別 License 消費レポート
  • 11 - Projects 別 License 消費レポート

レポートの生成に使用するパラメーターです。パラメーターのセットはレポートの種類によって異なります。各レポートのパラメーターの詳細については、以下を参照してください。

このAPIの使用例はスクリプトで確認できます。スクリプトをこちらからダウンロードするか、以下に記載のスクリプトコードをご利用ください。
# 認証パラメータ
$endpoint = "https://preprod01.flexicapture.com"
$tenant = "tenantName"
$user = "FCUserName"
$pass = "password"
$filePath = "c:\temp\report.csv"
# レポートのパラメーター
$reportType = 3
$jsonparameters = @"
[
{
"Name": "dateFrom",
"Value": "2022-08-31T21:00:00.000Z"
},
{
"Name": "dateTo",
"Value": "2022-09-01T21:00:00.000Z"
},
{
"Name": "projects",
"Value": [
5,
6,
7,
9,
10,
11,
12,
13,
14,
15,
16,
17,
19,
20,
28,
81,
221
]
},
{
"Name": "aggregateByBatchTypes",
"Value": true
},
{
"Name": "groupByType",
"Value": 1
},
{
"Name": "grouping",
"Value": "ProcessingStageName"
},
{
"Name": "columns",
"Value": [
"ProjectId",
"BatchTypeName",
"ProcessedBatchs",
"ProcessedDocs"
]
}
]
"@
###################################################
clear
$ErrorActionPreference="stop"
#FlexiCapture SOAP APIから認証用のauthTicketを取得する
$tenantSuffix=""
$tenantInUrl = ""
if (($tenant -ne $null) -or ($tenant -eq "")) {
$tenantSuffix= "?Tenant="+$tenant
$tenantInUrl = "/$tenant"
}
$URL = $endpoint+'/FlexiCapture12/Server/FCAuth/API/Soap'+$tenantSuffix
$SOAPRequest = @"
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Body>
<FindUser xmlns="urn:http://www.abbyy.com/FlexiCapture">
<userLogin>$user</userLogin>
</FindUser>
</soap:Body>
</soap:Envelope>
"@
$pair = "$($user):$($pass)"
$encodedCreds = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($pair))
$basicAuthValue = "Basic $encodedCreds"
$Headers = @{
'SOAPAction' = '"#FindUser"'
'Content-Type' = 'text/xml; charset=utf-8'
'Authorization' = "$basicAuthValue"
}
$response = Invoke-WebRequest -Uri $URL `
-Headers $Headers `
-Body $SOAPRequest `
-Method 'POST' `
$authTicket = $response.Headers['AuthTicket']
#認証Cookieの作成
$session = [Microsoft.PowerShell.Commands.WebRequestSession]::new()
$cookie = [System.Net.Cookie]::new('FlexiCaptureTmpPrn', "Ticket=$authTicket")
$session.Cookies.Add($endpoint, $cookie)
# APIでレポートをリクエストして保存する
$uriGet = $endpoint+ "/FlexiCapture12/Monitoring$tenantInUrl/Report/GetCSV?reportType=$reportType&filterParametersJson="
$uriGet += [uri]::EscapeDataString($jsonparameters)
$header = @{
"Accept" = "*/*"
"Accept-Encoding" = "gzip, deflate, br"
}
$response = Invoke-RestMethod -Uri $uriGet -Method 'GET' -Headers $header -WebSession $session -OutFile $filePath