OpenAQ icon

OpenAQ

API for OpenAQ LCS

COMMUNITYNO AUTH0 INSTALLS
OpenAPI Specificationv3.0
{
  "openapi": "3.0.2",
  "servers": [
    {
      "url": "http://openaq.local"
    }
  ],
  "info": {
    "description": "API for OpenAQ LCS",
    "title": "OpenAQ",
    "version": "2.0.0",
    "x-apisguru-categories": [
      "location"
    ],
    "x-origin": [
      {
        "format": "openapi",
        "url": "https://docs.openaq.org/openapi.json",
        "version": "3.0"
      }
    ],
    "x-providerName": "openaq.local",
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_apis.guru_assets_images_no-logo.svg"
    }
  },
  "paths": {
    "/favicon.ico": {
      "get": {
        "operationId": "favico_favicon_ico_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Favico"
      }
    },
    "/ping": {
      "get": {
        "description": "Sanity check.\nThis will let the user know that the service is operational.\nAnd this path operation will:\n* show a lifesign",
        "operationId": "pong_ping_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Pong"
      }
    },
    "/v1/cities": {
      "get": {
        "operationId": "cities_getv1_v1_cities_get",
        "parameters": [
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "description": "Order by a field",
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CitiesOrder"
                }
              ],
              "default": "city",
              "description": "Order by a field"
            }
          },
          {
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "title": "Entity",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQCitiesResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Provides a simple listing of cities within the platform",
        "tags": [
          "v1"
        ]
      }
    },
    "/v1/countries": {
      "get": {
        "operationId": "countries_getv1_v1_countries_get",
        "parameters": [
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 200,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CountriesOrder"
                }
              ],
              "default": "country"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQCountriesResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Countries Getv1",
        "tags": [
          "v1"
        ]
      }
    },
    "/v1/countries/{country_id}": {
      "get": {
        "operationId": "countries_get_v1_countries__country_id__get",
        "parameters": [
          {
            "in": "path",
            "name": "country_id",
            "required": true,
            "schema": {
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 200,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CountriesOrder"
                }
              ],
              "default": "country"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQCountriesResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Countries Get",
        "tags": [
          "v1"
        ]
      }
    },
    "/v1/latest": {
      "get": {
        "operationId": "latest_v1_get_v1_latest_get",
        "parameters": [
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Sort Direction",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc",
              "description": "Sort Direction"
            }
          },
          {
            "in": "query",
            "name": "has_geo",
            "required": false,
            "schema": {
              "title": "Has Geo",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "coordinates",
            "required": false,
            "schema": {
              "pattern": "^-?\\d{1,2}\\.?\\d{0,8},-?1?\\d{1,2}\\.?\\d{0,8}$",
              "title": "Coordinates",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius",
            "required": false,
            "schema": {
              "default": 1000,
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Radius",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "location_id",
            "required": false,
            "schema": {
              "title": "Location Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "description": "Order by a field",
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/LocationsOrder"
                }
              ],
              "default": "lastUpdated",
              "description": "Order by a field"
            }
          },
          {
            "description": "Location is mobile",
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "description": "Location is mobile",
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "description": "Name of the data source",
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "description": "Name of the data source",
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "description": "Source entity type.",
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EntityTypes"
                }
              ],
              "description": "Source entity type."
            }
          },
          {
            "description": "Type of Sensor",
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SensorTypes"
                }
              ],
              "description": "Type of Sensor"
            }
          },
          {
            "description": "Model Name of Sensor",
            "in": "query",
            "name": "modelName",
            "required": false,
            "schema": {
              "description": "Model Name of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Modelname",
              "type": "array"
            }
          },
          {
            "description": "Manufacturer of Sensor",
            "in": "query",
            "name": "manufacturerName",
            "required": false,
            "schema": {
              "description": "Manufacturer of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Manufacturername",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "dumpRaw",
            "required": false,
            "schema": {
              "default": false,
              "title": "Dumpraw",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Latest V1 Get",
        "tags": [
          "v1"
        ]
      }
    },
    "/v1/latest/{location_id}": {
      "get": {
        "operationId": "latest_v1_get_v1_latest__location_id__get",
        "parameters": [
          {
            "in": "path",
            "name": "location_id",
            "required": true,
            "schema": {
              "title": "Location Id",
              "type": "integer"
            }
          },
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Sort Direction",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc",
              "description": "Sort Direction"
            }
          },
          {
            "in": "query",
            "name": "has_geo",
            "required": false,
            "schema": {
              "title": "Has Geo",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "coordinates",
            "required": false,
            "schema": {
              "pattern": "^-?\\d{1,2}\\.?\\d{0,8},-?1?\\d{1,2}\\.?\\d{0,8}$",
              "title": "Coordinates",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius",
            "required": false,
            "schema": {
              "default": 1000,
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Radius",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "description": "Order by a field",
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/LocationsOrder"
                }
              ],
              "default": "lastUpdated",
              "description": "Order by a field"
            }
          },
          {
            "description": "Location is mobile",
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "description": "Location is mobile",
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "description": "Name of the data source",
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "description": "Name of the data source",
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "description": "Source entity type.",
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EntityTypes"
                }
              ],
              "description": "Source entity type."
            }
          },
          {
            "description": "Type of Sensor",
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SensorTypes"
                }
              ],
              "description": "Type of Sensor"
            }
          },
          {
            "description": "Model Name of Sensor",
            "in": "query",
            "name": "modelName",
            "required": false,
            "schema": {
              "description": "Model Name of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Modelname",
              "type": "array"
            }
          },
          {
            "description": "Manufacturer of Sensor",
            "in": "query",
            "name": "manufacturerName",
            "required": false,
            "schema": {
              "description": "Manufacturer of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Manufacturername",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "dumpRaw",
            "required": false,
            "schema": {
              "default": false,
              "title": "Dumpraw",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Latest V1 Get",
        "tags": [
          "v1"
        ]
      }
    },
    "/v1/locations": {
      "get": {
        "operationId": "locationsv1_get_v1_locations_get",
        "parameters": [
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Sort Direction",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc",
              "description": "Sort Direction"
            }
          },
          {
            "in": "query",
            "name": "has_geo",
            "required": false,
            "schema": {
              "title": "Has Geo",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "coordinates",
            "required": false,
            "schema": {
              "pattern": "^-?\\d{1,2}\\.?\\d{0,8},-?1?\\d{1,2}\\.?\\d{0,8}$",
              "title": "Coordinates",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius",
            "required": false,
            "schema": {
              "default": 1000,
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Radius",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "location_id",
            "required": false,
            "schema": {
              "title": "Location Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "description": "Order by a field",
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/LocationsOrder"
                }
              ],
              "default": "lastUpdated",
              "description": "Order by a field"
            }
          },
          {
            "description": "Location is mobile",
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "description": "Location is mobile",
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "description": "Name of the data source",
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "description": "Name of the data source",
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "description": "Source entity type.",
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EntityTypes"
                }
              ],
              "description": "Source entity type."
            }
          },
          {
            "description": "Type of Sensor",
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SensorTypes"
                }
              ],
              "description": "Type of Sensor"
            }
          },
          {
            "description": "Model Name of Sensor",
            "in": "query",
            "name": "modelName",
            "required": false,
            "schema": {
              "description": "Model Name of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Modelname",
              "type": "array"
            }
          },
          {
            "description": "Manufacturer of Sensor",
            "in": "query",
            "name": "manufacturerName",
            "required": false,
            "schema": {
              "description": "Manufacturer of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Manufacturername",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "dumpRaw",
            "required": false,
            "schema": {
              "default": false,
              "title": "Dumpraw",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Locationsv1 Get",
        "tags": [
          "v1"
        ]
      }
    },
    "/v1/locations/{location_id}": {
      "get": {
        "operationId": "locationsv1_get_v1_locations__location_id__get",
        "parameters": [
          {
            "in": "path",
            "name": "location_id",
            "required": true,
            "schema": {
              "title": "Location Id",
              "type": "integer"
            }
          },
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Sort Direction",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc",
              "description": "Sort Direction"
            }
          },
          {
            "in": "query",
            "name": "has_geo",
            "required": false,
            "schema": {
              "title": "Has Geo",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "coordinates",
            "required": false,
            "schema": {
              "pattern": "^-?\\d{1,2}\\.?\\d{0,8},-?1?\\d{1,2}\\.?\\d{0,8}$",
              "title": "Coordinates",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius",
            "required": false,
            "schema": {
              "default": 1000,
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Radius",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "description": "Order by a field",
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/LocationsOrder"
                }
              ],
              "default": "lastUpdated",
              "description": "Order by a field"
            }
          },
          {
            "description": "Location is mobile",
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "description": "Location is mobile",
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "description": "Name of the data source",
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "description": "Name of the data source",
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "description": "Source entity type.",
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EntityTypes"
                }
              ],
              "description": "Source entity type."
            }
          },
          {
            "description": "Type of Sensor",
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SensorTypes"
                }
              ],
              "description": "Type of Sensor"
            }
          },
          {
            "description": "Model Name of Sensor",
            "in": "query",
            "name": "modelName",
            "required": false,
            "schema": {
              "description": "Model Name of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Modelname",
              "type": "array"
            }
          },
          {
            "description": "Manufacturer of Sensor",
            "in": "query",
            "name": "manufacturerName",
            "required": false,
            "schema": {
              "description": "Manufacturer of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Manufacturername",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "dumpRaw",
            "required": false,
            "schema": {
              "default": false,
              "title": "Dumpraw",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Locationsv1 Get",
        "tags": [
          "v1"
        ]
      }
    },
    "/v1/measurements": {
      "get": {
        "operationId": "measurements_get_v1_v1_measurements_get",
        "parameters": [
          {
            "in": "query",
            "name": "format",
            "required": false,
            "schema": {
              "title": "Format",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "date_from",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "default": "2000-01-01T00:00:00+00:00",
              "title": "Date From"
            }
          },
          {
            "in": "query",
            "name": "date_to",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "default": "2021-08-23T09:48:00+00:00",
              "title": "Date To"
            }
          },
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc"
            }
          },
          {
            "in": "query",
            "name": "has_geo",
            "required": false,
            "schema": {
              "title": "Has Geo",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "coordinates",
            "required": false,
            "schema": {
              "pattern": "^-?\\d{1,2}\\.?\\d{0,8},-?1?\\d{1,2}\\.?\\d{0,8}$",
              "title": "Coordinates",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius",
            "required": false,
            "schema": {
              "default": 1000,
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Radius",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "location_id",
            "required": false,
            "schema": {
              "title": "Location Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/MeasOrder"
                }
              ],
              "default": "datetime"
            }
          },
          {
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "project",
            "required": false,
            "schema": {
              "title": "Project",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/EntityTypes"
            }
          },
          {
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/SensorTypes"
            }
          },
          {
            "in": "query",
            "name": "value_from",
            "required": false,
            "schema": {
              "title": "Value From",
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "value_to",
            "required": false,
            "schema": {
              "title": "Value To",
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "include_fields",
            "required": false,
            "schema": {
              "title": "Include Fields",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Measurements Get V1",
        "tags": [
          "v1"
        ]
      }
    },
    "/v1/parameters": {
      "get": {
        "operationId": "parameters_getv1_v1_parameters_get",
        "parameters": [
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "sourceId",
            "required": false,
            "schema": {
              "items": {
                "type": "integer"
              },
              "title": "Sourceid",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "sourceSlug",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Sourceslug",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "string"
                },
                {
                  "type": "string"
                }
              ],
              "default": "id",
              "title": "Order By"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQParametersResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Parameters Getv1",
        "tags": [
          "v1"
        ]
      }
    },
    "/v1/sources": {
      "get": {
        "operationId": "sources_v1_get_v1_sources_get",
        "parameters": [
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "in": "query",
            "name": "name",
            "required": false,
            "schema": {
              "title": "Name",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SourcesV1Order"
                }
              ],
              "default": "name"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Sources V1 Get",
        "tags": [
          "v1"
        ]
      }
    },
    "/v2/averages": {
      "get": {
        "operationId": "averages_v2_get_v2_averages_get",
        "parameters": [
          {
            "in": "query",
            "name": "date_from",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "default": "2000-01-01T00:00:00+00:00",
              "title": "Date From"
            }
          },
          {
            "in": "query",
            "name": "date_to",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "default": "2021-08-23T09:48:00+00:00",
              "title": "Date To"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "project_id",
            "required": false,
            "schema": {
              "title": "Project Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "project",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Project",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc",
              "description": "Define sort order."
            }
          },
          {
            "in": "query",
            "name": "spatial",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Spatial"
            }
          },
          {
            "in": "query",
            "name": "temporal",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Temporal"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "group",
            "required": false,
            "schema": {
              "default": false,
              "title": "Group",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Averages V2 Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/cities": {
      "get": {
        "operationId": "cities_get_v2_cities_get",
        "parameters": [
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "description": "Order by a field",
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CitiesOrder"
                }
              ],
              "default": "city",
              "description": "Order by a field"
            }
          },
          {
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "title": "Entity",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQCitiesResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Provides a simple listing of cities within the platform",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/countries": {
      "get": {
        "operationId": "countries_get_v2_countries_get",
        "parameters": [
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 200,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CountriesOrder"
                }
              ],
              "default": "country"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQCountriesResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Countries Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/countries/{country_id}": {
      "get": {
        "operationId": "countries_get_v2_countries__country_id__get",
        "parameters": [
          {
            "in": "path",
            "name": "country_id",
            "required": true,
            "schema": {
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 200,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/CountriesOrder"
                }
              ],
              "default": "country"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQCountriesResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Countries Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/latest": {
      "get": {
        "operationId": "latest_get_v2_latest_get",
        "parameters": [
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Sort Direction",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc",
              "description": "Sort Direction"
            }
          },
          {
            "in": "query",
            "name": "has_geo",
            "required": false,
            "schema": {
              "title": "Has Geo",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "coordinates",
            "required": false,
            "schema": {
              "pattern": "^-?\\d{1,2}\\.?\\d{0,8},-?1?\\d{1,2}\\.?\\d{0,8}$",
              "title": "Coordinates",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius",
            "required": false,
            "schema": {
              "default": 1000,
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Radius",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "location_id",
            "required": false,
            "schema": {
              "title": "Location Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "description": "Order by a field",
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/LocationsOrder"
                }
              ],
              "default": "lastUpdated",
              "description": "Order by a field"
            }
          },
          {
            "description": "Location is mobile",
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "description": "Location is mobile",
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "description": "Name of the data source",
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "description": "Name of the data source",
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "description": "Source entity type.",
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EntityTypes"
                }
              ],
              "description": "Source entity type."
            }
          },
          {
            "description": "Type of Sensor",
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SensorTypes"
                }
              ],
              "description": "Type of Sensor"
            }
          },
          {
            "description": "Model Name of Sensor",
            "in": "query",
            "name": "modelName",
            "required": false,
            "schema": {
              "description": "Model Name of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Modelname",
              "type": "array"
            }
          },
          {
            "description": "Manufacturer of Sensor",
            "in": "query",
            "name": "manufacturerName",
            "required": false,
            "schema": {
              "description": "Manufacturer of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Manufacturername",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "dumpRaw",
            "required": false,
            "schema": {
              "default": false,
              "title": "Dumpraw",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Latest Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/latest/{location_id}": {
      "get": {
        "operationId": "latest_get_v2_latest__location_id__get",
        "parameters": [
          {
            "in": "path",
            "name": "location_id",
            "required": true,
            "schema": {
              "title": "Location Id",
              "type": "integer"
            }
          },
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Sort Direction",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc",
              "description": "Sort Direction"
            }
          },
          {
            "in": "query",
            "name": "has_geo",
            "required": false,
            "schema": {
              "title": "Has Geo",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "coordinates",
            "required": false,
            "schema": {
              "pattern": "^-?\\d{1,2}\\.?\\d{0,8},-?1?\\d{1,2}\\.?\\d{0,8}$",
              "title": "Coordinates",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius",
            "required": false,
            "schema": {
              "default": 1000,
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Radius",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "description": "Order by a field",
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/LocationsOrder"
                }
              ],
              "default": "lastUpdated",
              "description": "Order by a field"
            }
          },
          {
            "description": "Location is mobile",
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "description": "Location is mobile",
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "description": "Name of the data source",
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "description": "Name of the data source",
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "description": "Source entity type.",
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EntityTypes"
                }
              ],
              "description": "Source entity type."
            }
          },
          {
            "description": "Type of Sensor",
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SensorTypes"
                }
              ],
              "description": "Type of Sensor"
            }
          },
          {
            "description": "Model Name of Sensor",
            "in": "query",
            "name": "modelName",
            "required": false,
            "schema": {
              "description": "Model Name of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Modelname",
              "type": "array"
            }
          },
          {
            "description": "Manufacturer of Sensor",
            "in": "query",
            "name": "manufacturerName",
            "required": false,
            "schema": {
              "description": "Manufacturer of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Manufacturername",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "dumpRaw",
            "required": false,
            "schema": {
              "default": false,
              "title": "Dumpraw",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Latest Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/locations": {
      "get": {
        "operationId": "locations_get_v2_locations_get",
        "parameters": [
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Sort Direction",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc",
              "description": "Sort Direction"
            }
          },
          {
            "in": "query",
            "name": "has_geo",
            "required": false,
            "schema": {
              "title": "Has Geo",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "coordinates",
            "required": false,
            "schema": {
              "pattern": "^-?\\d{1,2}\\.?\\d{0,8},-?1?\\d{1,2}\\.?\\d{0,8}$",
              "title": "Coordinates",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius",
            "required": false,
            "schema": {
              "default": 1000,
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Radius",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "location_id",
            "required": false,
            "schema": {
              "title": "Location Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "description": "Order by a field",
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/LocationsOrder"
                }
              ],
              "default": "lastUpdated",
              "description": "Order by a field"
            }
          },
          {
            "description": "Location is mobile",
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "description": "Location is mobile",
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "description": "Name of the data source",
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "description": "Name of the data source",
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "description": "Source entity type.",
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EntityTypes"
                }
              ],
              "description": "Source entity type."
            }
          },
          {
            "description": "Type of Sensor",
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SensorTypes"
                }
              ],
              "description": "Type of Sensor"
            }
          },
          {
            "description": "Model Name of Sensor",
            "in": "query",
            "name": "modelName",
            "required": false,
            "schema": {
              "description": "Model Name of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Modelname",
              "type": "array"
            }
          },
          {
            "description": "Manufacturer of Sensor",
            "in": "query",
            "name": "manufacturerName",
            "required": false,
            "schema": {
              "description": "Manufacturer of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Manufacturername",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "dumpRaw",
            "required": false,
            "schema": {
              "default": false,
              "title": "Dumpraw",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Locations Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/locations/tiles/mobile-generalized/tiles.json": {
      "get": {
        "operationId": "mobilegentilejson_v2_locations_tiles_mobile_generalized_tiles_json_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TileJSON"
                }
              }
            },
            "description": "Return a tilejson"
          }
        },
        "summary": "Mobilegentilejson",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/locations/tiles/mobile-generalized/{z}/{x}/{y}.pbf": {
      "get": {
        "operationId": "get_mobilegentile_v2_locations_tiles_mobile_generalized__z___x___y__pbf_get",
        "parameters": [
          {
            "in": "path",
            "name": "z",
            "required": true,
            "schema": {
              "title": "Z",
              "type": "integer"
            }
          },
          {
            "in": "path",
            "name": "x",
            "required": true,
            "schema": {
              "title": "X",
              "type": "integer"
            }
          },
          {
            "in": "path",
            "name": "y",
            "required": true,
            "schema": {
              "title": "Y",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "integer"
                },
                {
                  "type": "string"
                }
              ],
              "title": "Parameter"
            }
          },
          {
            "description": "limit data to location id",
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "description": "limit data to location id",
              "items": {
                "type": "integer"
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "lastUpdatedFrom",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "title": "Lastupdatedfrom"
            }
          },
          {
            "in": "query",
            "name": "lastUpdatedTo",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "title": "Lastupdatedto"
            }
          },
          {
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "project",
            "required": false,
            "schema": {
              "title": "Project",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "title": "Isanalysis",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/x-protobuf": {}
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Get Mobilegentile",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/locations/tiles/mobile/tiles.json": {
      "get": {
        "operationId": "mobiletilejson_v2_locations_tiles_mobile_tiles_json_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TileJSON"
                }
              }
            },
            "description": "Return a tilejson"
          }
        },
        "summary": "Mobiletilejson",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/locations/tiles/mobile/{z}/{x}/{y}.pbf": {
      "get": {
        "operationId": "get_mobiletile_v2_locations_tiles_mobile__z___x___y__pbf_get",
        "parameters": [
          {
            "in": "path",
            "name": "z",
            "required": true,
            "schema": {
              "title": "Z",
              "type": "integer"
            }
          },
          {
            "in": "path",
            "name": "x",
            "required": true,
            "schema": {
              "title": "X",
              "type": "integer"
            }
          },
          {
            "in": "path",
            "name": "y",
            "required": true,
            "schema": {
              "title": "Y",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "dateFrom",
            "required": true,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "title": "Datefrom"
            }
          },
          {
            "in": "query",
            "name": "dateTo",
            "required": true,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "title": "Dateto"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "integer"
                },
                {
                  "type": "string"
                }
              ],
              "title": "Parameter"
            }
          },
          {
            "description": "limit data to location id",
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "description": "limit data to location id",
              "items": {
                "type": "integer"
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "lastUpdatedFrom",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "title": "Lastupdatedfrom"
            }
          },
          {
            "in": "query",
            "name": "lastUpdatedTo",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "title": "Lastupdatedto"
            }
          },
          {
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "project",
            "required": false,
            "schema": {
              "title": "Project",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "title": "Isanalysis",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/x-protobuf": {}
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Get Mobiletile",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/locations/tiles/tiles.json": {
      "get": {
        "operationId": "tilejson_v2_locations_tiles_tiles_json_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TileJSON"
                }
              }
            },
            "description": "Return a tilejson"
          }
        },
        "summary": "Tilejson",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/locations/tiles/viewer": {
      "get": {
        "operationId": "demo_v2_locations_tiles_viewer_get",
        "responses": {
          "200": {
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Demo",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/locations/tiles/{z}/{x}/{y}.pbf": {
      "get": {
        "operationId": "get_tile_v2_locations_tiles__z___x___y__pbf_get",
        "parameters": [
          {
            "in": "path",
            "name": "z",
            "required": true,
            "schema": {
              "title": "Z",
              "type": "integer"
            }
          },
          {
            "in": "path",
            "name": "x",
            "required": true,
            "schema": {
              "title": "X",
              "type": "integer"
            }
          },
          {
            "in": "path",
            "name": "y",
            "required": true,
            "schema": {
              "title": "Y",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "integer"
                },
                {
                  "type": "string"
                }
              ],
              "title": "Parameter"
            }
          },
          {
            "description": "limit data to location id",
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "description": "limit data to location id",
              "items": {
                "type": "integer"
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "lastUpdatedFrom",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "title": "Lastupdatedfrom"
            }
          },
          {
            "in": "query",
            "name": "lastUpdatedTo",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "title": "Lastupdatedto"
            }
          },
          {
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "project",
            "required": false,
            "schema": {
              "title": "Project",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "title": "Isanalysis",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/x-protobuf": {}
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Get Tile",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/locations/{location_id}": {
      "get": {
        "operationId": "locations_get_v2_locations__location_id__get",
        "parameters": [
          {
            "in": "path",
            "name": "location_id",
            "required": true,
            "schema": {
              "title": "Location Id",
              "type": "integer"
            }
          },
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Sort Direction",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc",
              "description": "Sort Direction"
            }
          },
          {
            "in": "query",
            "name": "has_geo",
            "required": false,
            "schema": {
              "title": "Has Geo",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "coordinates",
            "required": false,
            "schema": {
              "pattern": "^-?\\d{1,2}\\.?\\d{0,8},-?1?\\d{1,2}\\.?\\d{0,8}$",
              "title": "Coordinates",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius",
            "required": false,
            "schema": {
              "default": 1000,
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Radius",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "description": "Order by a field",
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/LocationsOrder"
                }
              ],
              "default": "lastUpdated",
              "description": "Order by a field"
            }
          },
          {
            "description": "Location is mobile",
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "description": "Location is mobile",
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "description": "Data is the product of a previous analysis/aggregation and not raw measurements",
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "description": "Name of the data source",
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "description": "Name of the data source",
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "description": "Source entity type.",
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/EntityTypes"
                }
              ],
              "description": "Source entity type."
            }
          },
          {
            "description": "Type of Sensor",
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SensorTypes"
                }
              ],
              "description": "Type of Sensor"
            }
          },
          {
            "description": "Model Name of Sensor",
            "in": "query",
            "name": "modelName",
            "required": false,
            "schema": {
              "description": "Model Name of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Modelname",
              "type": "array"
            }
          },
          {
            "description": "Manufacturer of Sensor",
            "in": "query",
            "name": "manufacturerName",
            "required": false,
            "schema": {
              "description": "Manufacturer of Sensor",
              "items": {
                "type": "string"
              },
              "title": "Manufacturername",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "dumpRaw",
            "required": false,
            "schema": {
              "default": false,
              "title": "Dumpraw",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Locations Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/manufacturers": {
      "get": {
        "operationId": "mfr_get_v2_manufacturers_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Mfr Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/measurements": {
      "get": {
        "operationId": "measurements_get_v2_measurements_get",
        "parameters": [
          {
            "in": "query",
            "name": "format",
            "required": false,
            "schema": {
              "title": "Format",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "date_from",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "default": "2000-01-01T00:00:00+00:00",
              "title": "Date From"
            }
          },
          {
            "in": "query",
            "name": "date_to",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "format": "date",
                  "type": "string"
                }
              ],
              "default": "2021-08-23T09:48:00+00:00",
              "title": "Date To"
            }
          },
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "desc"
            }
          },
          {
            "in": "query",
            "name": "has_geo",
            "required": false,
            "schema": {
              "title": "Has Geo",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "coordinates",
            "required": false,
            "schema": {
              "pattern": "^-?\\d{1,2}\\.?\\d{0,8},-?1?\\d{1,2}\\.?\\d{0,8}$",
              "title": "Coordinates",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius",
            "required": false,
            "schema": {
              "default": 1000,
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Radius",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain city or cities.\n        (ex. ?city=Chicago or ?city=Chicago&city=Boston)\n        ",
              "items": {
                "type": "string"
              },
              "title": "City",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "location_id",
            "required": false,
            "schema": {
              "title": "Location Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "location",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Location",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/MeasOrder"
                }
              ],
              "default": "datetime"
            }
          },
          {
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "project",
            "required": false,
            "schema": {
              "title": "Project",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/EntityTypes"
            }
          },
          {
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/SensorTypes"
            }
          },
          {
            "in": "query",
            "name": "value_from",
            "required": false,
            "schema": {
              "title": "Value From",
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "value_to",
            "required": false,
            "schema": {
              "title": "Value To",
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "include_fields",
            "required": false,
            "schema": {
              "title": "Include Fields",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Measurements Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/models": {
      "get": {
        "operationId": "model_get_v2_models_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Model Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/parameters": {
      "get": {
        "operationId": "parameters_get_v2_parameters_get",
        "parameters": [
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "sourceId",
            "required": false,
            "schema": {
              "items": {
                "type": "integer"
              },
              "title": "Sourceid",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "sourceSlug",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Sourceslug",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "string"
                },
                {
                  "type": "string"
                }
              ],
              "default": "id",
              "title": "Order By"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQParametersResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Parameters Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/projects": {
      "get": {
        "operationId": "projects_get_v2_projects_get",
        "parameters": [
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "project_id",
            "required": false,
            "schema": {
              "title": "Project Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "project",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Project",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/ProjectsOrder"
                }
              ],
              "default": "lastUpdated"
            }
          },
          {
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "title": "Entity",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "title": "Sensortype",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQProjectsResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Projects Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/projects/{project_id}": {
      "get": {
        "operationId": "projects_get_v2_projects__project_id__get",
        "parameters": [
          {
            "in": "path",
            "name": "project_id",
            "required": true,
            "schema": {
              "title": "Project Id",
              "type": "integer"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
            "in": "query",
            "name": "country_id",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. /US)\n        ",
              "maxLength": 2,
              "minLength": 2,
              "pattern": "[a-zA-Z][a-zA-Z]",
              "title": "Country Id",
              "type": "string"
            }
          },
          {
            "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
            "in": "query",
            "name": "country",
            "required": false,
            "schema": {
              "description": "\n        Limit results by a certain country using two letter country code.\n        (ex. ?country=US or ?country=US&country=MX)\n        ",
              "items": {
                "maxLength": 2,
                "minLength": 2,
                "pattern": "[a-zA-Z][a-zA-Z]",
                "type": "string"
              },
              "title": "Country",
              "type": "array"
            }
          },
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "in": "query",
            "name": "parameter_id",
            "required": false,
            "schema": {
              "title": "Parameter Id",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "parameter",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Parameter",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "unit",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Unit",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "project",
            "required": false,
            "schema": {
              "items": {
                "anyOf": [
                  {
                    "exclusiveMinimum": true,
                    "maximum": 2147483647,
                    "minimum": 0,
                    "type": "integer"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "title": "Project",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/ProjectsOrder"
                }
              ],
              "default": "lastUpdated"
            }
          },
          {
            "in": "query",
            "name": "isMobile",
            "required": false,
            "schema": {
              "title": "Ismobile",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "isAnalysis",
            "required": false,
            "schema": {
              "title": "Isanalysis",
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "entity",
            "required": false,
            "schema": {
              "title": "Entity",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "sensorType",
            "required": false,
            "schema": {
              "title": "Sensortype",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQProjectsResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Projects Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/sources": {
      "get": {
        "operationId": "sources_get_v2_sources_get",
        "parameters": [
          {
            "description": "Change the number of results returned.",
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "description": "Change the number of results returned.",
              "exclusiveMinimum": true,
              "maximum": 100000,
              "minimum": 0,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "description": "Paginate through results.",
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "description": "Paginate through results.",
              "exclusiveMinimum": true,
              "maximum": 6000,
              "minimum": 0,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "maximum": 10000,
              "minimum": 0,
              "title": "Offset",
              "type": "integer"
            }
          },
          {
            "description": "Define sort order.",
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/Sort"
                }
              ],
              "default": "asc",
              "description": "Define sort order."
            }
          },
          {
            "in": "query",
            "name": "sourceName",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Sourcename",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "sourceId",
            "required": false,
            "schema": {
              "items": {
                "type": "integer"
              },
              "title": "Sourceid",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "sourceSlug",
            "required": false,
            "schema": {
              "items": {
                "type": "string"
              },
              "title": "Sourceslug",
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "order_by",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/SourcesOrder"
                }
              ],
              "default": "sourceName"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Sources Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/sources/readme/{slug}": {
      "get": {
        "operationId": "readme_get_v2_sources_readme__slug__get",
        "parameters": [
          {
            "in": "path",
            "name": "slug",
            "required": true,
            "schema": {
              "title": "Slug",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Readme Get",
        "tags": [
          "v2"
        ]
      }
    },
    "/v2/summary": {
      "get": {
        "operationId": "summary_get_v2_summary_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenAQResult"
                }
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Summary Get",
        "tags": [
          "v2"
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "CitiesOrder": {
        "description": "An enumeration.",
        "enum": [
          "city",
          "country",
          "firstUpdated",
          "lastUpdated"
        ],
        "title": "CitiesOrder",
        "type": "string"
      },
      "CitiesRow": {
        "properties": {
          "city": {
            "title": "City",
            "type": "string"
          },
          "count": {
            "title": "Count",
            "type": "integer"
          },
          "country": {
            "title": "Country",
            "type": "string"
          },
          "firstUpdated": {
            "format": "date-time",
            "title": "Firstupdated",
            "type": "string"
          },
          "lastUpdated": {
            "format": "date-time",
            "title": "Lastupdated",
            "type": "string"
          },
          "locations": {
            "title": "Locations",
            "type": "integer"
          },
          "parameters": {
            "items": {
              "type": "string"
            },
            "title": "Parameters",
            "type": "array"
          }
        },
        "required": [
          "city",
          "count",
          "locations",
          "firstUpdated",
          "lastUpdated",
          "parameters"
        ],
        "title": "CitiesRow",
        "type": "object"
      },
      "CountriesOrder": {
        "description": "An enumeration.",
        "enum": [
          "country",
          "firstUpdated",
          "lastUpdated",
          "locations",
          "count"
        ],
        "title": "CountriesOrder",
        "type": "string"
      },
      "CountriesRow": {
        "properties": {
          "cities": {
            "title": "Cities",
            "type": "integer"
          },
          "code": {
            "title": "Code",
            "type": "string"
          },
          "count": {
            "title": "Count",
            "type": "integer"
          },
          "firstUpdated": {
            "format": "date-time",
            "title": "Firstupdated",
            "type": "string"
          },
          "lastUpdated": {
            "format": "date-time",
            "title": "Lastupdated",
            "type": "string"
          },
          "locations": {
            "title": "Locations",
            "type": "integer"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "parameters": {
            "items": {
              "type": "string"
            },
            "title": "Parameters",
            "type": "array"
          },
          "sources": {
            "title": "Sources",
            "type": "integer"
          }
        },
        "required": [
          "code",
          "name",
          "locations",
          "firstUpdated",
          "lastUpdated",
          "parameters",
          "count",
          "cities",
          "sources"
        ],
        "title": "CountriesRow",
        "type": "object"
      },
      "EntityTypes": {
        "description": "An enumeration.",
        "enum": [
          "government",
          "community",
          "research"
        ],
        "title": "EntityTypes",
        "type": "string"
      },
      "HTTPValidationError": {
        "properties": {
          "detail": {
            "items": {
              "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
          }
        },
        "title": "HTTPValidationError",
        "type": "object"
      },
      "LocationsOrder": {
        "description": "An enumeration.",
        "enum": [
          "city",
          "country",
          "location",
          "sourceName",
          "firstUpdated",
          "lastUpdated",
          "count",
          "random"
        ],
        "title": "LocationsOrder",
        "type": "string"
      },
      "MeasOrder": {
        "description": "An enumeration.",
        "enum": [
          "city",
          "country",
          "location",
          "datetime"
        ],
        "title": "MeasOrder",
        "type": "string"
      },
      "Meta": {
        "properties": {
          "found": {
            "default": 0,
            "title": "Found",
            "type": "integer"
          },
          "license": {
            "default": "CC BY 4.0d",
            "title": "License",
            "type": "string"
          },
          "limit": {
            "default": 100,
            "title": "Limit",
            "type": "integer"
          },
          "name": {
            "default": "openaq-api",
            "title": "Name",
            "type": "string"
          },
          "page": {
            "default": 1,
            "title": "Page",
            "type": "integer"
          },
          "website": {
            "default": "/",
            "title": "Website",
            "type": "string"
          }
        },
        "title": "Meta",
        "type": "object"
      },
      "OpenAQCitiesResult": {
        "properties": {
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Meta"
              }
            ],
            "default": {
              "found": 0,
              "license": "CC BY 4.0d",
              "limit": 100,
              "name": "openaq-api",
              "page": 1,
              "website": "/"
            },
            "title": "Meta"
          },
          "results": {
            "items": {
              "$ref": "#/components/schemas/CitiesRow"
            },
            "title": "Results",
            "type": "array"
          }
        },
        "required": [
          "results"
        ],
        "title": "OpenAQCitiesResult",
        "type": "object"
      },
      "OpenAQCountriesResult": {
        "properties": {
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Meta"
              }
            ],
            "default": {
              "found": 0,
              "license": "CC BY 4.0d",
              "limit": 100,
              "name": "openaq-api",
              "page": 1,
              "website": "/"
            },
            "title": "Meta"
          },
          "results": {
            "items": {
              "$ref": "#/components/schemas/CountriesRow"
            },
            "title": "Results",
            "type": "array"
          }
        },
        "required": [
          "results"
        ],
        "title": "OpenAQCountriesResult",
        "type": "object"
      },
      "OpenAQParametersResult": {
        "properties": {
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Meta"
              }
            ],
            "default": {
              "found": 0,
              "license": "CC BY 4.0d",
              "limit": 100,
              "name": "openaq-api",
              "page": 1,
              "website": "/"
            },
            "title": "Meta"
          },
          "results": {
            "items": {
              "$ref": "#/components/schemas/ParametersRow"
            },
            "title": "Results",
            "type": "array"
          }
        },
        "required": [
          "results"
        ],
        "title": "OpenAQParametersResult",
        "type": "object"
      },
      "OpenAQProjectsResult": {
        "properties": {
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Meta"
              }
            ],
            "default": {
              "found": 0,
              "license": "CC BY 4.0d",
              "limit": 100,
              "name": "openaq-api",
              "page": 1,
              "website": "/"
            },
            "title": "Meta"
          },
          "results": {
            "items": {
              "$ref": "#/components/schemas/ProjectsRow"
            },
            "title": "Results",
            "type": "array"
          }
        },
        "required": [
          "results"
        ],
        "title": "OpenAQProjectsResult",
        "type": "object"
      },
      "OpenAQResult": {
        "properties": {
          "meta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Meta"
              }
            ],
            "default": {
              "found": 0,
              "license": "CC BY 4.0d",
              "limit": 100,
              "name": "openaq-api",
              "page": 1,
              "website": "/"
            },
            "title": "Meta"
          },
          "results": {
            "default": [],
            "items": {},
            "title": "Results",
            "type": "array"
          }
        },
        "title": "OpenAQResult",
        "type": "object"
      },
      "ParametersRow": {
        "properties": {
          "description": {
            "title": "Description",
            "type": "string"
          },
          "displayName": {
            "title": "Displayname",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "integer"
          },
          "isCore": {
            "title": "Iscore",
            "type": "boolean"
          },
          "maxColorValue": {
            "title": "Maxcolorvalue",
            "type": "number"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "preferredUnit": {
            "title": "Preferredunit",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "displayName",
          "description",
          "preferredUnit"
        ],
        "title": "ParametersRow",
        "type": "object"
      },
      "ProjectParameterDetails": {
        "properties": {
          "average": {
            "title": "Average",
            "type": "number"
          },
          "count": {
            "title": "Count",
            "type": "integer"
          },
          "displayName": {
            "title": "Displayname",
            "type": "string"
          },
          "firstUpdated": {
            "format": "date-time",
            "title": "Firstupdated",
            "type": "string"
          },
          "lastUpdated": {
            "format": "date-time",
            "title": "Lastupdated",
            "type": "string"
          },
          "lastValue": {
            "title": "Lastvalue",
            "type": "number"
          },
          "locations": {
            "title": "Locations",
            "type": "integer"
          },
          "parameter": {
            "title": "Parameter",
            "type": "string"
          },
          "parameterId": {
            "title": "Parameterid",
            "type": "integer"
          },
          "unit": {
            "title": "Unit",
            "type": "string"
          }
        },
        "required": [
          "unit",
          "count",
          "average",
          "lastValue",
          "locations",
          "parameter",
          "lastUpdated",
          "firstUpdated",
          "parameterId"
        ],
        "title": "ProjectParameterDetails",
        "type": "object"
      },
      "ProjectsOrder": {
        "description": "An enumeration.",
        "enum": [
          "id",
          "name",
          "subtitle",
          "firstUpdated",
          "lastUpdated"
        ],
        "title": "ProjectsOrder",
        "type": "string"
      },
      "ProjectsRow": {
        "properties": {
          "bbox": {
            "items": {
              "type": "number"
            },
            "title": "Bbox",
            "type": "array"
          },
          "countries": {
            "items": {
              "type": "string"
            },
            "title": "Countries",
            "type": "array"
          },
          "entity": {
            "title": "Entity",
            "type": "string"
          },
          "firstUpdated": {
            "format": "date-time",
            "title": "Firstupdated",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "integer"
          },
          "isAnalysis": {
            "title": "Isanalysis",
            "type": "boolean"
          },
          "isMobile": {
            "title": "Ismobile",
            "type": "boolean"
          },
          "lastUpdated": {
            "format": "date-time",
            "title": "Lastupdated",
            "type": "string"
          },
          "locationIds": {
            "items": {
              "type": "integer"
            },
            "title": "Locationids",
            "type": "array"
          },
          "locations": {
            "title": "Locations",
            "type": "integer"
          },
          "measurements": {
            "title": "Measurements",
            "type": "integer"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "parameters": {
            "items": {
              "$ref": "#/components/schemas/ProjectParameterDetails"
            },
            "title": "Parameters",
            "type": "array"
          },
          "sensorType": {
            "title": "Sensortype",
            "type": "string"
          },
          "sources": {
            "items": {},
            "title": "Sources",
            "type": "array"
          },
          "subtitle": {
            "title": "Subtitle",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "subtitle",
          "locations",
          "locationIds",
          "parameters",
          "measurements",
          "firstUpdated",
          "lastUpdated"
        ],
        "title": "ProjectsRow",
        "type": "object"
      },
      "SensorTypes": {
        "description": "An enumeration.",
        "enum": [
          "reference grade",
          "low-cost sensor"
        ],
        "title": "SensorTypes",
        "type": "string"
      },
      "Sort": {
        "description": "An enumeration.",
        "enum": [
          "asc",
          "desc"
        ],
        "title": "Sort",
        "type": "string"
      },
      "SourcesOrder": {
        "description": "An enumeration.",
        "enum": [
          "sourceName",
          "firstUpdated",
          "lastUpdated"
        ],
        "title": "SourcesOrder",
        "type": "string"
      },
      "SourcesV1Order": {
        "description": "An enumeration.",
        "enum": [
          "name"
        ],
        "title": "SourcesV1Order",
        "type": "string"
      },
      "Spatial": {
        "description": "An enumeration.",
        "enum": [
          "country",
          "location",
          "project",
          "total"
        ],
        "title": "Spatial",
        "type": "string"
      },
      "Temporal": {
        "description": "An enumeration.",
        "enum": [
          "day",
          "month",
          "year",
          "moy",
          "dow",
          "hour",
          "hod"
        ],
        "title": "Temporal",
        "type": "string"
      },
      "TileJSON": {
        "description": "TileJSON model.\nBased on https://github.com/mapbox/tilejson-spec/tree/master/2.2.0",
        "properties": {
          "attribution": {
            "title": "Attribution",
            "type": "string"
          },
          "bounds": {
            "default": [
              -180,
              -90,
              180,
              90
            ],
            "items": {
              "type": "number"
            },
            "title": "Bounds",
            "type": "array"
          },
          "data": {
            "default": [],
            "items": {
              "type": "string"
            },
            "title": "Data",
            "type": "array"
          },
          "description": {
            "title": "Description",
            "type": "string"
          },
          "grids": {
            "default": [],
            "items": {
              "type": "string"
            },
            "title": "Grids",
            "type": "array"
          },
          "legend": {
            "title": "Legend",
            "type": "string"
          },
          "maxzoom": {
            "default": 30,
            "maximum": 30,
            "minimum": 0,
            "title": "Maxzoom",
            "type": "integer"
          },
          "minzoom": {
            "default": 0,
            "maximum": 30,
            "minimum": 0,
            "title": "Minzoom",
            "type": "integer"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "scheme": {
            "default": "xyz",
            "title": "Scheme",
            "type": "string"
          },
          "template": {
            "title": "Template",
            "type": "string"
          },
          "tilejson": {
            "default": "2.2.0",
            "title": "Tilejson",
            "type": "string"
          },
          "tiles": {
            "items": {
              "type": "string"
            },
            "title": "Tiles",
            "type": "array"
          },
          "version": {
            "default": "1.0.0",
            "title": "Version",
            "type": "string"
          }
        },
        "required": [
          "tiles"
        ],
        "title": "TileJSON",
        "type": "object"
      },
      "ValidationError": {
        "properties": {
          "loc": {
            "items": {
              "type": "string"
            },
            "title": "Location",
            "type": "array"
          },
          "msg": {
            "title": "Message",
            "type": "string"
          },
          "type": {
            "title": "Error Type",
            "type": "string"
          }
        },
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError",
        "type": "object"
      }
    }
  }
}