{
  "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.\n- Retrieve a summary of the configuration and current status of all feeds in a business or fund.\n\n\n<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"
            }
          }
        }
      }
    }
  }
}