# Get list of webhooks


```
GET 
https://api.apify.com/v2/acts/:actorId/webhooks
```


Gets the list of webhooks of a specific Actor. The response is a JSON with the list of objects, where each object contains basic information about a single webhook.

The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 records.

By default, the records are sorted by the `createdAt` field in ascending order, to sort the records in descending order, use the `desc=1` parameter.

## Request

### Path Parameters

* **actorId** string required

  Actor ID or a tilde-separated owner's username and Actor name.

  **Example:** `janedoe~my-actor`

### Query Parameters

* **offset** double

  Number of items that should be skipped at the start. The default value is `0`.

  **Example:** `0`

  **limit** double

  Maximum number of items to return. The default value as well as the maximum is `1000`.

  **Example:** `1000`

  **desc** boolean

  If `true` or `1` then the objects are sorted by the `createdAt` field in descending order. By default, they are sorted in ascending order.

  **Example:** `true`

<!-- -->

### Status 200

**Response Headers**




```
{
  "data": {
    "total": 1,
    "offset": 0,
    "limit": 1000,
    "desc": false,
    "count": 1,
    "items": [
      {
        "id": "YiKoxjkaS9gjGTqhF",
        "createdAt": "2019-12-12T07:34:14.202Z",
        "modifiedAt": "2019-12-13T08:36:13.202Z",
        "userId": "wRsJZtadYvn4mBZmm",
        "isAdHoc": false,
        "shouldInterpolateStrings": false,
        "eventTypes": [
          "ACTOR.RUN.SUCCEEDED"
        ],
        "condition": {
          "actorId": "hksJZtadYvn4mBuin",
          "actorTaskId": "asdLZtadYvn4mBZmm",
          "actorRunId": "hgdKZtadYvn4mBpoi"
        },
        "ignoreSslErrors": false,
        "doNotRetry": false,
        "requestUrl": "http://example.com/",
        "lastDispatch": {
          "status": "ACTIVE",
          "finishedAt": "2019-12-13T08:36:13.202Z"
        },
        "stats": {
          "totalDispatches": 1
        }
      }
    ]
  }
}
```


**Schema**

* **data** object required

  Common pagination fields for list responses.

  * **total** integer required

    The total number of items available across all pages.

    **Possible values:** `>= 0`

    **Example:** `1`

  * **offset** integer required

    The starting position for this page of results.

    **Possible values:** `>= 0`

    **Example:** `0`

  * **limit** integer required

    The maximum number of items returned per page.

    **Possible values:** `>= 1`

    **Example:** `1000`

  * **desc** boolean required

    Whether the results are sorted in descending order.

    **Example:** `false`

  * **count** integer required

    The number of items returned in this response.

    **Possible values:** `>= 0`

    **Example:** `1`

  * **items** object\[] required

    * **id** string required\
      **Example:** `YiKoxjkaS9gjGTqhF`

    * **createdAt** string\<date-time> required\
      **Example:** `2019-12-12T07:34:14.202Z`

    * **modifiedAt** string\<date-time> required\
      **Example:** `2019-12-13T08:36:13.202Z`

    * **userId** string required\
      **Example:** `wRsJZtadYvn4mBZmm`

    * **isAdHoc** boolean | null nullable\
      **Example:** `false`

    * **shouldInterpolateStrings** boolean | null nullable\
      **Example:** `false`

    * **eventTypes** WebhookEventType (string)\[] required

      **Possible values:** \[`ACTOR.BUILD.ABORTED`, `ACTOR.BUILD.CREATED`, `ACTOR.BUILD.FAILED`, `ACTOR.BUILD.SUCCEEDED`, `ACTOR.BUILD.TIMED_OUT`, `ACTOR.RUN.ABORTED`, `ACTOR.RUN.CREATED`, `ACTOR.RUN.FAILED`, `ACTOR.RUN.RESURRECTED`, `ACTOR.RUN.SUCCEEDED`, `ACTOR.RUN.TIMED_OUT`, `TEST`]

      **Example:** `["ACTOR.RUN.SUCCEEDED"]`

    * **condition** object required

      * **actorId** string | null nullable\
        **Example:** `hksJZtadYvn4mBuin`
      * **actorTaskId** string | null nullable\
        **Example:** `asdLZtadYvn4mBZmm`
      * **actorRunId** string | null nullable\
        **Example:** `hgdKZtadYvn4mBpoi`

    * **ignoreSslErrors** boolean required\
      **Example:** `false`

    * **doNotRetry** boolean required\
      **Example:** `false`

    * **requestUrl** string\<uri> required\
      **Example:** `http://example.com/`

    * **lastDispatch** object

      * anyOf

        * ExampleWebhookDispatch
        * null

        **status** WebhookDispatchStatus (string) required

        Status of the webhook dispatch indicating whether the HTTP request was successful.

        **Possible values:** \[`ACTIVE`, `SUCCEEDED`, `FAILED`]

      * **finishedAt** string,null\<date-time> nullable\
        **Example:** `2019-12-13T08:36:13.202Z`

    * **stats** object

      * anyOf
        * WebhookStats
        * null
        **totalDispatches** integer required\
        **Example:** `1`

### Status 400

Bad request - invalid input parameters or request body.


```
{
  "error": {
    "type": "invalid-input",
    "message": "Invalid input: The request body contains invalid data."
  }
}
```


**Schema**

* **error** object required

  * **type** string required\
    **Example:** `run-failed`
  * **message** string required\
    **Example:** `Actor run did not succeed (run ID: 55uatRrZib4xbZs, status: FAILED)`

### Status 401

Unauthorized - authentication required or invalid token.


```
{
  "error": {
    "type": "token-not-valid",
    "message": "Authentication token is not valid."
  }
}
```


**Schema**

* **error** object required

  * **type** string required\
    **Example:** `run-failed`
  * **message** string required\
    **Example:** `Actor run did not succeed (run ID: 55uatRrZib4xbZs, status: FAILED)`

### Status 403

Forbidden - insufficient permissions to perform this action.


```
{
  "error": {
    "type": "permission-denied",
    "message": "You do not have permission to perform this action."
  }
}
```


**Schema**

* **error** object required

  * **type** string required\
    **Example:** `run-failed`
  * **message** string required\
    **Example:** `Actor run did not succeed (run ID: 55uatRrZib4xbZs, status: FAILED)`

### Status 404

Not found - the requested resource does not exist.


```
{
  "error": {
    "type": "record-not-found",
    "message": "The requested resource was not found."
  }
}
```


**Schema**

* **error** object required

  * **type** string required\
    **Example:** `run-failed`
  * **message** string required\
    **Example:** `Actor run did not succeed (run ID: 55uatRrZib4xbZs, status: FAILED)`

### Status 405

Method not allowed.


```
{
  "error": {
    "type": "method-not-allowed",
    "message": "This API end-point can only be accessed using the following HTTP methods: OPTIONS,GET"
  }
}
```


**Schema**

* **error** object required

  * **type** string required\
    **Example:** `run-failed`
  * **message** string required\
    **Example:** `Actor run did not succeed (run ID: 55uatRrZib4xbZs, status: FAILED)`

### Status 429

Too many requests - rate limit exceeded.


```
{
  "error": {
    "type": "rate-limit-exceeded",
    "message": "You have exceeded the rate limit. Please try again later."
  }
}
```


**Schema**

* **error** object required

  * **type** string required\
    **Example:** `run-failed`
  * **message** string required\
    **Example:** `Actor run did not succeed (run ID: 55uatRrZib4xbZs, status: FAILED)`
