v1

latestOpenAPI 3.0.32026-08-061874701.5 MB
webhooks

Create webhook

Creates a new Webhook.

Important: On creation, a webhook is inactive by default. You can activate the webhook by calling the Update webhook operation on it with enabled set to true.

Webhook instance limits

Each scope object, such as a plan or a sheet, can have a maximum number of associated webhooks.

ObjectMaximum webhooks
Plan100
Sheet100k

Note: You can pass custom headers in your webhook requests, which Smartsheet then adds to all requests that the webhook sends to your callback URL. This is useful for including authentication tokens or other information your application needs. To do this, add a customHeaders object to the request body, with each key-value pair representing a header and its value.

See also:

  • customHeaders body parameter in the Body section below
  • Launch a plan-level webhook
  • Create a plan event-handling endpoint article

Note: For sheet webhooks, you can now filter which events trigger callbacks by specifying event patterns in the events array (for example, ["row.created", "cell.updated"]). If you omit specific patterns or use ["*.*"], the webhook receives all event types. See the events property for supported patterns.

post/webhooks

Headers

Content-Typestring

Required for POST and PUT requests. Defines the structure for the request body.

Request body

OR

Example request

{
  "callbackUrl": "https://www.myApp.com/webhooks",
  "name": "My webhook",
  "id": 8444254503626628,
  "apiClientId": "555555",
  "apiClientName": "Awesome Smartsheet Application",
  "sharedSecret": "216ejjzdnq17mq1q8xs7d4hu8b",
  "events": [
    "*.*"
  ],
  "scope": "plan",
  "scopeObjectId": 3285357287499652,
  "status": "NEW_NOT_VERIFIED",
  "version": 1,
  "customHeaders": {
    "YOUR_CUSTOM_HEADER_KEY_1": "YOUR_CUSTOM_HEADER_VALUE_1",
    "YOUR_CUSTOM_HEADER_KEY_2": "YOUR_CUSTOM_HEADER_VALUE_2"
  }
}

Response

Result object, containing a Webhook object for the newly created webhook

message'PARTIAL_SUCCESS' | 'SUCCESS'

Message that indicates the outcome of the request. (One of SUCCESS or PARTIAL_SUCCESS.)

resultCode0 | 3
  • '0' Success
  • '3' Partial Success of Bulk Operation

Example response

{
  "message": "SUCCESS",
  "result": {
    "callbackUrl": "https://www.myApp.com/webhooks",
    "name": "My webhook",
    "id": 8444254503626628,
    "apiClientId": "555555",
    "apiClientName": "Awesome Smartsheet Application",
    "sharedSecret": "216ejjzdnq17mq1q8xs7d4hu8b",
    "events": [
      "*.*"
    ],
    "scope": "plan",
    "scopeObjectId": 3285357287499652,
    "status": "NEW_NOT_VERIFIED",
    "version": 1,
    "customHeaders": {
      "YOUR_CUSTOM_HEADER_KEY_1": "YOUR_CUSTOM_HEADER_VALUE_1",
      "YOUR_CUSTOM_HEADER_KEY_2": "YOUR_CUSTOM_HEADER_VALUE_2"
    }
  }
}