/
POST dms.request.objects.contents (Webhook)

POST dms.request.objects.contents (Webhook)

As of Version2022 Winter
HTTP MethodPOST
Response FormatJSON
Description

A webhook of this type can be triggered by a request for retrieval of a binary content file or a rendition.

The original body that is available at the webhook entry point is an object list containing the object for which the content/rendition and the corresponding options properties should be retrieved.

Requirements for External Endpoint

The target URL must be a POST endpoint accepting and returning a list of objects. The following responses are expected:

  • Return HTTP status code 200 to continue with the content/rendition retrieval. Changes in the body introduced within the webhook are ignored.
  • Return any HTTP status code indicating an error (400...599) and a properly formatted error structure in the body to prohibit the content/rendition retrieval. Your error structure will finally be presented as response of the originally called endpoint with HTTP status code 404.
  • If your webhook returns an error structure that does not match the expected format, the content retrieval fails with HTTP status code 422. The webhook error is wrapped as plain text.

>> Error Handling

Affected API Requests and Action Codes/History Codes
Called by Service

API Gateway service

HeaderAuthorization-Header
Example Request Body
{
    "objects": [
        {
            "properties": {
                "system:objectId": {
                    "value": "27602f73-7e3f-4013-babb-10a4dc042ff0"
                },
                "system:baseTypeId": {
                    "value": "system:document"
                },
                "system:objectTypeId": {
                    "value": "document"
                },
                "system:createdBy": {
                    "value": "275c826c-6a61-4e89-9512-8d935a1631e5"
                },
                "system:creationDate": {
                    "value": "2021-05-22T00:09:05.400Z"
                },
                "system:lastModifiedBy": {
                    "value": "275c826c-6a61-4e89-9512-8d935a1631e5"
                },
                "system:lastModificationDate": {
                    "value": "2021-05-22T00:09:05.400Z"
                },
                "system:versionNumber": {
                    "value": 1
                },
                "system:tenant": {
                    "value": "default"
                },
                "system:traceId": {
                    "value": "f08d5290e5a81753"
                },
                "testString": {
                    "value": "test import"
                }
            },
            "contentStreams": [
                {
                    "contentStreamId": "EBC1760B-BA91-11EB-8277-D1DE73C78E3D",
                    "archivePath": "default/DOCUMENT/BC/17/6/",
                    "length": 431397,
                    "mimeType": "message/rfc822",
                    "fileName": "content.eml",
                    "digest": "11857B6FAD61E41AFB3E7398BA1BA4BFB6B0A5422762FF41A0907BC0BFF7748F",
                    "repositoryId": "repo242"
                }
            ],
            "options": {
                "action": 400,
                "detail": "DOCUMENT_ACCESSED",
                "tenant": "default",
                "system:hook:type": "dms.request.objects.contents",
                "system:request:method": "GET"
            }
        }
    ]
}
Example Predicate

The configured webhook will be triggered for each retrieval of a PDF rendition.

spel:options!=null && options['action']>402 && "2".equals(''+options['subaction'])

Related content

POST dms.request.objects.contents (Webhook)
POST dms.request.objects.contents (Webhook)
More like this
POST dms.response.objects.update (Webhook)
POST dms.response.objects.update (Webhook)
More like this
POST dms.response.objects.update (Webhook)
POST dms.response.objects.update (Webhook)
More like this
POST dms.response.objects.insert (Webhook)
POST dms.response.objects.insert (Webhook)
More like this
POST dms.response.objects.insert (Webhook)
POST dms.response.objects.insert (Webhook)
More like this
POST dms.response.objects.insert (Webhook)
POST dms.response.objects.insert (Webhook)
More like this