openapi: 3.0.1
info:
  x-metadata:
    tags:
      - Class Partner
  title: Feed Data
  version: '1.0'
  description: >-
    - Generate a report of feed and ledger balances for all holdings in a feed
    or fund, including aggregate information on how many accounts reconcile with
    the latest feed data.

    - Retrieve a summary of the configuration and current status of all feeds in
    a business or fund.



    <div class="env-panel" data-component-name="EnvPanel"><div
    class="env-panel__header">Servers</div><div class="env-panel__body"><div
    class="env-row"><div class="env-name">Partner Integration Environment
    (Sandbox)</div><div class="env-url-row"><span
    class="env-url">https://apigateway.class-pie.com.au/api/1.0</span><button
    type="button" class="copy-btn"
    data-copy="https://apigateway.class-pie.com.au/api/1.0"
    aria-label="Copy"><svg viewBox="0 0 16 16" fill="none"
    xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><path
    fill-rule="evenodd" clip-rule="evenodd" d="M5.16667 2.66667C5.16667 2.57462
    5.24129 2.5 5.33333 2.5H12C12.092 2.5 12.1667 2.57462 12.1667
    2.66667V10.6667C12.1667 10.7587 12.092 10.8333 12 10.8333H10H5.33333C5.24129
    10.8333 5.16667 10.7587 5.16667 10.6667V4.66667V2.66667ZM4.16667
    4.16667V2.66667C4.16667 2.02233 4.689 1.5 5.33333 1.5H12C12.6443 1.5 13.1667
    2.02233 13.1667 2.66667V10.6667C13.1667 11.311 12.6443 11.8333 12
    11.8333H10.5V13.3333C10.5 13.6428 10.3771 13.9395 10.1583 14.1583C9.9395
    14.3771 9.64275 14.5 9.33333 14.5H2.66667C2.35725 14.5 2.0605 14.3771
    1.84171 14.1583C1.62292 13.9395 1.5 13.6428 1.5 13.3333V5.33333C1.5 5.02391
    1.62292 4.72717 1.84171 4.50838C2.0605 4.28958 2.35725 4.16667 2.66667
    4.16667H4.16667ZM9.5 11.8333V13.3333C9.5 13.3775 9.48244 13.4199 9.45118
    13.4512C9.41993 13.4824 9.37754 13.5 9.33333 13.5H2.66667C2.62246 13.5
    2.58007 13.4824 2.54882 13.4512C2.51756 13.4199 2.5 13.3775 2.5
    13.3333V5.33333C2.5 5.28913 2.51756 5.24674 2.54882 5.21548C2.58007 5.18423
    2.62246 5.16667 2.66667 5.16667H4.16667V10.6667C4.16667 11.311 4.689 11.8333
    5.33333 11.8333H9.5Z" fill="currentColor"/></svg></button></div></div><div
    class="env-row"><div class="env-name">Production Environment</div><div
    class="env-url-row"><span
    class="env-url">https://apigateway.class.com.au/api/1.0</span><button
    type="button" class="copy-btn"
    data-copy="https://apigateway.class.com.au/api/1.0" aria-label="Copy"><svg
    viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"
    aria-hidden="true"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.16667
    2.66667C5.16667 2.57462 5.24129 2.5 5.33333 2.5H12C12.092 2.5 12.1667
    2.57462 12.1667 2.66667V10.6667C12.1667 10.7587 12.092 10.8333 12
    10.8333H10H5.33333C5.24129 10.8333 5.16667 10.7587 5.16667
    10.6667V4.66667V2.66667ZM4.16667 4.16667V2.66667C4.16667 2.02233 4.689 1.5
    5.33333 1.5H12C12.6443 1.5 13.1667 2.02233 13.1667 2.66667V10.6667C13.1667
    11.311 12.6443 11.8333 12 11.8333H10.5V13.3333C10.5 13.6428 10.3771 13.9395
    10.1583 14.1583C9.9395 14.3771 9.64275 14.5 9.33333 14.5H2.66667C2.35725
    14.5 2.0605 14.3771 1.84171 14.1583C1.62292 13.9395 1.5 13.6428 1.5
    13.3333V5.33333C1.5 5.02391 1.62292 4.72717 1.84171 4.50838C2.0605 4.28958
    2.35725 4.16667 2.66667 4.16667H4.16667ZM9.5 11.8333V13.3333C9.5 13.3775
    9.48244 13.4199 9.45118 13.4512C9.41993 13.4824 9.37754 13.5 9.33333
    13.5H2.66667C2.62246 13.5 2.58007 13.4824 2.54882 13.4512C2.51756 13.4199
    2.5 13.3775 2.5 13.3333V5.33333C2.5 5.28913 2.51756 5.24674 2.54882
    5.21548C2.58007 5.18423 2.62246 5.16667 2.66667
    5.16667H4.16667V10.6667C4.16667 11.311 4.689 11.8333 5.33333 11.8333H9.5Z"
    fill="currentColor"/></svg></button></div></div></div></div>
tags:
  - name: Business
    description: >-
      Business-scoped operations. Use these endpoints when you need results
      across a whole business, identified by businessCode, potentially spanning
      multiple funds.
  - name: Fund
    description: >-
      Fund-scoped operations. Use these endpoints when you are working within a
      single fund, identified by fundCode, under a business. Returns data
      limited to that fund.
servers:
  - url: https://apigateway.class-pie.com.au/api/1.0
    description: Partner Integration Environment (Sandbox)
  - url: https://apigateway.class.com.au/api/1.0
    description: Production Environment
paths:
  /b/{businessCode}/feed-data/processing-summary:
    get:
      operationId: businessFeedProcessingSummary
      summary: Feed processing summary
      description: >-
        Retrieves a summary of the configuration and current status of all feeds
        associated with a business.
      tags:
        - Business
      parameters:
        - $ref: '#/components/parameters/businessCodeParam'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                  - Errors
                properties:
                  Data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FeedData_FeedProcessingSummary'
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApiError'
              example:
                Data:
                  - FeedId: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
                    FundId: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
                    FundCode: demo-fund
                    FundName: Demo Super Fund
                    BrandId: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
                    BrandCode: demo-brand
                    BrandName: Demo Brand
                    BusinessId: d6e1a45f-7e8b-7f9c-2a0d-1b2c3d4e5f6a
                    BusinessCode: demo-business
                    BusinessName: Demo Business Pty Ltd
                    AccountName: Demo Fund Cash Account
                    FeedDescription: Commonwealth Bank of Australia - Cash Account
                    ExternalIdentifier: '12345678'
                    DefaultDisplayName: CBA Cash - demo-fund
                    HIN: null
                    BankAccountId: e7f2b56a-8f9b-8a0c-3d1e-2b3c4d5e6f7a
                    BSB: 000-000
                    FeedStatus: Ok
                    FeedStatusCategory: Working
                    FeedStatusEffectiveDate: '2025-01-01T00:00:00'
                    ProductId: f8a3b67c-9a0d-9b1e-4c2d-3e4f5a6b7c8d
                    ProductName: Commonwealth Bank of Australia
                    ProductType: BankAccount
                    IsContributionProduct: false
                    ProviderId: a9b4c78d-0b1e-0c2f-5d3e-4f5a6b7c8d9e
                    ProviderName: Commonwealth Bank
                    FirstProcessed: '2024-07-01T09:00:00'
                    LastProcessed: '2025-03-15T08:30:00'
                    FirstProcessedSpecified: true
                    LastProcessedSpecified: true
                    AuthorisationType: AccountHolder
                    AuthorisationStatus: Received
                    HasAuthorityProcess: true
                    AuthorityUploaded: true
                    AuthorityId: b0c5d89e-1c2f-1d3a-6e4f-5a6b7c8d9e0f
                    AdviserId: c1d6e90f-2d3a-2e4b-7f5a-6b7c8d9e0f1a
                    AdviserName: John Smith
                    AdviserCode: JS001
                  - FeedId: d2e3f4a5-6b7c-8d9e-0f1a-2b3c4d5e6f7a
                    FundId: e3f4a5b6-7c8d-9e0f-1a2b-3c4d5e6f7a8b
                    FundCode: test-fund
                    FundName: Test Fund
                    BrandId: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
                    BrandCode: demo-brand
                    BrandName: Demo Brand
                    BusinessId: d6e1a45f-7e8b-7f9c-2a0d-1b2c3d4e5f6a
                    BusinessCode: demo-business
                    BusinessName: Demo Business Pty Ltd
                    AccountName: null
                    FeedDescription: Macquarie Wrap - 555555
                    ExternalIdentifier: '555555'
                    DefaultDisplayName: Macquarie Wrap - 555555
                    HIN: null
                    BankAccountId: null
                    BSB: null
                    FeedStatus: AuthorityNotSent
                    FeedStatusCategory: ActionRequired
                    FeedStatusEffectiveDate: '2025-02-15T10:30:00'
                    ProductId: e9c5d88f-1d2e-2f3a-7b5c-6d7e8f9a0b1c
                    ProductName: Macquarie Wrap
                    ProductType: WrapAccount
                    IsContributionProduct: false
                    ProviderId: f0d6e99a-2e3f-3a4b-8c6d-7e8f9a0b1c2d
                    ProviderName: Macquarie Wrap
                    FirstProcessed: null
                    LastProcessed: null
                    FirstProcessedSpecified: false
                    LastProcessedSpecified: false
                    AuthorisationType: AccountHolder
                    AuthorisationStatus: Waiting
                    HasAuthorityProcess: true
                    AuthorityUploaded: false
                    AuthorityId: null
                    AdviserId: null
                    AdviserName: null
                    AdviserCode: null
                Errors: []
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.details.read
  /b/{businessCode}/feed-data/processing-summary/{feedId}:
    get:
      operationId: businessFeedProcessingSummaryByFeed
      summary: Feed processing summary by feed
      description: >-
        Retrieves the configuration and current status of a specific feed within
        a business.
      tags:
        - Business
      parameters:
        - $ref: '#/components/parameters/businessCodeParam'
        - name: feedId
          in: path
          description: The unique GUID identifier of the feed.
          required: true
          schema:
            type: string
            example: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                  - Errors
                properties:
                  Data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FeedData_FeedProcessingSummary'
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApiError'
              examples:
                bankAccountFeed:
                  summary: Bank Account Feed
                  value:
                    Data:
                      - FeedId: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
                        FundId: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
                        FundCode: demo-fund
                        FundName: Demo Super Fund
                        BrandId: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
                        BrandCode: demo-brand
                        BrandName: Demo Brand
                        BusinessId: d6e1a45f-7e8b-7f9c-2a0d-1b2c3d4e5f6a
                        BusinessCode: demo-business
                        BusinessName: Demo Business Pty Ltd
                        AccountName: Demo Fund Cash Account
                        FeedDescription: Commonwealth Bank of Australia - Cash Account
                        ExternalIdentifier: '12345678'
                        DefaultDisplayName: CBA Cash - demo-fund
                        HIN: null
                        BankAccountId: e7f2b56a-8f9b-8a0c-3d1e-2b3c4d5e6f7a
                        BSB: 000-000
                        FeedStatus: Ok
                        FeedStatusCategory: Working
                        FeedStatusEffectiveDate: '2025-01-01T00:00:00'
                        ProductId: f8a3b67c-9a0d-9b1e-4c2d-3e4f5a6b7c8d
                        ProductName: Commonwealth Bank of Australia
                        ProductType: BankAccount
                        IsContributionProduct: false
                        ProviderId: a9b4c78d-0b1e-0c2f-5d3e-4f5a6b7c8d9e
                        ProviderName: Commonwealth Bank
                        FirstProcessed: '2024-07-01T09:00:00'
                        LastProcessed: '2025-03-15T08:30:00'
                        FirstProcessedSpecified: true
                        LastProcessedSpecified: true
                        AuthorisationType: AccountHolder
                        AuthorisationStatus: Received
                        HasAuthorityProcess: true
                        AuthorityUploaded: true
                        AuthorityId: b0c5d89e-1c2f-1d3a-6e4f-5a6b7c8d9e0f
                        AdviserId: c1d6e90f-2d3a-2e4b-7f5a-6b7c8d9e0f1a
                        AdviserName: John Smith
                        AdviserCode: JS001
                    Errors: []
                brokerWrapFeed:
                  summary: Broker / Wrap Feed
                  value:
                    Data:
                      - FeedId: d2e3f4a5-6b7c-8d9e-0f1a-2b3c4d5e6f7a
                        FundId: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
                        FundCode: demo-fund
                        FundName: Demo Super Fund
                        BrandId: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
                        BrandCode: demo-brand
                        BrandName: Demo Brand
                        BusinessId: d6e1a45f-7e8b-7f9c-2a0d-1b2c3d4e5f6a
                        BusinessCode: demo-business
                        BusinessName: Demo Business Pty Ltd
                        AccountName: John Smith & Jane Smith ATF Demo Super Fund
                        FeedDescription: Macquarie Wrap - 555555
                        ExternalIdentifier: '555555'
                        DefaultDisplayName: Macquarie Wrap - 555555
                        HIN: X0012345678
                        BankAccountId: null
                        BSB: null
                        FeedStatus: Ok
                        FeedStatusCategory: Working
                        FeedStatusEffectiveDate: '2025-01-15T00:00:00'
                        ProductId: e9c5d88f-1d2e-2f3a-7b5c-6d7e8f9a0b1c
                        ProductName: Macquarie Wrap
                        ProductType: WrapAccount
                        IsContributionProduct: false
                        ProviderId: f0d6e99a-2e3f-3a4b-8c6d-7e8f9a0b1c2d
                        ProviderName: Macquarie Wrap
                        FirstProcessed: '2024-08-01T10:00:00'
                        LastProcessed: '2025-03-15T09:15:00'
                        FirstProcessedSpecified: true
                        LastProcessedSpecified: true
                        AuthorisationType: AccountHolder
                        AuthorisationStatus: Received
                        HasAuthorityProcess: true
                        AuthorityUploaded: true
                        AuthorityId: e1f7a90b-3d4e-4f5a-8b6c-7d8e9f0a1b2c
                        AdviserId: c1d6e90f-2d3a-2e4b-7f5a-6b7c8d9e0f1a
                        AdviserName: John Smith
                        AdviserCode: JS001
                    Errors: []
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.details.read
  /f/{businessCode}/{fundCode}/feed-data/processing-summary:
    get:
      operationId: fundFeedProcessingSummary
      summary: Feed processing summary
      description: >-
        Retrieves a summary of the configuration and current status of all feeds
        associated with a fund.
      tags:
        - Fund
      parameters:
        - $ref: '#/components/parameters/businessCodeParam'
        - $ref: '#/components/parameters/fundCodeParam'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                  - Errors
                properties:
                  Data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FeedData_FeedProcessingSummary'
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApiError'
              example:
                Data:
                  - FeedId: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
                    FundId: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
                    FundCode: demo-fund
                    FundName: Demo Super Fund
                    BrandId: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
                    BrandCode: demo-brand
                    BrandName: Demo Brand
                    BusinessId: d6e1a45f-7e8b-7f9c-2a0d-1b2c3d4e5f6a
                    BusinessCode: demo-business
                    BusinessName: Demo Business Pty Ltd
                    AccountName: Demo Fund Cash Account
                    FeedDescription: Commonwealth Bank of Australia - Cash Account
                    ExternalIdentifier: '12345678'
                    DefaultDisplayName: CBA Cash - demo-fund
                    HIN: null
                    BankAccountId: e7f2b56a-8f9b-8a0c-3d1e-2b3c4d5e6f7a
                    BSB: 000-000
                    FeedStatus: Ok
                    FeedStatusCategory: Working
                    FeedStatusEffectiveDate: '2025-01-01T00:00:00'
                    ProductId: f8a3b67c-9a0d-9b1e-4c2d-3e4f5a6b7c8d
                    ProductName: Commonwealth Bank of Australia
                    ProductType: BankAccount
                    IsContributionProduct: false
                    ProviderId: a9b4c78d-0b1e-0c2f-5d3e-4f5a6b7c8d9e
                    ProviderName: Commonwealth Bank
                    FirstProcessed: '2024-07-01T09:00:00'
                    LastProcessed: '2025-03-15T08:30:00'
                    FirstProcessedSpecified: true
                    LastProcessedSpecified: true
                    AuthorisationType: AccountHolder
                    AuthorisationStatus: Received
                    HasAuthorityProcess: true
                    AuthorityUploaded: true
                    AuthorityId: b0c5d89e-1c2f-1d3a-6e4f-5a6b7c8d9e0f
                    AdviserId: c1d6e90f-2d3a-2e4b-7f5a-6b7c8d9e0f1a
                    AdviserName: John Smith
                    AdviserCode: JS001
                  - FeedId: d2e3f4a5-6b7c-8d9e-0f1a-2b3c4d5e6f7a
                    FundId: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
                    FundCode: demo-fund
                    FundName: Demo Super Fund
                    BrandId: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
                    BrandCode: demo-brand
                    BrandName: Demo Brand
                    BusinessId: d6e1a45f-7e8b-7f9c-2a0d-1b2c3d4e5f6a
                    BusinessCode: demo-business
                    BusinessName: Demo Business Pty Ltd
                    AccountName: null
                    FeedDescription: Macquarie Wrap - 555555
                    ExternalIdentifier: '555555'
                    DefaultDisplayName: Macquarie Wrap - 555555
                    HIN: null
                    BankAccountId: null
                    BSB: null
                    FeedStatus: AuthorityNotSent
                    FeedStatusCategory: ActionRequired
                    FeedStatusEffectiveDate: '2025-02-15T10:30:00'
                    ProductId: e9c5d88f-1d2e-2f3a-7b5c-6d7e8f9a0b1c
                    ProductName: Macquarie Wrap
                    ProductType: WrapAccount
                    IsContributionProduct: false
                    ProviderId: f0d6e99a-2e3f-3a4b-8c6d-7e8f9a0b1c2d
                    ProviderName: Macquarie Wrap
                    FirstProcessed: null
                    LastProcessed: null
                    FirstProcessedSpecified: false
                    LastProcessedSpecified: false
                    AuthorisationType: AccountHolder
                    AuthorisationStatus: Waiting
                    HasAuthorityProcess: true
                    AuthorityUploaded: false
                    AuthorityId: null
                    AdviserId: null
                    AdviserName: null
                    AdviserCode: null
                Errors: []
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.details.read
  /f/{businessCode}/{fundCode}/feed-data/processing-summary/{feedId}:
    get:
      operationId: fundFeedProcessingSummaryByFeed
      summary: Feed processing summary by feed
      description: >-
        Retrieves the configuration and current status of a specific feed within
        a fund.
      tags:
        - Fund
      parameters:
        - $ref: '#/components/parameters/businessCodeParam'
        - $ref: '#/components/parameters/fundCodeParam'
        - name: feedId
          in: path
          description: The unique GUID identifier of the feed.
          required: true
          schema:
            type: string
            example: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                  - Errors
                properties:
                  Data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FeedData_FeedProcessingSummary'
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApiError'
              example:
                Data:
                  - FeedId: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
                    FundId: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
                    FundCode: demo-fund
                    FundName: Demo Super Fund
                    BrandId: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
                    BrandCode: demo-brand
                    BrandName: Demo Brand
                    BusinessId: d6e1a45f-7e8b-7f9c-2a0d-1b2c3d4e5f6a
                    BusinessCode: demo-business
                    BusinessName: Demo Business Pty Ltd
                    AccountName: Demo Fund Cash Account
                    FeedDescription: Commonwealth Bank of Australia - Cash Account
                    ExternalIdentifier: '12345678'
                    DefaultDisplayName: CBA Cash - demo-fund
                    HIN: null
                    BankAccountId: e7f2b56a-8f9b-8a0c-3d1e-2b3c4d5e6f7a
                    BSB: 000-000
                    FeedStatus: Ok
                    FeedStatusCategory: Working
                    FeedStatusEffectiveDate: '2025-01-01T00:00:00'
                    ProductId: f8a3b67c-9a0d-9b1e-4c2d-3e4f5a6b7c8d
                    ProductName: Commonwealth Bank of Australia
                    ProductType: BankAccount
                    IsContributionProduct: false
                    ProviderId: a9b4c78d-0b1e-0c2f-5d3e-4f5a6b7c8d9e
                    ProviderName: Commonwealth Bank
                    FirstProcessed: '2024-07-01T09:00:00'
                    LastProcessed: '2025-03-15T08:30:00'
                    FirstProcessedSpecified: true
                    LastProcessedSpecified: true
                    AuthorisationType: AccountHolder
                    AuthorisationStatus: Received
                    HasAuthorityProcess: true
                    AuthorityUploaded: true
                    AuthorityId: b0c5d89e-1c2f-1d3a-6e4f-5a6b7c8d9e0f
                    AdviserId: c1d6e90f-2d3a-2e4b-7f5a-6b7c8d9e0f1a
                    AdviserName: John Smith
                    AdviserCode: JS001
                Errors: []
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.details.read
  /f/{businessCode}/{fundCode}/feed-data/balance-summary:
    get:
      operationId: feedBalanceSummaryAll
      summary: Feed balance summary
      description: >-
        Retrieves a report of feed and ledger balances for all feeds associated
        with a fund. Returns an array of balance summaries for each feed,
        including aggregate counts and detailed per-holding balance information.
      tags:
        - Fund
      parameters:
        - $ref: '#/components/parameters/businessCodeParam'
        - $ref: '#/components/parameters/fundCodeParam'
        - name: includeHoldingBalance
          in: query
          description: Include holding balance details in the response.
          required: false
          schema:
            type: boolean
            default: false
        - name: asAtDate
          in: query
          description: The date for which to retrieve balance data.
          required: false
          schema:
            type: string
            example: '2024-07-01'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                  - Errors
                properties:
                  Data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FeedData_FeedBalanceSummary'
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApiError'
              examples:
                includeHoldingBalanceTrue:
                  summary: includeHoldingBalance=true
                  value:
                    Data:
                      - FeedId: a8275e0c-f5b7-4097-ac8e-4f40cd7a22df
                        DefaultDisplayName: CBA Savings Account - 000-111/11111111
                        BalancedAccounts: 1
                        UnbalancedAccounts: 0
                        OtherAccounts: 0
                        Status: Balanced
                        Balances:
                          - SecurityIssueCode: CASH
                            HoldingAccountCode: ha-cba-001
                            HoldingAccountId: d4e5f678-1a2b-3c4d-5e6f-7a8b9c0d1e2f
                            HoldingAccountDescription: CBA Cash Holdings
                            LedgerBalance: 125000.5
                            LedgerBalanceDate: '2025-03-15T08:30:00'
                            FeedBalance: 125000.5
                            FeedBalanceDate: '2025-03-15T08:30:00'
                            Status: Balanced
                      - FeedId: 5cf0e633-c0a1-41e7-8079-827fc2ee2376
                        DefaultDisplayName: ANZ Share Trading - 22222
                        BalancedAccounts: 1
                        UnbalancedAccounts: 1
                        OtherAccounts: 0
                        Status: Unbalanced
                        Balances:
                          - SecurityIssueCode: BHP
                            HoldingAccountCode: ha-bhp-002
                            HoldingAccountId: e5f67890-2b3c-4d5e-6f7a-8b9c0d1e2f3a
                            HoldingAccountDescription: BHP Group Ltd
                            LedgerBalance: 5000
                            LedgerBalanceDate: '2025-03-15T08:30:00'
                            FeedBalance: 5000
                            FeedBalanceDate: '2025-03-15T08:30:00'
                            Status: Balanced
                          - SecurityIssueCode: CBA
                            HoldingAccountCode: ha-cba-003
                            HoldingAccountId: f6a78901-3c4d-5e6f-7a8b-9c0d1e2f3a4b
                            HoldingAccountDescription: Commonwealth Bank of Australia
                            LedgerBalance: 31050
                            LedgerBalanceDate: '2025-03-15T08:30:00'
                            FeedBalance: 31200.75
                            FeedBalanceDate: '2025-03-15T08:30:00'
                            Status: Unbalanced
                      - FeedId: e3162ac4-a1f4-4cfd-a00d-d31bd4808170
                        DefaultDisplayName: Macquarie Cash Account - 000-222/33333333
                        BalancedAccounts: 0
                        UnbalancedAccounts: 0
                        OtherAccounts: 1
                        Status: NoData
                        Balances:
                          - SecurityIssueCode: CASH
                            HoldingAccountCode: ha-mqg-004
                            HoldingAccountId: a7b89012-4d5e-6f7a-8b9c-0d1e2f3a4b5c
                            HoldingAccountDescription: Macquarie Cash Management
                            LedgerBalance: 0
                            LedgerBalanceDate: '2025-03-15T08:30:00'
                            FeedBalance: null
                            FeedBalanceDate: null
                            Status: NoData
                    Errors: []
                includeHoldingBalanceFalse:
                  summary: includeHoldingBalance=false
                  value:
                    Data:
                      - FeedId: a8275e0c-f5b7-4097-ac8e-4f40cd7a22df
                        DefaultDisplayName: CBA Savings Account - 000-111/11111111
                        BalancedAccounts: 1
                        UnbalancedAccounts: 0
                        OtherAccounts: 0
                        Status: Balanced
                        Balances: null
                      - FeedId: 5cf0e633-c0a1-41e7-8079-827fc2ee2376
                        DefaultDisplayName: ANZ Share Trading - 22222
                        BalancedAccounts: 1
                        UnbalancedAccounts: 1
                        OtherAccounts: 0
                        Status: Unbalanced
                        Balances: null
                      - FeedId: e3162ac4-a1f4-4cfd-a00d-d31bd4808170
                        DefaultDisplayName: Macquarie Cash Account - 000-222/33333333
                        BalancedAccounts: 0
                        UnbalancedAccounts: 0
                        OtherAccounts: 1
                        Status: NoData
                        Balances: null
                    Errors: []
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.details.read
  /f/{businessCode}/{fundCode}/feed-data/balance-summary/{feedId}:
    get:
      operationId: feedBalanceSummary
      summary: Feed balance summary by feed
      description: >-
        Retrieves a report of feed and ledger balances for a specific feed
        within a fund, including aggregate counts of how many accounts are
        balanced, unbalanced, or have no data.
      tags:
        - Fund
      parameters:
        - $ref: '#/components/parameters/businessCodeParam'
        - $ref: '#/components/parameters/fundCodeParam'
        - name: feedId
          in: path
          description: The unique GUID identifier of the feed to retrieve balance data for.
          required: true
          schema:
            type: string
            example: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
        - name: includeHoldingBalance
          in: query
          description: Include holding balance details in the response.
          required: false
          schema:
            type: boolean
            default: false
        - name: asAtDate
          in: query
          description: The date for which to retrieve balance data.
          required: false
          schema:
            type: string
            example: '2024-07-01'
      responses:
        '200':
          description: Success (Ok)
          content:
            application/json:
              schema:
                type: object
                required:
                  - Data
                  - Errors
                properties:
                  Data:
                    type: array
                    items:
                      $ref: '#/components/schemas/FeedData_FeedBalanceSummary'
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApiError'
              examples:
                includeHoldingBalanceTrue:
                  summary: includeHoldingBalance=true
                  value:
                    Data:
                      - FeedId: a8275e0c-f5b7-4097-ac8e-4f40cd7a22df
                        DefaultDisplayName: CBA Savings Account - 000-111/11111111
                        BalancedAccounts: 1
                        UnbalancedAccounts: 0
                        OtherAccounts: 0
                        Status: Balanced
                        Balances:
                          - SecurityIssueCode: CASH
                            HoldingAccountCode: ha-cba-001
                            HoldingAccountId: d4e5f678-1a2b-3c4d-5e6f-7a8b9c0d1e2f
                            HoldingAccountDescription: CBA Cash Holdings
                            LedgerBalance: 125000.5
                            LedgerBalanceDate: '2025-03-15T08:30:00'
                            FeedBalance: 125000.5
                            FeedBalanceDate: '2025-03-15T08:30:00'
                            Status: Balanced
                    Errors: []
                includeHoldingBalanceFalse:
                  summary: includeHoldingBalance=false
                  value:
                    Data:
                      - FeedId: a8275e0c-f5b7-4097-ac8e-4f40cd7a22df
                        DefaultDisplayName: CBA Savings Account - 000-111/11111111
                        BalancedAccounts: 1
                        UnbalancedAccounts: 0
                        OtherAccounts: 0
                        Status: Balanced
                        Balances: null
                    Errors: []
        '400':
          description: Error Message
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/UnauthorizedErrorCommon'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ForbiddenErrorCommon'
        '404':
          description: Resource not available or user does not have access to the fund
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResourceUnavailableErrorCommon'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                type: object
                properties:
                  Errors:
                    type: array
                    items:
                      $ref: '#/components/schemas/InternalErrorCommon'
      security:
        - Class_oAuth:
            - fund.details.read
components:
  parameters:
    businessCodeParam:
      name: businessCode
      in: path
      description: Class business code
      required: true
      schema:
        type: string
        example: demo-business
      example: demo-business
    fundCodeParam:
      name: fundCode
      description: Class entity code
      in: path
      required: true
      schema:
        type: string
        example: demo-fund
      example: demo-fund
  schemas:
    ApiError:
      type: object
      required:
        - Code
        - Message
      properties:
        Code:
          type: string
        Message:
          type: string
    AuthorisationStatus:
      type: string
      enum:
        - Waiting
        - Received
        - ReceivedBarcodeUnrecognised
        - ReceivedIncorrectPageCount
        - ReceivedBarCodeMismatch
    AuthorisationType:
      type: string
      enum:
        - None
        - AccountHolder
        - AdviserOrDealer
        - Online
    BalanceStatus:
      type: string
      enum:
        - NoData
        - Balanced
        - Unbalanced
    FeedData_BalanceInfo:
      type: object
      description: >-
        Represents the balance details for a single holding account, comparing
        the ledger balance against the feed balance to determine reconciliation
        status.
      required:
        - SecurityIssueCode
        - HoldingAccountCode
        - HoldingAccountId
        - HoldingAccountDescription
        - LedgerBalance
        - LedgerBalanceDate
        - Status
      properties:
        SecurityIssueCode:
          type: string
          description: >-
            The ASX or exchange code identifying the security associated with
            this holding.
          example: CASH
        HoldingAccountCode:
          type: string
          description: The unique code identifying the holding account within the fund.
          example: ha-cba-001
        HoldingAccountId:
          type: string
          description: The unique GUID identifier of the holding account.
          example: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
        HoldingAccountDescription:
          type: string
          description: A human-readable description of the holding account.
          example: CBA Cash Account
        LedgerBalance:
          type: number
          format: decimal
          description: The balance recorded in the Class ledger for this holding.
          example: 152500
        LedgerBalanceDate:
          type: string
          format: date-time
          description: The date as of which the ledger balance was recorded.
          example: '2025-03-15'
        FeedBalance:
          type: number
          format: decimal
          description: The balance reported by the data feed provider for this holding.
          example: 152500
          nullable: true
        FeedBalanceDate:
          type: string
          format: date-time
          description: The date as of which the feed balance was reported by the provider.
          example: '2025-03-15'
          nullable: true
        Status:
          $ref: '#/components/schemas/BalanceStatus'
          description: >-
            The reconciliation status comparing the ledger balance to the feed
            balance.
    FeedData_FeedBalanceSummary:
      type: object
      description: >-
        A summary of feed and ledger balance reconciliation for a specific feed,
        including counts of balanced and unbalanced accounts and the detailed
        per-holding balance list.
      required:
        - FeedId
        - DefaultDisplayName
        - BalancedAccounts
        - UnbalancedAccounts
        - OtherAccounts
        - Status
        - Balances
      properties:
        FeedId:
          type: string
          description: The unique GUID identifier of the feed.
          example: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
        DefaultDisplayName:
          type: string
          description: The default display name of the feed as configured in Class.
          example: CBA Cash - demo-fund
        BalancedAccounts:
          type: integer
          format: int32
          description: >-
            The number of holding accounts where the ledger balance matches the
            feed balance.
          example: 3
        UnbalancedAccounts:
          type: integer
          format: int32
          description: >-
            The number of holding accounts where the ledger balance does not
            match the feed balance.
          example: 1
        OtherAccounts:
          type: integer
          format: int32
          description: >-
            The number of holding accounts with no feed data or in an
            indeterminate reconciliation state.
          example: 0
        Status:
          $ref: '#/components/schemas/FeedBalanceStatus'
          description: The overall reconciliation status of the feed.
        Balances:
          type: array
          description: A list of individual holding account balance details for this feed.
          items:
            $ref: '#/components/schemas/FeedData_BalanceInfo'
          nullable: true
    FeedData_FeedProcessingSummary:
      type: object
      description: >-
        Represents the full configuration and current processing status of a
        single data feed, including fund, brand, business, product, provider,
        and authorisation details.
      required:
        - FeedId
        - FundId
        - FundCode
        - FundName
        - BrandId
        - BrandCode
        - BrandName
        - BusinessId
        - BusinessCode
        - BusinessName
        - AccountName
        - FeedDescription
        - ExternalIdentifier
        - DefaultDisplayName
        - HIN
        - BankAccountId
        - BSB
        - FeedStatus
        - FeedStatusCategory
        - FeedStatusEffectiveDate
        - ProductId
        - ProductName
        - ProductType
        - IsContributionProduct
        - ProviderId
        - ProviderName
        - FirstProcessedSpecified
        - LastProcessedSpecified
        - AuthorisationType
        - AuthorisationStatus
        - HasAuthorityProcess
        - AuthorityUploaded
        - AuthorityId
        - AdviserId
        - AdviserName
        - AdviserCode
      properties:
        FeedId:
          type: string
          description: The unique GUID identifier of the feed.
          example: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e
        FundId:
          type: string
          description: The unique GUID identifier of the fund this feed belongs to.
          example: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f
        FundCode:
          type: string
          description: The unique code identifying the fund within Class.
          example: demo-fund
        FundName:
          type: string
          description: The display name of the fund.
          example: Demo Super Fund
        BrandId:
          type: string
          description: The unique GUID identifier of the brand associated with this feed.
          example: c5d0f34e-6d7a-6e8b-1f9c-0a1b2c3d4e5f
        BrandCode:
          type: string
          description: The short code identifying the brand.
          example: demo-brand
        BrandName:
          type: string
          description: The display name of the brand.
          example: Demo Brand
        BusinessId:
          type: string
          description: The unique GUID identifier of the business that manages this feed.
          example: d6e1a45f-7e8b-7f9c-2a0d-1b2c3d4e5f6a
        BusinessCode:
          type: string
          description: The unique code identifying the business within Class.
          example: demo-business
        BusinessName:
          type: string
          description: The display name of the business.
          example: Demo Business Pty Ltd
        AccountName:
          type: string
          description: The name of the account as returned by the data provider.
          example: Demo Fund Cash Account
          nullable: true
        FeedDescription:
          type: string
          description: >-
            A descriptive label for the feed, typically including the provider
            and account type.
          example: Commonwealth Bank of Australia - Cash Account
        ExternalIdentifier:
          type: string
          description: >-
            The external account identifier used by the data provider (e.g. BSB
            and account number combination).
          example: '12345678'
          nullable: true
        DefaultDisplayName:
          type: string
          description: The default display name shown for this feed in Class.
          example: CBA Cash - demo-fund
        HIN:
          type: string
          description: >-
            The Holder Identification Number for broker feeds. Empty for
            non-broker feeds.
          example: ''
          nullable: true
        BankAccountId:
          type: string
          description: >-
            The unique GUID identifier of the linked bank account record in
            Class.
          example: e7f2h56a-8f9b-8a0c-3d1e-2b3c4d5e6f7a
          nullable: true
        BSB:
          type: string
          description: The Bank State Branch number for bank account feeds.
          example: 000-000
          nullable: true
        FeedStatus:
          $ref: '#/components/schemas/FeedStatus'
          description: The current operational status of the feed.
        FeedStatusCategory:
          $ref: '#/components/schemas/FeedStatusCategory'
          description: The broad category grouping of the current feed status.
        FeedStatusEffectiveDate:
          type: string
          format: date-time
          description: The date from which the current feed status has been in effect.
          example: '2025-01-01'
        ProductId:
          type: string
          description: >-
            The unique GUID identifier of the financial product associated with
            this feed.
          example: f8a3b67c-9a0d-9b1e-4c2d-3e4f5a6b7c8d
          nullable: true
        ProductName:
          type: string
          description: The display name of the financial product.
          example: CBA Cash Account
          nullable: true
        ProductType:
          $ref: '#/components/schemas/ProductType'
          description: The type classification of the financial product.
        IsContributionProduct:
          type: boolean
          description: >-
            Indicates whether the product is configured to accept superannuation
            contributions.
          example: false
        ProviderId:
          type: string
          description: The unique GUID identifier of the data feed provider.
          example: a9b4c78d-0b1e-0c2f-5d3e-4f5a6b7c8d9e
          nullable: true
        ProviderName:
          type: string
          description: The display name of the data feed provider.
          example: Commonwealth Bank of Australia
          nullable: true
        FirstProcessed:
          type: string
          format: date-time
          description: The date the feed was first successfully processed.
          example: '2024-07-01'
          nullable: true
        LastProcessed:
          type: string
          format: date-time
          description: The date the feed was most recently processed.
          example: '2025-03-15'
          nullable: true
        FirstProcessedSpecified:
          type: boolean
          description: >-
            Indicates whether a first processed date has been recorded for this
            feed.
          example: true
        LastProcessedSpecified:
          type: boolean
          description: >-
            Indicates whether a last processed date has been recorded for this
            feed.
          example: true
        AuthorisationType:
          $ref: '#/components/schemas/AuthorisationType'
          description: The method used to authorise the data feed with the provider.
        AuthorisationStatus:
          $ref: '#/components/schemas/AuthorisationStatus'
          description: The current status of the feed authorisation process.
        HasAuthorityProcess:
          type: boolean
          description: >-
            Indicates whether a formal authority process (e.g. signed authority
            form) is required for this feed.
          example: false
        AuthorityUploaded:
          type: boolean
          description: Indicates whether the authority document has been uploaded to Class.
          example: false
        AuthorityId:
          type: string
          description: >-
            The unique GUID identifier of the authority record. Empty if no
            authority process exists.
          example: b0c5d89e-1c2f-1d3a-6e4f-5a6b7c8d9e0f
          nullable: true
        AdviserId:
          type: string
          description: The unique GUID identifier of the adviser associated with this feed.
          example: c1d6e90f-2d3a-2e4b-7f5a-6b7c8d9e0f1a
          nullable: true
        AdviserName:
          type: string
          description: The full name of the adviser associated with this feed.
          example: John Smith
          nullable: true
        AdviserCode:
          type: string
          description: The short code identifying the adviser within Class.
          example: JS001
          nullable: true
    FeedStatus:
      type: string
      enum:
        - Ok
        - ManuallyImported
        - FeedNotSupported
        - DeclinedByAuthoriser
        - AfterEndDate
        - SrnNotSupported
        - AccountClosed
        - WaitingForStartDate
        - WaitingOnAuthoriser
        - WaitingOnProvider
        - FollowUpRequested
        - ReceivedByProvider
        - ActivatedByProvider
        - ActivationOverdue
        - WaitingForVerification
        - ProductNotSet
        - AuthorityNotSent
        - AdviserNotSet
        - WrapOrBrokerAccountNotSet
        - AccountNumberNotSet
        - BsbNotValid
        - RejectedByProvider
        - UnlinkedHoldings
        - FeedNoLongerActive
        - Unknown
        - AccountSuspended
        - NonBankAccount
        - LinkedToWrapOrBrokerAccount
        - FeedTurnedOff
        - WaitingForFirstData
    FeedStatusCategory:
      type: string
      enum:
        - ActionRequired
        - Waiting
        - NoFeed
        - Working
        - Disabled
        - Error
    ProductType:
      type: string
      enum:
        - Other
        - BankAccount
        - BrokerAccount
        - WrapAccount
        - TermDeposit
    InternalErrorCommon:
      type: object
      properties:
        Code:
          type: string
          example: API_INTERNAL_ERROR
        Message:
          type: string
          example: An unexpected error occurred on the server. Please try again later.
    ErrorResponse:
      type: object
      properties:
        code:
          type: string
          nullable: true
        message:
          type: string
          nullable: true
      additionalProperties: false
    ForbiddenErrorCommon:
      type: object
      properties:
        Code:
          type: string
          example: FORBIDDEN
        Message:
          type: string
          example: You do not have permission to access this resource.
    ResourceUnavailableErrorCommon:
      type: object
      properties:
        Code:
          type: string
          example: API_NOT_FOUND
        Message:
          type: string
          example: Resource not available or user does not have access to the fund.
    UnauthorizedErrorCommon:
      type: object
      properties:
        Code:
          type: string
          example: API_NOT_AUTHORISED
        Message:
          type: string
          example: Not authorised
    FeedBalanceStatus:
      type: string
      description: >-
        The overall reconciliation status of a feed. An empty string indicates
        the status has not yet been determined.
      enum:
        - ''
        - Balanced
        - Unbalanced
        - NoData
  securitySchemes:
    Class_oAuth:
      type: oauth2
      description: Class uses oAuth2 and OpenID for authentication and authorisation
      flows:
        authorizationCode:
          authorizationUrl: https://apigateway.class-pie.com.au/connect/authorize
          tokenUrl: https://apigateway.class-pie.com.au/connect/token
          scopes:
            business.fund.list: List summarised data of funds in the business
            business.fund.create: Create new funds in the business
            fund.details.read: View basic fund details
            fund.details.maintain: View and maintain basic fund details
            fund.member.read: View member details
            fund.member.maintain: View and maintain member details
            fund.read: View all fund information
            fund.maintain: View and maintain all fund information
