OBJECT

WebhookEntity

Registered webhook urls will be called when subscribed events occur with access level corresponding to the Webhook owner. Recipient has to receive the webhook in 10 seconds and respond with HTTP 200 (2XX) status. On failed delivery it will be retried up to 10 times within 24 hours. If the receiving side will respond with HTTP 410 status, the webhook will be disabled. Webhook is also disabled when we receive HTTP timeout on 10th retry and there was no successful delivery in last 5 days.

link GraphQL Schema definition

  • type WebhookEntity {
  • # Tells if the entity instance is protected against delete (Entities that need to
  • # be present in the system at any time). Delete action still may fail if entity is
  • # deletable, due some other additional validations.
  • isDeleteProtected: Boolean!
  • # Unique identifier of entity.
  • id: ID!
  • # Specifies if the entity is considered deleted.
  • isDeleted: Boolean
  • # Last modification time.
  • modified: DateTime
  • # Creation time.
  • created: DateTime
  • application: ApplicationEntity
  • # Client who defined the Webhook. Only those notifications are sent which this
  • # Client has permission to see. If empty, all space notification are send, even
  • # for events of private records. Value is automatically set to authenticated user
  • # who created the webhook. It is left empty if global team space API Credentials
  • # are used.
  • client: ClientEntity
  • # Id of definer application of the Webhook.
  • applicationId: ID
  • # Id of definer client of the Webhook.
  • clientId: ID
  • # If True, remote side ssl certificate will not be validated when delivering
  • # notifications.
  • insecureSsl: Boolean!
  • # Params in REST API format (snake case), to modify the content of the WebHook.
  • # You can set "entity" options of the main entity on which the event occurs.
  • # E.g. Account for events like Account.Create, Account.Update, Account.Delete.
  • # For events with a secondary related entity you can also options under key
  • # "related_entity".
  • # E.g. for Account.LinkedDocument event, the "expand" option of
  • # CloudObject(Document)
  • # can be set under "related_entity" key.
  • # Filter follows REST API conventions:
  • # http://pipeliner-api-doc.s3-website-eu-west-1.amazonaws.com/latest/rest/space/index.html
  • # In addition, to REST params, you can conditionally trigger webhook
  • # only when specified fields will change. You can use "on-field-change" param and
  • # provide
  • # a list of api names on which this change will listen.
  • #
  • # Suppressing Webhooks
  • # You can specify list of strings under "skip_keys" key in options.
  • # Whenever you make an API request with header "Webhook-Skip-Key"
  • # equal to any of the specified skip keys,
  • # the Webhook will not be triggered. This can prevent a Webhook loop.
  • #
  • # Example:
  • # {
  • #
  • # "entity": {
  • #
  • # "Contact": {
  • #
  • # "expand": [
  • #
  • # "primary_account",
  • #
  • # "primary_contact",
  • #
  • # "task_relations.task"
  • #
  • # ],
  • #
  • # "load-only": [
  • #
  • # "id",
  • #
  • # "primary_account",
  • #
  • # "primary_contact.first_name",
  • #
  • # "task_relations.task"
  • #
  • # ],
  • #
  • # "filter": {
  • #
  • # "email1": ["test@example.com", "test@example.net"],
  • #
  • # "email2": "test@example.com"
  • #
  • # },
  • #
  • # "filter-op": {"email1": "eq"}, # optional, default operator is eq
  • #
  • # "on-field-change": ["email1"]
  • #
  • # },
  • #
  • # "Account": {
  • #
  • # "filter": {
  • #
  • # "owner_id": ["9900cce6-bcd6-412a-bcd1-1904556c949a"]
  • #
  • # }
  • #
  • # }
  • #
  • # },
  • #
  • # "related_entity": {"expand": ["contact"], "load-only": ["id", "contact"]},
  • #
  • # "skip_keys": ["gmail_sync", "custom_integration"],
  • #
  • # "chunk_size": 100, // defines the size of the chunk, default is 100, max is 100.
  • #
  • # "chunk_delay": 300, // each chunk will be delayed by N * chunk_delay seconds,
  • # where N is index of chunk, default is 0.
  • #
  • # "custom_entity_api_name": ["CE_Name1", "CE_Name2"] // in case of triggered
  • # custom entity, this will execute webhooks only for specified ones within the
  • # list. Default are all custom entity types.
  • # }
  • options: JSONString
  • # Signature to verify webhook (has to be UUID). When signature is set, then all
  • # webhook requests will be signed using HMAC-SHA256. This signature will be used
  • # as key and request body as message. Signature will be located in
  • # "WebHook-Signature" header.
  • signature: ID
  • # Webhook URL.
  • url: String!
  • events: [EventEnum!]!
  • # Checks which permissions current user has on concrete entity instance.
  • #
  • # Arguments
  • # permissions: [Not documented]
  • instancePermissions(permissions: [EntityPermsEnum!]!): [EntityPermsEnum!]!
  • }