> For the complete documentation index, see [llms.txt](https://developer.paddle.com/llms.txt).

# GET /simulations/{simulation_id}/runs/{simulation_run_id}/events

**List events for a simulation run**

Returns a paginated list of simulations. Use the query parameters to [page through results](https://developer.paddle.com/api-reference/about/pagination).

**Required permissions:** `notification_simulation.read`

## Path parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `simulation_id` | string | required | Paddle ID of the simulation entity to work with. |
| `simulation_run_id` | string | required | Paddle ID of the simulation run entity to work with. |

## Query parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | array | optional | Return only the IDs specified. Use a comma-separated list to get multiple entities. |
| `after` | string | optional | Return entities after the specified Paddle ID when working with paginated endpoints. Used in the `meta.pagination.next` URL in responses for list operations. |
| `per_page` | integer | optional | Set how many entities are returned per page. Paddle returns the maximum number of results if a number greater than the maximum is requested. Check `meta.pagination.per_page` in the response to see how many were returned.

Default: `50`; Maximum: `200`. (Max: 200; default: `50`) |
| `order_by` | string | optional | Order returned entities by the specified field and direction (`[ASC]` or `[DESC]`). For example, `?order_by=id[ASC]`.

Valid fields for ordering: `id`. (default: `"id[DESC]"`) |

## Response (200)

- `data`: array (required)
  - `id`: string (required) — Unique Paddle ID for this simulation event, prefixed with `ntfsimevt_`. (pattern: `^ntfsimevt_[a-z\d]{26}$`)
  - `status`: string (required) — Status of this simulation run log.
    - `pending` — Simulation run log is pending. Paddle hasn't yet tried to deliver the simulated event.
    - `success` — Simulation run log was successful. Paddle delivered the simulated event successfully.
    - `failed` — Simulation run log failed. Paddle tried to deliver the simulated event, but it failed. If `response` object is `null`, no response received from your server. Check your notification setting endpoint configuration.
    - `aborted` — Simulation run log aborted. Paddle could not attempt delivery of the simulated event.
  - `event_type`: string (required) — Type of event sent by Paddle, in the format `entity.event_type`.
    - `address.created` — An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event.
    - `address.imported` — An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event.
    - `address.updated` — An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event.
    - `adjustment.created` — An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event.
    - `adjustment.updated` — An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event.
    - `api_key.created` — An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event.
    - `api_key.expired` — An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event.
    - `api_key.expiring` — An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event.
    - `api_key.revoked` — An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event.
    - `api_key.updated` — An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event.
    - `api_key_exposure.created` — An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event.
    - `business.created` — A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event.
    - `business.imported` — A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event.
    - `business.updated` — A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event.
    - `client_token.created` — A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event.
    - `client_token.revoked` — A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event.
    - `client_token.updated` — A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event.
    - `customer.created` — A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event.
    - `customer.imported` — A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event.
    - `customer.updated` — A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event.
    - `discount.created` — A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event.
    - `discount.imported` — A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event.
    - `discount.updated` — A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event.
    - `discount_group.created` — A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event.
    - `discount_group.updated` — A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event.
    - `payment_method.saved` — A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event.
    - `payment_method.deleted` — A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event.
    - `payout.created` — A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event.
    - `payout.paid` — A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event.
    - `price.created` — A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event.
    - `price.imported` — A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event.
    - `price.updated` — A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event.
    - `product.created` — A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event.
    - `product.imported` — A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event.
    - `product.updated` — A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event.
    - `report.created` — A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event.
    - `report.updated` — A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event.
    - `subscription.activated` — A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event.
    - `subscription.canceled` — A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event.
    - `subscription.created` — A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event.
    - `subscription.imported` — A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event.
    - `subscription.past_due` — A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event.
    - `subscription.paused` — A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event.
    - `subscription.resumed` — A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event.
    - `subscription.trialing` — A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event.
    - `subscription.updated` — A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event.
    - `transaction.billed` — A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event.
    - `transaction.canceled` — A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event.
    - `transaction.completed` — A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event.
    - `transaction.created` — A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event.
    - `transaction.paid` — A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event.
    - `transaction.past_due` — A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event.
    - `transaction.payment_failed` — A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event.
    - `transaction.ready` — A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event.
    - `transaction.revised` — A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event.
    - `transaction.updated` — A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event.
  - `payload`: object (required) — Simulation payload. Pass a JSON object that matches the schema for an event type to simulate a custom payload. If omitted, Paddle populates with a demo example.
  - `request`: object | null (required) — Information about the request. Sent by Paddle as part of the simulation.
    - `body`: string (required) — Request body sent by Paddle.
  - `response`: object | null (required) — Information about the response. Sent by the responding server for the notification setting.
    - `body`: string (required) — Response body sent by the responding server. May be empty for success responses.
    - `status_code`: number (required) — HTTP status code sent by the responding server.
  - `created_at`: string (date-time) (required) — RFC 3339 datetime string of when this entity was created. Set automatically by Paddle.
  - `updated_at`: string (date-time) (required) — RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle.
- `meta`: object (required) — Information about this response.
  - `request_id`: string (required) — Unique ID for the request relating to this response. Provide this when contacting Paddle support about a specific request.
  - `pagination`: object (required) — Keys used for working with paginated results.
    - `per_page`: integer (required) — Number of entities per page for this response. May differ from the number requested if the requested number is greater than the maximum.
    - `next`: string (uri) (required) — URL containing the query parameters of the original request, along with the `after` parameter that marks the starting point of the next page. Always returned, even if `has_more` is `false`.
    - `has_more`: boolean (required) — Whether this response has another page.
    - `estimated_total`: integer — Estimated number of entities for this response.

For datasets with 100,000 or fewer matches, returns the exact count. For datasets with more than 100,000 matches, returns `100001` to indicate that more than 100,000 entities match. Returns `-1` when counting is skipped or couldn't be calculated.

Use `has_more` and `next` to page through all results rather than relying on `estimated_total` for an exact count.

### Response example

```json
{
  "data": [
    {
      "id": "ntfsimevt_01j82hf8jrwjsf9337a35tqghp",
      "status": "success",
      "event_type": "adjustment.updated",
      "payload": {
        "id": "adj_01hvgf2s84dr6reszzg29zbvcm",
        "items": [
          {
            "id": "adjitm_01hvgf2s84dr6reszzg2gx70gj",
            "type": "partial",
            "amount": "100",
            "totals": {
              "tax": "8",
              "total": "100",
              "subtotal": "92"
            },
            "item_id": "txnitm_01hvcc94b7qgz60qmrqmbm19zw",
            "proration": null
          }
        ],
        "action": "refund",
        "reason": "error",
        "status": "pending_approval",
        "totals": {
          "fee": "5",
          "tax": "8",
          "total": "100",
          "earnings": "87",
          "subtotal": "92",
          "currency_code": "USD"
        },
        "created_at": "2024-04-15T08:48:20.239695Z",
        "updated_at": "2024-04-15T08:48:20.239695Z",
        "customer_id": "ctm_01hv6y1jedq4p1n0yqn5ba3ky4",
        "currency_code": "USD",
        "payout_totals": {
          "fee": "5",
          "tax": "8",
          "total": "100",
          "earnings": "87",
          "subtotal": "92",
          "currency_code": "USD"
        },
        "transaction_id": "txn_01hvcc93znj3mpqt1tenkjb04y",
        "subscription_id": "sub_01hvccbx32q2gb40sqx7n42430",
        "credit_applied_to_balance": null
      },
      "request": {
        "body": "{\"event_id\":\"ntfsimevt_01j82hf8jrwjsf9337a35tqghp\",\"event_type\":\"adjustment.updated\",\"occurred_at\":\"2024-09-18T12:24:47.960617Z\",\"data\":{\"id\":\"adj_01hvgf2s84dr6reszzg29zbvcm\",\"items\":[{\"id\":\"adjitm_01hvgf2s84dr6reszzg2gx70gj\",\"type\":\"partial\",\"amount\":\"100\",\"totals\":{\"tax\":\"8\",\"total\":\"100\",\"subtotal\":\"92\"},\"item_id\":\"txnitm_01hvcc94b7qgz60qmrqmbm19zw\",\"proration\":null}],\"action\":\"refund\",\"reason\":\"error\",\"status\":\"pending_approval\",\"totals\":{\"fee\":\"5\",\"tax\":\"8\",\"total\":\"100\",\"earnings\":\"87\",\"subtotal\":\"92\",\"currency_code\":\"USD\"},\"created_at\":\"2024-04-15T08:48:20.239695Z\",\"updated_at\":\"2024-04-15T08:48:20.239695Z\",\"customer_id\":\"ctm_01hv6y1jedq4p1n0yqn5ba3ky4\",\"currency_code\":\"USD\",\"payout_totals\":{\"fee\":\"5\",\"tax\":\"8\",\"total\":\"100\",\"earnings\":\"87\",\"subtotal\":\"92\",\"currency_code\":\"USD\"},\"transaction_id\":\"txn_01hvcc93znj3mpqt1tenkjb04y\",\"subscription_id\":\"sub_01hvccbx32q2gb40sqx7n42430\",\"credit_applied_to_balance\":null}}"
      },
      "response": {
        "body": "{\"status\":\"SUCCESS\",\"message\":\"Request handled by Hookdeck. Check your dashboard to inspect the request: https://dashboard.hookdeck.com/requests/req_6ob9lGLoCA2qKWS6VGXR\",\"request_id\":\"req_6ob9lGLoCA2qKWS6VGXR\"}",
        "status_code": 200
      },
      "created_at": "2024-09-18T12:24:47.960617Z",
      "updated_at": "2024-09-18T12:24:48.309530Z"
    }
  ],
  "meta": {
    "pagination": {
      "per_page": 50,
      "estimated_total": 1,
      "next": "https://api.paddle.dev/simulations/ntfsim_01j82fs5pvrdse93e1kawqy2fr/runs/ntfsimrun_01j82hf8heprevaj34ez32gmwz/events?after=ntfsimevt_01j82hf8jrwjsf9337a35tqghp",
      "has_more": false
    },
    "request_id": "f1726ebc-383d-45da-ab71-2c811b3c6ce8"
  }
}
```
