Methods

List Webhooks

Gets the list of all webhooks that the user owns (if a user-generated token was used to make the request) or the list of all webhooks associated with the third-party app (if a third-party app made the request). Items in the response are ordered by API cient name > webhook name > creation date.

Authorizations:
APITokenOAuth2 (ADMIN_WEBHOOKS)
query Parameters
includeAll
boolean
Default: false

If true, include all results, that is, do not paginate. Mutually exclusive with page and pageSize (they are ignored if includeAll=true is specified).

page
number
Default: 1

Which page to return. Defaults to 1 if not specified. If you specify a value greater than the total number of pages, the last page of results is returned.

pageSize
number
Default: 100

The maximum number of items to return per page. Unless otherwise stated for a specific endpoint, defaults to 100. If only page is specified, defaults to a page size of 100. For reports, the default is 100 rows. If you need larger sets of data from your report, returns a maximum of 10,000 rows per request.

header Parameters
Authorization
string

API Access Token used to authenticate requests to Smartsheet APIs.

Example: Bearer JKlMNOpQ12RStUVwxYZAbcde3F5g6hijklM789

Responses

Request samples

curl https://api.smartsheet.com/2.0/webhooks \
-H "Authorization: Bearer JKlMNOpQ12RStUVwxYZAbcde3F5g6hijklM789"

Response samples

Content type
application/json
{
  • "pageNumber": 1,
  • "pageSize": 50,
  • "totalPages": 25,
  • "totalCount": 136,
  • "data": [
    ]
}

Create Webhook

Creates a new Webhook.

A webhook is not enabled by default when it is created. Once you've created a webhook, you can enable it by using the Update Webhook operation to set enabled to true.

When a row is deleted on a sheet, even if you are using a subscope to monitor columns only and the cell in that column for that row is empty, you will receive a "row.deleted" event.

Authorizations:
APITokenOAuth2 (ADMIN_WEBHOOKS)
header Parameters
Authorization
string

API Access Token used to authenticate requests to Smartsheet APIs.

Example: Bearer JKlMNOpQ12RStUVwxYZAbcde3F5g6hijklM789
Content-Type
string
Default: application/json

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

Request Body schema: application/json
callbackUrl
required
string

HTTPS URL where callbacks are sent.

events
required
Array of strings

Array of the events that are subscribed to. Currently, must be an array of size 1 that contains the string value '*.*' (asterisk period asterisk), which means "all objects" and "all events".

name
required
string

Webhook name.

version
required
number [ 1 .. 1 ]

Webhook version. Currently, the only supported value is 1. This attribute is intended to ensure backward compatibility as new webhook functionality is released. For example, a webhook with a version of 1 is guaranteed to always be sent callback objects that are compatible with the version 1 release of webhooks.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "version": 0,
  • "failedItems": [
    ],
  • "message": "SUCCESS",
  • "resultCode": 0,
  • "result": {
    }
}

Get Webhook

Gets a Webhook based on the specified ID

Authorizations:
APITokenOAuth2 (ADMIN_WEBHOOKS)
path Parameters
webhookId
required
string

The Id of a Webhook

header Parameters
Authorization
string

API Access Token used to authenticate requests to Smartsheet APIs.

Example: Bearer JKlMNOpQ12RStUVwxYZAbcde3F5g6hijklM789

Responses

Request samples

curl https://api.smartsheet.com/2.0/webhooks/{webhookId} \
-H "Authorization: Bearer JKlMNOpQ12RStUVwxYZAbcde3F5g6hijklM789"

Response samples

Content type
application/json
{
  • "events": [
    ],
  • "name": "Webhook for Sheet Creation",
  • "version": 1,
  • "enabled": true,
  • "id": 8444254503626628,
  • "apiClientId": 555555,
  • "scopeObjectId": 3285357287499652,
  • "apiClientName": "Awesome Smartsheet Application",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "disabledDetails": "string",
  • "modifiedAt": "2019-08-24T14:15:22Z",
  • "scope": "sheet",
  • "sharedSecret": "216ejjzdnq17mq1q8xs7d4hu8b",
  • "stats": {
    },
  • "status": "ENABLED",
  • "subscope": {
    }
}

Update Webhook

Updates the specified Webhook. The following properties can be updated:

  • callbackUrl (optional)
  • enabled (optional)
  • events (optional)
  • name (optional)
  • version (optional)

When setting a webhook's enabled to true using this operation, the behavior and result depend on the webhook's status and may result in a webhook verification being triggered, or in some cases, an error being returned. See Webhook Status for more details.

Authorizations:
APITokenOAuth2 (ADMIN_WEBHOOKS)
path Parameters
webhookId
required
string

The Id of a Webhook

header Parameters
Authorization
string

API Access Token used to authenticate requests to Smartsheet APIs.

Example: Bearer JKlMNOpQ12RStUVwxYZAbcde3F5g6hijklM789
Content-Type
string
Default: application/json

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

Request Body schema: application/json
callbackUrl
string

HTTPS URL where callbacks are sent.

events
Array of strings

Array of the events that are subscribed to. Currently, must be an array of size 1 that contains the string value '*.*' (asterisk period asterisk), which means "all objects" and "all events".

name
string

Webhook name.

version
number [ 1 .. 1 ]

Webhook version. Currently, the only supported value is 1. This attribute is intended to ensure backward compatibility as new webhook functionality is released. For example, a webhook with a version of 1 is guaranteed to always be sent callback objects that are compatible with the version 1 release of webhooks.

enabled
boolean

Indicates whether the webhook is on (true) or off (false).

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "version": 0,
  • "failedItems": [
    ],
  • "message": "SUCCESS",
  • "resultCode": 0,
  • "result": {
    }
}

Delete Webhook

Deletes the specified Webhook.

Using this operation permanently deletes the specified webhook. To temporarily disable a webhook, use the Update Webhook operation to set enabled to false.

Authorizations:
APITokenOAuth2 (ADMIN_WEBHOOKS)
path Parameters
webhookId
required
string

The Id of a Webhook

header Parameters
Authorization
string

API Access Token used to authenticate requests to Smartsheet APIs.

Example: Bearer JKlMNOpQ12RStUVwxYZAbcde3F5g6hijklM789

Responses

Request samples

curl https://api.smartsheet.com/2.0/webhooks/{webhookId} \
-H "Authorization: Bearer JKlMNOpQ12RStUVwxYZAbcde3F5g6hijklM789" \
-X DELETE

Response samples

Content type
application/json
{
  • "version": 0,
  • "failedItems": [
    ],
  • "message": "SUCCESS",
  • "resultCode": 0
}

Reset Shared Secret

Resets the shared secret for the specified webhook. For more information about how a shared secret is used, see Authenticating Callbacks. This operation can be used to rotate an API client's webhooks' shared secrets at periodic intervals to provide additional security.

Authorizations:
APITokenOAuth2 (ADMIN_WEBHOOKS)
path Parameters
webhookId
required
string

The Id of a Webhook

header Parameters
Authorization
string

API Access Token used to authenticate requests to Smartsheet APIs.

Example: Bearer JKlMNOpQ12RStUVwxYZAbcde3F5g6hijklM789
Content-Type
string
Default: application/json

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

Responses

Request samples

curl https://api.smartsheet.com/2.0/webhooks/{webhookId}/resetsharedsecret \
-H "Authorization: Bearer JKlMNOpQ12RStUVwxYZAbcde3F5g6hijklM789" \
-H "Content-Type: application/json" \
-X POST

Response samples

Content type
application/json
{
  • "version": 0,
  • "failedItems": [
    ],
  • "message": "SUCCESS",
  • "resultCode": 0,
  • "result": {
    }
}
➔ Next to Workspaces Basics