Create Webhook

POST {{protocol}}://{{accounts_api_url}}/{{accounts_api_version}}/webhooks

To create a webhook on a given instance, the user must have the following permissions on the instance:

  • Admin
  • Owner
  • Developer

Body params:

field namerequiredtypedescription
scopedResourceyesstringScoped Resource refers to the service in which to listen in on webhooks.
parentResourceZUIDnostringRefers to a specific parent resource's ZUID.
resourceyesstringRefers to the ZUID or the name of a resource.
eventActionyesnumberThe action on the resource which will trigger the webhook.
methodyesstringThe HTTP request method that is made by the webhook.
URLyesstringDestination URL for the webhook to send payload to.
contentTypeyesstringThe value used to set the HTTP header Content-type for the webhook request
authorizationnostringThe Bearer token value used to set the HTTP header Auhorization.
bodyyesJSONThe payload body being sent to the destination URL.

Possible values for scopedResource are:

  • an instance ZUID
  • accounts

parentResourceZUID

If scopedResource is an instance ZUID, possible values for parentResourceZUID are:

  • content model ZUID

If scopedResource is accounts, possible values for parentResourceZUID are:

  • instance ZUID

resource

If scopedResource is an instance ZUID, possible values for resource are:

  • models
  • items
  • publishings
  • fields
  • headtags
  • views
  • stylesheets
  • scripts
  • redirects
  • langs
  • leads
    or its corresponding ZUIDs

If scopedResource is accounts, possible values for resource are:

  • instances
  • users
  • invites
  • roles
  • granulars
  • domains
    or its corresponding ZUIDs

Possible Values for eventAction

  • Create: 1
  • Update: 2
  • Delete: 3
  • Publish: 4
  • Unpublish: 5
  • UndoDelete: 6

Note: After a successful item publishing, if the item's unpublishAt (Go Offline) value was not set to "never", meaning it has a date value in the future, both eventAction 4 and 5 will be triggered at the same time.

Possible Values for method

  • POST
  • GET

Possible Values for contentType

  • application/json
  • application/x-www-form-urlencoded

Request Body

{"scopedResource"=>"{{instance_zuid}}", "parentResourceZUID"=>"{{content_model_zuid}}", "resource"=>"items", "eventAction"=>1, "method"=>"GET", "URL"=>"{{webhook_url}}", "contentType"=>"application/json", "body"=>{"text"=>" this is the body"}}

HEADERS

KeyDatatypeRequiredDescription
Content-Typestring

RESPONSES

status: Created

{"_meta":{"timestamp":"2019-12-13T21:50:37.138860515Z","totalResults":1,"start":0,"offset":0,"limit":1},"data":{"ZUID":"{{webhook_zuid}}","scopedResource":"{{instance_zuid}}","eventAction":1,"parentResourceZUID":null,"resource":"domains","method":"POST","URL":"{{webhook_url}}","contentType":"application/json","authorization":"","body":{"text":"Instance domain has been added"},"createdByUserZUID":"{{user_zuid}}","description":null,"createdAt":"2019-12-13T21:50:37.132868933Z","updatedAt":"2019-12-13T21:50:37.132875689Z"}}