United States Army Corps of Engineers Catalog API

Browse available data in the CWMS catalog

Operations 1

GET /catalog/{datastore-type} Get Catalog #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/united-states-army-corps-of-engineers-catalog-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

united-states-army-corps-of-engineers-catalog-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: CWMS Data Basins Catalog API
  description: The Corps Water Management System (CWMS) Data API provides a RESTful interface for accessing water management data from the U.S. Army Corps of Engineers. This includes time series data, locations, levels, ratings, forecasts, projects, turbines, gates, and water supply information for USACE-managed water resources across the United States.
  version: 3.0.0
  contact:
    name: USACE CWMS Data API Support
    url: https://github.com/USACE/cwms-data-api
  license:
    name: MIT
    url: https://github.com/USACE/cwms-data-api/blob/develop/LICENSE.md
  x-tags:
  - Water Management
  - Federal Government
  - Hydrology
  - Engineering
servers:
- url: https://cwms-data.usace.army.mil/cwms-data
  description: Production CWMS Data API
- url: https://water.usace.army.mil/cwms-data
  description: Water Data Platform
tags:
- name: Catalog
  description: Browse available data in the CWMS catalog
paths:
  /catalog/{datastore-type}:
    get:
      operationId: getCatalog
      summary: Get Catalog
      description: Returns a catalog of available time series, locations, or other data stored in CWMS. Use this endpoint to discover available data.
      tags:
      - Catalog
      parameters:
      - name: datastore-type
        in: path
        required: true
        description: The type of data to catalog (TIMESERIES, LOCATIONS, RATINGS, etc.)
        schema:
          type: string
          enum:
          - TIMESERIES
          - LOCATIONS
          - RATINGS
      - name: page
        in: query
        required: false
        description: Pagination cursor from a previous response
        schema:
          type: string
      - name: page-size
        in: query
        required: false
        description: Number of results to return per page (max 500)
        schema:
          type: integer
          default: 500
      - name: office
        in: query
        required: false
        description: Three-character USACE district office code (e.g., SWT, LRN)
        schema:
          type: string
      - name: like
        in: query
        required: false
        description: Filter results using a CWMS wildcard pattern
        schema:
          type: string
      responses:
        '200':
          description: Catalog results
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CatalogResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
components:
  schemas:
    CatalogEntry:
      type: object
      properties:
        name:
          type: string
          description: The identifier for this catalog entry
        office:
          type: string
          description: The owning USACE district office code
        units:
          type: string
          description: Measurement units
    CatalogResponse:
      type: object
      properties:
        page:
          type: string
          description: Current page cursor
        next-page:
          type: string
          description: Next page cursor (absent if no more pages)
        total:
          type: integer
          description: Total number of entries matching the query
        page-size:
          type: integer
          description: Number of entries in this response
        entries:
          type: array
          items:
            $ref: '#/components/schemas/CatalogEntry'
    Error:
      type: object
      properties:
        message:
          type: string
          description: Human-readable error description
        status:
          type: integer
          description: HTTP status code
  responses:
    BadRequest:
      description: Bad request — invalid parameters or missing required fields
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: JWT Bearer token for authenticated operations (create, update, delete). Obtain a token from the CWMS authorization endpoint.