Skip to main content
POST
Create card

Authorizations

Authorization
string
header
required

API key as Bearer token

Headers

Reap-Version
enum<string>
required

API version (YYYY-MM-DD)

Available options:
2025-02-14
Example:

"2025-02-14"

Idempotency-Key
string
required

Unique key for safely retrying this request. Up to 255 characters; we recommend a UUIDv4. The first request executes and its response is cached; subsequent requests with the same key replay the cached response (24h retention).

Required string length: 1 - 255

Body

Request body for creating a new card

userId
string<uuid>
required

ID of the user to create the card for

accountId
string<uuid>
required

ID of the account to link the card to

type
enum<string>
required

Card type (VIRTUAL or PHYSICAL)

Available options:
VIRTUAL,
PHYSICAL
Example:

"VIRTUAL"

3dsChallengeMethod
enum<string>
default:SMS

3DS challenge verification method. Defaults to SMS if not specified.

Available options:
SMS,
WEBHOOK
Example:

"SMS"

cardDesignId
string

Card design to use. Defaults to the project default design when not specified. Throws error when default is not configured and no value is passed here.

Response

Card resource

id
string<uuid>
required

Unique card identifier

accountId
string<uuid>
required

ID of the account the card belongs to

userId
string<uuid>
required

ID of the user the card belongs to

type
enum<string>
required

Card type (VIRTUAL or PHYSICAL)

Available options:
VIRTUAL,
PHYSICAL
Example:

"VIRTUAL"

status
enum<string>
required

Current card status

Available options:
ACTIVE,
FROZEN,
BLOCKED,
EXPIRED
Example:

"ACTIVE"

blockReason
CardBlockReason · object | null
required

Block reason details (only present when status is BLOCKED)

cardholderName
string
required

Cardholder name displayed on card

last4
string
required

Last 4 digits of the card number. Use reveal endpoint for full details.

3dsChallengeMethod
enum<string>
required

3DS challenge verification method

Available options:
SMS,
WEBHOOK
Example:

"SMS"

physicalCardStatus
enum<string> | null
required

Physical lifecycle of the card (production + shipping + activation rollup). Defaults to NOT_ORDERED for newly created physical cards. null for virtual cards, which have no physical lifecycle.

Available options:
NOT_ORDERED,
REQUESTED,
IN_PRODUCTION,
PRODUCTION_COMPLETED,
IN_TRANSIT,
OUT_FOR_DELIVERY,
DELIVERED,
ACTIVATED,
CANCELED,
DELIVERY_FAILED,
EXCEPTION
Example:

"NOT_ORDERED"

createdAt
string
required

ISO 8601 timestamp of creation

updatedAt
string
required

ISO 8601 timestamp of last update