POST dms.request.objects.upsert.storage-before (Webhook)

Please replace the previous denomination (dms.request.import.storage.before) with the current denomination (dms.request.objects.upsert.storage-before). The old denomination is deprecated as of version 2021 Summer.

As of Version2020 Spring
HTTP MethodPOST
Response FormatJSON
Description

This webhook can be triggered by 

  • an object import,
  • an update of the content,
  • an update or the metadata,
  • or a tag update.

The original body is an object list with the metadata of the import/update and the corresponding options properties. The metadata are not yet enriched with the system properties that are automatically set by the system. To refer to those properties in a webhook, use POST dms.request.objects.upsert.database-before (Webhook).

The body is modified by the webhook and returned for the resumption of the original process.

The predicate is applied to every single object in the list. The webhook is triggered for the whole object list as soon as one object satisfies the predicate.

Requirements for External EndpointThe target URL must be a POST endpoint accepting and returning a list of objects.
Affected API Requests and Action Codes/History Codes
POST /api/dms/objects100 - OBJECT_CREATED
101 - OBJECT_CREATED_WITH_CONTENT (since 2021 Summer)
POST /api/dms/objects/{objectId}
PATCH /api/dms/objects/{objectId}
300 - OBJECT_METADATA_CHANGED
POST /api/dms/objects/{objectId}/contents/file301 - OBJECT_DOCUMENT_CHANGED
POST /api/dms/objects/{objectId}/versions/{versionNr}/actions/restore (as of 2022 Spring)325 - OBJECT_RESTORED_FROM_VERSION
POST /api/dms/objects/tags/{name}/state/{state}?query=<SQL>110 - OBJECT_TAG_CREATED (since 2021 Summer)
310 - OBJECT_TAG_UPDATED (since 2021 Summer)
DELETE /api/dms/objects/{objectId}/tags/{name}210 - OBJECT_TAG_DELETED (since 2021 Summer)
POST /api/dms/objects/{objectId}/tags/{name}/state/{state}110 - OBJECT_TAG_CREATED (since 2021 Summer)
POST /api/dms/objects/{objectId}/tags/{name}/state/{state}?overwrite=true310 - OBJECT_TAG_UPDATED (since 2021 Summer)
Called by Service

REPOSITORY service

HeaderAuthorization-Header
Example Request Body
{
  "objects": [{
    "properties": {
      "system:objectTypeId": {
        "value": "object"
      },
      "label": {
        "value": "Label"
      },
      "subentitaet": {
        "value": "Sub"
      },
      "idn": {
        "value": "6754"
      },
      "titel": {
        "value": "Titel"
      },
      "medientyp": {
        "value": "Cool filename"
      } 
    },
    "contentStreams": [{
      "cid": "cid_63apple",
      "mimeType": "application/pdf",
      "fileName" : "document01.pdf"
    }],
    "options": {
      "action": 101,
      "detail": "OBJECT_CREATED_WITH_CONTENT",
      "tenant": "tenant1"
    } 
  }]
}
Example Predicate

Check if there is an object without a contentStream:

spel:contentStreams!=null