---
updatedAt: 2025-02-19T23:47:49.000Z
agentTools:
  projectIndex: https://apidocs.tempestwx.com/llms.txt
---

# Stations

Get the latest 5 minute observation for all stations you have access to.  A default set of observation fields are returned, but to optimize your response size you can get only the data values that you need by using the `ob_fields` query parameter.  Just pass in a comma separated list of the possible values below to only have those fields returned in the response.

| Parameter                          | Returned by Default |
| :--------------------------------- | :------------------ |
| `timestamp`                        | Always returned     |
| `report_interval`                  | Always returned     |
| `air_temp`                         | Default             |
| `wind_lull`                        | Default             |
| `wind_avg`                         | Default             |
| `wind_gust`                        | Default             |
| `wind_dir`                         | Default             |
| `station_pressure`                 | Default             |
| `sea_level_pressure`               | Default             |
| `rh`                               | Default             |
| `uv`                               | Default             |
| `illuminance`                      | Default             |
| `solar_radiation`                  | Default             |
| `precip_accumulation`              | Default             |
| `local_day_precip_accumulation`    | Default             |
| `precip_type`                      | Default             |
| `nc_precip_accumulation`           | Default             |
| `nc_local_day_precip_accumulation` | Default             |
| `strike_count`                     | Default             |
| `strike_distance`                  | Default             |
| `air_temp_today_high`              | Optional            |
| `air_temp_today_low`               | Optional            |
| `air_temp_yesterday_high`          | Optional            |
| `air_temp_yesterday_low`           | Optional            |
| `sea_level_pressure_today_high`    | Optional            |
| `sea_level_pressure_today_low`     | Optional            |
| `humidity_today_high`              | Optional            |
| `humidity_today_low`               | Optional            |

If there are more than 10,000 stations provisioned to your API key, use the `next_cursor` value returned to get the next set of stations.  If a response does not have a `next_cursor` item you have retrieved all the stations.

# OpenAPI definition

```json
{
  "openapi": "3.0.2",
  "info": {
    "title": "TempestOne API",
    "version": "1.0"
  },
  "servers": [
    {
      "url": "https://swd.weatherflow.com/swd/rest"
    }
  ],
  "components": {
    "parameters": {
      "unitsTemp": {
        "name": "units_temp",
        "in": "query",
        "required": false,
        "description": "Temperature units",
        "example": "f",
        "schema": {
          "type": "string",
          "enum": [
            "c",
            "f"
          ],
          "default": "c"
        }
      },
      "unitsWind": {
        "name": "units_wind",
        "in": "query",
        "required": false,
        "description": "Wind units",
        "example": "mph",
        "schema": {
          "type": "string",
          "enum": [
            "mph",
            "kph",
            "kts",
            "mps",
            "bft",
            "lfm"
          ],
          "default": "mps"
        }
      },
      "unitsPressure": {
        "name": "units_pressure",
        "in": "query",
        "required": false,
        "description": "Pressure units",
        "example": "mb",
        "schema": {
          "type": "string",
          "enum": [
            "mb",
            "inhg",
            "mmhg",
            "hpa"
          ],
          "default": "mb"
        }
      },
      "unitsPrecip": {
        "name": "units_precip",
        "in": "query",
        "required": false,
        "description": "Precipitation units",
        "example": "in",
        "schema": {
          "type": "string",
          "enum": [
            "mm",
            "cm",
            "in"
          ],
          "default": "mm"
        }
      },
      "unitsDistance": {
        "name": "units_distance",
        "in": "query",
        "required": false,
        "description": "Distance units",
        "example": "mi",
        "schema": {
          "type": "string",
          "enum": [
            "km",
            "mi"
          ],
          "default": "km"
        }
      },
      "obFields": {
        "name": "ob_fields",
        "in": "query",
        "description": "A comma separated list of data fields that are returned in the response.  Index field order in the response will be the same as the request.",
        "required": false,
        "schema": {
          "type": "string"
        }
      },
      "limit": {
        "name": "limit",
        "in": "query",
        "description": "The number of items to return.",
        "required": false,
        "schema": {
          "type": "integer",
          "format": "int64",
          "example": 10000,
          "default": 10000
        }
      },
      "nextCursor": {
        "name": "next_cursor",
        "in": "query",
        "description": "A cursor value returned that can be used in a subsequent request to get the next set of data.",
        "required": false,
        "schema": {
          "type": "string",
          "example": "1833"
        }
      }
    },
    "schemas": {
      "stationId": {
        "type": "integer",
        "format": "int32",
        "example": 12799
      },
      "latLon": {
        "type": "number",
        "format": "float"
      },
      "obFields": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "list of the order of values in each obs array.",
        "enum": [
          "air_temp",
          "wind_avg",
          "wind_lull",
          "wind_gust",
          "wind_dir",
          "station_pressure",
          "sea_level_pressure",
          "rh",
          "uv",
          "illuminance",
          "solar_radiation",
          "precip_accumulation",
          "local_day_precip_accumulation",
          "precip_type",
          "nc_precip_accumulation",
          "nc_local_day_precip_accumulation",
          "strike_count",
          "strike_distance",
          "feels_like"
        ]
      }
    },
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "name": "api_key",
        "in": "query"
      }
    }
  },
  "tags": [
    {
      "name": "Current Conditions & Observations"
    }
  ],
  "paths": {
    "/observations/network/stations": {
      "get": {
        "summary": "Stations",
        "tags": [
          "Current Conditions & Observations"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "bucket",
            "description": "Time resolution of observations",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 5,
              "enum": [
                5
              ]
            }
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/nextCursor"
          },
          {
            "$ref": "#/components/parameters/obFields"
          },
          {
            "in": "query",
            "name": "lat_min",
            "required": false,
            "description": "The latitude of the Southwest corner of a bounding box.  Required when doing a bounding box search.",
            "example": 37.28,
            "schema": {
              "$ref": "#/components/schemas/latLon"
            }
          },
          {
            "in": "query",
            "name": "lon_min",
            "required": false,
            "description": "The longitude of the Southwest corner of a bounding box.  Required when doing a bounding box search.",
            "example": -101.76,
            "schema": {
              "$ref": "#/components/schemas/latLon"
            }
          },
          {
            "in": "query",
            "name": "lat_max",
            "required": false,
            "description": "The latitude of the Northeast corner of a bounding box.  Required when doing a bounding box search.",
            "example": 41.32,
            "schema": {
              "$ref": "#/components/schemas/latLon"
            }
          },
          {
            "in": "query",
            "name": "lon_max",
            "required": false,
            "description": "The longitude of the Northeast corner of a bounding box.  Required when doing a bounding box search.",
            "example": -91,
            "schema": {
              "$ref": "#/components/schemas/latLon"
            }
          },
          {
            "$ref": "#/components/parameters/unitsTemp"
          },
          {
            "$ref": "#/components/parameters/unitsWind"
          },
          {
            "$ref": "#/components/parameters/unitsPressure"
          },
          {
            "$ref": "#/components/parameters/unitsPrecip"
          },
          {
            "$ref": "#/components/parameters/unitsDistance"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ob_fields": {
                      "$ref": "#/components/schemas/obFields"
                    },
                    "stations": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "station_id": {
                            "$ref": "#/components/schemas/stationId"
                          },
                          "ob": {
                            "type": "array",
                            "description": "An observation array matching the order of the ob_fields returned at the root of the response.",
                            "items": {
                              "type": "number"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "security": [
    {
      "ApiKeyAuth": []
    }
  ],
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true,
    "samples-enabled": true
  }
}
```