Lean Technologies Open Banking Parties API

The Open Banking Parties API from Lean Technologies — 1 operation(s) for open banking parties.

OpenAPI Specification

lean-technologies-open-banking-parties-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Consents Account On File Account Controls (New) Account Controls (New) Open Banking Parties API
  version: v0.2.3
servers:
- url: https://sandbox.leantech.me
  description: Sandbox
- url: https://api2.leantech.me
  description: Production
security:
- bearerAuth: []
tags:
- name: Open Banking Parties
  x-displayName: Open Banking Parties
paths:
  /open-banking/account-information/2022.11.01-final-errata2/parties:
    servers: []
    get:
      operationId: GetPartiesV1
      summary: Get Open Banking Parties
      description: 'Retrieves the parties associated with the entity linked by a user via LinkSDK for the KSA Open Banking (SAMA) ecosystem.

        Returns party information at the entity level, not specific to a single account.

        Requires ReadPartyPSU consent permission.

        '
      parameters:
      - $ref: '#/components/parameters/FapiInteractionId'
      - $ref: '#/components/parameters/EntityId'
      - $ref: '#/components/parameters/CustomerId'
      - $ref: '#/components/parameters/OBPageParm'
      - $ref: '#/components/parameters/OBSizeParam'
      responses:
        '200':
          description: Parties Read
          headers:
            x-fapi-interaction-id:
              description: An RFC4122 UID used as a correlation id.
              required: true
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBGetPartiesResponse'
              examples:
                GetPartiesSuccess:
                  summary: Successful parties response
                  value:
                    Status: OK
                    Message: Data successfully retrieved
                    Timestamp: '2026-04-09T10:30:00.000Z'
                    RefreshedAt: '2026-04-09T10:25:00.000Z'
                    StatusDetail: null
                    Meta:
                      TotalPages: 1
                    Links:
                      Self: https://api.leantech.me/open-banking/account-information/2022.11.01-final-errata2/parties
                      First: https://api.leantech.me/open-banking/account-information/2022.11.01-final-errata2/parties
                      Prev: null
                      Next: null
                      Last: https://api.leantech.me/open-banking/account-information/2022.11.01-final-errata2/parties
                    Data:
                      Party:
                      - PartyId: PARTY-00111222
                        PartyNumber: PN-7890123
                        PartyType: KSAOB.Sole
                        AccountRole: KSAOB.Principal
                        VerifiedClaims:
                        - Verification:
                            TrustFramework: SA_IAM
                            AssuranceLevel: high
                            Time: '2024-11-15T09:00:00.000Z'
                            VerificationProcess: VP-2024-SA-001
                            AssuranceProcess:
                              Policy: SA_IAM_Policy_v2
                              Procedure: KYC_Full_Verification
                              AssuranceDetails:
                              - AssuranceType: identity
                                AssuranceClassification: high
                                EvidenceRef:
                                - Txn: TXN-EVD-001
                                  EvidenceMetadata:
                                    EvidenceClassification: documentary
                            Evidence:
                            - Type: document
                              Time: '2024-11-15T08:45:00.000Z'
                              CheckDetails:
                              - CheckMethod: physical_presence
                                Organization: Al Rajhi Bank
                                Txn: TXN-CHK-001
                                Time: '2024-11-15T08:30:00.000Z'
                              Verifier:
                                Organization: Al Rajhi Bank KYC Team
                                Txn: TXN-VER-001
                              DocumentDetails:
                                Type: idcard
                                DocumentNumber: '1234567890'
                                PersonalNumber: '1098765432'
                                SerialNumber: SN-2024-001
                                CalendarType: KSAOB.GregorianCalendar
                                DateOfIssuance: '2020-01-15T00:00:00.000Z'
                                DateOfExpiry: '2030-01-15T00:00:00.000Z'
                                Issuer:
                                  Name: Ministry of Interior - Saudi Arabia
                                  CountryCode: SA
                                  Jurisdiction: Saudi Arabia
                                  Address:
                                    Formatted: Ministry of Interior, Riyadh, Saudi Arabia
                                    StreetAddress: King Fahad Road
                                    Locality: Riyadh
                                    Region: Riyadh Province
                                    PostalCode: '11564'
                                    Country: SA
                              Attachments:
                              - Desc: National ID front scan
                                ContentType: image/jpeg
                                Content: base64encodedContent==
                                Txn: TXN-ATT-001
                            - Type: electronic_record
                              Time: '2024-11-15T08:40:00.000Z'
                              CheckDetails:
                              - CheckMethod: electronic_verification
                                Organization: NAFATH
                                Txn: TXN-CHK-002
                                Time: '2024-11-15T08:35:00.000Z'
                              Record:
                                Type: bank_account
                                PersonalNumber: '1098765432'
                                CalendarType: KSAOB.GregorianCalendar
                                CreatedAt: '2019-03-20T00:00:00.000Z'
                                DateOfExpiry: '2029-03-20T00:00:00.000Z'
                                Source:
                                  Name: Al Rajhi Bank
                                  CountryCode: SA
                                  Jurisdiction: Saudi Arabia
                                  Address:
                                    Formatted: Al Rajhi Bank HQ, Riyadh
                                    StreetAddress: Olaya Street
                                    Locality: Riyadh
                                    Region: Riyadh Province
                                    PostalCode: '12244'
                                    Country: SA
                              Attachments:
                              - Desc: Electronic bank record verification
                                ContentType: application/pdf
                                Content: base64encodedPdfContent==
                                Txn: TXN-ATT-002
                          Claims:
                            Sub: sub-4f8a-b123-9876
                            Name: Mohammed Abdullah Al-Rashidi
                            GivenName: Mohammed
                            FamilyName: Al-Rashidi
                            MiddleName: Abdullah
                            Nickname: Abu Abdullah
                            PreferredUsername: m.alrashidi
                            Profile: PRF-00111222
                            Picture: null
                            Website: null
                            Email: m.alrashidi@example.com
                            EmailVerified: true
                            Gender: male
                            BirthDate: '1985-06-15'
                            ZoneInfo: Asia/Riyadh
                            Locale: ar-SA
                            PhoneNumber: '+966501234567'
                            PhoneNumberVerified: true
                            Salutation: Mr
                            Title: Dr
                            Msisdn: '+966501234567'
                            BirthFamilyName: Al-Rashidi
                            BirthGivenName: Mohammed
                            BirthMiddleName: Abdullah
                            AlsoKnownAs: null
                            PlaceOfBirth:
                              Country: SA
                              Region: Riyadh Province
                              Locality: Riyadh
                            Nationalities:
                            - SA
                            Address:
                              Formatted: 123 King Fahad Road, Al Olaya, Riyadh 12244, Saudi Arabia
                              StreetAddress: 123 King Fahad Road
                              Locality: Al Olaya
                              Region: Riyadh Province
                              PostalCode: '12244'
                              Country: SA
                            UpdatedAt: 1731657600
                BankIssueExample:
                  summary: Failed request due to bank technical issues
                  value:
                    Status: FAILED
                    Message: Your bank is currently experiencing technological problems. Please try again later.
                    Timestamp: '2026-04-09T10:30:00.000Z'
                    RefreshedAt: null
                    StatusDetail:
                      GranularStatusCode: BANK_ISSUE
                      StatusAdditionalInfo: Your bank is currently experiencing technological problems. Please try again later.
                    Meta: null
                    Links: null
                    Data: null
        '400':
          description: Bad Request
          content:
            application/json:
              examples:
                MissingEntityId:
                  summary: Missing or invalid entity_id
                  value:
                    Status: FAILED
                    Message: entity_id is required and must be a valid UUID
                    Timestamp: '2026-04-09T10:30:00.000Z'
                    RefreshedAt: null
                    StatusDetail:
                      GranularStatusCode: INVALID_PARAMETERS
                      StatusAdditionalInfo: The provided entity_id is not a valid UUID format
                    Meta: null
                    Links: null
                    Data: null
        '404':
          description: Entity not found
          content:
            application/json:
              examples:
                EntityNotFound:
                  summary: Entity not found
                  value:
                    Status: FAILED
                    Message: Entity not found
                    Timestamp: '2026-04-09T10:30:00.000Z'
                    RefreshedAt: null
                    StatusDetail:
                      GranularStatusCode: ENTITY_NOT_FOUND
                      StatusAdditionalInfo: No entity found for the provided entity_id
                    Meta: null
                    Links: null
                    Data: null
        '500':
          description: Internal Server Error
          content:
            application/json:
              examples:
                BankIssue:
                  summary: Bank technical issue
                  value:
                    Status: FAILED
                    Message: Your bank is currently experiencing technological problems. Please try again later.
                    Timestamp: '2025-09-12T05:13:49.739987382Z'
                    RefreshedAt: null
                    StatusDetail:
                      GranularStatusCode: BANK_ISSUE
                      StatusAdditionalInfo: Your bank is currently experiencing technological problems. Please try again later.
                    Meta: null
                    Links: null
                    Data: null
      tags:
      - Open Banking Parties
components:
  schemas:
    OBPartyIdentityCheckDetail:
      description: Details of a check performed on PSU evidence for identity verification.
      type: object
      properties:
        CheckMethod:
          description: Method used by the PASP for checking the PSU evidence (e.g. biometric, document authenticity check).
          type:
          - string
          - 'null'
        Organization:
          description: Legal entity that performed the check on behalf of the OP.
          type:
          - string
          - 'null'
        Txn:
          description: Identifier referring to the identity verification transaction for audit purposes.
          type:
          - string
          - 'null'
        Time:
          description: Date and time at which the check was performed.
          type:
          - string
          - 'null'
          format: date-time
    OBVerificationAssuranceProcess:
      description: Assurance process that was followed to meet the requirements of the trust framework.
      type: object
      properties:
        Policy:
          description: Standard or policy that was followed.
          type:
          - string
          - 'null'
        Procedure:
          description: Specific procedure from the policy that was followed.
          type:
          - string
          - 'null'
        AssuranceDetails:
          description: Details about how the evidence complies with the policy.
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/OBVerificationAssuranceDetail'
    OBPartyIdentityEvidenceDocumentType:
      description: The type of evidence provided for document-based identity verification.
      type: string
      enum:
      - document
      - electronic_record
    OBParty:
      description: Unambiguous identification of the party.
      type: object
      properties:
        EntityId:
          description: Lean entity identifier for the connected customer.
          type: string
          format: uuid
        PartyId:
          description: Unique and unambiguous identification of the party.
          type: string
          maxLength: 40
          minLength: 1
        PartyNumber:
          description: Number assigned by an agent to identify its customer.
          type:
          - string
          - 'null'
          maxLength: 35
          minLength: 1
        PartyType:
          $ref: '#/components/schemas/OBPartyTypeCode'
        AccountRole:
          $ref: '#/components/schemas/OBAccountRoleCode'
        VerifiedClaims:
          description: List of verified identity claims for the party.
          type: array
          items:
            $ref: '#/components/schemas/OBVerifiedClaim'
      required:
      - PartyId
      - PartyType
      - AccountRole
      - VerifiedClaims
    OBPartyIdentityAddressClaim:
      description: Address object as per OpenID Connect Core 1.0 Address Claim.
      type: object
      properties:
        Formatted:
          description: The PSU full address (street number, street name, city, zip code, country) claim.
          type:
          - string
          - 'null'
        StreetAddress:
          description: The PSU address street claim verified by the PASP.
          type:
          - string
          - 'null'
        Locality:
          description: The PSU address locality (village, town, city etc) claim verified by the PASP.
          type:
          - string
          - 'null'
        Region:
          description: The PSU address region claim verified by the PASP.
          type:
          - string
          - 'null'
        PostalCode:
          description: Postal code added to the address to assist the sorting of mail.
          type:
          - string
          - 'null'
          maxLength: 5
          minLength: 5
        Country:
          description: Country code (ISO 3166) for the PSU address.
          type:
          - string
          - 'null'
    OBPartiesData:
      description: Container for the list of Open Banking parties at the entity level.
      type: object
      properties:
        CustomerId:
          description: Lean provided customer ID
          type:
          - string
          - 'null'
          format: uuid
        Party:
          description: List of parties associated with the entity.
          type: array
          items:
            $ref: '#/components/schemas/OBParty'
      required:
      - Party
    OBElectronicRecordTypeCode:
      description: The type of electronic record used for identity verification.
      type: string
      enum:
      - bank_account
      - mortgage_account
      - loan_account
    OBMeta:
      description: Metadata relevant to the resource.
      type: object
      properties:
        TotalPages:
          description: Total number of pages where a result set is paginated.
          type:
          - integer
          - 'null'
          format: int32
          minimum: 0
    OBVerification:
      description: Verification details for the identity claim (OpenID Connect for Identity Assurance 1.0).
      type: object
      properties:
        TrustFramework:
          $ref: '#/components/schemas/OBTrustFramework'
        AssuranceLevel:
          description: Level of assurance for the verified claim (e.g. low, medium, high).
          type:
          - string
          - 'null'
        AssuranceProcess:
          description: The assurance process that was followed to meet the trust framework requirements.
          type:
          - object
          - 'null'
          allOf:
          - $ref: '#/components/schemas/OBVerificationAssuranceProcess'
        Time:
          description: Date and time when the identity verification process took place.
          type:
          - string
          - 'null'
          format: date-time
        VerificationProcess:
          description: Unique reference to the identity verification process for audit and dispute resolution.
          type:
          - string
          - 'null'
        Evidence:
          description: Evidence used for verifying the PSU identity.
          type:
          - array
          - 'null'
          items:
            oneOf:
            - $ref: '#/components/schemas/OBPartyIdentityEvidenceTypeDocument'
            - $ref: '#/components/schemas/OBPartyIdentityEvidenceTypeElectronicRecord'
      required:
      - TrustFramework
    OBPartyIdentityEvidenceTypeElectronicRecord:
      description: Electronic record evidence for PSU identity verification (OpenID Connect for Identity Assurance 1.0).
      type: object
      properties:
        Type:
          description: The type of evidence.
          allOf:
          - $ref: '#/components/schemas/OBPartyIdentityEvidenceElectronicRecordType'
        CheckDetails:
          description: Checks done in relation to the electronic record evidence.
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/OBPartyIdentityCheckDetail'
        Time:
          description: Date and time at which the electronic record evidence was verified.
          type:
          - string
          - 'null'
          format: date-time
        Record:
          description: The record used to perform the identity verification.
          type:
          - object
          - 'null'
          properties:
            Type:
              description: The type of electronic record.
              allOf:
              - $ref: '#/components/schemas/OBElectronicRecordTypeCode'
            PersonalNumber:
              description: An identifier assigned to the PSU not limited to being used in one record.
              type:
              - string
              - 'null'
            CalendarType:
              description: The type of calendar used for dates in this record.
              allOf:
              - $ref: '#/components/schemas/OBPartyCalendarType'
            CreatedAt:
              description: The time the record was created.
              type:
              - string
              - 'null'
              format: date-time
            DateOfExpiry:
              description: The date the evidence will expire.
              type:
              - string
              - 'null'
              format: date-time
            Source:
              description: Information about the source of this record.
              type:
              - object
              - 'null'
              properties:
                Name:
                  description: Designation of the source of the electronic record.
                  type:
                  - string
                  - 'null'
                Address:
                  description: Address of the record source.
                  type:
                  - object
                  - 'null'
                  allOf:
                  - $ref: '#/components/schemas/OBPartyIdentityAddressClaim'
                CountryCode:
                  description: Country or supranational organization that issued the evidence (ISO 3166).
                  type:
                  - string
                  - 'null'
                Jurisdiction:
                  description: Region(s)/state(s)/province(s) the source has jurisdiction over.
                  type:
                  - string
                  - 'null'
        Attachments:
          description: Attachments related to the electronic record evidence.
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/OBPartyIdentityEvidenceAttachment'
    OBPartyTypeCode:
      description: Specifies the type of party.
      type: string
      enum:
      - KSAOB.Delegate
      - KSAOB.Joint
      - KSAOB.Sole
    OBLinks:
      description: Links relevant to the resource for pagination navigation.
      type: object
      properties:
        Self:
          description: A link to the current resource.
          type: string
          format: uri
        First:
          description: A link to the first page in a paginated result set.
          type:
          - string
          - 'null'
          format: uri
        Prev:
          description: A link to the previous page in a paginated result set.
          type:
          - string
          - 'null'
          format: uri
        Next:
          description: A link to the next page in a paginated result set.
          type:
          - string
          - 'null'
          format: uri
        Last:
          description: A link to the last page in a paginated result set.
          type:
          - string
          - 'null'
          format: uri
      required:
      - Self
    OBPartyIdentityEvidenceAttachment:
      description: Attachment related to PSU identity evidence (OpenID Connect for Identity Assurance 1.0).
      type: object
      properties:
        Desc:
          description: Description of the document (e.g. filename or explanation of content).
          type:
          - string
          - 'null'
        ContentType:
          description: Content (MIME) type of the document.
          type:
          - string
          - 'null'
        Content:
          description: Base64 encoded representation of the document content.
          type:
          - string
          - 'null'
        Txn:
          description: Identifier referring to the transaction.
          type:
          - string
          - 'null'
    OBClaims:
      description: Standard and identity assurance claims for the party (OpenID Connect Core 1.0).
      type: object
      properties:
        Sub:
          description: Subject — identifier for the PSU at the Issuer.
          type:
          - string
          - 'null'
        Name:
          description: The PSU name claim verified by the PASP.
          type:
          - string
          - 'null'
        GivenName:
          description: The PSU given name (forename) claim verified by the PASP.
          type:
          - string
          - 'null'
        FamilyName:
          description: The PSU family name claim verified by the PASP.
          type:
          - string
          - 'null'
        MiddleName:
          description: The PSU middle name claim verified by the PASP.
          type:
          - string
          - 'null'
        Nickname:
          description: The PSU nickname claim verified by the PASP.
          type:
          - string
          - 'null'
        PreferredUsername:
          description: The PSU preferred username claim verified by the PASP.
          type:
          - string
          - 'null'
        Profile:
          description: The PSU profile id claim verified by the PASP.
          type:
          - string
          - 'null'
        Picture:
          description: The PSU photo claim verified by the PASP.
          type:
          - string
          - 'null'
        Website:
          description: The PSU website claim verified by the PASP.
          type:
          - string
          - 'null'
        Email:
          description: The PSU email claim verified by the PASP.
          type:
          - string
          - 'null'
        EmailVerified:
          description: The PSU email verified claim verified by the PASP.
          type:
          - boolean
          - 'null'
        Gender:
          description: The PSU gender claim verified by the PASP.
          type:
          - string
          - 'null'
        BirthDate:
          description: The PSU date of birth claim verified by the PASP.
          type:
          - string
          - 'null'
          format: date
        ZoneInfo:
          description: The PSU timezone claim verified by the PASP.
          type:
          - string
          - 'null'
        Locale:
          description: The PSU locale claim verified by the PASP.
          type:
          - string
          - 'null'
        PhoneNumber:
          description: The PSU phone number claim verified by the PASP.
          type:
          - string
          - 'null'
        PhoneNumberVerified:
          description: The PSU verified phone number claim verified by the PASP.
          type:
          - boolean
          - 'null'
        Salutation:
          description: The PSU salutation claim verified by the PASP.
          type:
          - string
          - 'null'
        Title:
          description: The PSU title claim verified by the PASP.
          type:
          - string
          - 'null'
        Msisdn:
          description: The PSU MSISDN (mobile subscriber identifier) claim verified by the PASP.
          type:
          - string
          - 'null'
        BirthFamilyName:
          description: The PSU birth family name claim verified by the PASP.
          type:
          - string
          - 'null'
        BirthGivenName:
          description: The PSU birth given name claim verified by the PASP.
          type:
          - string
          - 'null'
        BirthMiddleName:
          description: The PSU birth middle name claim verified by the PASP.
          type:
          - string
          - 'null'
        AlsoKnownAs:
          description: The PSU other name claim verified by the PASP.
          type:
          - string
          - 'null'
        PlaceOfBirth:
          description: The PSU place of birth claim verified by the PASP.
          type:
          - object
          - 'null'
          properties:
            Country:
              description: Country code (ISO 3166) of birth.
              type:
              - string
              - 'null'
            Region:
              description: The PSU region of birth claim verified by the PASP.
              type:
              - string
              - 'null'
            Locality:
              description: The PSU locality (village, town, city etc) of birth claim verified by the PASP.
              type:
              - string
              - 'null'
        Nationalities:
          description: The PSU nationality claims verified by the PASP.
          type:
          - array
          - 'null'
          items:
            type: string
            description: A nationality of the PSU (ISO 3166 country code).
        Address:
          description: The PSU address claim verified by the PASP.
          type:
          - object
          - 'null'
          allOf:
          - $ref: '#/components/schemas/OBPartyIdentityAddressClaim'
        UpdatedAt:
          description: Time the PSU's information was last updated (seconds since 1970-01-01T00:00:00Z UTC).
          type:
          - number
          - 'null'
    OBAccountRoleCode:
      description: Specifies the role of the party in relation to the account.
      type: string
      enum:
      - KSAOB.Administrator
      - KSAOB.Beneficiary
      - KSAOB.CustodianForMinor
      - KSAOB.Granter
      - KSAOB.LegalGuardian
      - KSAOB.OtherParty
      - KSAOB.PowerOfAttorney
      - KSAOB.Principal
      - KSAOB.Protector
      - KSAOB.RegisteredShareholderName
      - KSAOB.SecondaryOwner
      - KSAOB.SeniorManagingOfficial
      - KSAOB.Settlor
      - KSAOB.SuccessorOnDeath
    OBPartyIdentityEvidenceElectronicRecordType:
      description: The type of evidence provided for electronic record-based identity verification.
      type: string
      const: electronic_record
    OBDocumentTypeCode:
      description: The type of document used for evidence checking by the PASP.
      type: string
      enum:
      - passport
      - driving_permit
      - idcard
      - residence_permit
    OBVerificationEvidenceRef:
      description: Reference to a specific evidence transaction.
      type: object
      properties:
        Txn:
          description: Identifier referring to the transaction used in CheckDetails.
          type: string
        EvidenceMetadata:
          description: Metadata about how the process demonstrated by the check demonstrates compliance with the TrustFramework.
          type:
          - object
          - 'null'
          properties:
            EvidenceClassification:
              description: How the process is classified by the AssuranceProcess to demonstrate compliance with the TrustFramework.
              type:
              - string
              - 'null'
      required:
      - Txn
    OBPartyCalendarType:
      description: The type of calendar used for dates in document or electronic record evidence.
      type: string
      enum:
      - KSAOB.IslamicCalendar
      - KSAOB.GregorianCalendar
    OBGetPartiesResponse:
      description: Response envelope for the Open Banking entity-level parties.
      type: object
      properties:
        Data:
          description: Container for the list of Open Banking parties. Null when the request fails.
          type:
          - object
          - 'null'
          allOf:
          - $ref: '#/components/schemas/OBPartiesData'
        Status:
          description: Status of the request.
          type: string
          enum:
          - OK
          - PENDING
          - FAILED
          - CONSENT_EXPIRED
        Message:
          description: Human-readable message describing the status of the request.
          type: string
        Timestamp:
          description: Date and time when the response was generated.
          type: string
          format: date-time
        RefreshedAt:
          description: Date and time when the data was last refreshed from the bank.
          type:
          - string
          - 'null'
          format: date-time
        StatusDetail:
          description: Additional details about the request status.
          type:
          - object
          - 'null'
          allOf:
          - $ref: '#/components/schemas/OBStatusDetail'
        Meta:
          description: Metadata relevant to the resource, including pagination information.
          type:
          - object
          - 'null'
          allOf:
          - $ref: '#/components/schemas/OBMeta'
        Links:
          description: Links relevant to the resource for pagination navigation.
          type:
          - object
          - 'null'
          allOf:
          - $ref: '#/components/schemas/OBLinks'
      required:
      - Data
      - Status
      - Message
      - Timestamp
    OBPartyIdentityEvidenceTypeDocument:
      description: Document evidence for PSU identity verification (OpenID Connect for Identity Assurance 1.0).
      type: object
      properties:
        Type:
          description: The type of evidence.
          allOf:
          - $ref: '#/components/schemas/OBPartyIdentityEvidenceDocumentType'
        CheckDetails:
          description: Chec

# --- truncated at 32 KB (38 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/lean-technologies/refs/heads/main/openapi/lean-technologies-open-banking-parties-api-openapi.yml