cardglee
FeaturesCardsProcessSpendAPIBlogFAQLoginGet card

Developers · REST API v1

Issue cards from your own code

Create, fund, freeze and close virtual Visa and Mastercard cards over HTTPS. Requests are JSON, authenticated with a secret key, and draw on the same USDT balance you top up with crypto.

Base URL: https://cardglee.com/api/v1Authentication: Bearer sk_live_…Format: JSONWebhooks: HMAC-SHA256

Introduction

The API does what the dashboard does, from your server. Every card you issue and every load you make is paid from your account balance, which you fund with crypto deposits and which is always held in USDT.

Amounts are in US dollars with two decimals. Timestamps are ISO 8601 in UTC. List endpoints are paginated with page and per_page.

Card endpoints go live with card issuing in Phase 2. Wallet balance and BIN list endpoints are live now.

Authentication

Send your secret key as a Bearer token in the Authorization header of every request. Keys start with sk_live_ and are generated in your dashboard under API access.

Headers
Authorization: Bearer sk_live_your_api_key
Content-Type: application/json
X-Idempotency-Key: 7c1e2f0a-retry-safe

A new key answers 403 until the account is ready. Confirm your email, make a first deposit, then ask support to enable API access for the account.

Errors

200Request succeeded
201Resource created
400Invalid request parameters
401Missing or invalid API key
403The key is valid, but API access isn't on for this account yet
404Resource not found
429Rate limit exceeded

Rate limits

Requests / Minute1,000
Card Creates / Minute50
Requests / Hour10,000

Limits are counted per API key. Over a limit you get a 429— wait and retry with exponential backoff.

Cards

Each card has its own balance, limits and lifecycle, so one campaign, client or subscription never touches another.

POST/cardsIssue a new virtual cardPhase 2
GET/cardsList cardsPhase 2
GET/cards/{card_id}Retrieve a cardPhase 2
GET/cards/{card_id}/detailsReveal number, expiry and CVVPhase 2
POST/cards/{card_id}/freezeFreeze a cardPhase 2
POST/cards/{card_id}/unfreezeUnfreeze a cardPhase 2
DEL/cards/{card_id}Close a cardPhase 2

Funding

POST/cards/{card_id}/fundLoad a card from your balancePhase 2
POST/cards/{card_id}/withdrawUnload a card back to your balancePhase 2

Transactions

GET/transactionsList card transactionsPhase 2

Wallet

First call

GET /wallet/balancecURL
curl https://cardglee.com/api/v1/wallet/balance \
  -H "Authorization: Bearer sk_live_..."
{
  "balance": 1312.50,
  "currency": "USDT",
  "pending_deposits": 500.00,
  "cards_active": 0,
  "cards_total_balance": 0.00
}
GET/wallet/balanceRead your USDT balance
GET/wallet/deposit-addressGet a deposit address

BINs

GET/binsList available BINs

Webhooks

Webhooks are signed with HMAC-SHA256. Verify the signature header against the raw request body before trusting an event. Card events are part of the Phase 2 release.

POST/webhooksRegister a webhook endpointPhase 2
Issue cards from your own code | CardGlee