Reveal card details
Changed onWhen the card's cardCapabilities.supportsPanReveal is true, mint a signed, short-lived URL for the card processor's iframe that displays the card's full PAN, CVV, and expiry to the cardholder. The Card resource never carries a reveal URL.
When cardCapabilities.supportsPanReveal is false, this endpoint cannot reveal the card. Use the card issuer's challenge-based hosted reveal flow instead.
Request the reveal right before rendering the iframe and render the returned panEmbedUrl immediately; it expires at expiresAt (within minutes). Never store, cache, or log the URL — it is a bearer secret for the full card details. The card data renders inside the processor's iframe and never crosses Grid's or your servers.
Set cardConfigs.panRevealCssUrl on your platform config to style the iframe with your own stylesheet, or send cssUrl in the body to override it for one reveal.
Every reveal is audit-logged with the requesting actor.
Request
- Base URL: https://api.lightspark.com/grid/2025-10-13
- URL: https://api.lightspark.com/grid/2025-10-13/cards/{id}/reveal
- Auth: HTTP basic
Request body
Example request
{
"cssUrl": "https://acme.com/card-reveal-dark.css"
}Response
Reveal URL minted.
Example response
{
"panEmbedUrl": "https://embed.lithic.com/iframe/...?t=...",
"expiresAt": "2026-05-08T14:16:00Z"
}Changes
- info
added optional request body
- info
- breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - breaking
removed the required property
from the response with the status - warning
added the new
ACCOUNT_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
AUTH_METHOD_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
CUSTOMER_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
CUSTOMER_NOT_VERIFIEDenum value to theresponse property for the response status - warning
added the new
DOCUMENT_ALREADY_EXISTSenum value to theresponse property for the response status - warning
added the new
DOCUMENT_HOLDER_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
DUPLICATE_EXTERNAL_ACCOUNTenum value to theresponse property for the response status - warning
added the new
DUPLICATE_PAY_REQUESTenum value to theresponse property for the response status - warning
added the new
NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
PAYMENT_URL_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
PLATFORM_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
REQUEST_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
SANCTION_BLOCKEDenum value to theresponse property for the response status - warning
added the new
SESSION_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
SMS_OTP_CREDENTIAL_SET_CHANGEDenum value to theresponse property for the response status - warning
added the new
SMS_OTP_PHONE_NUMBER_ALREADY_EXISTSenum value to theresponse property for the response status - warning
added the new
STABLECOIN_EXTERNAL_ACCOUNT_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
STABLECOIN_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
STABLECOIN_OPERATION_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
STABLECOIN_SYMBOL_ALREADY_EXISTSenum value to theresponse property for the response status - warning
added the new
STABLECOIN_TOKEN_IDENTIFIER_ALREADY_EXISTSenum value to theresponse property for the response status - warning
added the new
UNRECOGNIZED_MANDATORY_COUNTERPARTY_DATA_KEYenum value to theresponse property for the response status - warning
added the new
VERIFICATION_NOT_FOUNDenum value to theresponse property for the response status - warning
added the new
WALLET_NOT_PROVISIONEDenum value to theresponse property for the response status - info
added the required property
to the response with the status - info
added the required property
to the response with the status - info
added the required property
to the response with the status - info
added the required property
to the response with the status - info
added the required property
to the response with the status - info
added the required property
to the response with the status
- breaking