---
title: "Get Digital Card Bundle Data"
method: POST
path: "/issuers/{issuerId}/wallets/{walletIndicator}/getDigitalCardBundleData"
---

# Get Digital Card Bundle Data

`POST /issuers/{issuerId}/wallets/{walletIndicator}/getDigitalCardBundleData`

API used for fetching the data required to build the digital card bundle that will be provisioned into a device.

## Path parameters

- `issuerId` string, required
- `walletIndicator` number, required

## Request body

- GetDigitalCardBundleDataReq
  - `requestContext` RequestContext, required
    - `requestId` string, required — Request unique identifier. Should be different for every retry.
    - `correlationId` string, required — Random identifier which can be used to correlate the different API calls done as part of a usecase. There is no strong guarantee of the uniqueness of this identifier, so it should not be used for purposes other than logging and troubleshooting.
  - `digitalCardId` string, required — Unique identifier of the digital card.
  - `cardAccountId` string, required — The Card Account Identifier. Unique for each card account.
  - `userId` string — User unique identifier
  - `walletId` string, required — Wallet unique identifier.<br/>Corresponds to unique device identifier for Apple and Samsung.<br/>Corresponds to unique identifier assigned for a given user and device for Google.
  - `deviceType` number — Device type. |value|description| |-------|-------| |1|Phone| |2|Tablet| |3|Watch| |4-99|RFU|

## Response `200`

- GetDigitalCardBundleDataRes
  - `responseContext` ResponseContext, required — Should be used for most of responses, even if the request processing was not successful. If there was an issue encountered during request processing, the statusCode and statusMessage are used to give more details about what has gone wrong.
    - `requestId` string, required — requestId value from the corresponding request.
    - `statusCode` number, required
    - `statusMessage` string
  - `persoData` object[] — Array of name/value pairs used to personalize the digital card bundle.<br/>Some values may require to be encrypted, please refer to https://docs.payments.thalescloud.io/transit-digitization/integrate-d1-transit-api/prepare-personalization-data
    - `name` string, required — Unique name of the data
    - `value` string, required — Value of the data
  - `metaData` object
    - `displayCardValue` string, required — Value of the card to be displayed to the user.
    - `cardArtsId` string — Identifier referencing card arts configuration used for this card.<br/>Default value configured during onboarding is used if this parameter is not provided.
    - `productsList` object[], required
      - `productId` string, required — The Product Identifier. Unique for each product.</br> It is used by TSH to find the right metadata (e.g. card arts) associated to the product.
      - `productType` 'stored-value' | 'count-based' | 'time-based', required — Product type.<br/>It can be either:<ul><li><b>stored-value</b>, for example: e-purse, balance<li><b>count-based</b>, for example: carnet of tickets<li><b>time-based</b>, for example: weekly pass</ul>
      - `displayName` LocalizedString, required
        - `defaultValue` string, required — Default value to be used if no appropriate translation is available
        - `translatedValues` object[] — Array of localized values
          - `value` string, required — Localized value
          - `language` string, required — Language tag as per <a href="https://datatracker.ietf.org/doc/html/rfc5646">RFC 5646</a>
      - `displayDetails` LocalizedString
        - `defaultValue` string, required — Default value to be used if no appropriate translation is available
        - `translatedValues` object[] — Array of localized values
          - `value` string, required — Localized value
          - `language` string, required — Language tag as per <a href="https://datatracker.ietf.org/doc/html/rfc5646">RFC 5646</a>
      - `fare` Fare
        - `fareId` string — Identifier to match to GTFS feed exposed by transit issuer.
        - `fareClass` string — Fare class.
        - `concession` string — Concession classification.
        - `concessionExpiry` string, date-time — Concession expiry date and time.<br/> Should be provided when it's meaningful (e.g. student, under 25...)
      - `validityParameters` ProductValidityParameters
        - `numberOfTrips` number — Number of trips a product can be used for.
        - `timeLimits` TimeLimits — Specific time window within which the product is valid.
          - `startTime` string, date-time
          - `endTime` string, date-time
        - `validityAfterTapIn` TimePeriod
          - `timeUnit` 'second' | 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year'
          - `value` number — Number of time units this period covers.
        - `validityAfterTapOut` TimePeriod
          - `timeUnit` 'second' | 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year'
          - `value` number — Number of time units this period covers.
        - `zoneLimits` object
          - `fromZone` Zone
            - `id` string — Identifier that can be used to look up zone/region details on a separately shared zone/region list.
            - `displayName` string — Default zone/region name that can be displayed to the user.
          - `toZone` Zone
            - `id` string — Identifier that can be used to look up zone/region details on a separately shared zone/region list.
            - `displayName` string — Default zone/region name that can be displayed to the user.
        - `stationLimits` object
          - `fromStation` Station
            - `id` string — Identifier that can be used to look up station details on a separately shared station list.
            - `displayName` string — Default station name that can be displayed to the user.
          - `toStation` Station
            - `id` string — Identifier that can be used to look up station details on a separately shared station list.
            - `displayName` string — Default station name that can be displayed to the user.
        - `topupLimits` object
          - `minAmount` number, float — The minimum amount a user can topup at a time.
          - `maxAmount` number, float — The maximum amount a user can topup at a time.
      - `eligibleForTopup` boolean — Indicates that a top-up can be done for this product.<br/>Applies to **stored-value** products.
      - `renewalPeriod` RenewalPeriod — Period of time when a product can be renewed.<br/>Applies to **time-based** products.
        - `startTime` string, date-time — Indicates that a product can be renewed after that date.
        - `relativeStartTime` integer — Offset expressed in seconds.<br/>The product can be renewed "relativeStartTime" seconds before its expiration date.<br/>If a value is provided for **startTime**, this parameter will be ignored.
        - `unavailableBeforeReason` string — Indicates why a product cannot be renewed before the renewal starting time.
        - `endTime` string, date-time — Indicates that a product can be renewed before that date.
        - `relativeEndTime` integer — Offset expressed in seconds.<br/>The product can be renewed "relativeEndTime" seconds after its expiration date.<br/>If a value is provided for **endTime**, this parameter will be ignored.
        - `unavailableAfterReason` string — Indicates why a product cannot be renewed after the renewal ending time.

## Other responses

- `500` — An unexpected error occurred while processing the request.<br/> The request cannot be retried.<br/> Only used in cases where it's not be possible to provide more information about what went wrong with the request (i.e. return <b>HTTP 200</b> with '<b>responseContext</b>').
- `503` — Indicates that the system is unavailable.<br/> The request can be retried.

---

[API](https://skmtc.net/thalescloud/apis/d1-oauth-api.md) · [All operations](https://skmtc.net/thalescloud/apis/d1-oauth-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/thalescloud/d1-oauth-api/versions/96089514858c/schema)
