addedInput schema / properties / bin
Added value: +{
+ "description": "Depth bin to predict for, taken from the bins[] array on a noaa_marine_find_stations current row (e.g. 15, 10 or 1 at PUG1515). Omit to take the CO-OPS default, which is the shallowest bin. A bin the station does not publish comes back as bin_unavailable naming the bins it does.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+}
addedInput schema / properties / limit
Added value: +{
+ "description": "Maximum prediction rows to return on this page — max/slack events or 6-minute rows, whichever the interval selects — for a caller that wants fewer than the response budget allows. Omit for the largest page that fits; a value larger than the budget allows does not widen the page.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+}
addedInput schema / properties / offset
Added value: +{
+ "default": 0,
+ "description": "Row offset into the matched prediction series — the max/slack events on the MAX_SLACK interval, the 6-minute curve on 6min — for reading a range whose rows do not fit one response. 0 (default) starts at the first row; pass the next_offset from a previous call to continue. An offset past the last row returns an empty page rather than an error.",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+}
changedInput schema / properties / units / description
Previous value: -"Unit system: english = knots; metric = m/s."New value: +"Unit system: english = knots for speed and feet for the echoed depth; metric = cm/s for speed (not m/s) and meters for the echoed depth."
changedOutput schema / anyOf
Previous value: -[
- {
- "not": {
- "required": [
- "error"
- ]
- },
- "required": [
- "station_id",
- "station_name",
- "units"
- ]
- },
- {
- "required": [
- "error"
- ]
- }
-]New value: +[
+ {
+ "not": {
+ "required": [
+ "error"
+ ]
+ },
+ "required": [
+ "station_id",
+ "station_name",
+ "units",
+ "bin",
+ "depth"
+ ]
+ },
+ {
+ "required": [
+ "error"
+ ]
+ }
+]
addedOutput schema / properties / bin
Added value: +{
+ "description": "Depth bin CO-OPS answered with — the requested bin, or its default shallowest bin when none was requested. Null when the response carried no prediction rows.",
+ "type": [
+ "number",
+ "null"
+ ]
+}
addedOutput schema / properties / depth
Added value: +{
+ "description": "Depth of the returned bin, in the requested units: feet under english, meters under metric. Distinct from the bins[].depth on a noaa_marine_find_stations row, which the catalog always publishes in feet. Null when CO-OPS publishes no depth for the bin, or when the response carried no prediction rows.",
+ "type": [
+ "number",
+ "null"
+ ]
+}
changedOutput schema / properties / error / properties / data / properties / reason / description
Previous value: -"Machine-readable failure mode. Declared by this tool: `station_not_found`: CO-OPS returned an error for the station ID — current stations require alphanumeric IDs. `invalid_date_range`: begin_date/end_date is not a real calendar date or begin_date is after end_date `date_range_exceeded`: Requested date range exceeds the 1-year CO-OPS limit. `no_predictions`: Station exists but CO-OPS returned no current-prediction data for the date range. Other values are possible when a failure originates below the handler."New value: +"Machine-readable failure mode. Declared by this tool: `station_not_found`: CO-OPS rejected the station ID as unknown or invalid — current stations require alphanumeric IDs. `invalid_date_range`: begin_date/end_date is not a real calendar date or begin_date is after end_date `date_range_exceeded`: Requested date range exceeds the 1-year CO-OPS limit. `no_predictions`: Station exists but CO-OPS returned no current-prediction data for the requested date range. `predictions_unavailable`: The station is in the current-predictions catalog, but CO-OPS publishes no current predictions for it at any date. `bin_unavailable`: CO-OPS rejected the requested bin because the station publishes no predictions at that bin. Other values are possible when a failure originates below the handler."
changedOutput schema / properties / error / properties / data / properties / reason / examples
Previous value: -[
- "station_not_found",
- "invalid_date_range",
- "date_range_exceeded",
- "no_predictions"
-]New value: +[
+ "station_not_found",
+ "invalid_date_range",
+ "date_range_exceeded",
+ "no_predictions",
+ "predictions_unavailable",
+ "bin_unavailable"
+]
changedOutput schema / properties / events / description
Previous value: -"Max flood, max ebb, and slack events. Present for MAX_SLACK interval."New value: +"Max flood, max ebb, and slack events — the whole matched series when it fits one response, otherwise the leading page starting at offset. Present for MAX_SLACK interval, and empty when CO-OPS answered with a statement instead of events — read notice for its wording."
changedOutput schema / properties / events / items / properties / direction / description
Previous value: -"True bearing direction in degrees (0–360). Absent for slack events."New value: +"The station's mean flood direction on a flood event and its mean ebb direction on an ebb event, as a true bearing in degrees (0–360). A station constant, not an instantaneous heading. Absent for slack events and wherever CO-OPS reports no mean direction."
changedOutput schema / properties / events / items / properties / speed / description
Previous value: -"Current speed in the requested units. Absent for slack events."New value: +"Peak speed as a non-negative magnitude, in the requested units. Absent when CO-OPS reports no speed for the event, which is the usual case at slack water — though a slack event can carry a small residual speed under metric units."
addedOutput schema / properties / next_offset
Added value: +{
+ "anyOf": [
+ {
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Offset to pass as offset on the next call, or null when this page reaches the last matched row. Absent when the whole matched series was returned."
+}
addedOutput schema / properties / notice
Added value: +{
+ "description": "CO-OPS's own statement about the station when it returned that instead of prediction events — the answer to report, not a failure — or what this page of the prediction series covers and how to reach the next one.",
+ "type": "string"
+}
addedOutput schema / properties / page_offset
Added value: +{
+ "description": "Row offset this page starts at, echoed from the request. Absent when the whole matched series was returned.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+}
changedOutput schema / properties / predictions / description
Previous value: -"6-minute continuous current predictions. Present for 6min interval."New value: +"6-minute continuous current predictions — the whole curve when it fits one response, otherwise the leading page starting at offset. Present for 6min interval, and empty when CO-OPS answered with a statement instead of a curve — read notice for its wording."
changedOutput schema / properties / predictions / items / properties / direction / description
Previous value: -"True bearing direction in degrees (0–360). Null when CO-OPS does not report direction for this station type."New value: +"The station's mean flood direction on a flood row and its mean ebb direction on an ebb row, as a true bearing in degrees (0–360). A station constant, not an instantaneous heading. Null on a slack row and wherever CO-OPS reports no mean direction."
changedOutput schema / properties / predictions / items / properties / speed / description
Previous value: -"Current speed in the requested units."New value: +"Current speed as a non-negative magnitude, in the requested units."
addedOutput schema / properties / predictions / items / properties / type
Added value: +{
+ "description": "Flow sense at this row, from the sign of the speed CO-OPS predicts: flood (inbound), ebb (outbound), or slack (zero). speed is a non-negative magnitude, so this is what carries which way the water is moving.",
+ "enum": [
+ "flood",
+ "ebb",
+ "slack"
+ ],
+ "type": "string"
+}
changedOutput schema / properties / predictions / items / required
Previous value: -[
- "time",
- "speed",
- "direction"
-]New value: +[
+ "time",
+ "type",
+ "speed",
+ "direction"
+]
addedOutput schema / properties / rows_matched
Added value: +{
+ "description": "Prediction rows the requested date range matched, before the page was cut. Absent when the whole matched series was returned.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+}
addedOutput schema / properties / rows_returned
Added value: +{
+ "description": "Prediction rows this page carries — the length of events on the MAX_SLACK interval, of predictions on 6min. Absent when the whole matched series was returned.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+}
addedOutput schema / properties / truncated
Added value: +{
+ "description": "True when this page stops short of the last matched row, so further rows remain at next_offset. False on the final page and on a page past the end. Absent when the whole matched series was returned.",
+ "type": "boolean"
+}
changedOutput schema / properties / units / description
Previous value: -"Speed units: \"english\" (knots) or \"metric\" (m/s)."New value: +"Unit system these values are in: \"english\" (speed in knots, depth in feet) or \"metric\" (speed in cm/s, depth in meters)."