{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/azupay/main/json-schema/azupay-report-list-model-schema.json",
  "title": "ReportListModel",
  "x-generated": "2026-10-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/azupay-billing-and-transaction-reports-api-openapi.yml#/components/schemas/ReportListModel",
  "type": "object",
  "properties": {
    "month": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}$"
    },
    "reports": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "reportId": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "MT940",
              "Transaction Report",
              "Billing Report"
            ]
          },
          "fromDate": {
            "$ref": "#/$defs/fromDateWithTZO"
          },
          "toDate": {
            "$ref": "#/$defs/toDateWithTZO"
          },
          "clientId": {
            "type": "string"
          },
          "moreResultsPossible": {
            "type": "boolean",
            "description": "Optional field. Only applicable if `startDate` and `endDate` are supplied.\n\n**true** if the provided range (`startDate` - `endDate`) resulted in report's result-set that \nexceed the allowed maximum records (10,000)\n\nWhen it is true, our recommendation is to narrow the range (`startDate` - `endDate`) and retry\n"
          }
        },
        "required": [
          "reportId",
          "type",
          "fromDate",
          "toDate",
          "clientId"
        ]
      }
    }
  },
  "$defs": {
    "fromDateWithTZO": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}[+\\-]\\d{2}:\\d{2}$",
      "description": "The report date in ISO date/time string format with timezone offset"
    },
    "toDateWithTZO": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}[+\\-]\\d{2}:\\d{2}$",
      "description": "The report date in ISO date/time string format with timezone offset"
    }
  }
}