---
api: 'Business API'
---

# Retrieve card details

Get the details of a specific card, based on its ID.

:::note
- This feature is not available in Sandbox.
- To increase your account's card limits, please contact [Revolut API Support](mailto:api-requests@revolut.com).
:::

For more information, see the guides: [Manage cards](/docs/guides/manage-accounts/cards/manage-cards).

## Endpoint

GET `/cards/{card_id}`

## Parameters

### path parameters

- `card_id` (string, required)
  The ID of the card.

## Returns

### 200

Information about the card

#### Response attributes

- `id` (string)
    The ID of the card.
- `holder_id` (string, optional)
    The ID of the team member who is the holder of the card.
    If the card belongs to the business, this will be empty.
    
    For more information, see the guides: [Manage Cards - Create a virtual card](/docs/guides/manage-accounts/cards/manage-cards#create-a-virtual-card).
- `contact_ids` (array of string, optional)
    The list of contacts for a [company card](/docs/guides/manage-accounts/cards/manage-cards#different-types-of-cards).
- `created_at` (string)
    The date and time the card was created in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
- `updated_at` (string)
    The date and time the card was last updated in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
- `product` (object, optional)
    The card product offered by the card provider for this card.
    In other words, the program that the card was issued under.
    
    :::note
    This property is only available to travel intermediaries using our travel solution.
    To use it, please contact [Revolut API Support](mailto:api-requests@revolut.com).
    :::
  - `product.code` (string)
      The code of the card product.
- `virtual` (boolean)
    Specifies whether the card is virtual (`true`) or physical (`false`).
- `last_digits` (string)
    The last 4 digits of the card's PAN.
- `expiry` (string)
    The card expiration date.
- `label` (string, optional)
    The label of the card.
- `references` (array of object, optional)
    References for the card.
    Up to 5 name-value pairs assigned to the card for tracking.
    
    :::info
    Each time the card is used, the references are recorded in the [transaction details](/docs/api/business#get-transaction#response) (`card.references`), helping track transactions made with this card.
    :::
    
    The names must be unique.
    The references can be [amended](/docs/api/business#update-card-references) up to 10 times.
    
    References are only supported for cards owned by the business (i.e. [company](/docs/guides/manage-accounts/cards/manage-cards#different-types-of-cards) or [auto-issued cards](/docs/guides/manage-accounts/cards/manage-cards#different-types-of-cards)).
    They are **not** supported for [team member cards](/docs/guides/manage-accounts/cards/manage-cards#different-types-of-cards) (i.e. with `holder_id` present).
    
    :::note
    The references recorded on a transaction are those assigned to the card at the time the transaction took place.
    If the references are amended, they will only be applied to future transactions.
    Existing transaction are not affected.
    :::
  - `references[].name` (string)
      The name of the card reference.
      Must be unique.
  - `references[].value` (string)
      The value for this reference.
- `state` (enum)
    The state that the card is in.
    
    Possible values:
    - `active`: The card is available for spending. 
      Newly created cards typically go into `active` unless subject to certain conditions, for example, spending period starting in the future.
    - `frozen`: The card has been frozen and is temporarily unavailable for spending. 
    - `locked`: The card is locked, typically due to an [admin lock](/docs/api/business#lock-card) or spending period settings, i.e. when its `spending_period.start_date` is in the future or `spending_period.end_date` is in the past.
      A locked card is unavailable for spending until it's [unlocked](/docs/api/business#unlock-card) and active.
      :::tip
      To see if the card can be unlocked, check the `can_be_unlocked` parameter.
      Note that you'll still need the [necessary scope or permission](/docs/guides/manage-accounts/cards/manage-cards#lock-or-unlock-cards) to unlock it.
      :::
    - `created`: The card has been created but is not yet active.
      Used only for a specific type of cards.
    - `pending`: This status is currently not in use.
    Possible enum values:

    - `created`
    - `pending`
    - `active`
    - `frozen`
    - `locked`
- `can_be_unlocked` (boolean, optional)
    Returned for locked cards (`state=locked`).
    Indicates whether the card can be [unlocked](/docs/api/business#unlock-card) manually (via API or in-app).
    If `true`, you'll still need the [necessary scope or permission](/docs/guides/manage-accounts/cards/manage-cards#lock-or-unlock-cards) to unlock the card.
    
    :::info
    Cards can be locked for various reasons.
    For example, a card can be locked by the user, due to spending period settings, or automatically by the system.
    Only certain types of lock can be lifted manually.
    :::
- `spend_program` (object, optional)
    The [spend program](https://help.revolut.com/business/help/making-paymentsbusiness/spend-controls/setting-card-presets-for-my-team-members/) assigned to the card.
    :::note
    To use this property, please contact [Revolut API Support](mailto:api-requests@revolut.com).
    :::
  - `spend_program.label` (string)
      The name of the spend program.
- `spending_limits` (object, optional)
    All spending limits set for the card.
  - `spending_limits.single` (object, optional)
      The limit for a single transaction.
    - `spending_limits.single.amount` (number)
        The value of the spending limit.
    - `spending_limits.single.currency` (string)
        The currency of the spending limit, provided as [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code in upper case.
  - `spending_limits.day` (object, optional)
      The daily limit for transactions.
    - `spending_limits.day.amount` (number)
        The value of the spending limit.
    - `spending_limits.day.currency` (string)
        The currency of the spending limit, provided as [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code in upper case.
  - `spending_limits.week` (object, optional)
      The weekly limit for transactions.
    - `spending_limits.week.amount` (number)
        The value of the spending limit.
    - `spending_limits.week.currency` (string)
        The currency of the spending limit, provided as [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code in upper case.
  - `spending_limits.month` (object, optional)
      The monthly limit for transactions.
    - `spending_limits.month.amount` (number)
        The value of the spending limit.
    - `spending_limits.month.currency` (string)
        The currency of the spending limit, provided as [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code in upper case.
  - `spending_limits.quarter` (object, optional)
      The quarterly limit for transactions.
    - `spending_limits.quarter.amount` (number)
        The value of the spending limit.
    - `spending_limits.quarter.currency` (string)
        The currency of the spending limit, provided as [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code in upper case.
  - `spending_limits.year` (object, optional)
      The yearly limit for transactions.
    - `spending_limits.year.amount` (number)
        The value of the spending limit.
    - `spending_limits.year.currency` (string)
        The currency of the spending limit, provided as [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code in upper case.
  - `spending_limits.all_time` (object, optional)
      The all-time limit for transactions.
    - `spending_limits.all_time.amount` (number)
        The value of the spending limit.
    - `spending_limits.all_time.currency` (string)
        The currency of the spending limit, provided as [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code in upper case.
- `spending_period` (object, optional)
    The controls for the card's spending period.
    
    They specify the dates when the card becomes available or unavailable for spending, and define what happens after the end date.
  - `spending_period.start_date` (string, optional)
      The start date (inclusive) of the spending period, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DD`).
      Uses the [timezone set by the business](https://business.revolut.com/settings/appearance), or defaults to `Europe/London`.
  - `spending_period.end_date` (string, optional)
      The end date (inclusive) of the spending period, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DD`).
      Uses the [timezone set by the business](https://business.revolut.com/settings/appearance), or defaults to `Europe/London`.
  - `spending_period.end_date_action` (enum, optional)
      The action to take after the end date of the spending period.
      Possible enum values:

      - `lock`
      - `terminate`
- `categories` (array of enum, optional)
    The list of merchant categories that are available for card spending. If not specified, categories are not restricted.
- `merchant_controls` (object, optional)
    The merchant-level controls for card spending.
    
    They block or allow the card to only transact with specific merchants: 
    - `allow`: permits only the specified merchants (cannot be used if the `categories` parameter is set)
    - `block`: blocks the specified merchants (can be used with or without `categories`)
  - `merchant_controls.control_type` (enum)
      The type of control to apply.
      Possible enum values:

      - `block`
      - `allow`
  - `merchant_controls.merchant_ids` (array of string)
      The list of IDs of merchants to which the control applies.
      
      :::tip
      To find merchant IDs, check transaction details (→ `merchant.id`).
      You can fetch transaction details for a [specific transaction](/docs/api/business#get-transaction#response) or for [all transactions](/docs/api/business#get-transactions#response).
      :::
- `countries` (array of string, optional)
    The list of countries where the card can be used, specified as 2-letter [ISO 3166](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes) codes.
- `accounts` (array of string)
    The list of linked accounts.

## Error responses

| HTTP status code | Description |
| --- | --- |
| 400 | Bad request  Returned, for example, when you provide an invalid card ID in the path. |
| 404 | Card doesn't exist |
