{
    "swagger":"2.0",
    "info":{
        "description":"The REST API for Webhooks Management provides the ability to manage webhooks in Oracle Content Management.\n\n<p>Last updated: October 2022.</p>",
        "version":"2022.10.28",
        "title":"REST API for Webhooks Management",
        "x-summary":"The REST API for Webhooks Management provides the ability to manage webhooks in Oracle Content Management."
    },
    "basePath":"/system/api/v1",
    "tags":[
        {
            "name":"CSRF token"
        },
        {
            "name":"Webhooks"
        }
    ],
    "paths":{
        "/webhooks/{id}/logs":{
            "get":{
                "tags":[
                    "Webhooks"
                ],
                "summary":"List Webhook Logs",
                "description":"Get all Webhook Logs . This will list all successful and failed calls to Webhook end point. The list can be filtered using query parameter. \n\n## Filters   \n\nThe following properties are filterable and can be used in the `q` parameter: <table><thead><tr><td>Property Name</td><td>Supported Operators<td></tr></thead><tbody><tr><td><tt>eventid</tt></td><td>Equals <tt>(eq)</tt></td></tr><tr><td><tt>status</tt></td><td>Equals <tt>(eq) . Supported values are pass, fail</tt></td></tr><tr><td><tt>invokedAt</tt></td><td>Greater than or equal to<tt>(ge)</tt> and Less than or equal to<tt>(le)</tt> </td></tr></tbody></table><br> <b>Example</b> q=status eq pass\n\n## Sorting   \n\nThe orderBy parameter is used to control the order (ascending/descending) of queried items.This parameter is optional in the query and by default there is no order of results. This parameter accepts a field name separated by a colon (:) ,for which the user wants to sort the results.<table>   <thead>      <tr><td>Property Name</td><td>Description<td></tr></thead><tbody><tr><td><tt>invokedAt</tt></td><td>Date and time at which the webhook was invoked. The supported date formats are - ISO 8601 Date-Time format (Eg: 2022-10-15T06:24:24.713Z) or ISO 8601 Date format (Eg: 2022-10-15)</td></tr></tbody></table>\n</tbody></table>\n<br> <b>Format</b> orderBy={PropertyName}:{asc:desc}<br> <b>Example</b> invokedAt=name:desc",
                "operationId":"getWebhooklogs",
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"id",
                        "in":"path",
                        "description":"id of the Webhook.",
                        "required":true,
                        "type":"integer",
                        "format":"int64"
                    },
                    {
                        "name":"q",
                        "in":"query",
                        "description":"Filtering of the resources.",
                        "required":false,
                        "type":"string"
                    },
                    {
                        "name":"offset",
                        "in":"query",
                        "description":"Non-negative integer values that specifies the index of the first item to be returned. The offset index begins at `0`. The default offset is `0`, which returns all items starting from the first item in the collection.",
                        "required":false,
                        "type":"integer",
                        "default":0,
                        "format":"int32"
                    },
                    {
                        "name":"limit",
                        "in":"query",
                        "description":"A positive integer value specifies the maximum number of items returned in the response.",
                        "required":false,
                        "type":"integer",
                        "default":100,
                        "format":"int32"
                    },
                    {
                        "name":"orderBy",
                        "in":"query",
                        "description":"Comma-separated string of field names, each optionally followed by `:asc` or `:desc`, that specifies the order of items returned in the response.",
                        "required":false,
                        "type":"string"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "schema":{
                            "$ref":"#/definitions/Webhook logs Collection"
                        }
                    },
                    "304":{
                        "description":"Not Modified",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "400":{
                        "description":"Bad Request",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "404":{
                        "description":"Not Found",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "500":{
                        "description":"Internal Server Error",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    }
                },
                "x-internal-id":"webhooks-{id}-logs-get",
                "x-filename-id":"webhooks-id-logs-get"
            }
        },
        "/webhooks":{
            "get":{
                "tags":[
                    "Webhooks"
                ],
                "summary":"List Webhooks",
                "description":"List all Webhooks that user has access to. List can be filtered using query parameter, \n\n\n## Filters   \n\nThe following properties are filterable and can be used in the `q` parameter: <table><thead><tr><td>Property Name</td><td>Supported Operators<td></tr></thead><tbody><tr><td><tt>category</tt></td><td>Equals <tt>(eq)</tt></td></tr></tbody></table><br> <b>Example</b> q=category eq \"ASSET_LIFECYCLE\"\n\n\n## Sorting   \n\n\nThe orderBy parameter is used to control the order (ascending/descending) of queried items. This parameter is optional in the query and by default there is no order of results. This parameter accepts a field name separated by a colon (:) ,for which the user wants to sort the results.<table>   <thead>      <tr><td>Property Name</td><td>Description<td></tr></thead><tbody><tr><td><tt>name</tt></td><td>Name of the webhook.</td></tr><tr><td><tt>category</tt></td><td>Category of the webhook.</td></tr><tr><td><tt>enabled</tt></td><td>Enabled flag or the webhook.</td></tr></tbody></table>\n<br> <b>Format</b> orderBy={PropertyName}:{asc:desc}<br> <b>Example</b> orderBy=name:desc",
                "operationId":"listWebhooks",
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"q",
                        "in":"query",
                        "description":"Filtering of the resources.",
                        "required":false,
                        "type":"string"
                    },
                    {
                        "name":"offset",
                        "in":"query",
                        "description":"Non-negative integer values that specifies the index of the first item to be returned. The offset index begins at `0`. The default offset is `0`, which returns all items starting from the first item in the collection.",
                        "required":false,
                        "type":"integer",
                        "default":0,
                        "format":"int32"
                    },
                    {
                        "name":"limit",
                        "in":"query",
                        "description":"A positive integer value specifies the maximum number of items returned in the response.",
                        "required":false,
                        "type":"integer",
                        "default":100,
                        "format":"int32"
                    },
                    {
                        "name":"orderBy",
                        "in":"query",
                        "description":"Comma-separated string of field names, each optionally followed by `:asc` or `:desc`, that specifies the order of items returned in the response.",
                        "required":false,
                        "type":"string"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "schema":{
                            "$ref":"#/definitions/Webhook Collection"
                        }
                    },
                    "304":{
                        "description":"Not Modified",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "400":{
                        "description":"Bad Request",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "404":{
                        "description":"Not Found",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "500":{
                        "description":"Internal Server Error",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    }
                },
                "x-internal-id":"webhooks-get",
                "x-filename-id":"webhooks-get"
            },
            "post":{
                "tags":[
                    "Webhooks"
                ],
                "summary":"Create a Webhook",
                "description":"Creates a Webhook with the given payload. User should have Admin role to create a Webhook. <br/>User should have manager access on the objects for creating a Webhook that listens to events on the object.<br/><br/>Examples of scope object are repositories, channels, sites.<br/> <br> CSRF token header (X-CSRF-TOKEN) is needed for creating Webhooks. Token can be obtained using CSRF token REST service. <br>",
                "operationId":"createWebhook",
                "consumes":[
                    "application/json"
                ],
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "in":"body",
                        "name":"body",
                        "description":"Body that need to be sent while creatng webhook",
                        "required":true,
                        "schema":{
                            "$ref":"#/definitions/Webhook"
                        }
                    }
                ],
                "responses":{
                    "200":{
                        "description":"Successful Operation",
                        "schema":{
                            "$ref":"#/definitions/Webhook"
                        }
                    },
                    "201":{
                        "description":"Created",
                        "schema":{
                            "$ref":"#/definitions/Webhook"
                        }
                    },
                    "400":{
                        "description":"Bad Request",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "500":{
                        "description":"Internal Server Error",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    }
                },
                "x-internal-id":"webhooks-post",
                "x-filename-id":"webhooks-post"
            }
        },
        "/webhooks/{id}":{
            "get":{
                "tags":[
                    "Webhooks"
                ],
                "summary":"Read a Webhook",
                "description":"This will return webhooks that are configured for the objects, that the user have the manager access to. <br><br/>For example, if a Webhook is configured for two scope objects, and the user has manager access to only one scope object, user cannot read the Webhook.<br/>",
                "operationId":"readWebhook",
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"id",
                        "in":"path",
                        "description":"id of the Webhook.",
                        "required":true,
                        "type":"integer",
                        "format":"int64"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "schema":{
                            "$ref":"#/definitions/Webhook"
                        }
                    },
                    "304":{
                        "description":"Not Modified",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "400":{
                        "description":"Bad Request",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "404":{
                        "description":"Not Found",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "500":{
                        "description":"Internal Server Error",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    }
                },
                "x-internal-id":"webhooks-{id}-get",
                "x-filename-id":"webhooks-id-get"
            },
            "put":{
                "tags":[
                    "Webhooks"
                ],
                "summary":"Update a Webhook",
                "description":"with the given payload. User should have Admin role to update Webhook. User should have access to the Webhook for updating it. User should have manager access to any of the configured objectsfor updating Webhook.<br/> <br> CSRF token header (X-CSRF-TOKEN) is needed for updating Webhooks. Token can be obtained from token REST service. <br>",
                "operationId":"updateWebhook",
                "consumes":[
                    "application/json"
                ],
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"id",
                        "in":"path",
                        "description":"id of the Webhook.",
                        "required":true,
                        "type":"integer",
                        "format":"int64"
                    },
                    {
                        "in":"body",
                        "name":"body",
                        "description":"Webhook Object",
                        "required":false,
                        "schema":{
                            "$ref":"#/definitions/Webhook"
                        }
                    }
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "schema":{
                            "$ref":"#/definitions/Webhook"
                        }
                    },
                    "304":{
                        "description":"Not Modified",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "400":{
                        "description":"Bad Request",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "404":{
                        "description":"Not Found",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "500":{
                        "description":"Internal Server Error",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    }
                },
                "x-internal-id":"webhooks-{id}-put",
                "x-filename-id":"webhooks-id-put"
            },
            "delete":{
                "tags":[
                    "Webhooks"
                ],
                "summary":"Delete a Webhook",
                "description":"Deletes a Webhook. User should have access to the Webhook for deleting it. User should have Admin role to delete a Webhook. User should have manager access to any of the configured objects for deleting Webhook.<br/> <br> CSRF token header (X-CSRF-TOKEN) is needed for deleting Webhooks. Token can be obtained from token REST service. <br>",
                "operationId":"deleteWebhook",
                "produces":[
                    "application/json"
                ],
                "parameters":[
                    {
                        "name":"id",
                        "in":"path",
                        "description":"id of the Webhook.",
                        "required":true,
                        "type":"integer",
                        "format":"int64"
                    }
                ],
                "responses":{
                    "200":{
                        "description":"Successful Operation",
                        "schema":{
                            "type":"boolean"
                        }
                    },
                    "204":{
                        "description":"No Content"
                    },
                    "400":{
                        "description":"Bad Request",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "404":{
                        "description":"Not Found",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    },
                    "500":{
                        "description":"Internal Server Error",
                        "schema":{
                            "$ref":"#/definitions/ExceptionDetail"
                        }
                    }
                },
                "x-internal-id":"webhooks-{id}-delete",
                "x-filename-id":"webhooks-id-delete"
            }
        },
        "/csrfToken":{
            "get":{
                "tags":[
                    "CSRF token"
                ],
                "summary":"Returns a CSRF Token.",
                "operationId":"getToken",
                "produces":[
                    "application/json"
                ],
                "parameters":[
                ],
                "responses":{
                    "200":{
                        "description":"OK",
                        "schema":{
                            "$ref":"#/definitions/CSRF Token"
                        }
                    },
                    "500":{
                        "description":"Internal Server Error",
                        "schema":{
                            "$ref":"#/definitions/ErrorResponse"
                        }
                    }
                },
                "x-internal-id":"csrfToken-get",
                "x-filename-id":"csrftoken-get"
            }
        }
    },
    "definitions":{
        "Link":{
            "type":"object",
            "properties":{
                "rel":{
                    "type":"string",
                    "description":"Link relation. Name of the link relation that, in addition to the type property, can be used to retrieve link details."
                },
                "href":{
                    "type":"string",
                    "description":"The target resource URI. URI *RFC3986* or URI Template *RFC6570*. If the value is set to URI Template, then the `templated` property must be set to `true`."
                },
                "templated":{
                    "type":"boolean",
                    "description":"Link href template flag. Boolean flag that specifies the `href` property is a URI or URI Template. The property can be assumed to be `false` if the property is not present."
                },
                "mediaType":{
                    "type":"string",
                    "description":"Link target. Media type, as defined by RFC 2046, describing the link target."
                },
                "method":{
                    "type":"string",
                    "description":"Link target HTTP method. HTTP method for requesting the target of the link.  *  `none` - Indicates no valid HTTP method *  `OPTIONS` - HTTP OPTIONS *  `HEAD` - HTTP HEAD *  `GET` - HTTP GET *  `POST` - HTTP POST *  `PUT` - HTTP PUT *  `PATCH` - HTTP PATCH *  `DELETE` - HTTP DELETE"
                },
                "profile":{
                    "type":"string",
                    "description":"Link meta data location. Link to the metadata of the resource, such as JSON-schema, that describes the resource expected when dereferencing the target resource."
                }
            },
            "description":"REST link and related meta data.  If responses provide links (e.g. a `self` link to the resource itself) the links provided will include one or more of the properties defined on this link structure."
        },
        "Webhook logs":{
            "type":"object",
            "properties":{
                "id":{
                    "type":"integer",
                    "format":"int64",
                    "example":2367,
                    "description":"Unique id of the webhook log."
                },
                "invokedAt":{
                    "type":"string",
                    "description":"Date and time at which the webhook end point was invoked . Date and time values are in ISO 8601 format with UTC timezone."
                },
                "status":{
                    "type":"string",
                    "description":"Status of the webhook call. Values can be pass or fail."
                },
                "eventId":{
                    "type":"string",
                    "description":"Id of the event for which the webhook call is generated"
                },
                "request":{
                    "type":"string",
                    "description":"Details about the request that system send to webhook end point."
                },
                "response":{
                    "type":"string",
                    "description":"Details about the response that is returned by the end point."
                }
            },
            "description":"Webhook end point log data"
        },
        "Webhook logs Collection":{
            "type":"object",
            "properties":{
                "hasMore":{
                    "type":"boolean",
                    "example":true,
                    "description":"Collection has more elements that match the request. Indicates whether there are more items to be returned when a paged request is made and the page was not big enough to return all elements."
                },
                "offset":{
                    "type":"integer",
                    "format":"int64",
                    "example":0,
                    "description":"Actual response offset used. If the request specifies no offset then the actual offset is provided in the response."
                },
                "count":{
                    "type":"integer",
                    "format":"int64",
                    "example":10,
                    "description":"Total number of resources in the response."
                },
                "limit":{
                    "type":"integer",
                    "format":"int64",
                    "example":10,
                    "description":"Actual response size limit used. If the request specifies too large a limit, or does not specify a limit then the response will specify the limit used."
                },
                "totalResults":{
                    "type":"integer",
                    "format":"int64",
                    "example":10,
                    "description":"Total number of resources that match the request. If provided, this is the total number of available items. If not specified the total is not known, or is not viable to return. Paging limits or offsets are ignored when calculating this value. Only returned if the `totalResults` parameter is supported and is set to `true` by the client."
                },
                "items":{
                    "type":"array",
                    "description":"Singular resources contained in the collection.",
                    "items":{
                        "$ref":"#/definitions/Webhook logs"
                    }
                },
                "links":{
                    "type":"array",
                    "description":"Link to related resources and actions or actions on this resource. Must include at least a 'self' link that contains a link to the canonical representation of the resource.",
                    "items":{
                        "$ref":"#/definitions/Link"
                    }
                }
            },
            "description":"Webhook logs collection"
        },
        "ExceptionDetail":{
            "type":"object",
            "properties":{
                "type":{
                    "type":"string",
                    "description":"Absolute URI that identifies the problem type. When this URI dereferenced, it **should** provide a human-readable summary of the problem, for example, as a HTML page."
                },
                "title":{
                    "type":"string",
                    "description":"Short, human-readable summary of the problem. The summary **should not** change for subsequent occurrences of the problem, except for purposes of localization."
                },
                "status":{
                    "type":"integer",
                    "format":"int32",
                    "description":"HTTP status code. The corresponding HTTP status code for the exception. For exception that includes a resource does not exist would have a HTTP status of `404`."
                },
                "detail":{
                    "type":"string",
                    "description":"Description specific to this occurrence of the problem. The human readable, potentially multi-line details describing the problem in more details."
                },
                "instance":{
                    "type":"string",
                    "description":"URI to the link that provides more detail about the error."
                },
                "o:errorCode":{
                    "type":"string",
                    "description":"Application error code, which is different from HTTP error code."
                },
                "o:errorPath":{
                    "type":"string",
                    "description":"XPath or JSON path to indicate where the error occurs."
                },
                "o:errorDetails":{
                    "type":"array",
                    "description":"Multiple errors can be organized in a hierarchical structure.",
                    "items":{
                        "$ref":"#/definitions/ExceptionDetail"
                    }
                }
            },
            "description":"Error details for a REST request.  In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such these cases, the additional information must be included in the error response body. The additional information is optional, but if provided, it will be in the form of exception detail."
        },
        "BasicAuth":{
            "type":"object",
            "properties":{
                "username":{
                    "type":"string",
                    "description":"username for basic authentication"
                },
                "password":{
                    "type":"string",
                    "description":"password for basic authentication"
                },
                "realm":{
                    "type":"string",
                    "description":"realm for basic authentication"
                }
            },
            "description":"Basic authentication configuration details. The details will be sent in Authorization header"
        },
        "Filter":{
            "type":"object",
            "properties":{
                "objectType":{
                    "type":"string",
                    "example":"repository",
                    "description":"Filter objectType name. It can be repository or channel."
                },
                "objectIds":{
                    "type":"array",
                    "example":"{F1B337DC2AF3DBCC98701AB86D1F21FC05E8AB20694D}",
                    "description":"List of ids of the objectType.",
                    "items":{
                        "type":"string"
                    }
                }
            }
        },
        "Headers":{
            "type":"object",
            "properties":{
                "headers":{
                    "type":"array",
                    "description":"List of headers.",
                    "items":{
                        "$ref":"#/definitions/Request Header"
                    }
                }
            },
            "description":"Header based authorization configuration details."
        },
        "SignatureSecurity":{
            "type":"object",
            "properties":{
                "signatureToken":{
                    "type":"string",
                    "description":"Signature Token should be lowercase alphanumeric [a-z, 0-9] string of length 32."
                }
            },
            "description":"Signature based security configuration details."
        },
        "Payload":{
            "type":"object",
            "properties":{
                "name":{
                    "type":"string",
                    "example":"brief",
                    "description":"Name for the payload. Brief is the default value for webhook is payload is not set"
                }
            },
            "description":"Payload configuration for the Webhook. Supported pay load names are: <br>empty<br>brief<br>detailed "
        },
        "Request Header":{
            "type":"object",
            "properties":{
                "key":{
                    "type":"string",
                    "description":"Key of the header"
                },
                "value":{
                    "type":"string",
                    "description":"Value of the header"
                }
            },
            "description":"Request Header"
        },
        "Security":{
            "type":"object",
            "properties":{
                "basicAuth":{
                    "description":"Basic authentication configuration.",
                    "$ref":"#/definitions/BasicAuth"
                },
                "headerAuth":{
                    "description":"Header based authorization configuration.",
                    "$ref":"#/definitions/Headers"
                },
                "signatureSecurity":{
                    "description":"Signature based security configuration.",
                    "$ref":"#/definitions/SignatureSecurity"
                }
            },
            "description":"Security configuration for the Webhook target end point."
        },
        "Target":{
            "type":"object",
            "properties":{
                "url":{
                    "type":"string",
                    "example":"http://www.myserver.com/foo",
                    "description":"URL of the webhook end point"
                },
                "security":{
                    "example":" \"basicAuth\": {\n        \"username\": \"string\",\n        \"password\": \"string\",\n        \"realm\": \"string\"\n      },",
                    "description":"Security details for the webhook. Security can be Basic Auth or Header based",
                    "$ref":"#/definitions/Security"
                }
            },
            "description":"Target end point details for the Webhook."
        },
        "User":{
            "type":"object",
            "properties":{
                "id":{
                    "type":"string",
                    "example":"10002",
                    "description":"The id of the user."
                },
                "name":{
                    "type":"string",
                    "example":"example@myorg.com",
                    "description":"The name of the user."
                },
                "displayName":{
                    "type":"string",
                    "example":"My Display Name",
                    "description":"The display name of the user."
                }
            },
            "description":"User Metadata Model."
        },
        "Webhook":{
            "type":"object",
            "properties":{
                "id":{
                    "type":"integer",
                    "format":"int64",
                    "example":2367,
                    "description":"Unique id of the webhook.It is a required property to read, update and delete a webhook."
                },
                "name":{
                    "type":"string",
                    "example":"foo",
                    "description":"Name of the webhook."
                },
                "description":{
                    "type":"string",
                    "example":"foo description",
                    "description":"Description of the V1WebhookRestInfo."
                },
                "createdBy":{
                    "description":"User who created the webhook.",
                    "$ref":"#/definitions/User"
                },
                "createdAt":{
                    "type":"string",
                    "description":"Date and time at which the webhook was created. Date and time values are in ISO 8601 format with UTC timezone."
                },
                "updatedAt":{
                    "type":"string",
                    "description":"Date and time at which the webhook was updated. Date and time values are in ISO 8601 format with UTC timezone."
                },
                "updatedBy":{
                    "description":"User who updated the webhook.",
                    "$ref":"#/definitions/User"
                },
                "category":{
                    "type":"string",
                    "example":"Asset Lifecycle",
                    "description":"Category of the webhook. List of supported categories are <br>ASSET_PUBLISHING<br>ASSET_LIFECYCLE"
                },
                "enabled":{
                    "type":"boolean",
                    "description":"Flag to turn on/off a webhook. If the webhook is not enabled, Target URL will not be invoked when the event happens"
                },
                "eventDetails":{
                    "type":"array",
                    "description":"Event details that the Webhook is subscribing to. This is a required property. Atleast one event is required",
                    "items":{
                        "$ref":"#/definitions/Webhook Events"
                    }
                },
                "payload":{
                    "example":"id:brief",
                    "description":"This property is used to configure the payload that system send to the webhook.Default is brief",
                    "$ref":"#/definitions/Payload"
                },
                "target":{
                    "description":"Details about the webhook end point. This is a required property",
                    "$ref":"#/definitions/Target"
                },
                "links":{
                    "type":"array",
                    "description":"Link to related resources and actions or actions, on this resource. Must include at least a 'self' link that contains a link to the canonical representation of the resource.",
                    "items":{
                        "$ref":"#/definitions/Link"
                    }
                }
            },
            "description":"Webhook Configuration Data"
        },
        "Webhook Events":{
            "type":"object",
            "properties":{
                "eventNames":{
                    "type":"array",
                    "example":"contentitem_created,contentitem_published,digitalasset_created",
                    "description":"List of events. Event names can be retrieved from /events/types?expand=all end point",
                    "items":{
                        "type":"string"
                    }
                },
                "filter":{
                    "description":"List of sources that triggers this event. It can be list of repositories or channels",
                    "$ref":"#/definitions/Filter"
                }
            },
            "description":"Event details for Webhook."
        },
        "Webhook Collection":{
            "type":"object",
            "properties":{
                "hasMore":{
                    "type":"boolean",
                    "example":true,
                    "description":"Collection has more elements that match the request. Indicates whether there are more items to be returned when a paged request is made and the page was not big enough to return all elements."
                },
                "offset":{
                    "type":"integer",
                    "format":"int64",
                    "example":0,
                    "description":"Actual response offset used. If the request specifies no offset then the actual offset is provided in the response."
                },
                "count":{
                    "type":"integer",
                    "format":"int64",
                    "example":10,
                    "description":"Total number of resources in the response."
                },
                "limit":{
                    "type":"integer",
                    "format":"int64",
                    "example":10,
                    "description":"Actual response size limit used. If the request specifies too large a limit, or does not specify a limit then the response will specify the limit used."
                },
                "totalResults":{
                    "type":"integer",
                    "format":"int64",
                    "example":10,
                    "description":"Total number of resources that match the request. If provided, this is the total number of available items. If not specified the total is not known, or is not viable to return. Paging limits or offsets are ignored when calculating this value. Only returned if the `totalResults` parameter is supported and is set to `true` by the client."
                },
                "items":{
                    "type":"array",
                    "description":"Singular resources contained in the collection.",
                    "items":{
                        "$ref":"#/definitions/Webhook"
                    }
                },
                "links":{
                    "type":"array",
                    "description":"Link to related resources and actions or actions on this resource. Must include at least a 'self' link that contains a link to the canonical representation of the resource.",
                    "items":{
                        "$ref":"#/definitions/Link"
                    }
                }
            },
            "description":"Webhook Collection"
        },
        "CSRF Token":{
            "type":"object",
            "properties":{
                "token":{
                    "type":"string",
                    "example":"8htW64iW8dJg7qyNuh7o1U3oDBocVk6CY2xkPiXS9eFbWJrBFP48f/8kNHebiP3fbQ5mHifqaENk\\r\\nCMxk380w4joxNTYwNTI3NTMyOTU5",
                    "description":"The token string"
                },
                "expiresAt":{
                    "type":"string",
                    "example":"2019-06-19T15:20:00.003",
                    "description":"The token expiration date. Date and time values are in ISO 8601 &#x60;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39;Z&#39;&#x60; format using a UTC timezone."
                }
            },
            "description":"Token information"
        },
        "ErrorResponse":{
            "type":"object",
            "properties":{
                "httpStatusCode":{
                    "type":"integer",
                    "format":"int32",
                    "description":"Http status code."
                },
                "httpMessage":{
                    "type":"string",
                    "description":"Http status message."
                },
                "errorCode":{
                    "type":"string",
                    "description":"Error code."
                },
                "errorMessage":{
                    "type":"string",
                    "description":"Error Message."
                }
            },
            "description":"Error Response."
        }
    }
}