UK Open Banking Branch API

Endpoint for getting Branch data

OpenAPI Specification

open-banking-uk-branch-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Account and Transaction API Specification Account Access Consents Branch 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: Branch
  description: Endpoint for getting Branch data
paths:
  /branches:
    get:
      tags:
      - Branch
      description: Gets a list of all `Branch` objects.
      parameters:
      - name: If-Modified-Since
        type: string
        description: Used for conditional request, to retrieve data only if modified since a given date
        in: header
        required: false
      - name: If-None-Match
        type: string
        description: Used for conditional request, to retrieve data only if the given Etag value does not match
        in: header
        required: false
      responses:
        '200':
          description: Successful response with a list of `Branch` data
          headers:
            Strict-Transport-Security:
              type: string
              description: HTTPS strict transport security header
              default: max-age=31536000
            Etag:
              type: string
              description: A unique ID identifying whether this resource has changed
            Cache-Control:
              type: string
              description: Describes how long this response can be cached
              default: max-age=28800
            X-Frame-Options:
              type: string
              description: Prevent this request from being loaded in any iframes
              default: DENY
            X-Content-Type-Options:
              type: string
              description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing
              default: nosniff
          schema:
            type: object
            properties:
              meta:
                title: Meta data
                type: object
                properties:
                  LastUpdated:
                    type: string
                    format: date-time
                  TotalResults:
                    type: integer
                  Agreement:
                    type: string
                    enum:
                    - Use of the APIs and any related data will be subject to the terms of the Open Licence and subject to terms and conditions
                  License:
                    description: Open Banking License
                    type: string
                    format: uri
                    enum:
                    - https://www.openbanking.org.uk/open-licence
                  TermsOfUse:
                    description: Open Banking Terms of Use
                    type: string
                    format: uri
                    enum:
                    - https://www.openbanking.org.uk/terms
                required:
                - LastUpdated
                - TotalResults
                - Agreement
                - License
                - TermsOfUse
                additionalProperties: false
              data:
                type: array
                items:
                  title: Branch
                  type: object
                  properties:
                    Organisation:
                      description: Organisation
                      type: object
                      properties:
                        ParentOrganisation:
                          description: Parent organisation
                          type: object
                          properties:
                            LEI:
                              description: The LEI ID of the organisation
                              type: string
                              pattern: ^[A-Z0-9]{18,18}[0-9]{2,2}$
                            BIC:
                              description: The BIC from the organisation
                              type: string
                              pattern: '[A-Z]{6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3})?'
                            OrganisationName:
                              description: Organisation Name
                              type: object
                              properties:
                                LegalName:
                                  description: Legal Name of the organisation
                                  type: string
                                  minLength: 1
                                  maxLength: 35
                              required:
                              - LegalName
                              additionalProperties: false
                          required:
                          - OrganisationName
                          additionalProperties: false
                        Brand:
                          description: Brand
                          type: object
                          properties:
                            TrademarkIPOCode:
                              description: 'The Intellectual Property Office (IPO) is the official body responsible for intellectual property (IP) rights including patents, designs, trademarks and copyright. (Code: UK or EU only)'
                              type: string
                              enum:
                              - UK
                              - EU
                            TrademarkID:
                              description: 'The trademark number that has been registered with the Intellectual Property Office. Note: The 2 letter IPO prefix should be omitted'
                              type: string
                              minLength: 1
                              maxLength: 35
                          required:
                          - TrademarkIPOCode
                          - TrademarkID
                          additionalProperties: false
                      required:
                      - ParentOrganisation
                      - Brand
                      additionalProperties: false
                    BranchName:
                      description: Name by which a party is known and which is usually used to identify that party
                      type: string
                      minLength: 1
                      maxLength: 35
                    BranchIdentification:
                      description: Unique and unambiguous identification of a retail branch of a financial institution
                      type: string
                      minLength: 1
                      maxLength: 35
                    BranchType:
                      description: Information on the type of branch
                      type: string
                      enum:
                      - Physical
                      - Mobile
                    Address:
                      description: Postal Address
                      type: object
                      properties:
                        StreetName:
                          description: Name of a street or thoroughfare
                          type: string
                          minLength: 1
                          maxLength: 70
                        BuildingNumberOrName:
                          description: Number or Name that identifies the position of a building on a street
                          type: string
                          minLength: 1
                          maxLength: 350
                        PostCode:
                          description: Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail
                          type: string
                          minLength: 1
                          maxLength: 16
                        OptionalAddressField:
                          description: Directions for customers
                          type: string
                          minLength: 1
                          maxLength: 350
                        TownName:
                          description: Name of a built-up area, with defined boundaries, and a local government
                          type: string
                          minLength: 1
                          maxLength: 35
                        CountrySubDivision:
                          description: Identifies a subdivision of a country such as state, region, county
                          type: string
                          minLength: 1
                          maxLength: 35
                        Country:
                          description: Nation with its own government
                          type: string
                          pattern: '[A-Z]{2}'
                      required:
                      - Country
                      additionalProperties: false
                    BranchDescription:
                      description: Description of the branch
                      type: string
                      minLength: 1
                      maxLength: 140
                    BranchPhoto:
                      description: Image related to the branch
                      type: string
                      format: uri
                    TelephoneNumber:
                      description: Collection of information that identifies a phone number, as defined by telecom services.
                      type: string
                      pattern: ^[+][0-9]{1,3}-[0-9()+-]{1,30}$
                    AlternatePhone:
                      type: array
                      items:
                        description: Alternative Phone Number
                        type: object
                        properties:
                          AlternateTelephoneNumber:
                            description: Collection of information that identifies a phone number, as defined by telecom services.
                            type: string
                            pattern: ^[+][0-9]{1,3}-[0-9()+-]{1,30}$
                          AlternateTelephoneNumberDescription:
                            description: Description of the telephone number
                            type: string
                            minLength: 1
                            maxLength: 35
                        additionalProperties: false
                    FaxNumber:
                      description: Collection of information that identifies a FAX number, as defined by telecom services.
                      type: array
                      items:
                        description: Collection of information that identifies a phone number, as defined by telecom services.
                        type: string
                        pattern: ^[+][0-9]{1,3}-[0-9()+-]{1,30}$
                    GeographicLocation:
                      description: Geographic Coordinates
                      type: object
                      properties:
                        Latitude:
                          description: The Latitude measured in decimal format according to ISO 213
                          type: string
                          pattern: ^-?\d{1,3}\.\d{1,8}$
                        Longitude:
                          description: The longitude measured in decimal format according to ISO 213
                          type: string
                          pattern: ^-?\d{1,3}\.\d{1,8}$
                      required:
                      - Latitude
                      - Longitude
                      additionalProperties: false
                    DaysOfTheWeek:
                      description: Description on when the mobile branch is available. e.g. The weekend of Glastonbury festival; or Mondays and during the shrimp season also Wednesdays
                      type: string
                      minLength: 1
                      maxLength: 35
                    StopName:
                      description: Name of the stop of the mobile branch
                      type: string
                      minLength: 1
                      maxLength: 15
                    ArrivalTime:
                      description: Time that the mobile branch is scheduled to arrive
                      type: string
                      pattern: ^(([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9].\d{3})|(^24:00:00\.000)(?:Z|[+-](?:2[0-3]|[01][0-9]):[0-5][0-9])?$
                    DepartureTime:
                      description: Time that the mobile branch is scheduled to depart
                      type: string
                      pattern: ^(([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9].\d{3})|(^24:00:00\.000)(?:Z|[+-](?:2[0-3]|[01][0-9]):[0-5][0-9])?$
                    ParkingLocation:
                      description: Place where the mobile branch is located, such as between the news agent and the church.
                      type: string
                      minLength: 1
                      maxLength: 50
                    OpeningTimes:
                      description: Branch Opening Times
                      type: array
                      items:
                        type: object
                        properties:
                          OpeningDay:
                            description: Day of the week
                            enum:
                            - Monday
                            - Tuesday
                            - Wednesday
                            - Thursday
                            - Friday
                            - Saturday
                            - Sunday
                            - Public and Bank Holiday
                            type: string
                            minLength: 1
                            maxLength: 35
                          OpeningTime:
                            description: ISOTime, local time hh:mm:ss.sss or time in utc hh:mm:ss.sssZ or time with timezone hh:mm:ss.sss+hh:mm hh:mm:ss.sss-hh:mm
                            type: string
                            pattern: ^(([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9].\d{3})|(^24:00:00\.000)(?:Z|[+-](?:2[0-3]|[01][0-9]):[0-5][0-9])?$
                          ClosingTime:
                            description: ISOTime, local time hh:mm:ss.sss or time in utc hh:mm:ss.sssZ or time with timezone hh:mm:ss.sss+hh:mm hh:mm:ss.sss-hh:mm
                            type: string
                            pattern: ^(([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9].\d{3})|(^24:00:00\.000)(?:Z|[+-](?:2[0-3]|[01][0-9]):[0-5][0-9])?$
                          UnavailableStartTime:
                            description: ISOTime, local time hh:mm:ss.sss or time in utc hh:mm:ss.sssZ or time with timezone hh:mm:ss.sss+hh:mm hh:mm:ss.sss-hh:mm
                            type: string
                            pattern: ^(([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9].\d{3})|(^24:00:00\.000)(?:Z|[+-](?:2[0-3]|[01][0-9]):[0-5][0-9])?$
                          UnavailableFinishTime:
                            description: ISOTime, local time hh:mm:ss.sss or time in utc hh:mm:ss.sssZ or time with timezone hh:mm:ss.sss+hh:mm hh:mm:ss.sss-hh:mm
                            type: string
                            pattern: ^(([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9].\d{3})|(^24:00:00\.000)(?:Z|[+-](?:2[0-3]|[01][0-9]):[0-5][0-9])?$
                        required:
                        - OpeningDay
                        - OpeningTime
                        - ClosingTime
                      minItems: 1
                      additionalProperties: false
                    PlannedBranchClosure:
                      type: array
                      items:
                        description: Planned branch closure
                        type: object
                        properties:
                          StartDate:
                            description: Date when a branch is due to close temporarily or permanently
                            type: string
                            pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$
                          EndDate:
                            description: Date when a branch is due to re-open following temporary closure
                            type: string
                            pattern: ^[0-9]{4}-(0[1-9]|(1[0|1|2]))-((0[1-9])|((1|2)[0-9])|(30|31))$
                        additionalProperties: false
                    AccessibilityTypes:
                      description: Information about the accessibility
                      type: string
                      enum:
                      - AudioCashMachine
                      - AutomaticDoors
                      - ChairAccess
                      - DriveThru
                      - ExternalRamp
                      - InductionLoop
                      - InternalRamp
                      - LevelAccess
                      - LowerLevelCounter
                      - WheelchairAccess
                    BranchSelfServeServiceName:
                      type: array
                      items:
                        description: Information about self service branch services
                        type: string
                        enum:
                        - AccountVerificationService
                        - AssistedServiceCounter
                        - BusinessDepositTerminal
                        - CashChequeDepositMachineCoin
                        - CashChequeDepositMachineNoCoin
                        - ExternalAtmAudio
                        - ExternalAtmNoAudio
                        - ExternalQuickServicePoint
                        - InternalAtmAudio
                        - InternalAtmNoAudio
                        - InternalQuickServicePoint
                        - LodgementDevice
                        - OnlineBankingPoint
                        - QuickDeposit
                        - SaturdayCounterService
                        - SelfServiceAccountOpening
                        - StatementPrinter
                      uniqueItems: true
                    BranchOtherSelfServices:
                      description: Self Services not described in BranchSelfServeServiceName
                      type: array
                      items:
                        description: maxLength 350 text
                        type: string
                        minLength: 1
                        maxLength: 350
                    BranchMediatedServiceName:
                      description: Information about mediated branch facilities
                      type: array
                      items:
                        description: Information about mediated branch facilities
                        type: string
                        enum:
                        - BureauDeChange
                        - BusinessCounter
                        - CardIssuanceFacility
                        - CounterServices
                        - DriveThru
                        - MortgageAdvisor
                        - NightSafe
                        - OnDemandCurrency
                        - PremierCounter
                        - VideoBanking
                        - WheelChairAccess
                      uniqueItems: true
                    BranchOtherMediatedServices:
                      description: Mediated Services not described in BranchMediatedServiceName
                      type: array
                      items:
                        description: maxLength 350 text
                        type: string
                        minLength: 1
                        maxLength: 350
                    BranchFacilitiesName:
                      description: Information about branch facilities
                      type: array
                      items:
                        description: Information about branch facilities
                        type: string
                        enum:
                        - BusinessITSupport
                        - CollectionLockers
                        - MeetingRooms
                        - Parking
                        - Wifi
                      uniqueItems: true
                    CustomerSegment:
                      description: Customer segment which the branch is able to service
                      type: array
                      items:
                        description: Customer segment which the branch is able to service
                        type: string
                        enum:
                        - Business
                        - Corporate
                        - Personal
                        - Premier
                        - Private
                        - Select
                        - SME
                        - Wealth
                      uniqueItems: true
                    BranchOtherFacilities:
                      description: Any other facilities not mentioned in BranchFacilitiesName
                      type: array
                      items:
                        description: maxLength 350 text
                        type: string
                        minLength: 1
                        maxLength: 350
                    ATMAtBranch:
                      description: Indicated whether an ATM is at the branch
                      type: boolean
                  required:
                  - Organisation
                  - BranchIdentification
                  - BranchType
                  - CustomerSegment
                  - Address
                  - TelephoneNumber
                  - OpeningTimes
                  - ATMAtBranch
                  additionalProperties: false
            required:
            - meta
            - data
            additionalProperties: false
        '400':
          description: You have sent a request which could not be understood.
          headers:
            Strict-Transport-Security:
              type: string
              description: HTTPS strict transport security header
            X-Frame-Options:
              type: string
              description: Prevent this request from being loaded in any iframes
              default: DENY
            X-Content-Type-Options:
              type: string
              description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing
              default: nosniff
            Status Code:
              type: integer
              description: The HTTP status code defining the error
              default: 400
          schema:
            title: 400 Error object
            type: object
            properties:
              status:
                type: string
                enum:
                - '400'
              title:
                type: string
                enum:
                - Bad request
              description:
                type: string
                enum:
                - You have sent a request which could not be understood.
            required:
            - status
            - title
            - description
            additionalProperties: false
        '408':
          description: Your client has failed to submit a request, and a timeout has occurred.
          headers:
            Strict-Transport-Security:
              type: string
              description: HTTPS strict transport security header
            X-Frame-Options:
              type: string
              description: Prevent this request from being loaded in any iframes
              default: DENY
            X-Content-Type-Options:
              type: string
              description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing
              default: nosniff
            Status Code:
              type: integer
              description: The HTTP status code defining the error
              default: 400
          schema:
            title: 408 Error object
            type: object
            properties:
              status:
                type: string
                enum:
                - '408'
              title:
                type: string
                enum:
                - Client timeout
              description:
                type: string
                enum:
                - Your client has failed to submit a request, and a timeout has occurred.
            required:
            - status
            - title
            - description
            additionalProperties: false
        '429':
          description: You have requested this resource too often. Slow down.
          headers:
            Strict-Transport-Security:
              type: string
              description: HTTPS strict transport security header
            X-Frame-Options:
              type: string
              description: Prevent this request from being loaded in any iframes
              default: DENY
            X-Content-Type-Options:
              type: string
              description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing
              default: nosniff
            Status Code:
              type: integer
              description: The HTTP status code defining the error
              default: 400
          schema:
            title: 429 Error object
            type: object
            properties:
              status:
                type: string
                enum:
                - '429'
              title:
                type: string
                enum:
                - Too many requests
              description:
                type: string
                enum:
                - You have requested this resource too often. Slow down.
            required:
            - status
            - title
            - description
            additionalProperties: false
        '500':
          description: An error occurred on the server. No further information is available.
          headers:
            Strict-Transport-Security:
              type: string
              description: HTTPS strict transport security header
            X-Frame-Options:
              type: string
              description: Prevent this request from being loaded in any iframes
              default: DENY
            X-Content-Type-Options:
              type: string
              description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing
              default: nosniff
            Status Code:
              type: integer
              description: The HTTP status code defining the error
              default: 400
          schema:
            title: 500 Error object
            type: object
            properties:
              status:
                type: string
                enum:
                - '500'
              title:
                type: string
                enum:
                - Internal server error
              description:
                type: string
                enum:
                - An error occurred on the server. No further information is available.
            required:
            - status
            - title
            - description
            additionalProperties: false
        '503':
          description: The service is temporarily unavailable.
          headers:
            Strict-Transport-Security:
              type: string
              description: HTTPS strict transport security header
            X-Frame-Options:
              type: string
              description: Prevent this request from being loaded in any iframes
              default: DENY
            X-Content-Type-Options:
              type: string
              description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing
              default: nosniff
            Status Code:
              type: integer
              description: The HTTP status code defining the error
              default: 400
          schema:
            title: 503 Error object
            type: object
            properties:
              status:
                type: string
                enum:
                - '503'
              title:
                type: string
                enum:
                - Service temporarily unavailable
              description:
                type: string
                enum:
                - The service is temporarily unavailable.
            required:
            - status
            - title
            - description
            additionalProperties: false
        default:
          description: A standard error response.
          headers:
            Strict-Transport-Security:
              type: string
              description: HTTPS strict transport security header
            X-Frame-Options:
              type: string
              description: Prevent this request from being loaded in any iframes
              default: DENY
            X-Content-Type-Options:
              type: string
              description: Ensures each page has a content type and prevents browsers from doing MIME type sniffing
              default: nosniff
            Status Code:
              type: integer
              description: The HTTP status code defining the error
              default: 400
          schema:
            title: Error object
            type: object
            properties:
              status:
                description: This corresponds to the HTTP status code
                type: string
              title:
                description: A short title of the type of error
                type: string
              description:
                description: Further details describing the error
                type: string
            required:
            - status
            - title
            - description
            additionalProperties: false
    head:
      tags:
      - Branch
      description: Gets header information on the current set of `Branch` data
      parameters:
      - name: If-Modified-Since
        type: string
        description: Used for conditional request, to retrieve data only if modified since a given date
        in: header
        required: false
      - name: If-None-Match
        type: string
        description: Used for conditional request, to retrieve data only if the given Etag value does not match
        in: header
        required: false
      responses:
        default:
          description: No response
          schema:
            title: No response
            type: object
            properties: {}
components:
  securitySchemes:
    TPPOAuth2Security:
      type: oauth2
      description: TPP client credential authorisation flow with the ASPSP
      flows:
        clientCredentials:
          tokenUrl: https://authserver.example/token
          scopes:
            accounts: Ability to read Accounts information
    PSUOAuth2Security:
      type: oauth2
      description: OAuth flow, it is required when the PSU needs to perform SCA with the ASPSP when a TPP wants to access an ASPSP resource owned by the PSU
      flows:
        authorizationCode:
          authorizationUrl: https://authserver.example/authorization
          tokenUrl: https://authserver.example/token
          scopes:
            accounts: Ability to read Accounts information