Mesh BrokerAccountDetail API

The BrokerAccountDetail API from Mesh — 1 operation(s) for brokeraccountdetail.

OpenAPI Specification

mesh-brokeraccountdetail-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Mesh Connect Integration Assets BrokerAccountDetail API
  description: '

    Mesh allows users to connect accounts of financial institutions,

    crypto exchanges, and self-custody wallets. Mesh handles credential

    validation, MFA, and error handling for each integration. After

    an account is connected, Mesh allows client applications to read holdings,

    transaction history and balances and execute crypto transfers (with user approval).'
  version: '1.0'
servers:
- url: https://integration-api.meshconnect.com
security:
- Client-Secret: []
  Client-Id: []
tags:
- name: BrokerAccountDetail
paths:
  /api/v1/account/verify:
    post:
      tags:
      - BrokerAccountDetail
      summary: Verify account identity.
      description: Return KYC details of the user.
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/B2BBrokerAccountDetailsRequest'
            example:
              authToken: Secret authentication token
              integrationId: 4d3364d9-fa09-4382-ad4e-5cab2e355fd4
      responses:
        '200':
          description: Successfully returns account details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/B2BBrokerAccountDetailsResponseApiResult'
              example:
                content:
                  firstName: Firstname
                  middleName: Midlename
                  lastName: Lastname
                  accountNumber: '1234567'
                  email: enduser@domain.com
                  mobileNumber: '123456798'
                  companyName: MyCorp Inc.
                  integrationName: Coinbase
                  countryCode: GB
                  city: City Name
                  postalCode: '4251'
                  idType: idCard
                  idNumber: '123'
                  dateOfBirth: 574732800
                status: ok
                message: ''
                errorType: ''
        '400':
          description: Request to retrieve account details is not correct.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResult'
              example:
                status: badRequest
                message: Error message
                displayMessage: Optional display message
                errorType: missingField
        '401':
          description: 'Unauthorized: Client Id or Client Secret are not correct or missing.'
          content:
            application/json:
              schema: {}
        '403':
          description: Forbidden
          content:
            application/json:
              schema: {}
components:
  schemas:
    ApiResult:
      type: object
      properties:
        status:
          enum:
          - ok
          - serverFailure
          - permissionDenied
          - badRequest
          - notFound
          - conflict
          - tooManyRequest
          - locked
          allOf:
          - $ref: '#/components/schemas/ApiResultStatus'
          readOnly: true
        message:
          type: string
          description: A message generated by the API
          nullable: true
        displayMessage:
          type: string
          description: User-friendly display message that can be presented to the end user
          nullable: true
        errorType:
          type: string
          description: "Strictly-typed error type that is explaining the reason of an unsuccessful status of the operation.\r\nAll possible error types are available in the documentation."
          nullable: true
        errorData:
          nullable: true
          readOnly: true
      additionalProperties: false
    B2BBrokerAccountDetailsRequest:
      required:
      - authToken
      - integrationId
      type: object
      properties:
        authToken:
          minLength: 1
          type: string
          description: Auth token that allows connecting to the target institution.
        integrationId:
          type: string
          description: The Id which uniquely identifies the integration.
          format: uuid
      additionalProperties: false
    ApiResultStatus:
      enum:
      - ok
      - serverFailure
      - permissionDenied
      - badRequest
      - notFound
      - conflict
      - tooManyRequest
      - locked
      type: string
    B2BBrokerAccountDetailsResponse:
      type: object
      properties:
        firstName:
          type: string
          nullable: true
        middleName:
          type: string
          nullable: true
        lastName:
          type: string
          nullable: true
        accountNumber:
          type: string
          nullable: true
        email:
          type: string
          nullable: true
        mobileNumber:
          type: string
          nullable: true
        companyName:
          type: string
          nullable: true
        integrationName:
          type: string
          nullable: true
        countryCode:
          type: string
          nullable: true
        city:
          type: string
          nullable: true
        postalCode:
          type: string
          nullable: true
        address:
          type: string
          nullable: true
        idType:
          enum:
          - none
          - idCard
          - driversLicense
          - passport
          allOf:
          - $ref: '#/components/schemas/UserIdentificationType'
        idNumber:
          type: string
          nullable: true
        dateOfBirth:
          type: integer
          format: int64
          nullable: true
      additionalProperties: false
    B2BBrokerAccountDetailsResponseApiResult:
      type: object
      properties:
        status:
          enum:
          - ok
          - serverFailure
          - permissionDenied
          - badRequest
          - notFound
          - conflict
          - tooManyRequest
          - locked
          allOf:
          - $ref: '#/components/schemas/ApiResultStatus'
          readOnly: true
        message:
          type: string
          description: A message generated by the API
          nullable: true
        displayMessage:
          type: string
          description: User-friendly display message that can be presented to the end user
          nullable: true
        errorType:
          type: string
          description: "Strictly-typed error type that is explaining the reason of an unsuccessful status of the operation.\r\nAll possible error types are available in the documentation."
          nullable: true
        errorData:
          nullable: true
          readOnly: true
        content:
          allOf:
          - $ref: '#/components/schemas/B2BBrokerAccountDetailsResponse'
          nullable: true
      additionalProperties: false
    UserIdentificationType:
      enum:
      - none
      - idCard
      - driversLicense
      - passport
      type: string
  securitySchemes:
    Client-Secret:
      type: apiKey
      description: Contact Mesh to get client Secret
      name: X-Client-Secret
      in: header
    Client-Id:
      type: apiKey
      description: Contact Mesh to get client Id
      name: X-Client-Id
      in: header