United States Army Corps of Engineers · Capability
CWMS Data API — Time Series
CWMS Data API — Time Series. 3 operations. Lead operation: Get Time Series. Self-contained Naftiko capability covering one United States Army Corps Of Engineers business surface.
What You Can Do
GET
Gettimeseries
— Get Time Series
/v1/timeseries
GET
Getfilteredtimeseries
— Get Filtered Time Series
/v1/timeseries/filtered
GET
Getrecenttimeseries
— Get Recent Time Series
/v1/timeseries/recent
MCP Tools
get-time-series
Get Time Series
read-only
idempotent
get-filtered-time-series
Get Filtered Time Series
read-only
idempotent
get-recent-time-series
Get Recent Time Series
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: CWMS Data API — Time Series
description: 'CWMS Data API — Time Series. 3 operations. Lead operation: Get Time Series. Self-contained Naftiko capability
covering one United States Army Corps Of Engineers business surface.'
tags:
- United States Army Corps Of Engineers
- Time Series
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
UNITED_STATES_ARMY_CORPS_OF_ENGINEERS_API_KEY: UNITED_STATES_ARMY_CORPS_OF_ENGINEERS_API_KEY
capability:
consumes:
- type: http
namespace: cwms-data-time-series
baseUri: https://cwms-data.usace.army.mil/cwms-data
description: CWMS Data API — Time Series business capability. Self-contained, no shared references.
resources:
- name: timeseries
path: /timeseries
operations:
- name: gettimeseries
method: GET
description: Get Time Series
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: query
type: string
description: The time series identifier in CWMS format (e.g., DALT2.Stage.Inst.15Minutes.0.raw)
required: true
- name: office
in: query
type: string
description: Three-character USACE district office code
- name: unit
in: query
type: string
description: Measurement unit for the returned data
- name: datum
in: query
type: string
description: Vertical datum for elevation values
- name: begin
in: query
type: string
description: Start of time window in ISO 8601 format or milliseconds since epoch
- name: end
in: query
type: string
description: End of time window in ISO 8601 format or milliseconds since epoch
- name: timezone
in: query
type: string
description: Timezone for interpreting date/time values
- name: format
in: query
type: string
description: Response format
- name: page
in: query
type: string
description: Pagination cursor from a previous response
- name: page-size
in: query
type: integer
description: Number of time series values per page
- name: timeseries-filtered
path: /timeseries/filtered
operations:
- name: getfilteredtimeseries
method: GET
description: Get Filtered Time Series
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: office
in: query
type: string
description: Three-character USACE district office code
- name: name
in: query
type: string
description: Time series identifier (supports CWMS wildcards)
- name: timeseries-recent
path: /timeseries/recent
operations:
- name: getrecenttimeseries
method: GET
description: Get Recent Time Series
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: office
in: query
type: string
description: Three-character USACE district office code
- name: name
in: query
type: string
description: Time series identifier (supports CWMS wildcards)
- name: recently-changed-within
in: query
type: string
description: ISO 8601 duration for how recently the data was updated (e.g., PT2H for 2 hours)
authentication:
type: bearer
token: '{{env.UNITED_STATES_ARMY_CORPS_OF_ENGINEERS_API_KEY}}'
exposes:
- type: rest
namespace: cwms-data-time-series-rest
port: 8080
description: REST adapter for CWMS Data API — Time Series. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/timeseries
name: timeseries
description: REST surface for timeseries.
operations:
- method: GET
name: gettimeseries
description: Get Time Series
call: cwms-data-time-series.gettimeseries
with:
name: rest.name
office: rest.office
unit: rest.unit
datum: rest.datum
begin: rest.begin
end: rest.end
timezone: rest.timezone
format: rest.format
page: rest.page
page-size: rest.page-size
outputParameters:
- type: object
mapping: $.
- path: /v1/timeseries/filtered
name: timeseries-filtered
description: REST surface for timeseries-filtered.
operations:
- method: GET
name: getfilteredtimeseries
description: Get Filtered Time Series
call: cwms-data-time-series.getfilteredtimeseries
with:
office: rest.office
name: rest.name
outputParameters:
- type: object
mapping: $.
- path: /v1/timeseries/recent
name: timeseries-recent
description: REST surface for timeseries-recent.
operations:
- method: GET
name: getrecenttimeseries
description: Get Recent Time Series
call: cwms-data-time-series.getrecenttimeseries
with:
office: rest.office
name: rest.name
recently-changed-within: rest.recently-changed-within
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: cwms-data-time-series-mcp
port: 9090
transport: http
description: MCP adapter for CWMS Data API — Time Series. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: get-time-series
description: Get Time Series
hints:
readOnly: true
destructive: false
idempotent: true
call: cwms-data-time-series.gettimeseries
with:
name: tools.name
office: tools.office
unit: tools.unit
datum: tools.datum
begin: tools.begin
end: tools.end
timezone: tools.timezone
format: tools.format
page: tools.page
page-size: tools.page-size
outputParameters:
- type: object
mapping: $.
- name: get-filtered-time-series
description: Get Filtered Time Series
hints:
readOnly: true
destructive: false
idempotent: true
call: cwms-data-time-series.getfilteredtimeseries
with:
office: tools.office
name: tools.name
outputParameters:
- type: object
mapping: $.
- name: get-recent-time-series
description: Get Recent Time Series
hints:
readOnly: true
destructive: false
idempotent: true
call: cwms-data-time-series.getrecenttimeseries
with:
office: tools.office
name: tools.name
recently-changed-within: tools.recently-changed-within
outputParameters:
- type: object
mapping: $.