GB Bank Products API

The Products API from GB Bank — 2 operation(s) for products.

Operations 2

GET /accounts/{AccountId}/product Get Product for an AccountId #
GET /products Get Products #

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/gb-bank-products-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

gb-bank-products-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Account and Transaction API Specification Products API
  description: 'Swagger for Account and Transaction API Specification.


    **Please Note**: There are no optional fields, if a field is not marked as “Required” it is a Conditional field.

    '
  termsOfService: https://www.openbanking.org.uk/terms
  contact:
    name: Service Desk
    email: ServiceDesk@openbanking.org.uk
  license:
    name: open-licence
    url: https://www.openbanking.org.uk/open-licence
  version: 4.0.1
servers:
- url: /open-banking/v4.0/aisp
tags:
- name: Products
paths:
  /accounts/{AccountId}/product:
    get:
      tags:
      - Products
      summary: Get Product for an AccountId
      description: Enables an AISP to retrieve the account product information for a specific PSU account.
      operationId: GetAccountsAccountIdProduct
      parameters:
      - $ref: '#/components/parameters/AccountId'
      - $ref: '#/components/parameters/x-fapi-auth-date'
      - $ref: '#/components/parameters/x-fapi-customer-ip-address'
      - $ref: '#/components/parameters/x-fapi-interaction-id'
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/x-customer-user-agent'
      - $ref: '#/components/parameters/x-client-id'
      responses:
        '200':
          $ref: '#/components/responses/200AccountsAccountIdProductRead'
        '400':
          $ref: '#/components/responses/400Error'
        '401':
          $ref: '#/components/responses/401Error'
        '403':
          $ref: '#/components/responses/403Error'
        '404':
          $ref: '#/components/responses/404Error'
        '405':
          $ref: '#/components/responses/405Error'
        '406':
          $ref: '#/components/responses/406Error'
        '429':
          $ref: '#/components/responses/429Error'
        '500':
          $ref: '#/components/responses/500Error'
      security:
      - PSUOAuth2Security:
        - accounts
  /products:
    get:
      tags:
      - Products
      summary: Get Products
      description: Enables an AISP to retrieve the account product information for account(s) that the PSU has consented to.
      operationId: GetProducts
      parameters:
      - $ref: '#/components/parameters/x-fapi-auth-date'
      - $ref: '#/components/parameters/x-fapi-customer-ip-address'
      - $ref: '#/components/parameters/x-fapi-interaction-id'
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/x-customer-user-agent'
      - $ref: '#/components/parameters/x-client-id'
      responses:
        '200':
          $ref: '#/components/responses/200ProductsRead'
        '400':
          $ref: '#/components/responses/400Error'
        '401':
          $ref: '#/components/responses/401Error'
        '403':
          $ref: '#/components/responses/403Error'
        '404':
          $ref: '#/components/responses/404Error'
        '405':
          $ref: '#/components/responses/405Error'
        '406':
          $ref: '#/components/responses/406Error'
        '429':
          $ref: '#/components/responses/429Error'
        '500':
          $ref: '#/components/responses/500Error'
      security:
      - PSUOAuth2Security:
        - accounts
components:
  schemas:
    OB_InterestRateType1Code_0:
      description: Rate type for overdraft fee/charge (where it is charged in terms of a rate rather than an amount)
      type: string
      enum:
      - INBB
      - INFR
      - INGR
      - INLR
      - INNE
      - INOT
    OB_OtherFeeChargeDetailType:
      type: object
      required:
      - FeeCategory
      - Name
      - Description
      description: Other Fee/charge type which is not available in the standard code set
      properties:
        Code:
          $ref: '#/components/schemas/OB_CodeMnemonic'
        FeeCategory:
          $ref: '#/components/schemas/OB_FeeCategory1Code'
        Name:
          $ref: '#/components/schemas/Name_4'
        Description:
          $ref: '#/components/schemas/Description_3'
      additionalProperties: false
    OB_InterestCalculationMethod1Code:
      description: Methods of calculating interest
      type: string
      enum:
      - ITCO
      - ITOT
      - ITSI
    OB_OtherCodeType1_8:
      type: object
      required:
      - Name
      - Description
      description: Other fee rate type which is not available in the standard code set
      properties:
        Code:
          $ref: '#/components/schemas/OB_CodeMnemonic'
        Name:
          $ref: '#/components/schemas/Name_4'
        Description:
          $ref: '#/components/schemas/Description_3'
      additionalProperties: false
    ISODateTime:
      description: "All dates in the JSON payloads are represented in ISO 8601 date-time format. \nAll date-time fields in responses must include the timezone. An example is below:\n2017-04-05T10:43:07+00:00"
      type: string
      format: date-time
    OBReadProduct2:
      type: object
      required:
      - Data
      description: Product details of Other Product which is not available in the standard list
      properties:
        Data:
          type: object
          description: Aligning with the read write specs structure.
          properties:
            Product:
              type: array
              items:
                type: object
                description: Product details associated with the Account
                required:
                - AccountId
                - ProductType
                properties:
                  ProductName:
                    description: The name of the Product used for marketing purposes from a customer perspective. I.e. what the customer would recognise.
                    type: string
                    example: 321 Product
                    minLength: 1
                    maxLength: 350
                  ProductId:
                    description: Identifier within the parent organisation for the product. Must be unique in the organisation
                    type: string
                    example: 51B
                    minLength: 1
                    maxLength: 40
                  AccountId:
                    $ref: '#/components/schemas/AccountId'
                  SecondaryProductId:
                    description: Any secondary Identification which supports Product Identifier to uniquely identify the current account banking products.
                    type: string
                    example: CA78
                    minLength: 1
                    maxLength: 70
                  ProductType:
                    description: Descriptive code for the product category.  For a full list refer to `OBInternalProductType1Code` in *OB_Internal_CodeSet* [here](https://github.com/OpenBankingUK/External_Internal_CodeSets)<br /><br /> If ProductType - "Other" is chosen, the object OtherProductType must be populated with name, and description.
                    type: string
                    example: PersonalCurrentAccount
                    enum:
                    - BusinessCurrentAccount
                    - CommercialCreditCard
                    - Other
                    - PersonalCurrentAccount
                    - SMELoan
                  MarketingStateId:
                    description: Unique and unambiguous identification of a Product Marketing State.
                    type: string
                    example: '22878123'
                    minLength: 1
                    maxLength: 35
                  OtherProductType:
                    type: object
                    required:
                    - Name
                    - Description
                    description: This field provides extension to the ProductType enumeration. If ProductType - "Other" is chosen, this field must be populated with name, and description for ASPSP specific product type.
                    properties:
                      Name:
                        description: Name of "Other" product type.
                        type: string
                        example: e-Wallet
                        minLength: 1
                        maxLength: 350
                      Description:
                        description: Description of "Other" product type
                        type: string
                        example: Virtual wallet
                        minLength: 1
                        maxLength: 350
                      ProductDetails:
                        type: object
                        properties:
                          Segment:
                            type: array
                            items:
                              description: 'Market segmentation is a marketing term referring to the aggregating of prospective buyers into groups, or segments, that have common needs and respond similarly to a marketing action. Market segmentation enables companies to target different categories of consumers who perceive the full value of certain products and services differently from one another.

                                Read more: Market Segmentation http://www.investopedia.com/terms/m/marketsegmentation.asp#ixzz4gfEEalTd '
                              type: string
                              enum:
                              - GEAS
                              - GEBA
                              - GEBR
                              - GEBU
                              - GECI
                              - GECS
                              - GEFB
                              - GEFG
                              - GEG
                              - GEGR
                              - GEGS
                              - GEOT
                              - GEOV
                              - GEPA
                              - GEPR
                              - GERE
                              - GEST
                              - GEYA
                              - GEYO
                              - PSCA
                              - PSES
                              - PSNC
                              - PSNP
                              - PSRG
                              - PSSS
                              - PSST
                              - PSSW
                          FeeFreeLength:
                            description: The length/duration of the fee free period
                            type: integer
                          FeeFreeLengthPeriod:
                            description: The unit of period (days, weeks, months etc.) of the promotional length
                            type: string
                            enum:
                            - PACT
                            - PDAY
                            - PHYR
                            - PMTH
                            - PQTR
                            - PWEK
                            - PYER
                          MonthlyMaximumCharge:
                            description: The maximum relevant charges that could accrue as defined fully in Part 7 of the CMA order
                            type: string
                            pattern: ^(-?\d{1,14}){1}(\.\d{1,4}){0,1}$
                          Notes:
                            type: array
                            items:
                              description: Optional additional notes to supplement the Core product details
                              type: string
                              minLength: 1
                              maxLength: 2000
                          OtherSegment:
                            $ref: '#/components/schemas/OB_OtherCodeType1_0'
                      CreditInterest:
                        type: object
                        required:
                        - TierBandSet
                        description: Details about the interest that may be payable to the Account holders
                        properties:
                          TierBandSet:
                            type: array
                            items:
                              type: object
                              description: The group of tiers or bands for which credit interest can be applied.
                              required:
                              - TierBandMethod
                              - Destination
                              - TierBand
                              properties:
                                TierBandMethod:
                                  description: 'The methodology of how credit interest is paid/applied. It can be:-

                                    1. Banded

                                    Interest rates are banded. i.e. Increasing rate on whole balance as balance increases.

                                    2. Tiered

                                    Interest rates are tiered. i.e. increasing rate for each tier as balance increases, but interest paid on tier fixed for that tier and not on whole balance.

                                    3. Whole

                                    The same interest rate is applied irrespective of the product holder''s account balance'
                                  type: string
                                  enum:
                                  - INBA
                                  - INTI
                                  - INWH
                                CalculationMethod:
                                  $ref: '#/components/schemas/OB_InterestCalculationMethod1Code'
                                Destination:
                                  description: Describes whether accrued interest is payable only to the BCA or to another bank account
                                  type: string
                                  enum:
                                  - INOT
                                  - INPA
                                  - INSC
                                Notes:
                                  type: array
                                  items:
                                    description: Optional additional notes to supplement the Tier Band Set details
                                    type: string
                                    minLength: 1
                                    maxLength: 2000
                                OtherCalculationMethod:
                                  $ref: '#/components/schemas/OB_OtherCodeType1_0'
                                OtherDestination:
                                  $ref: '#/components/schemas/OB_OtherCodeType1_0'
                                TierBand:
                                  type: array
                                  items:
                                    type: object
                                    description: Tier Band Details
                                    required:
                                    - TierValueMinimum
                                    - ApplicationFrequency
                                    - FixedVariableInterestRateType
                                    - AER
                                    properties:
                                      Identification:
                                        description: Unique and unambiguous identification of a  Tier Band for the Product.
                                        type: string
                                        minLength: 1
                                        maxLength: 35
                                      TierValueMinimum:
                                        description: Minimum deposit value for which the credit interest tier applies.
                                        type: string
                                        pattern: ^(-?\d{1,14}){1}(\.\d{1,4}){0,1}$
                                      TierValueMaximum:
                                        description: Maximum deposit value for which the credit interest tier applies.
                                        type: string
                                        pattern: ^(-?\d{1,14}){1}(\.\d{1,4}){0,1}$
                                      CalculationFrequency:
                                        description: How often is credit interest calculated for the account.
                                        type: string
                                        enum:
                                        - FQAT
                                        - FQDY
                                        - FQHY
                                        - FQMY
                                        - FQOT
                                        - FQQY
                                        - FQSD
                                        - FQWY
                                        - FQYY
                                      ApplicationFrequency:
                                        description: How often is interest applied to the Product for this tier/band i.e. how often the financial institution pays accumulated interest to the customer's account.
                                        type: string
                                        enum:
                                        - FQAT
                                        - FQDY
                                        - FQHY
                                        - FQMY
                                        - FQOT
                                        - FQQY
                                        - FQSD
                                        - FQWY
                                        - FQYY
                                      DepositInterestAppliedCoverage:
                                        description: Amount on which Interest applied.
                                        type: string
                                        enum:
                                        - INBA
                                        - INTI
                                        - INWH
                                      FixedVariableInterestRateType:
                                        $ref: '#/components/schemas/OB_InterestFixedVariableType1Code'
                                      AER:
                                        description: "The annual equivalent rate (AER) is interest that is calculated under the assumption that any interest paid is combined with the original balance and the next interest payment will be based on the slightly higher account balance. Overall, this means that interest can be compounded several times in a year depending on the number of times that interest payments are made. \nRead more: Annual Equivalent Rate (AER) http://www.investopedia.com/terms/a/aer.asp#ixzz4gfR7IO1A"
                                        type: string
                                        pattern: ^(-?\d{1,3}){1}(\.\d{1,4}){0,1}$
                                      BankInterestRateType:
                                        description: Interest rate types, other than AER, which financial institutions may use to describe the annual interest rate payable to the account holder's account.
                                        type: string
                                        enum:
                                        - INBB
                                        - INFR
                                        - INGR
                                        - INLR
                                        - INNE
                                        - INOT
                                      BankInterestRate:
                                        description: Bank Interest for the product
                                        type: string
                                        pattern: ^(-?\d{1,3}){1}(\.\d{1,4}){0,1}$
                                      Notes:
                                        type: array
                                        items:
                                          description: Optional additional notes to supplement the Tier Band details
                                          type: string
                                          minLength: 1
                                          maxLength: 2000
                                      OtherBankInterestType:
                                        type: object
                                        required:
                                        - Name
                                        - Description
                                        description: Other interest rate types which are not available in the standard code list
                                        properties:
                                          Code:
                                            $ref: '#/components/schemas/OB_CodeMnemonic'
                                          Name:
                                            $ref: '#/components/schemas/Name_4'
                                          Description:
                                            $ref: '#/components/schemas/Description_3'
                                      OtherApplicationFrequency:
                                        $ref: '#/components/schemas/OB_OtherCodeType1_1'
                                      OtherCalculationFrequency:
                                        $ref: '#/components/schemas/OB_OtherCodeType1_2'
                                  minItems: 1
                            minItems: 1
                      Overdraft:
                        type: object
                        required:
                        - OverdraftTierBandSet
                        description: Borrowing details
                        properties:
                          Notes:
                            type: array
                            items:
                              description: Associated Notes about the overdraft rates
                              type: string
                              minLength: 1
                              maxLength: 2000
                          OverdraftTierBandSet:
                            type: array
                            items:
                              type: object
                              description: Tier band set details
                              required:
                              - TierBandMethod
                              - OverdraftTierBand
                              properties:
                                TierBandMethod:
                                  description: "The methodology of how overdraft is charged. It can be:\n'Whole'  Where the same charge/rate is applied to the entirety of the overdraft balance (where charges are applicable). \n'Tiered' Where different charges/rates are applied dependent on overdraft maximum and minimum balance amount tiers defined by the lending financial organisation\n'Banded' Where different charges/rates are applied dependent on overdraft maximum and minimum balance amount bands defined by a government organisation."
                                  type: string
                                  enum:
                                  - INBA
                                  - INTI
                                  - INWH
                                OverdraftType:
                                  description: An overdraft can either be 'committed' which means that the facility cannot be withdrawn without reasonable notification before it's agreed end date, or 'on demand' which means that the financial institution can demand repayment at any point in time.
                                  type: string
                                  enum:
                                  - OVCO
                                  - OVOD
                                  - OVOT
                                Identification:
                                  description: Unique and unambiguous identification of a  Tier Band for a overdraft product.
                                  type: string
                                  minLength: 1
                                  maxLength: 35
                                AuthorisedIndicator:
                                  description: Indicates if the Overdraft is authorised (Y) or unauthorised (N)
                                  type: boolean
                                BufferAmount:
                                  description: 'When a customer exceeds their credit limit, a financial institution will not charge the customer unauthorised overdraft charges if they do not exceed by more than the buffer amount. Note: Authorised overdraft charges may still apply.'
                                  type: string
                                  pattern: ^(-?\d{1,14}){1}(\.\d{1,4}){0,1}$
                                Notes:
                                  type: array
                                  items:
                                    description: Optional additional notes to supplement the overdraft Tier Band Set details
                                    type: string
                                    minLength: 1
                                    maxLength: 2000
                                OverdraftTierBand:
                                  type: array
                                  items:
                                    type: object
                                    description: Provides overdraft details for a specific tier or band
                                    required:
                                    - TierValueMin
                                    properties:
                                      Identification:
                                        description: Unique and unambiguous identification of a  Tier Band for a overdraft.
                                        type: string
                                        minLength: 1
                                        maxLength: 35
                                      TierValueMin:
                                        description: Minimum value of Overdraft Tier/Band
                                        type: string
                                        pattern: ^(-?\d{1,14}){1}(\.\d{1,4}){0,1}$
                                      TierValueMax:
                                        description: Maximum value of Overdraft Tier/Band
                                        type: string
                                        pattern: ^(-?\d{1,14}){1}(\.\d{1,4}){0,1}$
                                      EAR:
                                        description: 'EAR means Effective Annual Rate and/or Equivalent Annual Rate (frequently

                                          used interchangeably), being the actual annual interest rate of an Overdraft.'
                                        type: string
                                        pattern: ^(-?\d{1,3}){1}(\.\d{1,4}){0,1}$
                                      AgreementLengthMin:
                                        description: Specifies the minimum length of a band for a fixed overdraft agreement
                                        type: integer
                                      AgreementLengthMax:
                                        description: Specifies the maximum length of a band for a fixed overdraft agreement
                                        type: integer
                                      AgreementPeriod:
                                        description: Specifies the period of a fixed length overdraft agreement
                                        type: string
                                        enum:
                                        - PACT
                                        - PDAY
                                        - PHYR
                                        - PMTH
                                        - PQTR
                                        - PWEK
                                        - PYER
                                      OverdraftInterestChargingCoverage:
                                        description: Refers to which interest rate is applied when interests are tiered. For example, if an overdraft balance is  2k and the interest tiers are:- 0- 500 0.1%, 500-1000 0.2%, 1000-10000 0.5%, then the applicable interest rate could either be 0.5% of the entire balance (since the account balance sits in the top interest tier) or (0.1%*500)+(0.2%*500)+(0.5%*1000). In the 1st situation, we say the interest is applied to the  Whole  of the account balance,  and in the 2nd that it is  Tiered .
                                        type: string
                                        enum:
                                        - INBA
                                        - INTI
                                        - INWH
                                      BankGuaranteedIndicator:
                                        description: Indicates whether the advertised overdraft rate is guaranteed to be offered to a borrower by the bank e.g. if it s part of a government scheme, or whether the rate may vary dependent on the applicant s circumstances.
                                        type: boolean
                                      Notes:
                                        type: array
                                        items:
                                          description: Optional additional notes to supplement the Tier/band details
                                          type: string
                                          minLength: 1
                                          maxLength: 2000
                                      OverdraftFeesCharges:
                                        type: array
                                        items:
                                          type: object
                                          description: Overdraft fees and charges
                                          required:
                                          - OverdraftFeeChargeDetail
                                          properties:
                                            OverdraftFeeChargeCap:
                                              type: array
                                              items:
                                                type: object
                                                description: Details about any caps (maximum charges) that apply to a particular fee/charge. Capping can either be based on an amount (in gbp), an amount (in items) or a rate.
                                                required:
                                                - FeeType
                                                - MinMaxType
                                                properties:
                                                  FeeType:
                                                    type: array
                                                    items:
                                                      description: Fee/charge type which is being capped
                                                      type: string
                                                      enum:
                                                      - FBAO
                                                      - FBAR
                                                      - FBEB
                                                      - FBIT
                                                      - FBOR
                                                      - FBOS
                                                      - FBSC
                                                      - FBTO
                                                      - FBUB
                                                      - FBUT
                                                      - FTOT
                                                      - FTUT
                                                    minItems: 1
                                                  MinMaxType:
                                                    $ref: '#/components/schemas/OB_MinMaxType1Code'
                                                  FeeCapOccurrence:
                                                    $ref: '#/components/schemas/Number_0'
                                                  FeeCapAmount:
                                                    $ref: '#/components/schemas/OB_Amount1_0'
                                                  CappingPeriod:
                                                    $ref: '#/components/schemas/OB_Period1Code'
                                   

# --- truncated at 32 KB (312 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/gb-bank/refs/heads/main/openapi/gb-bank-products-api-openapi.yml