Citi Subscription API

Operations related to event subscriptions

Operations 4

POST /vca/v2/events/subscriptions Create Subscription #
DELETE /vca/v2/events/subscriptions/{subscriptionId} Delete Subscription #
GET /vca/v2/events/subscriptions/{subscriptionId} Get Subscription #
PUT /vca/v2/events/subscriptions/{subscriptionId} Update Subscription #

Documentation

📖
Documentation
https://developer.citi.com/apidocs/authentication/authentication-only-guide
📖
APIReference
https://developer.citi.com/apidocs/authentication/authentication-api-reference
📖
Authentication
https://raw.githubusercontent.com/api-evangelist/citi/refs/heads/main/authentication/citi-authentication.yml
📖
Documentation
https://developer.citi.com/apidocs/account-reporting/balances/balances-overview
📖
APIReference
https://developer.citi.com/apidocs/account-reporting/balances/balances-api-reference
📖
Documentation
https://developer.citi.com/apidocs/outgoing-payments/payments/payments-overview
📖
APIReference
https://developer.citi.com/apidocs/outgoing-payments/payments/payments-api-reference
📖
Documentation
https://developer.citi.com/apidocs/accept-payments/online-payment-acceptance/online-payment-acceptance-overview
📖
APIReference
https://developer.citi.com/apidocs/accept-payments/online-payment-acceptance/online-payment-acceptance-api-reference
📖
Documentation
https://developer.citi.com/apidocs/commercial-cards/virtual-cards/commercial-cards-overview
📖
APIReference
https://developer.citi.com/apidocs/commercial-cards/virtual-cards/virtual-cards-api-reference
📖
Documentation
https://developer.citi.com/apidocs/fx/gateway/citifx-gateway-overview
📖
APIReference
https://developer.citi.com/apidocs/fx/instant-fx/instant-fx-overview
📖
Documentation
https://developer.citi.com/apidocs/custody/accounts/accounts-overview
📖
APIReference
https://developer.citi.com/apidocs/custody/safekeeping-positions/safekeeping-positions-api-reference
📖
Documentation
https://developer.citi.com/apidocs/transfer-agency/accounts/accounts-overview
📖
APIReference
https://developer.citi.com/apidocs/transfer-agency/accounts/accounts-api-reference
📖
Documentation
https://developer.citi.com/apidocs/open-banking/ukraine-open-banking/ukraine-open-banking-overview
📖
APIReference
https://developer.citi.com/apidocs/open-banking/ukraine-open-banking/ukraine-bank-data-sharing-api-reference
📖
Documentation
https://developer.citi.com/apidocs/trade/standby-letters-of-credit/trade-overview
📖
APIReference
https://developer.citi.com/apidocs/trade/standby-letters-of-credit/trade-api-reference
📖
Documentation
https://developer.citi.com/apidocs/gateway-services/gateway-services-user-guide
📖
APIReference
https://developer.citi.com/apidocs/gateway-services/gateway-services-api-reference
📖
Documentation
https://developer.citi.com/apidocs/additional-payment-services/additional-payment-services/additional-payment-services-overview
📖
APIReference
https://developer.citi.com/apidocs/additional-payment-services/additional-payment-services/additional-payment-services-api-reference

Specifications

Other Resources

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/citi-subscription-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

citi-subscription-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Subscription API allows Commercial application events and to receive notifications based on those subscriptions
  version: 2.0.0
  title: vca events subscriptions Subscription API
  x-ibm-name: vca-events-subscriptions
  contact:
    name: GLOBAL Commercial Cards API Production support
    email: dl.icg.global.commercial.cards.digital.production.support@imcap.ap.ssmb.com
servers:
- url: https://tts.apib2b.citi.com/tts/cards
tags:
- name: Subscription
  description: Operations related to event subscriptions
paths:
  /vca/v2/events/subscriptions:
    post:
      summary: Create Subscription
      description: Create a subscription that will cause notifications to be generated for the specified events.
      operationId: createSubscription
      tags:
      - Subscription
      parameters:
      - name: Authorization
        in: header
        description: Bearer token obtained from the OAuth2 Client Credentials flow
        required: true
        schema:
          type: string
      - name: Region
        in: header
        description: region of the client(Apac/EMEA/NAM)
        required: true
        schema:
          type: string
      - name: Country
        in: header
        description: country of the Client
        required: true
        schema:
          type: string
      - name: Req-Sys-Id
        in: header
        description: Client Tracking ID
        required: true
        schema:
          type: string
      requestBody:
        description: SubscriptionRequest
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionRequest'
      responses:
        '201':
          description: <table><tr><td>Code</td><td>Details</td></tr><tr><tr><td>SubscriptionResponse</td><td>Created</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionResponse'
        '400':
          description: <table><tr><td><strong>errorCode</strong><td><strong>errorDescription</strong><tr><td>EVB0700<td>subscriptionName is Mandatory<tr><td>EVB0701<td>subscriptionName length should contain a min of 1 character and a max of 50 characters<tr><td>EVB0702<td>subscriptionName field is invalid and can only have letters, numbers, dashes and underscores<tr><td>EVB0703<td>active is Mandatory<tr><td>EVB0704<td>operator field is Mandatory<tr><td>EVB0705<td>WHERE operator can only be used in the first subscription.operator field, other subscription.operator fields should use only OR operator<tr><td>EVB0706<td>fieldName is Mandatory<tr><td>EVB0707<td>subscription.fieldName must have a value of programId for the first condition in the specifications in conjunction with the WHERE operator and the EQUALS fieldOperator<tr><td>EVB0708<td>subscription.fieldName that is after the first subscription can only have a value of programId in conjunction with an operator value of OR and a fieldOperator value of EQUALS<tr><td>EVB0709<td>fieldName should contain a min of 1 character and a max of 30 characters<tr><td>EVB0710<td>fieldOperator is Mandatory<tr><td>EVB0711<td>subscription.expectedContent.contentType must have a value of INTEGER when subscription.fieldName value equal 'programId'<tr><td>EVB0712<td>expectedContent.contentType is Mandatory<tr><td>EVB0713<td>expectedContent.contentType length should contain a min of 1 character and a max of 7 characters<tr><td>EVB0714<td>subscription.expectedContent.contentType is invalid and can only have a value of INTEGER for the EQUALS operator<tr><td>EVB0715<td>expectedContent.value is Mandatory<tr><td>EVB0716<td>expectedContent.value must only contain letters, digits, spaces, hyphens, slashes, commas, periods and underscores<tr><td>EVB0717<td>children.operator is invalid and can only have a value of AND, OR<tr><td>EVB0718<td>Invalid value for the field children.fieldName<tr><td>EVB0719<td>Invalid value for the field children.fieldName. children.fieldName cannot contain a value of programId<tr><td>EVB0720<td>children.fieldOperator is invalid and can only have a value of EQUALS<tr><td>EVB0721<td>children.expectedContent.contentType can only have a value of TEXT when the children.fieldOperator field is EQUALS<tr><td>EVB0722<td>children.expectedContent.contentType must have a value of TEXT when children.fieldName value is 'fundingSourceName'<tr><td>EVB0723<td>children.expectedContent.contentType must have a value of TEXT when children.fieldName value is 'messageTypeIndicator'<tr><td>EVB0724<td>children.expectedContent.contentType must have a value of TEXT when children.fieldName value is 'authorizationResponseDetail'<tr><td>EVB0725<td>children.expectedContent.contentType must have a value of TEXT when children.fieldName value is 'vcaAuthorizationResponseDetail'<tr><td>EVB0357<td>ProgramId must be numeric<tr><td>EVB0201<td>We were unable to process your request. Please try again, or contact Citi support if you have any further questions or comments.<tr><td>EVB0066<td>ClientId and programId combination is not valid<tr><td>EVB0726<td>subscriptionId length should contain a min of 1 character and a max of 255 characters<tr><td>EVB0727<td>No subscription found for the specified subscription ID<tr><td>EVB0728<td>This subscription name is already registered for this subscriber<tr><td>EVB0729<td>subscriptionEventType field is invalid and can only have one of the following values:'PAYMENT_AUTHORIZATION','CLEARING'<tr><td>GRC0005<td>Client Tracking ID is missing in the request header<tr><td>GRC0010<td>Client Tracking ID length should contain a min of 1 character and a max of 36 characters<tr><td>GRC0003<td>Invalid JSON input<tr><td>GRC0016<td>Country code is not available in the request</table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: <table><tr><td>Error</td><td>Not Found</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '500':
          description: <table><tr><td>Error</td><td>Internal Server Error</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
  /vca/v2/events/subscriptions/{subscriptionId}:
    delete:
      summary: Delete Subscription
      description: Deletes a subscription, with the effect that no further notifications will be generated for that subscription.
      operationId: deleteSubscription
      tags:
      - Subscription
      parameters:
      - name: subscriptionId
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Bearer token obtained from the OAuth2 Client Credentials flow
        required: true
        schema:
          type: string
      - name: Region
        in: header
        description: region of the client(Apac/EMEA/NAM)
        required: true
        schema:
          type: string
      - name: Country
        in: header
        description: country of the Client
        required: true
        schema:
          type: string
      - name: Req-Sys-Id
        in: header
        description: Client Tracking ID
        required: true
        schema:
          type: string
      responses:
        '204':
          description: <table><tr><td>Code</td><td>Details</td></tr><tr><tr><td></td><td>DELETED</td></tr></table>
        '400':
          description: <table><tr><td><strong>errorCode</strong><td><strong>errorDescription</strong><tr><td>EVB0726<td>subscriptionId length should contain a min of 1 character and a max of 255 characters<tr><td>EVB0727<td>No subscription found for the specified subscription ID<tr><td>GRC0005<td>Client Tracking ID is missing in the request header<tr><td>GRC0010<td>Client Tracking ID length should contain a min of 1 character and a max of 36 characters<tr><td>GRC0016<td>Country code is not available in the request</table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: <table><tr><td>Error</td><td>Not Found</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '500':
          description: <table><tr><td>Error</td><td>Internal Server Error</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
    get:
      summary: Get Subscription
      description: Retrieve the details of a subscription.
      operationId: getSubscription
      tags:
      - Subscription
      parameters:
      - name: subscriptionId
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Bearer token obtained from the OAuth2 Client Credentials flow
        required: true
        schema:
          type: string
      - name: Region
        in: header
        description: region of the client(Apac/EMEA/NAM)
        required: true
        schema:
          type: string
      - name: Country
        in: header
        description: country of the Client
        required: true
        schema:
          type: string
      - name: Req-Sys-Id
        in: header
        description: Client Tracking ID
        required: true
        schema:
          type: string
      responses:
        '200':
          description: <table><tr><td>Code</td><td>Details</td></tr><tr><tr><td>SubscriptionResponse</td><td>OK</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionResponse'
        '400':
          description: <table><tr><td><strong>errorCode</strong><td><strong>errorDescription</strong><tr><td>EVB0726<td>subscriptionId length should contain a min of 1 character and a max of 255 characters<tr><td>EVB0727<td>No subscription found for the specified subscription ID<tr><td>GRC0005<td>Client Tracking ID is missing in the request header<tr><td>GRC0010<td>Client Tracking ID length should contain a min of 1 character and a max of 36 characters<tr><td>GRC0016<td>Country code is not available in the request</table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: <table><tr><td>Error</td><td>Not Found</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '500':
          description: <table><tr><td>Error</td><td>Internal Server Error</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
    put:
      summary: Update Subscription
      description: Update an existing subscription.
      operationId: updateSubscription
      tags:
      - Subscription
      parameters:
      - name: subscriptionId
        in: path
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: Bearer token obtained from the OAuth2 Client Credentials flow
        required: true
        schema:
          type: string
      - name: Region
        in: header
        description: region of the client(Apac/EMEA/NAM)
        required: true
        schema:
          type: string
      - name: Country
        in: header
        description: country of the Client
        required: true
        schema:
          type: string
      - name: Req-Sys-Id
        in: header
        description: Client Tracking ID
        required: true
        schema:
          type: string
      requestBody:
        description: SubscriptionRequest
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionRequest'
      responses:
        '200':
          description: <table><tr><td>Code</td><td>Details</td></tr><tr><tr><td>SubscriptionResponse</td><td>OK</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionResponse'
        '400':
          description: <table><tr><td><strong>errorCode</strong><td><strong>errorDescription</strong><tr><td>EVB0700<td>subscriptionName is Mandatory<tr><td>EVB0701<td>subscriptionName length should contain a min of 1 character and a max of 50 characters<tr><td>EVB0702<td>subscriptionName field is invalid and can only have letters, numbers, dashes and underscores<tr><td>EVB0703<td>active is Mandatory<tr><td>EVB0704<td>operator field is Mandatory<tr><td>EVB0705<td>WHERE operator can only be used in the first subscription.operator field, other subscription.operator fields should use only OR operator<tr><td>EVB0706<td>fieldName is Mandatory<tr><td>EVB0707<td>subscription.fieldName must have a value of programId for the first condition in the specifications in conjunction with the WHERE operator and the EQUALS fieldOperator<tr><td>EVB0708<td>subscription.fieldName that is after the first subscription can only have a value of programId in conjunction with an operator value of OR and a fieldOperator value of EQUALS<tr><td>EVB0709<td>fieldName should contain a min of 1 character and a max of 30 characters<tr><td>EVB0710<td>fieldOperator is Mandatory<tr><td>EVB0711<td>subscription.expectedContent.contentType must have a value of INTEGER when subscription.fieldName value equal 'programId'<tr><td>EVB0712<td>expectedContent.contentType is Mandatory<tr><td>EVB0713<td>expectedContent.contentType length should contain a min of 1 character and a max of 7 characters<tr><td>EVB0714<td>subscription.expectedContent.contentType is invalid and can only have a value of INTEGER for the EQUALS operator<tr><td>EVB0715<td>expectedContent.value is Mandatory<tr><td>EVB0716<td>expectedContent.value must only contain letters, digits, spaces, hyphens, slashes, commas, periods and underscores<tr><td>EVB0717<td>children.operator is invalid and can only have a value of AND, OR<tr><td>EVB0718<td>Invalid value for the field children.fieldName<tr><td>EVB0719<td>Invalid value for the field children.fieldName. children.fieldName cannot contain a value of programId<tr><td>EVB0720<td>children.fieldOperator is invalid and can only have a value of EQUALS<tr><td>EVB0721<td>children.expectedContent.contentType can only have a value of TEXT when the children.fieldOperator field is EQUALS<tr><td>EVB0722<td>children.expectedContent.contentType must have a value of TEXT when children.fieldName value is 'fundingSourceName'<tr><td>EVB0723<td>children.expectedContent.contentType must have a value of TEXT when children.fieldName value is 'messageTypeIndicator'<tr><td>EVB0724<td>children.expectedContent.contentType must have a value of TEXT when children.fieldName value is 'authorizationResponseDetail'<tr><td>EVB0725<td>children.expectedContent.contentType must have a value of TEXT when children.fieldName value is 'vcaAuthorizationResponseDetail'<tr><td>GRC0005<td>Client Tracking ID is missing in the request header<tr><td>GRC0010<td>Client Tracking ID length should contain a min of 1 character and a max of 36 characters<tr><td>GRC0003<td>Invalid JSON input<tr><td>GRC0016<td>Country code is not available in the request<tr><td>EVB0357<td>ProgramId must be numeric<tr><td>EVB0201<td>We were unable to process your request. Please try again, or contact Citi support if you have any further questions or comments.<tr><td>EVB0066<td>ClientId and programId combination is not valid<tr><td>EVB0726<td>subscriptionId length should contain a min of 1 character and a max of 255 characters<tr><td>EVB0727<td>No subscription found for the specified subscription ID<tr><td>EVB0729<td>eventType field is invalid and can only have one of the following values:'PAYMENT_AUTHORIZATION','CLEARING'</table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: <table><tr><td>Error</td><td>Not Found</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '500':
          description: <table><tr><td>Error</td><td>Internal Server Error</td></tr></table>
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
components:
  schemas:
    FieldContent:
      type: object
      required:
      - contentType
      - value
      properties:
        contentType:
          description: Specify the type of the fields value - TEXT or INTEGER for the EQUALS operator and INTEGER for the rest.
          type: string
        value:
          description: Specify a value for a fieldName
          type: string
          example: Travel Expense RCN
    SubscriptionResponse:
      type: object
      properties:
        subscriptionId:
          description: System generated unique identifier for a subscription, which is returned in the create subscription call. Access the individual subscription using its id to update, get details or delete a subscription permanently.
          type: string
          example: CNSa91bf379b48a593fd17f07f431bad8fb296796498f4e9982ea134394c1fa4f071556724070
          maxLength: 255
          minLength: 1
        eventType:
          description: Client Allowed values are either 1 of the below:<ul><li>PAYMENT_AUTHORIZATION</li><li>CLEARING</li></ul>If not provided default to 'PAYMENT_AUTHORIZATION'
          type: string
          enum:
          - PAYMENT_AUTHORIZATION
          - CLEARING
          maxLength: 30
        subscriptionName:
          description: Unique name for the subscription. It can include upper and lowercase alphabets, numbers, dashes and underscores.
          type: string
          example: Enter_unique_subscription_name_here
          maxLength: 50
          minLength: 1
        active:
          description: Specify whether the subscription should be active (true ) or inactive (false) for the API to create notifications only if the subscription is active.
          type: boolean
          example: true
        subscription:
          description: Alert subscription conditions to filter the payment authorization messages.
          type: array
          items:
            $ref: '#/components/schemas/Subscription'
    Subscription:
      type: object
      required:
      - operator
      - fieldName
      - fieldOperator
      - expectedContent
      properties:
        operator:
          description: 'Specify an operator to combine multiple conditions in the specifications.<br>* WHERE: By default, the first condition in the specifications should always have this value to represent the WHERE clause.<br>* AND: Use this in the second condition onwards to create notifications only if all specifications conditions are true.<br>* OR: Use this in the second condition onwards to create notifications if one of the specifications conditions is true.'
          type: string
          example: WHERE
          maxLength: 5
        fieldName:
          description: Specifies the field name for the condition to check. This is used in conjunction with the fieldOperator.programId is a required field in order to create a subscription<br><br> Possible values:<br>"programId" - VCA program ID. By default, the first condition in the specifications should always have this value in conjunction with the WHERE operator.
          type: string
          example: purchaseRequest.rcnAlias
          maxLength: 30
        fieldOperator:
          description: 'Specify the relational operator to use in the condition for the fieldName. This is used in conjunction with the expectedContent.<br> <br> Possible values:<br>"EQUALS": This applies to contentType "TEXT" and "INTEGER". Create notifications for the exact fieldName value specified in the condition.'
          type: string
          example: EQUALS
          maxLength: 12
        expectedContent:
          $ref: '#/components/schemas/FieldContent'
        children:
          description: Used to define specifications with nested conditions for a subscription.
          type: array
          items:
            $ref: '#/components/schemas/Children'
    ErrorMessage:
      type: object
      required:
      - errorCode
      - errorDescription
      properties:
        errorCode:
          type: string
          enum:
          - EVB0700
          - EVB0701
          - EVB0702
          - EVB0703
          - EVB0704
          - EVB0705
          - EVB0706
          - EVB0707
          - EVB0708
          - EVB0709
          - EVB0710
          - EVB0711
          - EVB0712
          - EVB0713
          - EVB0714
          - EVB0715
          - EVB0716
          - EVB0717
          - EVB0718
          - EVB0719
          - EVB0720
          - EVB0721
          - EVB0722
          - EVB0723
          - EVB0724
          - EVB0725
          - GRC0005
          - GRC0010
          - GRC0003
          - GRC0016
          - EVB0357
          - EVB0201
          - EVB0066
          - EVB0726
          - EVB0727
          - EVB0728
          - EVB0729
        errorDescription:
          description: 'The error description that corresponds to error code when there is any<br>               error occurred while retrieving the transaction.            <br>            <br>              * `EVB0700` - subscriptionName is Mandatory<br>              * `EVB0701` - subscriptionName length should contain a min of 1 character and a max of 50 characters<br>              * `EVB0702` - subscriptionName field is invalid and can only have letters, numbers, dashes and underscores<br>              * `EVB0703` - active is Mandatory<br>              * `EVB0704` - operator field is Mandatory<br>              * `EVB0705` - WHERE operator can only be used in the first subscription.operator field, other subscription.operator fields should use only OR operator<br>              * `EVB0706` - fieldName is Mandatory<br>              * `EVB0707` - subscription.fieldName must have a value of programId for the first condition in the specifications in conjunction with the WHERE operator and the EQUALS fieldOperator<br>              * `EVB0708` - subscription.fieldName that is after the first subscription can only have a value of programId in conjunction with an operator value of OR and a fieldOperator value of EQUALS<br>              * `EVB0709` - fieldName should contain a min of 1 character and a max of 30 characters<br>              * `EVB0710` - fieldOperator is Mandatory<br>              * `EVB0711` - subscription.expectedContent.contentType must have a value of INTEGER when subscription.fieldName value equal "programId"<br>              * `EVB0712` - expectedContent.contentType is Mandatory<br>              * `EVB0713` - expectedContent.contentType length should contain a min of 1 character and a max of 7 characters<br>              * `EVB0714` - subscription.expectedContent.contentType is invalid and can only have a value of INTEGER for the EQUALS operator<br>              * `EVB0715` - expectedContent.value is Mandatory<br>              * `EVB0716` - expectedContent.value must only contain letters, digits, spaces, hyphens, slashes, commas, periods and underscores<br>              * `EVB0717` - children.operator is invalid and can only have a value of AND, OR<br>              * `EVB0718` - Invalid value for the field children.fieldName<br>              * `EVB0719` - Invalid value for the field children.fieldName. children.fieldName cannot contain a value of programId<br>              * `EVB0720` - children.fieldOperator is invalid and can only have a value of EQUALS<br>              * `EVB0721` - children.expectedContent.contentType can only have a value of TEXT when the children.fieldOperator field is EQUALS<br>              * `EVB0722` - children.expectedContent.contentType must have a value of TEXT when children.fieldName value is "fundingSourceName"<br>              * `EVB0723` - children.expectedContent.contentType must have a value of TEXT when children.fieldName value is "messageTypeIndicator"<br>              * `EVB0724` - children.expectedContent.contentType must have a value of TEXT  when children.fieldName value is "authorizationResponseDetail"<br>              * `EVB0725` - children.expectedContent.contentType must have a value of TEXT when children.fieldName value is "vcaAuthorizationResponseDetail"<br>              * `GRC0005` - Client Tracking ID is missing in the request header<br>              * `GRC0010` - Client Tracking ID length should contain a min of 1 character and a max of 36 characters<br>              * `GRC0003` - Invalid JSON input<br>              * `GRC0016` - Country code is not available in the request<br>              * `EVB0357` - ProgramId must be numeric<br>              * `EVB0201` - We were unable to process your request. Please try again, or contact Citi support if you have any further questions or comments.<br>              * `EVB0066` - ClientId and programId combination is not valid<br>              * `EVB0726` - subscriptionId length should contain a min of 1 character and a max of 255 characters<br>              * `EVB0727` - No subscription found for the specified subscription ID<br>              * `EVB0728` - This subscription name is already registered for this subscriber<br>              * `EVB0729` - eventType field is invalid and can only have one of the following values: ''PAYMENT_AUTHORIZATION'', ''CLEARING'''
          type: string
    SubscriptionRequest:
      type: object
      required:
      - subscriptionName
      - active
      - subscription
      properties:
        subscriptionName:
          description: Unique name for the subscription. It can include upper and lowercase alphabets, numbers, dashes and underscores.
          type: string
          example: Enter_unique_subscription_name_here
          maxLength: 50
        eventType:
          description: Client Allowed values are either 1 of the below:<ul><li>PAYMENT_AUTHORIZATION</li><li>CLEARING</li></ul>If not provided default to 'PAYMENT_AUTHORIZATION'
          type: string
          enum:
          - PAYMENT_AUTHORIZATION
          - CLEARING
          maxLength: 30
        active:
          description: Specify whether the subscription should be active (true ) or inactive (false) for the API to create notifications only if the subscription is active.
          type: boolean
          example: true
        subscription:
          description: Alert subscription conditions to filter the payment authorization messages
          type: array
          items:
            $ref: '#/components/schemas/Subscription'
    ErrorResponse:
      type: object
      properties:
        errorMessage:
          type: array
          items:
            $ref: '#/components/schemas/ErrorMessage'
    Children:
      type: object
      required:
      - operator
      - fieldName
      - fieldOperator
      - expectedContent
      properties:
        operator:
          description: 'Specify an operator to combine multiple conditions in the specifications.<br>* WHERE: By default, the first condition in the specifications should always have this value to represent the WHERE clause.<br>* AND: Use this in the second condition onwards to create notifications only if all specifications conditions are true.<br>* OR: Use this in the second condition onwards to create notifications if one of the specifications conditions is true.'
          type: string
          example: WHERE
          maxLength: 5
        fieldName:
          description: Specifies the field name for the condition to check. This is used in conjunction with the fieldOperator.programId is a required field in order to create a subscription<br><br> Possible values:<br>"fundingSourceName" - Funding source name<br>"messageTypeIndicator" - Message type indicator<br>"authorizationResponseDetail" - Response code<br>"vcaAuthorizationResponseDetail" - In Control VCN service result code
          type: string
          example: purchaseRequest.rcnAlias
          maxLength: 30
        fieldOperator:
          description: 'Specify the relational operator to use in the condition for the fieldName. This is used in conjunction with the expectedContent.<br> <br> Possible values:<br>"EQUALS": This applies to contentType "TEXT" and "INTEGER". Create notifications for the exact fieldName value specified in the condition.'
          type: string
          example: EQUALS
          maxLength: 12
        expectedContent:
          $ref: '#/components/schemas/FieldContent'
        children:
          description: Used to define specifications with nested conditions for a subscription.
          type: array
          items:
            $ref: '#/components/schemas/Children'
  securitySchemes:
    ClientCredentials:
      type: oauth2
      description: OAuth2 Client Credentials flow
      flows:
        clientCredentials:
          tokenUrl: https://tts.sandbox.apib2b.citi.com/tts/cards/api/oauth2/token
          scopes:
            /api: ' '