Möchten Sie ein oder mehrere Dokumente mit neuen Indexdaten versehen, stehen Ihnen folgende Routen zur Verfügung:
•PATCH /application/jobarchive/archives/:archive/documents/:revisionId/indexdata – Indexdaten einer Dokumentrevision aktualisieren. Die Dokument-ID wird im Parameter revisionId übergeben. Die Indexdaten werden im Request-Body übergeben. Bei dieser Route werden nur die Indexdaten übergeben, die sich verändern sollen.
•PUT /application/jobarchive/archives/:archive/documents/:revisionId/indexdata – Indexdaten einer Dokumentrevision aktualisieren. Die Dokument-ID wird im Paramter revisionId übergeben. Die Indexdaten werden im Request-Body übergeben. Bei dieser Route müssen Sie alle Indexdaten übergeben.
•PATCH /application/jobarchive/archives/:archive/indexdata – Indexdaten mehrerer Dokumente aus einem Archiv aktualisieren. Die Dokument-IDs, sowie die neuen Indexdaten werden im Request-Body übergeben. Geben Sie nur die Indexdaten an, die sich verändern.
•PUT /application/jobarchive/archives/:archive/indexdata – Indexdaten mehrerer Dokumente aus einem Archiv aktualisieren. Die Dokument-IDs, sowie alle Indexdaten werden im Request-Body übergeben. Bei dieser Route müssen alle Indexfelder mit Werten versehen werden.
Mit dem archive-Parameter geben Sie das Archiv an (Archiv-GUID oder Archivtabelle).
Die Antwort ist im JSON-Format und beinhaltet alle Indexdaten.
Antwort für die Routen zu einer Dokumentrevision:
{
"archivedocumentrevisions": [
{
"revisionId": "12345",
"indexFields": [
...
],
"keywordFields": [
...
]
}
]
}
Antwort für die Routen zu mehreren Dokumentrevisionen:
{
"archivedocumentrevisions": [
{
"revisionId": "12345",
"indexFields": [
...
],
"keywordFields": [
...
]
},
{
"revisionId": "14699",
"indexFields": [
...
],
"keywordFields": [
...
]
}
]
}
Beispiel: Indexdaten für mehrere Dokumenten ändern
guzzlehttp
// Benutzer wurde bereits authentifiziert
$revisionIds = [123, 124];
$revisions = [];
// Indexdaten definieren
foreach ($revisionIds as $id) {
$revisionData = [
'revisionId' => $id,
'indexFields' => [
[
'name' => 'check_status',
'value' => 'approved',
],
],
];
$revisions[] = $revisionData;
}
$indexData = [
'revisions' => $revisions,
];
try {
$response = $client->request(
'PATCH',
'application/jobarchive/archives/invoices/indexdata,
[
'json' => $indexData,
]
);
} catch (Exception $e) {
echo "Fehler beim Ausführen: " . $e->getMessage() . "\n";
}
// Benutzer-Session beenden
cURL
// Benutzer wurde bereits authentifiziert
// Indexfelder definieren
$indexData = [
'revisions' => [
[
'revisionId' => '123',
'indexFields' => [
[
'name' => 'check_status',
'value' => 'approved',
]
]
],
[
'revisionId' => '124',
'indexFields' => [
[
'name' => 'check_status',
'value' => 'approved',
]
]
],
]
];
curl_setopt($curlHandle, CURLOPT_URL,
'http://example.org/jobrouter/api/rest/v2/application/jobarchive/' .
'archives/invoices/indexdata);
curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curlHandle, CURLOPT_CUSTOMREQUEST, 'PATCH');
curl_setopt($curlHandle, CURLOPT_POSTFIELDS, json_encode($indexData));
curl_setopt($curlHandle, CURLOPT_COOKIEFILE, 'path/to/cookie/file.cookie');
$response = curl_exec($curlHandle);
$statusCode = curl_getinfo($curlHandle, CURLINFO_HTTP_CODE);
curl_close();
if ($statusCode !== 200) {
echo "Fehler beim Ausführen: Code - " . $statusCode . ", ";
echo "Response: " . var_export($response, true);
}
// Benutzer-Session beenden