{
  "openapi": "3.1.0",
  "info": {
    "title": "State and non-state school details, Queensland query API",
    "version": "2022-09-12",
    "summary": "Filter, page and aggregate State and non-state school details, Queensland from Department of Education.",
    "description": "The query API returns only the rows you ask for, as JSON, NDJSON or CSV, from the same typed rows as the files. It needs no key. The API allows 60 requests in 10 seconds from one address. Above that it answers 429 for 10 seconds with a `Retry-After` header, a `RateLimit-Policy` header and a JSON body that gives the limit. Every API answer carries the same `RateLimit-Policy`. A client should wait the `Retry-After` seconds, or read the files, which have no limit. Every JSON answer carries the version, licence and attribution. CSV and NDJSON answers carry them in response headers. Department of Education has not endorsed this site. The whole site is described in https://publicdata.au/openapi.json.",
    "license": {
      "name": "CC BY 4.0",
      "url": "https://creativecommons.org/licenses/by/4.0/"
    }
  },
  "servers": [
    {
      "url": "https://publicdata.au"
    }
  ],
  "externalDocs": {
    "url": "https://publicdata.au/d/qld-school-details/#query"
  },
  "tags": [
    {
      "name": "query"
    }
  ],
  "paths": {
    "/api/v1/datasets/qld-school-details/rows": {
      "get": {
        "tags": [
          "query"
        ],
        "summary": "Query State and non-state school details, Queensland",
        "operationId": "queryRows_qld_school_details",
        "description": "Rows of State and non-state school details, Queensland in the newest loaded version, filtered and paged. Each filter is `field=operator.value` in the query string, and every filter must match. A number or date field compares as a number or date, and a text field compares as text. Values are case-sensitive except with `ilike`. Prefix `not.` to negate a filter, as `not.eq.value`. Operators: `eq.value`, `neq.value`, `gt.value`, `gte.value`, `lt.value`, `lte.value`, `like.*text*`, `ilike.*text*`, `in.(a,b,c)`, `is.null`.",
        "parameters": [
          {
            "name": "centre_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The department's centre code, kept as text."
          },
          {
            "name": "centre_name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "centre_type",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. For example State School, State High School, Special School or Non-State School. Values: Community School, Educational Unit, Non-State School, School of Distance Education, Special School, Specific Purpose School, State High School, State School.",
            "examples": [
              "eq.State School"
            ]
          },
          {
            "name": "centre_status",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Open.",
            "examples": [
              "eq.Open"
            ]
          },
          {
            "name": "host_centre_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "host_centre_name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "official_low_year_level",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Early Childhood, Prep Year, Year 1, Year 10, Year 11, Year 12, Year 2, Year 3, Year 4, Year 5, Year 6, Year 7, Year 8.",
            "examples": [
              "eq.Year 8"
            ]
          },
          {
            "name": "official_high_year_level",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Year 10, Year 11, Year 12, Year 3, Year 4, Year 5, Year 6, Year 7, Year 8, Year 9.",
            "examples": [
              "eq.Year 9"
            ]
          },
          {
            "name": "officer_in_charge_title",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Chief Executive Officer, Director, Executive Principal, Facilitator, Head of College, Head of School, Headmaster, Principal, Rector, Unknown.",
            "examples": [
              "eq.Unknown"
            ]
          },
          {
            "name": "school_band",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer. The department's classification band for a state school. Blank for non-state schools. Values: 5, 6, 7, 8, 9, 10, 11.",
            "examples": [
              "eq.11"
            ]
          },
          {
            "name": "show_holiday_date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The local show holiday the school observed, as published (for example 10-Aug-20).",
            "examples": [
              "eq.9-Sep-20"
            ]
          },
          {
            "name": "internet_site",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "phone_number",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "restrict_contact_outside_teaching_hours",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Y, N or blank. Values: N, Y.",
            "examples": [
              "eq.Y"
            ]
          },
          {
            "name": "fax_number",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_line_1",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: A Block, Building 30, JCU, Cameron Downs Station, Cleveland Youth Detention, Coorparoo State College, Destiny Church, District Office, Griffith Uni Mt Gravatt Campus, Kalamia Estate, Level 1, Level 3, Level 8 Children's Hospital, Milford Place, North Stradbroke Island, Recreation Reserve, Secondary Campus, TAFE Campus.",
            "examples": [
              "eq.TAFE Campus"
            ]
          },
          {
            "name": "actual_address_line_2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_line_3",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_post_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_1",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_3",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.via Warwick"
            ]
          },
          {
            "name": "postal_address_post_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "education_geographic_region",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Central Queensland, Darling Downs South West, Far North Queensland, Metropolitan, North Coast, North Queensland, South East.",
            "examples": [
              "eq.South East"
            ]
          },
          {
            "name": "federal_electorate",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Wright"
            ]
          },
          {
            "name": "state_electorate",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Woodridge"
            ]
          },
          {
            "name": "local_government_area",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Yarrabah (S)"
            ]
          },
          {
            "name": "statistical_area_level2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "statistical_area_level2_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "remoteness_area",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Inner Regional Australia, Major Cities of Australia, Outer Regional Australia, Remote Australia, Very Remote Australia.",
            "examples": [
              "eq.Very Remote Australia"
            ]
          },
          {
            "name": "enrolment_effective_date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The census the student count is from, for example 2019 July. Blank for non-state schools. Values: 2019 July.",
            "examples": [
              "eq.2019 July"
            ]
          },
          {
            "name": "all_student_count",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer. From 2 to 3975."
          },
          {
            "name": "campus_all_student_count",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer."
          },
          {
            "name": "abn",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "sector",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. State or Non-State. Values: Non-State, State.",
            "examples": [
              "eq.State"
            ]
          },
          {
            "name": "non_state_sector",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Catholic or Independent. Values: Catholic, Independent.",
            "examples": [
              "eq.Independent"
            ]
          },
          {
            "name": "longitude",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "number. From 138.120361 to 153.528752."
          },
          {
            "name": "latitude",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "number. From -28.970971 to -10.581798."
          },
          {
            "name": "select",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Fields to return, comma-separated. Every field when absent."
          },
          {
            "name": "order",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "`field.asc` or `field.desc`, comma-separated. The publisher's row order when absent."
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 10000,
              "default": 100
            },
            "description": "Rows per page, 1 to 10,000. 100 when absent."
          },
          {
            "name": "offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 0,
              "default": 0
            },
            "description": "Rows to skip. The `next` URL in each answer sets it for you."
          },
          {
            "name": "format",
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "json",
                "ndjson",
                "csv"
              ],
              "default": "json"
            },
            "description": "`json`, `ndjson` or `csv`. JSON carries the provenance header, and the others carry it in response headers."
          }
        ],
        "responses": {
          "200": {
            "description": "Rows with the version, licence and attribution. `next` is the URL of the following page, or null."
          },
          "400": {
            "description": "The query names a field the dataset does not have, or a value of the wrong type."
          },
          "404": {
            "description": "The dataset or version is not loaded for queries."
          },
          "429": {
            "description": "More than 60 requests in 10 seconds from one address. Blocked for 10 seconds. Wait `Retry-After` seconds.",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                },
                "description": "Seconds until the block lifts."
              },
              "RateLimit-Policy": {
                "schema": {
                  "type": "string"
                },
                "description": "The limit, as \"fair-use\";q=60;w=10."
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "status": {
                      "type": "integer",
                      "const": 429
                    },
                    "limit": {
                      "type": "integer"
                    },
                    "window_seconds": {
                      "type": "integer"
                    },
                    "block_seconds": {
                      "type": "integer"
                    },
                    "docs": {
                      "type": "string",
                      "format": "uri"
                    },
                    "files": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/datasets/qld-school-details/versions/{version}/rows": {
      "get": {
        "tags": [
          "query"
        ],
        "summary": "Query State and non-state school details, Queensland",
        "operationId": "queryRows_qld_school_details_version",
        "description": "Rows of State and non-state school details, Queensland in one dated version, filtered and paged. Each filter is `field=operator.value` in the query string, and every filter must match. A number or date field compares as a number or date, and a text field compares as text. Values are case-sensitive except with `ilike`. Prefix `not.` to negate a filter, as `not.eq.value`. Operators: `eq.value`, `neq.value`, `gt.value`, `gte.value`, `lt.value`, `lte.value`, `like.*text*`, `ilike.*text*`, `in.(a,b,c)`, `is.null`.",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date"
            },
            "description": "A dated version loaded for queries, from the versions path. Answers for a dated version never change."
          },
          {
            "name": "centre_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The department's centre code, kept as text."
          },
          {
            "name": "centre_name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "centre_type",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. For example State School, State High School, Special School or Non-State School. Values: Community School, Educational Unit, Non-State School, School of Distance Education, Special School, Specific Purpose School, State High School, State School.",
            "examples": [
              "eq.State School"
            ]
          },
          {
            "name": "centre_status",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Open.",
            "examples": [
              "eq.Open"
            ]
          },
          {
            "name": "host_centre_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "host_centre_name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "official_low_year_level",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Early Childhood, Prep Year, Year 1, Year 10, Year 11, Year 12, Year 2, Year 3, Year 4, Year 5, Year 6, Year 7, Year 8.",
            "examples": [
              "eq.Year 8"
            ]
          },
          {
            "name": "official_high_year_level",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Year 10, Year 11, Year 12, Year 3, Year 4, Year 5, Year 6, Year 7, Year 8, Year 9.",
            "examples": [
              "eq.Year 9"
            ]
          },
          {
            "name": "officer_in_charge_title",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Chief Executive Officer, Director, Executive Principal, Facilitator, Head of College, Head of School, Headmaster, Principal, Rector, Unknown.",
            "examples": [
              "eq.Unknown"
            ]
          },
          {
            "name": "school_band",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer. The department's classification band for a state school. Blank for non-state schools. Values: 5, 6, 7, 8, 9, 10, 11.",
            "examples": [
              "eq.11"
            ]
          },
          {
            "name": "show_holiday_date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The local show holiday the school observed, as published (for example 10-Aug-20).",
            "examples": [
              "eq.9-Sep-20"
            ]
          },
          {
            "name": "internet_site",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "phone_number",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "restrict_contact_outside_teaching_hours",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Y, N or blank. Values: N, Y.",
            "examples": [
              "eq.Y"
            ]
          },
          {
            "name": "fax_number",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_line_1",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: A Block, Building 30, JCU, Cameron Downs Station, Cleveland Youth Detention, Coorparoo State College, Destiny Church, District Office, Griffith Uni Mt Gravatt Campus, Kalamia Estate, Level 1, Level 3, Level 8 Children's Hospital, Milford Place, North Stradbroke Island, Recreation Reserve, Secondary Campus, TAFE Campus.",
            "examples": [
              "eq.TAFE Campus"
            ]
          },
          {
            "name": "actual_address_line_2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_line_3",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_post_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_1",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_3",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.via Warwick"
            ]
          },
          {
            "name": "postal_address_post_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "education_geographic_region",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Central Queensland, Darling Downs South West, Far North Queensland, Metropolitan, North Coast, North Queensland, South East.",
            "examples": [
              "eq.South East"
            ]
          },
          {
            "name": "federal_electorate",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Wright"
            ]
          },
          {
            "name": "state_electorate",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Woodridge"
            ]
          },
          {
            "name": "local_government_area",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Yarrabah (S)"
            ]
          },
          {
            "name": "statistical_area_level2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "statistical_area_level2_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "remoteness_area",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Inner Regional Australia, Major Cities of Australia, Outer Regional Australia, Remote Australia, Very Remote Australia.",
            "examples": [
              "eq.Very Remote Australia"
            ]
          },
          {
            "name": "enrolment_effective_date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The census the student count is from, for example 2019 July. Blank for non-state schools. Values: 2019 July.",
            "examples": [
              "eq.2019 July"
            ]
          },
          {
            "name": "all_student_count",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer. From 2 to 3975."
          },
          {
            "name": "campus_all_student_count",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer."
          },
          {
            "name": "abn",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "sector",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. State or Non-State. Values: Non-State, State.",
            "examples": [
              "eq.State"
            ]
          },
          {
            "name": "non_state_sector",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Catholic or Independent. Values: Catholic, Independent.",
            "examples": [
              "eq.Independent"
            ]
          },
          {
            "name": "longitude",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "number. From 138.120361 to 153.528752."
          },
          {
            "name": "latitude",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "number. From -28.970971 to -10.581798."
          },
          {
            "name": "select",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Fields to return, comma-separated. Every field when absent."
          },
          {
            "name": "order",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "`field.asc` or `field.desc`, comma-separated. The publisher's row order when absent."
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 10000,
              "default": 100
            },
            "description": "Rows per page, 1 to 10,000. 100 when absent."
          },
          {
            "name": "offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 0,
              "default": 0
            },
            "description": "Rows to skip. The `next` URL in each answer sets it for you."
          },
          {
            "name": "format",
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "json",
                "ndjson",
                "csv"
              ],
              "default": "json"
            },
            "description": "`json`, `ndjson` or `csv`. JSON carries the provenance header, and the others carry it in response headers."
          }
        ],
        "responses": {
          "200": {
            "description": "Rows with the version, licence and attribution. `next` is the URL of the following page, or null."
          },
          "400": {
            "description": "The query names a field the dataset does not have, or a value of the wrong type."
          },
          "404": {
            "description": "The dataset or version is not loaded for queries."
          },
          "429": {
            "description": "More than 60 requests in 10 seconds from one address. Blocked for 10 seconds. Wait `Retry-After` seconds.",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                },
                "description": "Seconds until the block lifts."
              },
              "RateLimit-Policy": {
                "schema": {
                  "type": "string"
                },
                "description": "The limit, as \"fair-use\";q=60;w=10."
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "status": {
                      "type": "integer",
                      "const": 429
                    },
                    "limit": {
                      "type": "integer"
                    },
                    "window_seconds": {
                      "type": "integer"
                    },
                    "block_seconds": {
                      "type": "integer"
                    },
                    "docs": {
                      "type": "string",
                      "format": "uri"
                    },
                    "files": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/datasets/{slug}/aggregate": {
      "get": {
        "tags": [
          "query"
        ],
        "summary": "Counts, sums, averages, minimums and maximums by group",
        "operationId": "aggregate",
        "description": "Groups and totals of any dataset in the newest loaded version. Filters work as they do on rows. Each filter is `field=operator.value` in the query string, and every filter must match. A number or date field compares as a number or date, and a text field compares as text. Values are case-sensitive except with `ilike`. Prefix `not.` to negate a filter, as `not.eq.value`. Operators: `eq.value`, `neq.value`, `gt.value`, `gte.value`, `lt.value`, `lte.value`, `like.*text*`, `ilike.*text*`, `in.(a,b,c)`, `is.null`.",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "qld-school-details"
              ]
            },
            "description": "The dataset's slug, as in its page URL `/d/<slug>/`."
          },
          {
            "name": "group",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "On `aggregate`, fields to group by, comma-separated."
          },
          {
            "name": "metric",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "count"
            },
            "description": "On `aggregate`, `count`, `sum.field`, `avg.field`, `min.field` or `max.field`, comma-separated. `count` when absent."
          },
          {
            "name": "centre_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The department's centre code, kept as text."
          },
          {
            "name": "centre_name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "centre_type",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. For example State School, State High School, Special School or Non-State School. Values: Community School, Educational Unit, Non-State School, School of Distance Education, Special School, Specific Purpose School, State High School, State School.",
            "examples": [
              "eq.State School"
            ]
          },
          {
            "name": "centre_status",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Open.",
            "examples": [
              "eq.Open"
            ]
          },
          {
            "name": "host_centre_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "host_centre_name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "official_low_year_level",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Early Childhood, Prep Year, Year 1, Year 10, Year 11, Year 12, Year 2, Year 3, Year 4, Year 5, Year 6, Year 7, Year 8.",
            "examples": [
              "eq.Year 8"
            ]
          },
          {
            "name": "official_high_year_level",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Year 10, Year 11, Year 12, Year 3, Year 4, Year 5, Year 6, Year 7, Year 8, Year 9.",
            "examples": [
              "eq.Year 9"
            ]
          },
          {
            "name": "officer_in_charge_title",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Chief Executive Officer, Director, Executive Principal, Facilitator, Head of College, Head of School, Headmaster, Principal, Rector, Unknown.",
            "examples": [
              "eq.Unknown"
            ]
          },
          {
            "name": "school_band",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer. The department's classification band for a state school. Blank for non-state schools. Values: 5, 6, 7, 8, 9, 10, 11.",
            "examples": [
              "eq.11"
            ]
          },
          {
            "name": "show_holiday_date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The local show holiday the school observed, as published (for example 10-Aug-20).",
            "examples": [
              "eq.9-Sep-20"
            ]
          },
          {
            "name": "internet_site",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "phone_number",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "restrict_contact_outside_teaching_hours",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Y, N or blank. Values: N, Y.",
            "examples": [
              "eq.Y"
            ]
          },
          {
            "name": "fax_number",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_line_1",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: A Block, Building 30, JCU, Cameron Downs Station, Cleveland Youth Detention, Coorparoo State College, Destiny Church, District Office, Griffith Uni Mt Gravatt Campus, Kalamia Estate, Level 1, Level 3, Level 8 Children's Hospital, Milford Place, North Stradbroke Island, Recreation Reserve, Secondary Campus, TAFE Campus.",
            "examples": [
              "eq.TAFE Campus"
            ]
          },
          {
            "name": "actual_address_line_2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_line_3",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_post_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_1",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_3",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.via Warwick"
            ]
          },
          {
            "name": "postal_address_post_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "education_geographic_region",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Central Queensland, Darling Downs South West, Far North Queensland, Metropolitan, North Coast, North Queensland, South East.",
            "examples": [
              "eq.South East"
            ]
          },
          {
            "name": "federal_electorate",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Wright"
            ]
          },
          {
            "name": "state_electorate",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Woodridge"
            ]
          },
          {
            "name": "local_government_area",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Yarrabah (S)"
            ]
          },
          {
            "name": "statistical_area_level2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "statistical_area_level2_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "remoteness_area",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Inner Regional Australia, Major Cities of Australia, Outer Regional Australia, Remote Australia, Very Remote Australia.",
            "examples": [
              "eq.Very Remote Australia"
            ]
          },
          {
            "name": "enrolment_effective_date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The census the student count is from, for example 2019 July. Blank for non-state schools. Values: 2019 July.",
            "examples": [
              "eq.2019 July"
            ]
          },
          {
            "name": "all_student_count",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer. From 2 to 3975."
          },
          {
            "name": "campus_all_student_count",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer."
          },
          {
            "name": "abn",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "sector",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. State or Non-State. Values: Non-State, State.",
            "examples": [
              "eq.State"
            ]
          },
          {
            "name": "non_state_sector",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Catholic or Independent. Values: Catholic, Independent.",
            "examples": [
              "eq.Independent"
            ]
          },
          {
            "name": "longitude",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "number. From 138.120361 to 153.528752."
          },
          {
            "name": "latitude",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "number. From -28.970971 to -10.581798."
          },
          {
            "name": "order",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "`field.asc` or `field.desc`, comma-separated. The publisher's row order when absent."
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 10000,
              "default": 100
            },
            "description": "Rows per page, 1 to 10,000. 100 when absent."
          },
          {
            "name": "offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 0,
              "default": 0
            },
            "description": "Rows to skip. The `next` URL in each answer sets it for you."
          },
          {
            "name": "format",
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "json",
                "ndjson",
                "csv"
              ],
              "default": "json"
            },
            "description": "`json`, `ndjson` or `csv`. JSON carries the provenance header, and the others carry it in response headers."
          }
        ],
        "responses": {
          "200": {
            "description": "Rows with the version, licence and attribution. `next` is the URL of the following page, or null."
          },
          "400": {
            "description": "The query names a field the dataset does not have, or a value of the wrong type."
          },
          "404": {
            "description": "The dataset or version is not loaded for queries."
          },
          "429": {
            "description": "More than 60 requests in 10 seconds from one address. Blocked for 10 seconds. Wait `Retry-After` seconds.",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                },
                "description": "Seconds until the block lifts."
              },
              "RateLimit-Policy": {
                "schema": {
                  "type": "string"
                },
                "description": "The limit, as \"fair-use\";q=60;w=10."
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "status": {
                      "type": "integer",
                      "const": 429
                    },
                    "limit": {
                      "type": "integer"
                    },
                    "window_seconds": {
                      "type": "integer"
                    },
                    "block_seconds": {
                      "type": "integer"
                    },
                    "docs": {
                      "type": "string",
                      "format": "uri"
                    },
                    "files": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/datasets/{slug}/versions/{version}/aggregate": {
      "get": {
        "tags": [
          "query"
        ],
        "summary": "Counts, sums, averages, minimums and maximums by group",
        "operationId": "aggregateVersion",
        "description": "Groups and totals of any dataset in one dated version. Filters work as they do on rows. Each filter is `field=operator.value` in the query string, and every filter must match. A number or date field compares as a number or date, and a text field compares as text. Values are case-sensitive except with `ilike`. Prefix `not.` to negate a filter, as `not.eq.value`. Operators: `eq.value`, `neq.value`, `gt.value`, `gte.value`, `lt.value`, `lte.value`, `like.*text*`, `ilike.*text*`, `in.(a,b,c)`, `is.null`.",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "qld-school-details"
              ]
            },
            "description": "The dataset's slug, as in its page URL `/d/<slug>/`."
          },
          {
            "name": "version",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date"
            },
            "description": "A dated version loaded for queries, from the versions path. Answers for a dated version never change."
          },
          {
            "name": "group",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "On `aggregate`, fields to group by, comma-separated."
          },
          {
            "name": "metric",
            "in": "query",
            "schema": {
              "type": "string",
              "default": "count"
            },
            "description": "On `aggregate`, `count`, `sum.field`, `avg.field`, `min.field` or `max.field`, comma-separated. `count` when absent."
          },
          {
            "name": "centre_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The department's centre code, kept as text."
          },
          {
            "name": "centre_name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "centre_type",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. For example State School, State High School, Special School or Non-State School. Values: Community School, Educational Unit, Non-State School, School of Distance Education, Special School, Specific Purpose School, State High School, State School.",
            "examples": [
              "eq.State School"
            ]
          },
          {
            "name": "centre_status",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Open.",
            "examples": [
              "eq.Open"
            ]
          },
          {
            "name": "host_centre_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "host_centre_name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "official_low_year_level",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Early Childhood, Prep Year, Year 1, Year 10, Year 11, Year 12, Year 2, Year 3, Year 4, Year 5, Year 6, Year 7, Year 8.",
            "examples": [
              "eq.Year 8"
            ]
          },
          {
            "name": "official_high_year_level",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Year 10, Year 11, Year 12, Year 3, Year 4, Year 5, Year 6, Year 7, Year 8, Year 9.",
            "examples": [
              "eq.Year 9"
            ]
          },
          {
            "name": "officer_in_charge_title",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Chief Executive Officer, Director, Executive Principal, Facilitator, Head of College, Head of School, Headmaster, Principal, Rector, Unknown.",
            "examples": [
              "eq.Unknown"
            ]
          },
          {
            "name": "school_band",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer. The department's classification band for a state school. Blank for non-state schools. Values: 5, 6, 7, 8, 9, 10, 11.",
            "examples": [
              "eq.11"
            ]
          },
          {
            "name": "show_holiday_date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The local show holiday the school observed, as published (for example 10-Aug-20).",
            "examples": [
              "eq.9-Sep-20"
            ]
          },
          {
            "name": "internet_site",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "phone_number",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "restrict_contact_outside_teaching_hours",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Y, N or blank. Values: N, Y.",
            "examples": [
              "eq.Y"
            ]
          },
          {
            "name": "fax_number",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_line_1",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: A Block, Building 30, JCU, Cameron Downs Station, Cleveland Youth Detention, Coorparoo State College, Destiny Church, District Office, Griffith Uni Mt Gravatt Campus, Kalamia Estate, Level 1, Level 3, Level 8 Children's Hospital, Milford Place, North Stradbroke Island, Recreation Reserve, Secondary Campus, TAFE Campus.",
            "examples": [
              "eq.TAFE Campus"
            ]
          },
          {
            "name": "actual_address_line_2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_line_3",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "actual_address_post_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_1",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "postal_address_line_3",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.via Warwick"
            ]
          },
          {
            "name": "postal_address_post_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "education_geographic_region",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Central Queensland, Darling Downs South West, Far North Queensland, Metropolitan, North Coast, North Queensland, South East.",
            "examples": [
              "eq.South East"
            ]
          },
          {
            "name": "federal_electorate",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Wright"
            ]
          },
          {
            "name": "state_electorate",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Woodridge"
            ]
          },
          {
            "name": "local_government_area",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string.",
            "examples": [
              "eq.Yarrabah (S)"
            ]
          },
          {
            "name": "statistical_area_level2",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "statistical_area_level2_code",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "remoteness_area",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Values: Inner Regional Australia, Major Cities of Australia, Outer Regional Australia, Remote Australia, Very Remote Australia.",
            "examples": [
              "eq.Very Remote Australia"
            ]
          },
          {
            "name": "enrolment_effective_date",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. The census the student count is from, for example 2019 July. Blank for non-state schools. Values: 2019 July.",
            "examples": [
              "eq.2019 July"
            ]
          },
          {
            "name": "all_student_count",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer. From 2 to 3975."
          },
          {
            "name": "campus_all_student_count",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "integer."
          },
          {
            "name": "abn",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string."
          },
          {
            "name": "sector",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. State or Non-State. Values: Non-State, State.",
            "examples": [
              "eq.State"
            ]
          },
          {
            "name": "non_state_sector",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "string. Catholic or Independent. Values: Catholic, Independent.",
            "examples": [
              "eq.Independent"
            ]
          },
          {
            "name": "longitude",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "number. From 138.120361 to 153.528752."
          },
          {
            "name": "latitude",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "number. From -28.970971 to -10.581798."
          },
          {
            "name": "order",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "`field.asc` or `field.desc`, comma-separated. The publisher's row order when absent."
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 10000,
              "default": 100
            },
            "description": "Rows per page, 1 to 10,000. 100 when absent."
          },
          {
            "name": "offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "minimum": 0,
              "default": 0
            },
            "description": "Rows to skip. The `next` URL in each answer sets it for you."
          },
          {
            "name": "format",
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "json",
                "ndjson",
                "csv"
              ],
              "default": "json"
            },
            "description": "`json`, `ndjson` or `csv`. JSON carries the provenance header, and the others carry it in response headers."
          }
        ],
        "responses": {
          "200": {
            "description": "Rows with the version, licence and attribution. `next` is the URL of the following page, or null."
          },
          "400": {
            "description": "The query names a field the dataset does not have, or a value of the wrong type."
          },
          "404": {
            "description": "The dataset or version is not loaded for queries."
          },
          "429": {
            "description": "More than 60 requests in 10 seconds from one address. Blocked for 10 seconds. Wait `Retry-After` seconds.",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                },
                "description": "Seconds until the block lifts."
              },
              "RateLimit-Policy": {
                "schema": {
                  "type": "string"
                },
                "description": "The limit, as \"fair-use\";q=60;w=10."
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "status": {
                      "type": "integer",
                      "const": 429
                    },
                    "limit": {
                      "type": "integer"
                    },
                    "window_seconds": {
                      "type": "integer"
                    },
                    "block_seconds": {
                      "type": "integer"
                    },
                    "docs": {
                      "type": "string",
                      "format": "uri"
                    },
                    "files": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/datasets/{slug}/versions": {
      "get": {
        "tags": [
          "query"
        ],
        "summary": "The versions loaded for queries, newest first, with the URLs to query each",
        "operationId": "queryVersions",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "qld-school-details"
              ]
            },
            "description": "The dataset's slug, as in its page URL `/d/<slug>/`."
          }
        ],
        "responses": {
          "200": {
            "description": "Loaded versions with row counts and URLs."
          },
          "404": {
            "description": "The dataset or version is not loaded for queries."
          },
          "429": {
            "description": "More than 60 requests in 10 seconds from one address. Blocked for 10 seconds. Wait `Retry-After` seconds.",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                },
                "description": "Seconds until the block lifts."
              },
              "RateLimit-Policy": {
                "schema": {
                  "type": "string"
                },
                "description": "The limit, as \"fair-use\";q=60;w=10."
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    },
                    "status": {
                      "type": "integer",
                      "const": 429
                    },
                    "limit": {
                      "type": "integer"
                    },
                    "window_seconds": {
                      "type": "integer"
                    },
                    "block_seconds": {
                      "type": "integer"
                    },
                    "docs": {
                      "type": "string",
                      "format": "uri"
                    },
                    "files": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
