---
title: "Card Updated"
method: POST
path: "card.updated"
tags: ["Cards"]
---

# Card Updated

`POST card.updated` (webhook)

Sent when a card is updated

Required permissions:
 - `webhook_receive:cards`

## Headers

- `webhook-id` string, required — A unique identifier for this webhook request
- `webhook-signature` string, required — The signature of the webhook request with the webhook version prepended
- `webhook-timestamp` string, required — The timestamp in seconds since the Unix epoch that the webhook was sent at on the server

## Payload

- object
  - `api_version` 'v1', required — The API version for this webhook
  - `api_version_date` string, nullable, required — The dated API version (Api-Version-Date) the payload is serialized to
  - `company_id` string, nullable — The account ID that this webhook event is associated with
  - `data` object, required
    - `billing` object, nullable, required — The billing address.
      - `city` string, nullable, required — Billing city.
      - `country_code` string, nullable, required — Billing country code.
      - `line1` string, nullable, required — Street address line 1.
      - `line2` string, nullable, required — Street address line 2.
      - `postal_code` string, nullable, required — Billing postal code.
      - `region` string, nullable, required — Billing region or state.
    - `canceled_at` string, date-time, nullable, required — When the card was canceled.
    - `created_at` string, date-time, nullable, required — When the card was created.
    - `expiration_month` string, nullable, required — Card expiration month.
    - `expiration_year` string, nullable, required — Card expiration year.
    - `id` string, required — Card ID, prefixed `icrd_`.
    - `last4` string, nullable, required — Last four digits of the card number. `null` for pending invitation cards.
    - `limit` object, nullable, required — The spending limit configuration.
      - `amount` number, required — The limit amount in dollars.
      - `frequency` 'daily' | 'weekly' | 'monthly' | 'one_time' | 'per_transaction', required — The window the limit amount applies to. `per_transaction` caps each individual authorization and is what a limit set with `transaction_limit` reports.
    - `name` string, nullable, required — Card display name.
    - `object` 'card', required
    - `secrets` object, nullable — Sensitive card details. Present only on `GET /cards/:card_id` for active cards; `null` when the card is inactive or details cannot be retrieved.
      - `card_number` string, required — Full card number.
      - `cvc` string, required — Card verification code.
      - `name_on_card` string, nullable, required — Cardholder name printed on the card.
      - `pin` string, nullable, required — The card PIN. Only returned when the request is authenticated as the user the card is assigned to; `null` for all other callers, including account API keys.
    - `spent_last_month` integer, nullable, required — Total spend in the last 30 days, in cents.
    - `status` 'null' | 'active' | 'frozen' | 'canceled' | 'invited' | 'denied', nullable, required — The card status. `denied` means the issuer declined the cardholder, so the card will never be issued.
    - `type` 'null' | 'virtual' | 'physical', nullable, required — The card type.
    - `user_id` string, nullable, required — Cardholder user ID, prefixed `user_`, when assigned.
  - `id` string, required — A unique ID for every single webhook request
  - `timestamp` string, date-time, required — The timestamp in ISO 8601 format that the webhook was sent at on the server
  - `type` 'card.updated', required — The webhook event type

## Acknowledgement `200`

Return a 200 status to indicate that the data was received successfully

---

[API](https://skmtc.net/whop/apis/whop-api.md) · [All operations](https://skmtc.net/whop/apis/whop-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/whop/whop-api/versions/866821546d67/schema)
