---
title: "Create a Wallet, Identities, Coupon/Scheme Accounts and Consumer Object"
method: POST
path: "/services/wallet/accounts"
tags: ["Services"]
---

# Create a Wallet, Identities, Coupon/Scheme Accounts and Consumer Object

`POST /services/wallet/accounts`

We have the ability in AIR to create a wallet, one or more identities, one or more coupon accounts, one or more scheme accounts and a consumer object in a single API call. If the first identity provided already exists, subsequent actions will be completed against the existing wallet and no further identities or wallets will be created.

## Request body

- ServicesWalletAccountsPayload
  - `type` string, required — Type of the Wallet to be created; e.g. CONSUMER
  - `status` 'ACTIVE' | 'INACTIVE' | 'SUSPENDED' | 'TERMINATED' — Wallet status
  - `state` string — Wallet state
  - `friendlyName` string — The friendly name of the wallet
  - `identities` WalletIdentityCreatePayload[], required
    - `type` string, required — Type of the Identity
    - `friendlyName` string — Identity friendly name
    - `value` string — Identity value
    - `safeValue` string — Identity safe value (e.g. "original value salted and hashed") - safeValue could then be used in external systems like analytics, referencing original identity, provide uniqueness within a retailer, but without exposing sensitive information like card number.
    - `secret` string — Identity secret
    - `dates` DatesEntity
      - `start` string, date-time
      - `end` string, date-time
    - `meta` MetaEntity
      - `key1` string — Meta 1 property, up to 250 characters; up to 750 characters for Key 1 Value
      - `key2` string — Meta 2 property, up to 250 characters; up to 750 characters for Key 2 Value
    - `state` string — Identity state
    - `status` 'ACTIVE' | 'DELETED' | 'INACTIVE' | 'LOST' | 'STOLEN' | 'SUSPENDED' | 'TERMINATED', required — Identity status
  - `accounts` object, required
    - `campaign` WalletCouponAccountCreationPayloadOptionalCampaignTag[]
      - `status` 'ACTIVE' | 'BLOCKED' | 'CANCELLED' | 'DELETED' | 'EXPIRED' | 'INACTIVE' | 'INVALIDATED' | 'LOCKED' | 'STOLEN' | 'USED' | 'SUSPENDED' — Account Status
      - `state` string — Account state
      - `currency` string
      - `dates` DatesEntity
        - `start` string, date-time
        - `end` string, date-time
      - `meta` MetaEntity
        - `key1` string — Meta 1 property, up to 250 characters; up to 750 characters for Key 1 Value
        - `key2` string — Meta 2 property, up to 250 characters; up to 750 characters for Key 2 Value
      - `details` DetailsEntity
        - `details` TransactionDetailsEntity — JSON Object without a fixed structure (EES AIR Meta-Data)
      - `location` LocationEntity
        - `location` string, string — [Optional] Outlet incoming identifier where Transaction has happened
      - `balances` AccountBalancesCreateEntity — The object of balances. Some balances only apply to certain types of accounts. See notes below on balances.
        - `available` integer — The available balance. This is applicable for all account types, except STAMP, POINTS and CONTINUITY, which uses its own balance keys, and ECOUPON, which has no concept of a balance.
        - `totalSpend` integer — The total spend balance. Applicable only to accounts of type Continuity. If totalSpend is not provided on creation, this will be set to 0.
        - `transactionCount` integer — The transaction counter. Applicable only to accounts of type Continuity. If transactionCount is not provided on creation, this will be set to 0.
        - `current` integer — The current balance. Applicable only to accounts of type Points and Stamp. If current is not provided on creation, this will be set to 0.
        - `usable` integer — The usable balance. Applicable only to accounts of type Points. If usable is not provided on creation, this will be set to 0.
        - `locked` integer — The locked balance. Applicable only to accounts of type Points. If locked is not provided on creation, this will be set to 0.
        - `lifetime` integer — The lifetime balance. Applicable only to accounts of type Points and Stamp. If lifetime is not provided on creation, this will be set to 0.
        - `objectivesMet` integer — The number of completed objectives. Applicable to only accounts of type QUEST.
      - `overrides` union
        - CouponAccountOverridesEntity, nullable
          - `offer` object, required — Account's Offer Override (applicable for `COUPON` Account type)
            - `reward` object, nullable, required — Account's Offer Reward Override
              - …
            - `qualification` object, required — Account's Offer Qualification Override (Structure TBC)
          - `campaign` object, nullable, required — Campaign Rules Override (applicable for `COUPON` Account type )
            - `rules` object
              - …
        - ContinuityAccountOverridesEntity, nullable — Account Override for Continuity Type Account.
          - `continuityQualification` object, nullable — Overrides for continuity qualification.
            - `totalTransactionCount` integer, nullable — Account override for totalTransactionCount - Only valid if campaign uses totalTransactionCount.
            - `totalTransactionSpend` integer, nullable — Account override for totalTransactionSpend - Only valid if campaign uses totalTransactionSpend.
            - `totalTransactionUnits` integer, nullable — Account override for totalTransactionUnits - Only valid if campaign uses totalTransactionUnits.
          - `reward` object, nullable — Overrides for continuity rewards
            - `creditAmount` integer — Account override for the amount of points to be awarded.
    - `scheme` ServicesWalletAccountsSchemePayload[]
      - `schemeId` string, required
      - `status` 'ACTIVE' | 'BLOCKED' | 'CANCELLED' | 'DELETED' | 'EXPIRED' | 'INACTIVE' | 'INVALIDATED' | 'LOCKED' | 'STOLEN' | 'USED' | 'SUSPENDED' — Account Status
      - `state` string — Account state
      - `dates` DatesEntity
        - `start` string, date-time
        - `end` string, date-time
      - `meta` MetaEntity
        - `key1` string — Meta 1 property, up to 250 characters; up to 750 characters for Key 1 Value
        - `key2` string — Meta 2 property, up to 250 characters; up to 750 characters for Key 2 Value
      - `details` DetailsEntity
        - `details` TransactionDetailsEntity — JSON Object without a fixed structure (EES AIR Meta-Data)
      - `location` LocationEntity
        - `location` string, string — [Optional] Outlet incoming identifier where Transaction has happened
      - `balances` AccountBalancesCreateEntity — The object of balances. Some balances only apply to certain types of accounts. See notes below on balances.
        - `available` integer — The available balance. This is applicable for all account types, except STAMP, POINTS and CONTINUITY, which uses its own balance keys, and ECOUPON, which has no concept of a balance.
        - `totalSpend` integer — The total spend balance. Applicable only to accounts of type Continuity. If totalSpend is not provided on creation, this will be set to 0.
        - `transactionCount` integer — The transaction counter. Applicable only to accounts of type Continuity. If transactionCount is not provided on creation, this will be set to 0.
        - `current` integer — The current balance. Applicable only to accounts of type Points and Stamp. If current is not provided on creation, this will be set to 0.
        - `usable` integer — The usable balance. Applicable only to accounts of type Points. If usable is not provided on creation, this will be set to 0.
        - `locked` integer — The locked balance. Applicable only to accounts of type Points. If locked is not provided on creation, this will be set to 0.
        - `lifetime` integer — The lifetime balance. Applicable only to accounts of type Points and Stamp. If lifetime is not provided on creation, this will be set to 0.
        - `objectivesMet` integer — The number of completed objectives. Applicable to only accounts of type QUEST.
  - `consumer` WalletConsumerCreatePayload
    - `friendlyName` string, required — The friendly name of the Wallet Consumer to be created
    - `type` string, required — The type of the Wallet Consumer to be created. These types are managed on a per-retailer basis.
    - `status` string, required — The status of the Wallet Consumer to be created. Can be set to ACTIVE or DELETED
    - `state` string — The state of the Wallet Consumer to be created.
    - `data` object
      - `key1` string — Meta 1 property, up to 255 characters; up to 255 characters for Key 1 Value
      - `key2` string — Meta 2 property, up to 255 characters; up to 255 characters for Key 2 Value
    - `meta` MetaEntity
      - `key1` string — Meta 1 property, up to 250 characters; up to 750 characters for Key 1 Value
      - `key2` string — Meta 2 property, up to 250 characters; up to 750 characters for Key 2 Value
    - `personal` object — It contains the data about the person.
      - `title` string, required — The title of the person.
      - `firstName` string, required — First name of the person.
      - `lastName` string, required — Last name of the person.
      - `preferredName` string — If provided, the preferred name of the person.
      - `language` string — If provided, the preferred language of the person.
      - `gender` string — If provided, the given gender of the person.
      - `birthDate` string — If provided, the given date of birth.
    - `address` object[] — Any kind of address.
      - `name` string, required — An identifier for this particular address.
      - `type` 'local' | 'overseas' | 'bfpo' — Type of address, usually not required but may be needed for BFPO.
      - `line1` string, required — First address line.
      - `line2` string — Second address line.
      - `line3` string — Third address line.
      - `city` string, required — City.
      - `state` string — State/Provence, if applicable in the territory.
      - `county` string, required — County.
      - `postcode` string, required — Postcode.
      - `country` string, required — Country.
    - `contact` object[] — Contact details for an entity.
      - `name` string, required — Unique per type of contact, used to differentiate contacts of the same type.
      - `type` 'email' | 'phone' | 'whatsapp', required — The type of contact, used to set the communication medium.
      - `value` string, required — The contact value to be used in communications.
    - `communication` object[] — Information relating to a marketing channel, including optin options.
      - `type` 'default' | 'sms' | 'email' | 'postal' | 'phone', required — The type of channel used for communication.
      - `optin` object — Information about optin options.
        - `admin` boolean, required — Indication of optin to administrative communications.
        - `marketing` boolean — Indication of optin to marketing communications.
    - `consent` object[] — Types of consent that may have been agreed to.
      - `name` string, required — A unique name identifying the name of the consented agreement. Take care for the name to be specific enough to be identified later.
      - `accepted` boolean, required — A simple boolean indicating consent has been agreed.
      - `datetime` string — The date and time that the consent was given.
      - `link` string — A link (if applicable) to the consent agreement.
      - `signature` string — A digital signature link, image link, or some other proof that the consent was agreed.
    - `preference` object — Information about the store preference.
      - `store` object[] — Information about the store.
        - `brand` string — The name of the brand.
        - `outlet` string[] — Information about the outlet.
    - `segment` object[] — It holds information about a marketing segment against an entity.
      - `labels` string[], required — List of segment labels that the entity belongs to for the given segmentation entry. The list can be used to denote hierarchy, lowest indexed items are higher in hierarchy terms. At least one item is required.
      - `data` object — A place to store arbitrary domain-specific data against the segmentation object.
      - `base` 'DEM' — An optional base of segmentation that is being applied.
      - `weight` integer — The relative importance of the segmentation entry, lower numbers are lighter and more important, higher numbers are heavier and sink lower.
      - `confidence` number — The score of how likely the segmentation is to be correct. Valid values are floats less than or equal to 1.
    - `segmentation` object[] — It holds information about the result of Marketing Segmentation against a given entity.
      - `name` string, required — Customer defined name / category for the segment.
      - `segments` object[], required — It contains segment objects in the array.
        - `labels` string[], required — List of segment labels that the entity belongs to for the given segmentation entry. The list can be used to denote hierarchy, lowest indexed items are higher in hierarchy terms. At least one item is required.
        - `data` object — A place to store arbitrary domain-specific data against the segmentation object.
        - `base` 'DEM' — An optional base of segmentation that is being applied.
        - `weight` integer — The relative importance of the segmentation entry, lower numbers are lighter and more important, higher numbers are heavier and sink lower.
        - `confidence` number — The score of how likely the segmentation is to be correct. Valid values are floats less than or equal to 1.
    - `dimension` object[] — Dimensions are a means for defining arbitrary facts against an entity. The Air system may define standard dimension names against entities.
      - `label` string, required — Name of a dimension, standard supported names may exist in the main entity, refer to entity documentation for details.
      - `value` string, required — The value for the dimension, must be a string.

## Response `201`

Created

- WalletAccountServicesEntity
  - `walletId` string, required — Wallet ID
  - `friendlyName` string, required — Friendly Name of the Wallet
  - `status` 'ACTIVE' | 'SUSPENDED' | 'INACTIVE', required — Status of the Wallet.
  - `type` string, required — `TYPE` of that particular wallet. Could be defined per AIR Tenant as part of the Client Onboarding process and then used, if this list is not defined only NULL values are available.
  - `state` string, required — `STATE` of that particular wallet. Could be defined per AIR Tenant as part of the Client Onboarding process and then used, if this list is not defined only NULL values are available.
  - `relationships` WalletRelationshipsEntity, required
    - `parent` string[] — an Array of Wallet IDs that current Wallet should be / is parent
    - `child` string[] — an Array of Wallet IDs that current Wallet should be / is child
    - `associate` string[] — an Array of existing Wallet IDs that current Wallet should be / is associated to
    - `donor` string[] — an Array of existing Wallet IDs that current Wallet is donating into
  - `meta` MetaEntity, required
    - `key1` string — Meta 1 property, up to 250 characters; up to 750 characters for Key 1 Value
    - `key2` string — Meta 2 property, up to 250 characters; up to 750 characters for Key 2 Value
  - `dateCreated` string, date-time, required — Wallet creation date time
  - `lastUpdated` string, date-time, required — Wallet last updated date time
  - `identities` WalletIdentityEntity[]
    - `identityId` string, required — EES AIR Wallet Identity ID
    - `walletId` string, required — EES AIR Wallet ID
    - `type` string, required — Type of the Identity, list of possible enum values could be defined per Client as part of the Onboarding process.
    - `friendlyName` string, required — Wallet Identity friendly name
    - `value` string, required — Wallet Identity value
    - `safeValue` string, required — Identity Safe Value (e.g. "original value salted and hashed") - safeValue could be than used in external systems like analytics, referencing original identity, provide uniqueness within a retailer, but without exposing sensitive information like card number.
    - `secret` string, required — Wallet Identity secret
    - `dates` DatesEntity, required
      - `start` string, date-time
      - `end` string, date-time
    - `meta` MetaEntity, required
      - `key1` string — Meta 1 property, up to 250 characters; up to 750 characters for Key 1 Value
      - `key2` string — Meta 2 property, up to 250 characters; up to 750 characters for Key 2 Value
    - `state` string, required — Wallet Identity state, list of possible values could be defined and set-up per Client during Onboarding process.
    - `status` 'ACTIVE' | 'DELETED' | 'SUSPENDED' | 'LOST' | 'STOLEN' | 'INACTIVE', required — Identity status
    - `dateCreated` string, date-time, required — Date this identity was created
    - `lastUpdated` string, date-time, required — Date this identity was last updated
    - `mobileWallet` string, required — A url that can be used to add this identity to a mobile wallet (like Apple Wallet and Google Pay)
  - `accounts` object
    - `campaign` MultiStatus207AccountEntity — EES AIR was able to process partially this Request, due to some errors.
      - `successful` object — Successfully process accounts
        - `total` integer, required — Successfully processed Entities count
        - `results` WalletAccountEntity[], required
          - `accountId` string, required — EES AIR Wallet Account ID
          - `relationships` object — Wallet Accounts Relations
            - `ENTITLEMENT` object
              - …
            - `ENTITLEMENT_OF` object
              - …
          - `walletId` string, required — EES AIR Wallet ID
          - `campaignId` string, required — The campaignId (Campaign or Programme) this account belongs to.
          - `type` 'ECOUPON' | 'VOUCHER' | 'PAPER' | 'DEBIT' | 'PLASTIC', required — EES AIR Account Type.
          - `clientType` string, required — Account client type.
          - `status` 'ACTIVE' | 'BLOCKED' | 'CANCELLED' | 'DELETED' | 'EXPIRED' | 'INACTIVE' | 'INVALIDATED' | 'LOCKED' | 'STOLEN' | 'USED', required — Account status
          - `state` string, required — Account state, managed per retailer base, list of possible enum values could be set-up as part of the Onboarding process.
          - `dates` DatesEntity, required
            - `start` string, date-time
            - `end` string, date-time
          - `meta` MetaEntity, required
            - `key1` string — Meta 1 property, up to 250 characters; up to 750 characters for Key 1 Value
            - `key2` string — Meta 2 property, up to 250 characters; up to 750 characters for Key 2 Value
          - `balances` AccountBalancesEntity, required — The object of balances. Some balances only apply to certain types of accounts. See notes below on balances.
            - `available` integer — The available balance. This is applicable for all account types, except POINTS and CONTINUITY, which uses its own balance keys. For ECOUPON account type this property will be returned and will be equal to zero.
            - `refundable` integer — The refundable balance. This is applicable for all account types except POINTS and CONTINUITY, but is not used during account creation. For an Account Entity, the amount displayed here is the total refundable balance available. Please note for ECOUPON account type this property will be returned and equal to zero.
            - `totalSpend` integer — The total spend balance. Applicable only to CONTINUITY type Accounts. If totalSpend is not provided on creation, this will be set to 0.
            - `transactionCount` integer — The transaction counter. Applicable only to CONTINUITY type Accounts. If transactionCount is not provided on creation, this will be set to 0.
            - `current` integer — The current balance. Applicable only to accounts of type POINTS and STAMP. If not provided on creation, this will be set to 0.
            - `usable` integer — The usable balance. Applicable only to accounts of type POINTS. If not provided on creation, this will be set to 0.
            - `locked` integer — The locked balance. Applicable only to accounts of type POINTS. If not provided on creation, this will be set to 0.
            - `lifetime` integer — The lifetime balance. Applicable only to accounts of type POINTS and STAMP. If not provided on creation, this will be set to 0.
          - `dateCreated` string, date-time, required — Date this Account was created
          - `lastUpdated` string, date-time, required — Date this Account was last updated
          - `tokens` TokenEntity[] — Array of token entities, present only if include=tokens is passed in the query string.
            - `tokenId` string — The Token ID.
            - `accountId` string — The Account ID.
            - `token` string — The Token.
            - `validFrom` string, date-time — The date this token is valid from.
            - `validTo` string, date-time — The date this token is valid to.
            - `dateCreated` string, date-time — The date this token was created.
            - `lastUpdated` string, date-time — The date this token was last updated.
            - `status` string — The status of the Token.
            - `tokenLock` object — Token lock information. All values can be null if no token lock exists.
              - …
      - `failed` object — List of failures
        - `total` integer — Failures item count
        - `results` DefaultErrorEntity[]
          - `errorCode` 'NF' | 'IR' | 'U' | 'AF' | 'AT' | 'IFU' | 'CE' | 'IPR' | 'MNA' | 'MPA' | 'P' | 'ALR' | 'CX' | 'CI' | 'CP' | 'CR' | 'CU' | 'CORQ' | 'CTNR' | 'DSN' | 'IW' | 'RW' | 'VURC' | 'VURI' | 'FES' | 'IOC' | 'AA' | 'ILA' | 'IP' | 'LIR' | 'LNA' | 'LPR' | 'MAC' | 'MTLE' | 'MLV' | 'MAR' | 'OC' | 'RWI' | 'TEXP' | 'TULR' | 'UAS' | 'UV' | 'VA' | 'VC' | 'VXP' | 'VI' | 'VL' | 'VNL' | 'VPUF' | 'VSM' | 'VUA' | 'ITID' | 'VU' | 'IH' — Internal Error Code
          - `errorMessage` string — Human Friendly Error Message
      - `results` object
        - `total` integer — Combined `successful` and `failed` sections with operation order preserved
        - `results` object[]
    - `scheme` MultiStatus207AccountEntity — EES AIR was able to process partially this Request, due to some errors.
      - `successful` object — Successfully process accounts
        - `total` integer, required — Successfully processed Entities count
        - `results` WalletAccountEntity[], required
          - `accountId` string, required — EES AIR Wallet Account ID
          - `relationships` object — Wallet Accounts Relations
            - `ENTITLEMENT` object
              - …
            - `ENTITLEMENT_OF` object
              - …
          - `walletId` string, required — EES AIR Wallet ID
          - `campaignId` string, required — The campaignId (Campaign or Programme) this account belongs to.
          - `type` 'ECOUPON' | 'VOUCHER' | 'PAPER' | 'DEBIT' | 'PLASTIC', required — EES AIR Account Type.
          - `clientType` string, required — Account client type.
          - `status` 'ACTIVE' | 'BLOCKED' | 'CANCELLED' | 'DELETED' | 'EXPIRED' | 'INACTIVE' | 'INVALIDATED' | 'LOCKED' | 'STOLEN' | 'USED', required — Account status
          - `state` string, required — Account state, managed per retailer base, list of possible enum values could be set-up as part of the Onboarding process.
          - `dates` DatesEntity, required
            - `start` string, date-time
            - `end` string, date-time
          - `meta` MetaEntity, required
            - `key1` string — Meta 1 property, up to 250 characters; up to 750 characters for Key 1 Value
            - `key2` string — Meta 2 property, up to 250 characters; up to 750 characters for Key 2 Value
          - `balances` AccountBalancesEntity, required — The object of balances. Some balances only apply to certain types of accounts. See notes below on balances.
            - `available` integer — The available balance. This is applicable for all account types, except POINTS and CONTINUITY, which uses its own balance keys. For ECOUPON account type this property will be returned and will be equal to zero.
            - `refundable` integer — The refundable balance. This is applicable for all account types except POINTS and CONTINUITY, but is not used during account creation. For an Account Entity, the amount displayed here is the total refundable balance available. Please note for ECOUPON account type this property will be returned and equal to zero.
            - `totalSpend` integer — The total spend balance. Applicable only to CONTINUITY type Accounts. If totalSpend is not provided on creation, this will be set to 0.
            - `transactionCount` integer — The transaction counter. Applicable only to CONTINUITY type Accounts. If transactionCount is not provided on creation, this will be set to 0.
            - `current` integer — The current balance. Applicable only to accounts of type POINTS and STAMP. If not provided on creation, this will be set to 0.
            - `usable` integer — The usable balance. Applicable only to accounts of type POINTS. If not provided on creation, this will be set to 0.
            - `locked` integer — The locked balance. Applicable only to accounts of type POINTS. If not provided on creation, this will be set to 0.
            - `lifetime` integer — The lifetime balance. Applicable only to accounts of type POINTS and STAMP. If not provided on creation, this will be set to 0.
          - `dateCreated` string, date-time, required — Date this Account was created
          - `lastUpdated` string, date-time, required — Date this Account was last updated
          - `tokens` TokenEntity[] — Array of token entities, present only if include=tokens is passed in the query string.
            - `tokenId` string — The Token ID.
            - `accountId` string — The Account ID.
            - `token` string — The Token.
            - `validFrom` string, date-time — The date this token is valid from.
            - `validTo` string, date-time — The date this token is valid to.
            - `dateCreated` string, date-time — The date this token was created.
            - `lastUpdated` string, date-time — The date this token was last updated.
            - `status` string — The status of the Token.
            - `tokenLock` object — Token lock information. All values can be null if no token lock exists.
              - …
      - `failed` object — List of failures
        - `total` integer — Failures item count
        - `results` DefaultErrorEntity[]
          - `errorCode` 'NF' | 'IR' | 'U' | 'AF' | 'AT' | 'IFU' | 'CE' | 'IPR' | 'MNA' | 'MPA' | 'P' | 'ALR' | 'CX' | 'CI' | 'CP' | 'CR' | 'CU' | 'CORQ' | 'CTNR' | 'DSN' | 'IW' | 'RW' | 'VURC' | 'VURI' | 'FES' | 'IOC' | 'AA' | 'ILA' | 'IP' | 'LIR' | 'LNA' | 'LPR' | 'MAC' | 'MTLE' | 'MLV' | 'MAR' | 'OC' | 'RWI' | 'TEXP' | 'TULR' | 'UAS' | 'UV' | 'VA' | 'VC' | 'VXP' | 'VI' | 'VL' | 'VNL' | 'VPUF' | 'VSM' | 'VUA' | 'ITID' | 'VU' | 'IH' — Internal Error Code
          - `errorMessage` string — Human Friendly Error Message
      - `results` object
        - `total` integer — Combined `successful` and `failed` sections with operation order preserved
        - `results` object[]
  - `consumer` WalletConsumerEntity
    - `consumerId` string, required — EES AIR Wallet Consumer ID
    - `walletId` string, required — EES AIR Wallet ID
    - `friendlyName` string, required — Wallet Consumer Friendly Name
    - `type` string, required — Wallet Consumer type. Types are managed per retailer base and could be set-up as part of the Onboarding process.
    - `status` 'ACTIVE' | 'DELETED', required — Wallet Consumer status.
    - `state` string, required — Wallet Consumer State. States are managed per retailer base and could be set-up as part of the Onboarding process.
    - `data` union, required — Additional Wallet Consumer Data. Please note Wallet Consumer Data structure could be defined within AIR per Client. If this structure is defined, AIR can provide validation of content using regular expressions.
      - object — Older key/value pair consumer data.
        - `key` object[]
          - `key1` unknown
          - `key2` unknown
      - object — Structured data for a consumer.
        - `key` object[]
          - `name` string
          - `segments` object[]
            - `key1` unknown
            - `key2` unknown
    - `meta` MetaEntity, required
      - `key1` string — Meta 1 property, up to 250 characters; up to 750 characters for Key 1 Value
      - `key2` string — Meta 2 property, up to 250 characters; up to 750 characters for Key 2 Value
    - `dateCreated` string, date-time, required — Date this Wallet Consumer was created
    - `lastUpdated` string, date-time, required — Date this Wallet Consumer was last updated

## Other responses

- `207` — Multi-Status
- `400` — Bad Request.
- `401` — Unauthorized.
- `403` — Forbidden.
- `404` — Not Found.
- `409` — Conflict
- `415` — Unsupported Media Type
- `423` — Locked
- `429` — Too Many Requests
- `500` — Server Error

---

[API](https://skmtc.net/eagleeye/apis/wallet-api.md) · [All operations](https://skmtc.net/eagleeye/apis/wallet-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/eagleeye/wallet-api/revisions/90a122bb14cc/schema)
