{"package":"BIDS","pdr_config":{"mappings":[{"REPORT_NAME":"BIDS","REPORT_SUB_TYPE":"BIDOFFERPERIOD","VERSION":2},{"REPORT_NAME":"BIDS","REPORT_SUB_TYPE":"BIDOFFERPERIOD","VERSION":3},{"REPORT_NAME":"BIDS","REPORT_SUB_TYPE":"BIDOFFERPERIOD_SPARSE","VERSION":1},{"REPORT_NAME":"BIDS","REPORT_SUB_TYPE":"BIDOFFERPERIOD_SPARSE","VERSION":2},{"REPORT_NAME":"OFFER","REPORT_SUB_TYPE":"BIDOFFERPERIOD","VERSION":1,"hard_coded":true}],"transaction_type":"INSERT"},"documentation_urls":["https://nemweb.com.au/Reports/Current/MMSDataModelReport/Electricity/ElectricityDataModelReport_files/Elec10.htm#34"],"comment":"BIDOFFERPERIOD shows 5-minute period-based Energy and Ancillary Service bid data.BIDOFFERPERIOD is a child table of BIDDAYOFFER","primary_keys":["BIDTYPE","DIRECTION","DUID","OFFERDATETIME","PERIODID","TRADINGDATE"],"columns":{"BIDTYPE":{"sql_type":"VARCHAR2(10)","pl_type":"pl.Enum([\"ENERGY\", \"LOWERREG\", \"LOWER60SEC\", \"RAISE5MIN\", \"LOWER5MIN\", \"LOWER6SEC\", \"RAISE60SEC\", \"RAISE6SEC\", \"RAISEREG\", \"RAISE1SEC\", \"LOWER1SEC\"])","mandatory":true,"comment":"The type of bid, one-of ENERGY, RAISE6SEC, RAISE60SEC, RAISE5MIN, RAISEREG, LOWER6SEC, LOWER60SEC, LOWER5MIN, LOWERREG","examples":null,"tips":["The meaning of these values is documented in the `BIDTYPES` table."],"enums":["ENERGY","LOWERREG","LOWER60SEC","RAISE5MIN","LOWER5MIN","LOWER6SEC","RAISE60SEC","RAISE6SEC","RAISEREG","RAISE1SEC","LOWER1SEC"]},"DIRECTION":{"sql_type":"VARCHAR2(20)","pl_type":"str","mandatory":false,"comment":"The power flow direction to which this offer applies: GEN, LOAD or BIDIRECTIONAL","examples":["BIDIRECTIONAL"],"warnings":["Despite AEMO's documentation saying that this column is mandatory, it is missing from older files. It was added to the schema in [version 5.3](https://tech-specs.docs.public.aemo.com.au/Content/TSP_EMMSDM53_April2024/Participant_Impact.htm#NEXTDAYbids)."]},"DUID":{"sql_type":"VARCHAR2(20)","pl_type":"pl.Categorical","mandatory":true,"comment":"Dispatchable Unit ID","examples":["WDBESS1","W/HOE#2"],"warnings":["This column may contain funny characters such as / (slash) or # (hash). This may break hive-style partitioning.\n"],"is_categorical":true},"OFFERDATETIME":{"sql_type":"TIMESTAMP(3)","pl_type":"pl.Datetime()","mandatory":true,"comment":"Time this bid was processed and loaded","examples":["2026/09/30 06:07:29.000"],"parse_csv_as_string":true,"is_ms_datetime":true},"PERIODID":{"sql_type":"NUMBER(3,0)","pl_type":"pl.Int16","mandatory":true,"comment":"Period ID 1 to 288","examples":["1","288"],"is_integer":true,"num_int_bits":16},"TRADINGDATE":{"sql_type":"DATE","pl_type":"pl.Date()","mandatory":true,"comment":"The trading date this bid is for","examples":["2026/09/30 00:00:00"],"parse_csv_as_string":true,"is_date":true},"BANDAVAIL1":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Availability at price band 1","examples":["0"],"is_float":true},"BANDAVAIL2":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Availability at price band 2","examples":["0"],"is_float":true},"BANDAVAIL3":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Availability at price band 3","examples":["0"],"is_float":true},"BANDAVAIL4":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Availability at price band 4","examples":["6"],"is_float":true},"BANDAVAIL5":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Availability at price band 5","examples":["9"],"is_float":true},"BANDAVAIL6":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Availability at price band 6","examples":["5"],"is_float":true},"BANDAVAIL7":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Availability at price band 7","examples":["5"],"is_float":true},"BANDAVAIL8":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Availability at price band 8","examples":["5"],"is_float":true},"BANDAVAIL9":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Availability at price band 9","examples":["0"],"is_float":true},"BANDAVAIL10":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Availability at price band 10","examples":["110"],"is_float":true},"ENABLEMENTMAX":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Maximum Energy Output (MW) at which this ancillary service can be supplied (AS Only)","examples":["35","255"],"is_float":true},"ENABLEMENTMIN":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Minimum Energy Output (MW) at which this ancillary service becomes available (AS Only)","examples":["-25","-255"],"is_float":true},"ENERGYLIMIT":{"sql_type":"NUMBER(15,5)","pl_type":"pl.Float64","mandatory":false,"comment":"The Energy limit applying at the end of this dispatch interval in MWh. For GEN this is a lower energy limit. For LOAD this is an upper energy limit","is_float":true},"FIXEDLOAD":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Fixed unit output MW (Energy bids only) A null value means no fixed load so the unit is dispatched according to bid and market","is_float":true},"HIGHBREAKPOINT":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Maximum Energy Output (MW) at which the unit can provide the full availability (MAXAVAIL) for this ancillary service (AS Only)","examples":["0","1","115"],"is_float":true},"LOWBREAKPOINT":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Minimum Energy Output (MW) at which the unit can provide the full availability (MAXAVAIL) for this ancillary service (AS Only)","examples":["-25","-255"],"is_float":true},"MAXAVAIL":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Maximum availability for this BidType in this period","examples":["35","140"],"is_float":true},"PASAAVAILABILITY":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"Allows for future use for Energy bids, being the physical plant capability including any capability potentially available within 24 hours","examples":["6"],"is_float":true},"PERIODIDTO":{"sql_type":"NUMBER(3,0)","pl_type":"pl.Int16","mandatory":false,"comment":"Period ID Ending","examples":["1","288"],"is_integer":true,"num_int_bits":16},"RAMPDOWNRATE":{"sql_type":"NUMBER(6)","pl_type":"pl.Int32","mandatory":false,"comment":"MW/Min for lower (Energy bids only)","examples":["2"],"is_integer":true,"num_int_bits":32},"RAMPUPRATE":{"sql_type":"NUMBER(6)","pl_type":"pl.Int32","mandatory":false,"comment":"MW/Min for raise (Energy bids only)","examples":["2"],"is_integer":true,"num_int_bits":32},"RECALL_PERIOD":{"sql_type":"NUMBER(8,3)","pl_type":"pl.Float64","mandatory":false,"comment":"The advance notice(in hours) that a Scheduled Resource requires to achieve the PASA Availability MW for this trading interval","is_float":true}},"example_zip_url":"https://www.nemweb.com.au/Data_Archive/Wholesale_Electricity/MMSDM/2026/MMSDM_2026_09/MMSDM_Historical_Data_SQLLoader/DATA/PUBLIC_ARCHIVE%23BIDOFFERPERIOD%23FILE64%23202609010000.zip","manifest_summary":{"max_files_per_month":64,"first_month":{"year":2021,"month":3},"last_month":{"year":2026,"month":9},"compressed_size_per_month":17663469618,"decompressed_size_all_time":4583053157380},"visibility":"Private & Public Next-Day","warnings":[{"msg":"The filenames of zips may not correspond to the tables. These can be mixed up with BIDPEROFFER. Check column 2 and 3 inside the CSV against `REPORT_NAME` and `REPORT_SUBTYPE` to be sure. I have already done this for you, and listed all URLs in [this metadata file](../../manifests/per_table/csv/BIDOFFERPERIOD.csv).\n","category":"filenames"}],"trigger":"Data is published whenever new bid data arrives"}