---
title: "Retrieve an event"
method: GET
path: "/v1/events/{id}"
---

# Retrieve an event

`GET /v1/events/{id}`

Retrieves the details of an event if it was created in the last 30 days. Supply the unique identifier of the event, which you might have received in a webhook.

## Path parameters

- `id` string, required

## Query parameters

- `expand` string[]

## Response `200`

Successful response.

- Event — Events are our way of letting you know when something interesting happens in your account. When an interesting event occurs, we create a new `Event` object. For example, when a charge succeeds, we create a `charge.succeeded` event, and when an invoice payment attempt fails, we create an `invoice.payment_failed` event. Certain API requests might create multiple events. For example, if you create a new subscription for a customer, you receive both a `customer.subscription.created` event and a `charge.succeeded` event. Events occur when the state of another API resource changes. The event's data field embeds the resource's state at the time of the change. For example, a `charge.succeeded` event contains a charge, and an `invoice.payment_failed` event contains an invoice. As with other API resources, you can use endpoints to retrieve an [individual event](https://stripe.com/docs/api#retrieve_event) or a [list of events](https://stripe.com/docs/api#list_events) from the API. We also have a separate [webhooks](http://en.wikipedia.org/wiki/Webhook) system for sending the `Event` objects directly to an endpoint on your server. You can manage webhooks in your [account settings](https://dashboard.stripe.com/account/webhooks). Learn how to [listen for events](https://docs.stripe.com/webhooks) so that your integration can automatically trigger reactions. When using [Connect](https://docs.stripe.com/connect), you can also receive event notifications that occur in connected accounts. For these events, there's an additional `account` attribute in the received `Event` object. We only guarantee access to events through the [Retrieve Event API](https://stripe.com/docs/api#retrieve_event) for 30 days.
  - `account` string — The connected account that originates the event.
  - `api_version` string, nullable — The Stripe API version used to render `data`. This property is populated only for events on or after October 31, 2014.
  - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
  - `data` NotificationEventData, required
    - `object` object, required — Object containing the API resource relevant to the event. For example, an `invoice.created` event will have a full [invoice object](https://stripe.com/docs/api#invoice_object) as the value of the object key.
    - `previous_attributes` object — Object containing the names of the updated attributes and their values prior to the event (only included in events of type `*.updated`). If an array attribute has any updated elements, this object contains the entire array. In Stripe API versions 2017-04-06 or earlier, an updated array attribute in this object includes only the updated array elements.
  - `id` string, required — Unique identifier for the object.
  - `livemode` boolean, required — Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
  - `object` 'event', required — String representing the object's type. Objects of the same type share the same value.
  - `pending_webhooks` integer, required — Number of webhooks that haven't been successfully delivered (for example, to return a 20x response) to the URLs you specify.
  - `request` NotificationEventRequest
    - `id` string, nullable — ID of the API request that caused the event. If null, the event was automatic (e.g., Stripe's automatic subscription handling). Request logs are available in the [dashboard](https://dashboard.stripe.com/logs), but currently not in the API.
    - `idempotency_key` string, nullable — The idempotency key transmitted during the request, if any. *Note: This property is populated only for events on or after May 23, 2017*.
  - `type` string, required — Description of the event (for example, `invoice.created` or `charge.refunded`).

## Other responses

- `default` — Error response.

## Changes

> 9 revisions in range; 2 not diffed.

- **2025-01-17** `b8a91ebdacb7` — 8 info
  - added the optional property `error/advice_code` to the response with the `default` status
  - added the optional property `error/payment_intent/invoice/anyOf[subschema #2: Invoice]/charge/anyOf[subschema #2: Charge]/outcome/anyOf[subschema #1: ChargeOutcome]/advice_code` to the response with the `default` status
  - added the optional property `error/payment_intent/invoice/anyOf[subschema #2: Invoice]/charge/anyOf[subschema #2: Charge]/payment_method_details/anyOf[subschema #1: payment_method_details]/pay_by_bank` to the response with the `default` status
  - added the optional property `error/payment_intent/invoice/anyOf[subschema #2: Invoice]/charge/anyOf[subschema #2: Charge]/payment_method_details/anyOf[subschema #1: payment_method_details]/paypal/country` to the response with the `default` status
  - …4 more
- …earlier changes not shown

[Full history](https://skmtc.dev/stripe/apis/spec3/changes/v1/events/:id/get.md)

---

[API](https://skmtc.dev/stripe/apis/spec3.md) · [All operations](https://skmtc.dev/stripe/apis/spec3/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/stripe/spec3/revisions/b8a91ebdacb7/schema)
