Barclays Card Control API

Read and change the controls a cardholder has on a Barclaycard — freeze and unfreeze the card and manage the transaction-type and channel restrictions applied to it.

Operations 3

POST /cards/accounts/{accountId}/unlock-card Unlock a card for an account #
POST /cards/accounts/{accountId}/lock-card Lock a card for an account #
GET /cards/accounts/{accountId}/card-lock-status Retrieve lock/unlock status for all cards in the account #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/card-control-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

barclays-card-control-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Card Control
  description: Enables customers to securely lock and unlock credit cards
  version: '1.0'
x-method: searched
x-source: https://developer.barclays.com/api/apis/versions/fb39ed1a-d10a-47f7-92bb-7ecbb6bbe39e.bdn/design?specification=oas31
x-harvested: '2026-09-04'
x-harvested-note: Verbatim OpenAPI 3.1 design export from the Barclays API Exchange registry (developer.barclays.com), fetched
  anonymously. The untouched export is in openapi/_original/barclays-card-control-openapi.json. The UK Open Banking documents
  carry OBIE (openbanking.org.uk) in info.contact/termsOfService because they are the OBIE standard contract as Barclays implements
  and publishes it — the API, the registry record and the host are Barclays'.
tags:
- name: Card Controls API
  description: API for locking and unlocking cards and retrieving card lock/unlock status based on account ID with fraud verification.
paths:
  /cards/accounts/{accountId}/unlock-card:
    summary: Unlock a card for an account
    description: Unlocks a card based on external customer ID and card last 4 digits with fraud verification
    post:
      tags:
      - Card Controls API
      summary: Unlock a card for an account
      description: 'Unlocks a card based on the provided account ID, external customer ID, and card last 4 digits.

        Performs fraud assessment before unlocking the card and returns unlock status.


        **Business Flow:**

        1. Validates account and customer details via entitlement service

        2. Performs fraud assessment through decision gateway

        3. Unlocks the card via card control service

        4. Polls for unlock confirmation status

        5. Returns unlock status with card identifier and customer role


        **Error Scenarios:**

        - 400: Invalid request format or account/customer not found

        - 403: Fraud assessment declined the operation

        - 404: Resource not found

        - 428: Additional fraud verification required (challenge)'
      operationId: unlockCard
      parameters:
      - name: Content-Type
        in: header
        description: Content-Type
        required: true
        deprecated: false
        allowEmptyValue: false
        schema:
          type: string
          maxLength: 35
          minLength: 16
          pattern: ^[a-z0-9A-Z\/ ]{16,35}$
        example: application/json
      - name: Correlation-ID
        in: header
        description: "Unique end-to-end trace ID. The initiating system (such as a Channel or \nBatch Job), must generate\
          \ this unique ID, then this must be passed \nthrough the API call stack. This is required to maintain compliance\
          \ with the current Barclays REST Standard."
        required: true
        deprecated: false
        allowEmptyValue: false
        schema:
          type: string
          maxLength: 36
          minLength: 36
          pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
        example: 7d444840-9dc0-11d1-b245-5ffdce74fad2
      - name: accountId
        in: path
        description: A unique identifier (UUID format) for the customer account
        required: true
        deprecated: false
        allowEmptyValue: false
        schema:
          type: string
          maxLength: 36
          minLength: 36
          pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
        example: c8de699e-ff6d-11eb-9a03-0242ac130003
      - name: Authorization
        in: header
        description: TIAA-US External token
        required: true
        deprecated: false
        schema:
          type: string
        example: Bearer <token>
      requestBody:
        description: Card unlock request containing the card identifier for fraud assessment and unlock operation
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UnlockCardRequestData'
            examples:
              single-card:
                summary: Single card unlock
                value:
                  data:
                    cardIdentifier:
                      externalCustomerId: 550e8400-e29b-41d4-a716-446655440000
                      cardLast4: '1234'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/UnlockCardResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '403':
          $ref: '#/components/responses/ForbiddenFraudDeclined'
        '404':
          $ref: '#/components/responses/NotFound'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '428':
          $ref: '#/components/responses/FraudChallenge'
      deprecated: false
  /cards/accounts/{accountId}/lock-card:
    summary: Lock a card for an account
    description: Locks a card based on external customer ID and card last 4 digits with fraud verification
    post:
      tags:
      - Card Controls API
      summary: Lock a card for an account
      description: 'Locks a card based on the provided account ID, external customer ID, and card last 4 digits.

        Performs fraud assessment before locking the card and returns lock status.


        **Business Flow:**

        1. Validates account and customer details via entitlement service

        2. Performs fraud assessment through decision gateway

        3. Locks the card via card control service

        4. Polls for lock confirmation status

        5. Returns lock status with card identifier and customer role


        **Error Scenarios:**

        - 400: Invalid request format or account/customer not found

        - 403: Fraud assessment declined the operation

        - 404: Resource not found

        - 428: Additional fraud verification required (challenge)'
      operationId: lockCard
      parameters:
      - name: Content-Type
        in: header
        description: Content-Type
        required: true
        deprecated: false
        allowEmptyValue: false
        schema:
          type: string
          maxLength: 35
          minLength: 16
          pattern: ^[a-z0-9A-Z\/ ]{16,35}$
        example: application/json
      - name: Correlation-ID
        in: header
        description: "Unique end-to-end trace ID. The initiating system (such as a Channel or \nBatch Job), must generate\
          \ this unique ID, then this must be passed \nthrough the API call stack. This is required to maintain compliance\
          \ with the current Barclays REST Standard."
        required: true
        deprecated: false
        allowEmptyValue: false
        schema:
          type: string
          maxLength: 36
          minLength: 36
          pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
        example: 7d444840-9dc0-11d1-b245-5ffdce74fad2
      - name: accountId
        in: path
        description: A unique identifier (UUID format) for the customer account
        required: true
        deprecated: false
        allowEmptyValue: false
        schema:
          type: string
          maxLength: 36
          minLength: 36
          pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
        example: c8de699e-ff6d-11eb-9a03-0242ac130003
      - name: Authorization
        in: header
        description: TIAA-US External token
        required: true
        deprecated: false
        schema:
          type: string
        example: Bearer <token>
      requestBody:
        description: Card lock request containing the card identifier for fraud assessment and lock operation
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LockCardRequestData'
            examples:
              single-card:
                summary: Single card lock
                value:
                  data:
                    cardIdentifier:
                      externalCustomerId: 550e8400-e29b-41d4-a716-446655440000
                      cardLast4: '1234'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/LockCardResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '403':
          $ref: '#/components/responses/ForbiddenFraudDeclined'
        '404':
          $ref: '#/components/responses/NotFound'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
        '428':
          $ref: '#/components/responses/FraudChallenge'
      deprecated: false
  /cards/accounts/{accountId}/card-lock-status:
    summary: Get card lock/unlock status for all cards in an account
    description: Retrieves the current lock/unlock status for all cards associated with the specified account
    get:
      tags:
      - Card Controls API
      summary: Retrieve lock/unlock status for all cards in the account
      description: 'Returns the lock/unlock status for all cards associated with the specified account,

        including whether each card is currently locked and the customer''s role on the account.


        **Response includes:**

        - Card identifiers (external customer ID and last 4 digits)

        - Customer role on the account (PRIMARY, AUTHORIZED_USER)

        - Lock status for each card (true/false)


        **Use Cases:**

        - Display card lock/unlock status in customer portal

        - Verify card lock state before performing operations

        - Support agent inquiry for card control status'
      operationId: getCardControlStatus
      parameters:
      - name: Correlation-ID
        in: header
        description: "Unique end-to-end trace ID. The initiating system (such as a Channel or \nBatch Job), must generate\
          \ this unique ID, then this must be passed \nthrough the API call stack. This is required to maintain compliance\
          \ with the current Barclays REST Standard."
        required: true
        deprecated: false
        allowEmptyValue: false
        schema:
          type: string
          maxLength: 36
          minLength: 36
          pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
        example: 7d444840-9dc0-11d1-b245-5ffdce74fad2
      - name: accountId
        in: path
        description: A unique identifier (UUID format) for the customer account
        required: true
        deprecated: false
        allowEmptyValue: false
        schema:
          type: string
          maxLength: 36
          minLength: 36
          pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
        example: c8de699e-ff6d-11eb-9a03-0242ac130003
      - name: Authorization
        in: header
        description: TIAA-US External token
        required: true
        deprecated: false
        schema:
          type: string
        example: Bearer <token>
      responses:
        '200':
          $ref: '#/components/responses/CardControlStatusResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
      deprecated: false
components:
  schemas:
    CardControlStatusResponseDataItem:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'Response containing lock/unlock status for all cards in the account.


        **Response Structure:**

        - Returns a list of all cards and their current lock/unlock status

        - Each entry includes card identifier, customer role, and lock state

        '
      properties:
        cardControlStatusList:
          $ref: '#/components/schemas/CardControlStatusDetailList'
      nullable: false
    LockCardResponseData:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'Response data containing the result of a card lock operation.


        **Response Structure:**

        - Returns lock status for the requested card

        - Includes card identifier to match request to response

        - Shows customer role on the account (PRIMARY, AUTHORIZED_USER)

        - Indicates lock result via isLock flag (true when locked)


        **Use Cases:**

        - Confirm card was successfully locked

        - Display lock confirmation to customer

        - Update UI to reflect new card lock state

        '
      properties:
        data:
          $ref: '#/components/schemas/LockCardControlResponseDataItem'
      nullable: false
    UnlockCardRequestData:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'Request data for unlocking a card with fraud assessment.


        **Purpose:**

        - Unlock a card by providing card identifier (external customer ID and card last 4 digits)

        - Fraud verification is performed before the unlock operation


        **Validation:**

        - Card identifier must be valid and associated with the account

        - Account must exist and have active customers

        - Fraud assessment must approve the operation before proceeding

        '
      properties:
        data:
          $ref: '#/components/schemas/UnlockCardRequestDataItem'
      required:
      - data
      nullable: false
    CardIdentifier:
      type: object
      additionalProperties: false
      description: Unique card identifier using external customer ID and last 4 digits
      properties:
        externalCustomerId:
          type: string
          format: uuid
          description: External customer identifier in UUID format
          example: 550e8400-e29b-41d4-a716-446655440000
          maxLength: 36
          minLength: 36
          pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
        cardLast4:
          type: string
          description: Last 4 digits of the card number
          example: '1234'
          maxLength: 4
          minLength: 4
          pattern: ^[0-9]{4}$
      required:
      - cardLast4
      - externalCustomerId
    ErrorResponseType:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'An API error response.

        '
      properties:
        meta:
          type: object
          additionalProperties: true
          description: Contains Non-standard meta information
        errors:
          type: array
          description: 'Contains one or more error messages and is mutually exclusive with the data item.

            This will not be returned in success scenarios.

            '
          items:
            $ref: '#/components/schemas/ErrorType'
          maxItems: 50
          minItems: 0
      nullable: false
    CardControlStatusResponseData:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'Response data containing lock/unlock status for all cards in the account.


        **Response Structure:**

        - Returns status for all cards associated with the account

        - Includes both locked and unlocked cards

        - Shows card identifiers (external customer ID and last 4 digits)

        - Indicates customer role for each card


        **Use Cases:**

        - Display all cards and their lock/unlock status in customer portal

        - Verify card lock state before performing operations

        - Support agent inquiry for account card status

        '
      properties:
        data:
          $ref: '#/components/schemas/CardControlStatusResponseDataItem'
      nullable: false
    UnlockCardRequestDataItem:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'Card unlock request payload containing the card to unlock.


        **Purpose:**

        - Identify the card to unlock using external customer ID and card last 4 digits

        - Used as input for fraud assessment and card unlock operation

        '
      properties:
        cardIdentifier:
          $ref: '#/components/schemas/CardIdentifier'
      required:
      - cardIdentifier
      nullable: false
    LockCardRequestDataItem:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'Card lock request payload containing the card to lock.


        **Purpose:**

        - Identify the card to lock using external customer ID and card last 4 digits

        - Used as input for fraud assessment and card lock operation

        '
      properties:
        cardIdentifier:
          $ref: '#/components/schemas/CardIdentifier'
      required:
      - cardIdentifier
      nullable: false
    ErrorType:
      type: object
      additionalProperties: true
      description: Message details - additional operation execution information.
      properties:
        id:
          type: string
          description: Generated message identifier for particular request, helping to locate server logs.
          example: 9709-4675-2456-7801
          maxLength: 50
          minLength: 1
          pattern: ^[a-zA-Z0-9\-]{1,50}$
        code:
          type: string
          description: Machine readable, unique code of the message related to particular case within operation execution.
          example: ACCOUNT_NUMBER_NOT_FOUND
          maxLength: 100
          minLength: 1
          pattern: ^[a-zA-Z0-9_]{1,100}$
        title:
          type: string
          description: Short description of the error. Not for displaying purposes.
          example: The authorization credentials required for this request are invalid.
          maxLength: 250
          minLength: 1
          pattern: ^[a-zA-Z0-9\s"=,.']{1,250}$
        detail:
          type: string
          description: Provides additional low-level details about the error to assist with troubleshooting. Not for displaying
            purposes.
          maxLength: 250
          minLength: 1
          pattern: ^[a-zA-Z0-9\s"=,.']{1,250}$
        meta:
          type: object
          additionalProperties: true
          description: Object containing non-standard meta-information about the error.
      required:
      - code
      - id
      - title
    UnlockCardControlResponseDataItem:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'Response containing unlock result for a single card.


        **Response Structure:**

        - Contains card identifier, customer role, and lock status

        - isLock will be false after a successful unlock operation

        '
      properties:
        lockUnlockCardDetailType:
          $ref: '#/components/schemas/LockUnlockCardDetailType'
      nullable: false
    LockUnlockCardDetailType:
      type: object
      additionalProperties: false
      description: Card lock/unlock result details for a single card
      properties:
        cardIdentifier:
          $ref: '#/components/schemas/CardIdentifier'
        customerRole:
          type: string
          description: Customer's role on the account (e.g., PRIMARY, AUTHORIZED_USER)
          example: PRIMARY
          maxLength: 50
          minLength: 1
          pattern: ^[a-zA-Z_]{1,50}$
        isLock:
          type: boolean
          description: Indicates if the card is currently locked (true) or unlocked (false)
          example: true
    LockCardControlResponseDataItem:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'Response containing lock result for a single card.


        **Response Structure:**

        - Contains card identifier, customer role, and lock status

        - isLock will be true after a successful lock operation

        '
      properties:
        lockUnlockCardDetailType:
          $ref: '#/components/schemas/LockUnlockCardDetailType'
      nullable: false
    CardControlStatusDetailList:
      type: array
      description: List of lock/unlock status for each card in the account
      items:
        $ref: '#/components/schemas/CardControlStatusDetailType'
      maxItems: 100
      minItems: 0
    CardControlStatusDetailType:
      type: object
      additionalProperties: false
      description: Lock/unlock status details for a single card
      properties:
        cardIdentifier:
          $ref: '#/components/schemas/CardIdentifier'
        customerRole:
          type: string
          description: Customer's role on the account (e.g., PRIMARY, AUTHORIZED_USER)
          example: PRIMARY
          maxLength: 50
          minLength: 1
          pattern: ^[a-zA-Z_]{1,50}$
        isLock:
          type: boolean
          default: false
          description: Indicates if the card is currently locked (true) or unlocked (false)
          example: true
      required:
      - cardIdentifier
      - customerRole
      - isLock
    LockCardRequestData:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'Request data for locking a card with fraud assessment.


        **Purpose:**

        - Lock a card by providing card identifier (external customer ID and card last 4 digits)

        - Fraud verification is performed before the lock operation


        **Validation:**

        - Card identifier must be valid and associated with the account

        - Account must exist and have active customers

        - Fraud assessment must approve the operation before proceeding

        '
      properties:
        data:
          $ref: '#/components/schemas/LockCardRequestDataItem'
      required:
      - data
      nullable: false
    UnlockCardResponseData:
      type: object
      additionalProperties: false
      deprecated: false
      description: 'Response data containing the result of a card unlock operation.


        **Response Structure:**

        - Returns unlock status for the requested card

        - Includes card identifier to match request to response

        - Shows customer role on the account (PRIMARY, AUTHORIZED_USER)

        - Indicates unlock result via isLock flag (false when unlocked)


        **Use Cases:**

        - Confirm card was successfully unlocked

        - Display unlock confirmation to customer

        - Update UI to reflect new card unlock state

        '
      properties:
        data:
          $ref: '#/components/schemas/UnlockCardControlResponseDataItem'
      nullable: false
  responses:
    BadRequest:
      description: "The request could not be understood by the server due to malformed \nsyntax. The client SHOULD NOT repeat\
        \ the request without \nmodifications.\n"
      headers:
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponseType'
          examples:
            example-error-400-bad-request:
              $ref: '#/components/examples/example-error-400-bad-request'
    Unauthorized:
      description: 'The user could not be authenticated for this request.

        '
      headers:
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponseType'
          examples:
            example-error-401:
              $ref: '#/components/examples/example-error-401'
    Forbidden:
      description: 'The user is not permitted to access the requested operation and it cannot be completed.

        '
      headers:
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponseType'
          examples:
            example-error-403:
              $ref: '#/components/examples/example-error-403'
    ServiceUnavailable:
      description: "temporary maintenance of service, try again later. The implication \nis that this is a temporary condition\
        \ which will be alleviated \nafter some delay. If known, the length of the delay will be \nindicated in a Retry-After\
        \ header. If no Retry-After is given, \nthe client SHOULD handle the response as it would for a 500 response. \nNote:\
        \ The existence of the 503 status code does not imply that a \nserver will use it when becoming overloaded. Servers\
        \ may simply \nrefuse the connection.\n"
      headers:
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponseType'
          examples:
            example-error-503:
              $ref: '#/components/examples/example-error-503'
    ForbiddenFraudDeclined:
      description: 'The user is not permitted to access the requested operation and it cannot be completed.

        '
      headers:
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponseType'
          examples:
            Forbidden:
              $ref: '#/components/examples/example-error-403'
            FraudDeclined:
              $ref: '#/components/examples/example-error-403_FRAUD_DECLINED'
    LockCardResponse:
      description: Successful card lock response
      headers:
        Correlation-ID:
          $ref: '#/components/headers/Correlation-ID-ResHeader'
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LockCardResponseData'
          examples:
            successful-lock:
              summary: Successful card lock
              value:
                data:
                  lockUnlockCardDetailType:
                    cardIdentifier:
                      externalCustomerId: 550e8400-e29b-41d4-a716-446655440000
                      cardLast4: '1234'
                    customerRole: PRIMARY
                    isLock: true
    InternalServerError:
      description: "Server encountered an error processing request. This should not \nhappen normally, but it is a generic\
        \ error message, given when \nno more specific message is suitable.\n"
      headers:
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponseType'
          examples:
            example-error-500:
              $ref: '#/components/examples/example-error-500'
    NotFound:
      description: "Server has not found a resource with that URI. This may be \ntemporary and permanent condition. This status\
        \ code is \ncommonly used when the server does not wish to reveal \nexactly why the request has been refused, or when\
        \ no other \nresponse is applicable.\n"
      headers:
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponseType'
          examples:
            example-error-404:
              $ref: '#/components/examples/example-error-404'
    FraudChallenge:
      description: 'Fraud challenge required

        '
      headers:
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponseType'
          examples:
            FraudChallenge:
              $ref: '#/components/examples/example-error-428_FRAUD_CHALLENGE'
    UnlockCardResponse:
      description: Successful card unlock response
      headers:
        Correlation-ID:
          $ref: '#/components/headers/Correlation-ID-ResHeader'
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UnlockCardResponseData'
          examples:
            successful-unlock:
              summary: Successful card unlock
              value:
                data:
                  lockUnlockCardDetailType:
                    cardIdentifier:
                      externalCustomerId: 550e8400-e29b-41d4-a716-446655440000
                      cardLast4: '1234'
                    customerRole: PRIMARY
                    isLock: false
    CardControlStatusResponse:
      description: Successful lock/unlock status response
      headers:
        Correlation-ID:
          $ref: '#/components/headers/Correlation-ID-ResHeader'
        Cache-Control:
          $ref: '#/components/headers/Cache-Control'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CardControlStatusResponseData'
          examples:
            successful-status:
              summary: Successful status retrieval
              value:
                data:
                  cardControlStatusList:
                  - cardIdentifier:
                      externalCustomerId: 550e8400-e29b-41d4-a716-446655440000
                      cardLast4: '1234'
                    customerRole: PRIMARY
                    isLock: true
                  - cardIdentifier:
                      externalCustomerId: 7d444840-9dc0-11d1-b245-5ffdce74fad2
                      cardLast4: '5678'
                    customerRole: AUTHORIZED_USER
                    isLock: false
  parameters:
    Authorization:
      name: Authorization
      in: header
      description: Bearer Token
      required: true
      deprecated: false
      allowEmptyValue: false
      schema:
        type: string
        maxLength: 2048
        minLength: 32
        pattern: ^[A-Za-z0-9\-_\.\ ]{32,2048}$
      example: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IlE4SkRobnd0ODU4eDNlbTRwVVkzd0R2Q3RsRSIsInBpLmF0bSI6IjUybWUifQ.eyJjbGllbnRfaWQiOiJVU0NCSU5UQ0xJRU5UIiwiaXNzIjoiVElBQS1VUyIsImF1ZCI6IlVTQ0IiLCJzdWIiOiJzeXNUSUFBVVNBUFBMWVQiLCJhZGdyb3VwcyI6WyJDTj1mR0xCQ3VzdFByb2R1Y3RITlAsT1U9R3JvdXBzLE9VPUdMQixEQz1JTlRSQU5FVCxEQz1CQVJDQVBJTlQsREM9Y29tIiwiQ049ZkdMQkNycHRQY3NHYXBRQSxPVT1Hcm91cHMsT1U9R0xCLERDPUlOVFJBTkVULERDPUJBUkNBUElOVCxEQz1jb20iLCJDTj1mR0xCQWNjdE1nbXROUCxPVT1Hcm91cHMsT1U9R0xCLERDPUlOVFJBTkVULERDPUJBUkNBUElOVCxEQz1jb20iLCJDTj1mR0xCVElBQVVTQ0JJbnRyUyxPVT1Hcm91cHMsT1U9R0xCLERDPUlOVFJBTkVULERDPUJBUkNBUElOVCxEQz1jb20iXSwiZXhwIjoxNjgzMjYyNzk3fQ.JDw6udt7pegvyz2tD_W0gUR_FXr7XnZIMnb0GeXLGFC7Zcg5yq6vI2bTMaee9pNhtCEJlIbLa5aKvP6xdt1xBfusE74g85Tohb5c-4MF7QNsC3vBCNOlTpnXMPkHR2_aNfXzf_Duvf81ZotsD_KwUF7w8f63BHgpI4itiFSduGEFGzAKlV2OJwcgIIlhDfhstbDtREL931QlFI8v_sj7JjXWOqivrFSOhiuen-rM5SRvFrnm50P9mZvyhs4-228cZ-xv36c5NAsbO9whQCHE5N0rDOhMgCKl65rnCdUr8rktOCe3fMQTWxV-qQqnr4hscgFtcJt9gU07pwP8zvf4xQ
    Correlation-ID:
      name: Correlation-ID
      in: header
      description: "Unique end-to-end trace ID. The initiating system (such as a Channel or \nBatch Job), must generate this\
        \ unique ID, then this must be passed \nthrough the API call stack. This is required to maintain compliance with the\
        \ current Barclays REST Standard.\n"
      required: true
      deprecated: false
      allowEmptyValue: false
      schema:
        type: string
        maxLength: 36
        minLength: 36
        pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
      example: 7d444840-9dc0-11d1-b245-5ffdce74fad2
    X-Party-Id:
      name: X-Party-Id
      in: header
      description: 'Party ID of customer associated to an account Id

        '
      required: true
      deprecated: false
      allowEmptyValue: false
      schema:
        type: string
        maxLength: 17
        minLength: 1
        pattern: ^[0-9]{1,17}$
      example: '100145000'
    ExternalAccountIdPath:
      name: accountId
      in: path
      description: A unique identifier (UUID format) for the customer account
      required: true
      deprecated: false
      allowEmptyValue: false
      schema:
        type: string
        maxLength: 36
        minLength: 36
        pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
      example: c8de699e-ff6d-11eb-9a03-0242ac130003
 

# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/barclays/refs/heads/main/openapi/barclays-card-control-openapi.yml