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

# api_key.expired

Occurs when an API key has expired.

---

Occurs when an API key has reached its expiration date. The key's `status` changes to `expired` and it can no longer be used to authenticate API requests.
## Schema

```json
{
  "type": "object",
  "required": [
    "event_id",
    "event_type",
    "occurred_at",
    "notification_id",
    "data"
  ],
  "properties": {
    "event_id": {
      "type": "string",
      "pattern": "^evt_[a-z\\d]{26}$",
      "description": "Unique Paddle ID for this event, prefixed with `evt_`.",
      "title": "Event ID",
      "examples": [
        "evt_01gks14ge726w50ch2tmaw2a1x"
      ]
    },
    "event_type": {
      "type": "string",
      "enum": [
        "address.created",
        "address.imported",
        "address.updated",
        "adjustment.created",
        "adjustment.updated",
        "api_key.created",
        "api_key.expired",
        "api_key.expiring",
        "api_key.revoked",
        "api_key.updated",
        "api_key_exposure.created",
        "business.created",
        "business.imported",
        "business.updated",
        "client_token.created",
        "client_token.revoked",
        "client_token.updated",
        "customer.created",
        "customer.imported",
        "customer.updated",
        "discount.created",
        "discount.imported",
        "discount.updated",
        "discount_group.created",
        "discount_group.updated",
        "payment_method.saved",
        "payment_method.deleted",
        "payout.created",
        "payout.paid",
        "price.created",
        "price.imported",
        "price.updated",
        "product.created",
        "product.imported",
        "product.updated",
        "report.created",
        "report.updated",
        "subscription.activated",
        "subscription.canceled",
        "subscription.created",
        "subscription.imported",
        "subscription.past_due",
        "subscription.paused",
        "subscription.resumed",
        "subscription.trialing",
        "subscription.updated",
        "transaction.billed",
        "transaction.canceled",
        "transaction.completed",
        "transaction.created",
        "transaction.paid",
        "transaction.past_due",
        "transaction.payment_failed",
        "transaction.ready",
        "transaction.revised",
        "transaction.updated"
      ],
      "description": "Type of event sent by Paddle, in the format `entity.event_type`.",
      "title": "Event type name",
      "x-enum-descriptions": {
        "address.created": {
          "description": "An [`address.created`](https://developer.paddle.com/webhooks/addresses/address-created) event."
        },
        "address.imported": {
          "description": "An [`address.imported`](https://developer.paddle.com/webhooks/addresses/address-imported) event."
        },
        "address.updated": {
          "description": "An [`address.updated`](https://developer.paddle.com/webhooks/addresses/address-updated) event."
        },
        "adjustment.created": {
          "description": "An [`adjustment.created`](https://developer.paddle.com/webhooks/adjustments/adjustment-created) event."
        },
        "adjustment.updated": {
          "description": "An [`adjustment.updated`](https://developer.paddle.com/webhooks/adjustments/adjustment-updated) event."
        },
        "api_key.created": {
          "description": "An [`api_key.created`](https://developer.paddle.com/webhooks/api-keys/api-key-created) event."
        },
        "api_key.expired": {
          "description": "An [`api_key.expired`](https://developer.paddle.com/webhooks/api-keys/api-key-expired) event."
        },
        "api_key.expiring": {
          "description": "An [`api_key.expiring`](https://developer.paddle.com/webhooks/api-keys/api-key-expiring) event."
        },
        "api_key.revoked": {
          "description": "An [`api_key.revoked`](https://developer.paddle.com/webhooks/api-keys/api-key-revoked) event."
        },
        "api_key.updated": {
          "description": "An [`api_key.updated`](https://developer.paddle.com/webhooks/api-keys/api-key-updated) event."
        },
        "api_key_exposure.created": {
          "description": "An [`api_key_exposure.created`](https://developer.paddle.com/webhooks/api-key-exposures/api-key-exposure-created) event."
        },
        "business.created": {
          "description": "A [`business.created`](https://developer.paddle.com/webhooks/businesses/business-created) event."
        },
        "business.imported": {
          "description": "A [`business.imported`](https://developer.paddle.com/webhooks/businesses/business-imported) event."
        },
        "business.updated": {
          "description": "A [`business.updated`](https://developer.paddle.com/webhooks/businesses/business-updated) event."
        },
        "client_token.created": {
          "description": "A [`client_token.created`](https://developer.paddle.com/webhooks/client-tokens/client-token-created) event."
        },
        "client_token.revoked": {
          "description": "A [`client_token.revoked`](https://developer.paddle.com/webhooks/client-tokens/client-token-revoked) event."
        },
        "client_token.updated": {
          "description": "A [`client_token.updated`](https://developer.paddle.com/webhooks/client-tokens/client-token-updated) event."
        },
        "customer.created": {
          "description": "A [`customer.created`](https://developer.paddle.com/webhooks/customers/customer-created) event."
        },
        "customer.imported": {
          "description": "A [`customer.imported`](https://developer.paddle.com/webhooks/customers/customer-imported) event."
        },
        "customer.updated": {
          "description": "A [`customer.updated`](https://developer.paddle.com/webhooks/customers/customer-updated) event."
        },
        "discount.created": {
          "description": "A [`discount.created`](https://developer.paddle.com/webhooks/discounts/discount-created) event."
        },
        "discount.imported": {
          "description": "A [`discount.imported`](https://developer.paddle.com/webhooks/discounts/discount-imported) event."
        },
        "discount.updated": {
          "description": "A [`discount.updated`](https://developer.paddle.com/webhooks/discounts/discount-updated) event."
        },
        "discount_group.created": {
          "description": "A [`discount_group.created`](https://developer.paddle.com/webhooks/discount-groups/discount-group-created) event."
        },
        "discount_group.updated": {
          "description": "A [`discount_group.updated`](https://developer.paddle.com/webhooks/discount-groups/discount-group-updated) event."
        },
        "payment_method.saved": {
          "description": "A [`payment_method.saved`](https://developer.paddle.com/webhooks/payment-methods/payment-method-saved) event."
        },
        "payment_method.deleted": {
          "description": "A [`payment_method.deleted`](https://developer.paddle.com/webhooks/payment-methods/payment-method-deleted) event."
        },
        "payout.created": {
          "description": "A [`payout.created`](https://developer.paddle.com/webhooks/payouts/payout-created) event."
        },
        "payout.paid": {
          "description": "A [`payout.paid`](https://developer.paddle.com/webhooks/payouts/payout-paid) event."
        },
        "price.created": {
          "description": "A [`price.created`](https://developer.paddle.com/webhooks/prices/price-created) event."
        },
        "price.imported": {
          "description": "A [`price.imported`](https://developer.paddle.com/webhooks/prices/price-imported) event."
        },
        "price.updated": {
          "description": "A [`price.updated`](https://developer.paddle.com/webhooks/prices/price-updated) event."
        },
        "product.created": {
          "description": "A [`product.created`](https://developer.paddle.com/webhooks/products/product-created) event."
        },
        "product.imported": {
          "description": "A [`product.imported`](https://developer.paddle.com/webhooks/products/product-imported) event."
        },
        "product.updated": {
          "description": "A [`product.updated`](https://developer.paddle.com/webhooks/products/product-updated) event."
        },
        "report.created": {
          "description": "A [`report.created`](https://developer.paddle.com/webhooks/reports/report-created) event."
        },
        "report.updated": {
          "description": "A [`report.updated`](https://developer.paddle.com/webhooks/reports/report-updated) event."
        },
        "subscription.activated": {
          "description": "A [`subscription.activated`](https://developer.paddle.com/webhooks/subscriptions/subscription-activated) event."
        },
        "subscription.canceled": {
          "description": "A [`subscription.canceled`](https://developer.paddle.com/webhooks/subscriptions/subscription-canceled) event."
        },
        "subscription.created": {
          "description": "A [`subscription.created`](https://developer.paddle.com/webhooks/subscriptions/subscription-created) event."
        },
        "subscription.imported": {
          "description": "A [`subscription.imported`](https://developer.paddle.com/webhooks/subscriptions/subscription-imported) event."
        },
        "subscription.past_due": {
          "description": "A [`subscription.past_due`](https://developer.paddle.com/webhooks/subscriptions/subscription-past-due) event."
        },
        "subscription.paused": {
          "description": "A [`subscription.paused`](https://developer.paddle.com/webhooks/subscriptions/subscription-paused) event."
        },
        "subscription.resumed": {
          "description": "A [`subscription.resumed`](https://developer.paddle.com/webhooks/subscriptions/subscription-resumed) event."
        },
        "subscription.trialing": {
          "description": "A [`subscription.trialing`](https://developer.paddle.com/webhooks/subscriptions/subscription-trialing) event."
        },
        "subscription.updated": {
          "description": "A [`subscription.updated`](https://developer.paddle.com/webhooks/subscriptions/subscription-updated) event."
        },
        "transaction.billed": {
          "description": "A [`transaction.billed`](https://developer.paddle.com/webhooks/transactions/transaction-billed) event."
        },
        "transaction.canceled": {
          "description": "A [`transaction.canceled`](https://developer.paddle.com/webhooks/transactions/transaction-canceled) event."
        },
        "transaction.completed": {
          "description": "A [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed) event."
        },
        "transaction.created": {
          "description": "A [`transaction.created`](https://developer.paddle.com/webhooks/transactions/transaction-created) event."
        },
        "transaction.paid": {
          "description": "A [`transaction.paid`](https://developer.paddle.com/webhooks/transactions/transaction-paid) event."
        },
        "transaction.past_due": {
          "description": "A [`transaction.past_due`](https://developer.paddle.com/webhooks/transactions/transaction-past-due) event."
        },
        "transaction.payment_failed": {
          "description": "A [`transaction.payment_failed`](https://developer.paddle.com/webhooks/transactions/transaction-payment-failed) event."
        },
        "transaction.ready": {
          "description": "A [`transaction.ready`](https://developer.paddle.com/webhooks/transactions/transaction-ready) event."
        },
        "transaction.revised": {
          "description": "A [`transaction.revised`](https://developer.paddle.com/webhooks/transactions/transaction-revised) event."
        },
        "transaction.updated": {
          "description": "A [`transaction.updated`](https://developer.paddle.com/webhooks/transactions/transaction-updated) event."
        }
      }
    },
    "occurred_at": {
      "type": "string",
      "format": "date-time",
      "description": "RFC 3339 datetime string of when this event occurred.",
      "title": "Timestamp",
      "examples": [
        "2024-10-12T07:20:50.52Z"
      ]
    },
    "notification_id": {
      "type": "string",
      "pattern": "^ntf_[a-z\\d]{26}$",
      "description": "Unique Paddle ID for this notification, prefixed with `ntf_`.",
      "title": "Notification ID",
      "examples": [
        "ntf_01ghbkd0frb9k95cnhwd1bxpvk"
      ]
    },
    "data": {
      "properties": {
        "id": {
          "type": "string",
          "pattern": "^apikey_[a-z\\d]{26}$",
          "description": "Unique Paddle ID for this API key entity, prefixed with `apikey_`.",
          "title": "API Key ID",
          "examples": [
            "apikey_01ghbkd0frb9k95cnhwd1bxpvk"
          ]
        },
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 150,
          "description": "Short name of this API key. Typically unique and human-identifiable.",
          "title": "ApiKeyName"
        },
        "description": {
          "anyOf": [
            {
              "type": "string",
              "minLength": 1,
              "maxLength": 250,
              "description": "Short description of this API key. Typically gives details about what the API key is used for and where it's used.",
              "title": "ApiKeyDescription"
            },
            {
              "type": "null"
            }
          ],
          "description": "Short description of this API key. Typically gives details about what the API key is used for and where it's used."
        },
        "key": {
          "type": "string",
          "pattern": "^[a-z\\d_:]*\\*\\*\\*\\*$",
          "description": "An obfuscated version of this API key, prefixed with `pdl_` and containing `_apikey_ `.",
          "title": "ApiKeySecretRedacted"
        },
        "status": {
          "type": "string",
          "enum": [
            "active",
            "expired",
            "revoked"
          ],
          "description": "Status of this API key.",
          "title": "ApiKeyStatus"
        },
        "permissions": {
          "type": "array",
          "items": {
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "address.read",
                  "address.write",
                  "adjustment.read",
                  "adjustment.write",
                  "business.read",
                  "business.write",
                  "client_token.read",
                  "client_token.write",
                  "customer.read",
                  "customer.write",
                  "customer_auth_token.write",
                  "customer_portal_session.write",
                  "discount.read",
                  "discount.write",
                  "metrics.read",
                  "notification.read",
                  "notification.write",
                  "notification_setting.read",
                  "notification_setting.write",
                  "notification_simulation.read",
                  "notification_simulation.write",
                  "payment_method.read",
                  "payment_method.write",
                  "price.read",
                  "price.write",
                  "product.read",
                  "product.write",
                  "report.read",
                  "report.write",
                  "subscription.read",
                  "subscription.write",
                  "transaction.read",
                  "transaction.write"
                ],
                "x-enum-descriptions": {
                  "address_read": {
                    "description": "View customer addresses and include address data in API responses."
                  },
                  "address_write": {
                    "description": "Create and update customer addresses."
                  },
                  "adjustment_read": {
                    "description": "View adjustments and credit notes for transactions."
                  },
                  "adjustment_write": {
                    "description": "Create new adjustments for transactions."
                  },
                  "business_read": {
                    "description": "View customer businesses and include business data in API responses."
                  },
                  "business_write": {
                    "description": "Create and update customer businesses."
                  },
                  "client_token_read": {
                    "description": "View client-side tokens."
                  },
                  "client_token_write": {
                    "description": "Create and update client-side tokens."
                  },
                  "customer_read": {
                    "description": "View customers, including credit balances, and include customer data in API responses."
                  },
                  "customer_write": {
                    "description": "Create new customers and update existing customer information."
                  },
                  "customer_auth_token_write": {
                    "description": "Generate authentication tokens for customers."
                  },
                  "customer_portal_session_write": {
                    "description": "Create new customer portal sessions for customers to manage their subscriptions, payment methods, and more."
                  },
                  "discount_read": {
                    "description": "View discounts and include discount data in API responses."
                  },
                  "discount_write": {
                    "description": "Create new discounts and modify existing discount information."
                  },
                  "metrics_read": {
                    "description": "View metrics data including revenue, subscribers, and conversion timeseries."
                  },
                  "notification_read": {
                    "description": "View event history, sent notifications, notification delivery logs, and include event data in API responses."
                  },
                  "notification_write": {
                    "description": "Replay notifications."
                  },
                  "notification_setting_read": {
                    "description": "View settings for notifications."
                  },
                  "notification_setting_write": {
                    "description": "Create, update, and delete notification settings."
                  },
                  "notification_simulation_read": {
                    "description": "View notification simulations, simulation runs, and events within a simulation run."
                  },
                  "notification_simulation_write": {
                    "description": "Create and modify notification simulations, create a run for a simulation, and replay events within a run for a simulation."
                  },
                  "payment_method_read": {
                    "description": "View saved payment methods for customers."
                  },
                  "payment_method_write": {
                    "description": "Delete payment methods for customers."
                  },
                  "price_read": {
                    "description": "View prices and include price data in API responses."
                  },
                  "price_write": {
                    "description": "Create new prices and modify existing price information."
                  },
                  "product_read": {
                    "description": "View products and include product data in API responses."
                  },
                  "product_write": {
                    "description": "Create new products and modify existing product information."
                  },
                  "report_read": {
                    "description": "View and download report data."
                  },
                  "report_write": {
                    "description": "Create new reports."
                  },
                  "subscription_read": {
                    "description": "View subscriptions and preview subscription updates and charges."
                  },
                  "subscription_write": {
                    "description": "Create one-time charges, update subscriptions, and manage subscription status."
                  },
                  "transaction_read": {
                    "description": "View transactions, preview transactions and prices, access invoices, and include transaction data in API responses."
                  },
                  "transaction_write": {
                    "description": "Create, update, and revise transactions, and update payment methods."
                  }
                }
              }
            ]
          },
          "description": "Permissions assigned to this API key. Determines what actions the API key can perform."
        },
        "exposed_at": {
          "anyOf": [
            {
              "type": "string",
              "format": "date-time",
              "description": "RFC 3339 datetime string.",
              "title": "Timestamp",
              "examples": [
                "2024-10-12T07:20:50.52Z"
              ]
            },
            {
              "type": "null"
            }
          ],
          "description": "RFC 3339 datetime string of when this API key was first exposed. `null` if never exposed."
        },
        "expires_at": {
          "anyOf": [
            {
              "type": "string",
              "format": "date-time",
              "description": "RFC 3339 datetime string.",
              "title": "Timestamp",
              "examples": [
                "2024-10-12T07:20:50.52Z"
              ]
            },
            {
              "type": "null"
            }
          ],
          "description": "RFC 3339 datetime string of when this API key expires."
        },
        "last_used_at": {
          "anyOf": [
            {
              "type": "string",
              "format": "date-time",
              "description": "RFC 3339 datetime string.",
              "title": "Timestamp",
              "examples": [
                "2024-10-12T07:20:50.52Z"
              ]
            },
            {
              "type": "null"
            }
          ],
          "description": "RFC 3339 datetime string of when this API key was last used (accurate to within 1 hour). `null` if never used."
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "description": "RFC 3339 datetime string of when this entity was created. Set automatically by Paddle.",
          "title": "Created at",
          "examples": [
            "2024-10-12T07:20:50.52Z"
          ]
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "description": "RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle.",
          "title": "Updated at",
          "examples": [
            "2024-10-13T07:20:50.52Z"
          ]
        }
      },
      "required": [
        "id",
        "name",
        "description",
        "key",
        "status",
        "permissions",
        "exposed_at",
        "expires_at",
        "last_used_at",
        "created_at",
        "updated_at"
      ],
      "type": "object",
      "description": "New or changed entity."
    }
  }
}
```

## Example

```json
{
  "event_id": "evt_01jkdr0rc527wcjdg1txsdxhth",
  "event_type": "api_key.expired",
  "occurred_at": "2025-03-26T06:58:38.517522Z",
  "notification_id": "ntf_01jkdr1mgbe62eqkh3p0fq8b0k",
  "data": {
    "id": "apikey_01jkdpbhazdpn3wpcya45as9tg",
    "name": "CRM integration",
    "description": "Used to authenticate with the API for storing Paddle customer data in our CRM.",
    "status": "expired",
    "key": "pdl_live_apikey_01jkdpbhaz****",
    "permissions": [
      "address.read",
      "business.read",
      "customer.read",
      "subscription.read",
      "transaction.read"
    ],
    "expires_at": "2025-06-26T06:58:38.517522Z",
    "last_used_at": "2025-06-26T05:54:22.738201Z",
    "created_at": "2025-03-26T06:58:38.517522Z",
    "updated_at": "2025-03-26T06:58:38.517522Z",
    "exposed_at": null
  }
}
```
