CWMS Data API

Introduction

  • Overview
  • FAQ
  • Glossary
    • General Terms
    • CDA Glossary Terms
    • Hydrologic Terms
  • Coming Soon

Using the API

  • Endpoints
    • Time Series Endpoints
      • TimeSeries Basic Information
        • Parameters, Types, Intervals, Durations, and Offsets
          • Tables of Types, Intervals, and Durations
        • Regular, Irregular, Pseudo Regular, and Local Regular
      • Common Parameter Definitions
        • Shared parameter definitions
      • Common Reasons for Parameter Usage
      • /timeseries
        • What it does
        • When to use
        • Examples
      • /timeseries/recent
        • What it does
        • When to use
        • Examples
      • /timeseries/profile
        • What it does
        • When to use
        • Examples
      • /timeseries/profile/{location-id}/{parameter-id}
        • What it does
        • When to use
        • Examples
      • /timeseries/profile-parser
        • What it does
        • When to use
        • Examples
      • /timeseries/profile-parser/{location-id}/{parameter-id}
        • What it does
        • When to use
        • Examples
      • /timeseries/profile-instance
        • What it does
        • When to use
        • Examples
      • /timeseries/profile-instance/{location-id}/{parameter-id}/{version}
        • What it does
        • When to use
        • Examples
      • /timeseries/versions
        • What it does
        • When to use
        • Examples
    • Authorization
      • Endpoints
      • Retrieve a Key
      • Notes
  • Endpoint Parameters
    • Time Series Parameters (working reference)
  • API References
  • User Onboarding
    • Required administrator roles
    • Assign an office and roles

Data and References

  • Data
    • Timeseries
      • Parameters, Types, Intervals, Durations, and Offsets
        • Tables of Types, Intervals, and Durations
          • BOP vs EOP
          • Offsets
      • Regular, Irregular, Pseudo Regular, and Local Regular
    • Location Levels
  • Client Libraries
    • Java
    • JavaScript
    • Jython
    • Python
      • Maintainers
      • Latest Version

Access Management

  • Access Management
    • Overview
    • Key Principles
    • Documentation
      • Architecture Overview
        • High-Level Architecture
        • Component Overview
          • Authorization Proxy
          • Open Policy Agent
          • Redis Cache
          • CWMS Data API
          • Keycloak
          • Oracle Database
        • Detailed Documentation
          • Authorization Flow
          • Component Diagram
      • Configuration Overview
        • Configuration System
        • Configuration Categories
        • Loading Configuration
          • Development Setup
          • Container Deployment
        • Applying Configuration Changes
          • Development Mode
          • Container Mode
        • Validation
        • Related Documentation
          • Environment Variables Reference
      • Data Filtering Overview
        • Architecture
        • Filtering Mechanism
        • Filter Types
        • Authorization Context Header
        • Filter Combination
        • Disabled Mode
        • Related Documentation
          • Office-Based Filtering
          • Embargo Rules
          • Data Classification Filtering
      • x-cwms-auth-context Header
        • Overview
        • Header Structure
        • Complete Example
        • Policy Object
        • Java API Consumption
        • Related Documentation
          • User Context Schema
          • Constraints Schema
      • Java API Integration
        • Overview
        • Key Principle
        • Helper Classes
          • AuthorizationContextHelper
          • AuthorizationFilterHelper
        • Enabling Authorization Mode
          • Configuration Options
          • Behavior by Mode
        • Integration Flow
        • Usage in Controllers
        • Contents
          • AuthorizationContextHelper
          • AuthorizationFilterHelper
          • Testing
      • Management Applications
        • Overview
        • Comparison
        • When to Use Each Tool
          • Management UI
          • Management CLI
        • Common Capabilities
        • Technology Stack
        • Port Assignments
        • Detailed Documentation
          • Management UI
          • Management CLI
      • Performance Testing
        • Why Performance Testing Matters
        • Metrics Collected
        • Testing Approach
        • Quick Start
          • Running Benchmarks
          • Benchmark Results
          • Metrics Reference
      • Policy System Overview
        • Policy Architecture
        • Policy Evaluation
          • Input Structure
          • Evaluation Order
          • Privileged Roles
        • Policy Decision Response
        • Helper Module Integration
        • Policy File Organization
        • Related Documentation
          • Persona Policies
          • Helper Functions
      • Proxy API Overview
        • Base URL
        • Endpoint Categories
          • Authorization Endpoints
          • Health Endpoints
          • Proxy Endpoints
        • Authentication
          • Authorization Endpoint
          • Proxy Endpoints
        • Request Flow
        • Response Format
          • Success Response
          • Error Response
        • HTTP Status Codes
        • CORS Support
        • OpenAPI Documentation
        • Endpoint Documentation
          • POST /authorize Endpoint
          • Health Endpoints
    • Service Endpoints
    • Technology Stack

Alternative Topics

  • Alternative Topics
    • Aliases

Design Documents

  • Decision Records
    • Overview
      • Api Versioning
        • Summary
        • Opinions
          • Opinion 1 Calendar versioning
          • Opinion 2 Users
        • Decision Status
        • References
        • Related decisions
      • Data Versioning (rejected, remains for historical context.)
        • Summary
        • Opinions
          • Opinion 1
          • Opinion 2
          • Decision Status
        • References
        • Notes
      • Catalogs and Search
        • Summary
          • Additional Information
        • Opinions
          • Opinion 1
          • Opinion 2
          • Opinion 3
        • Decision Status
        • References
      • Versioning
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Authorization Middleware
        • Objective
        • Motivation
          • Current Limitations
          • Business Drivers
        • User Benefit
          • Transparent to End Users
          • Enhanced for Administrators
          • Operational Benefits
        • Design Proposal
          • Architecture Overview
          • Transparent Proxy Data Flow
          • Core Components
          • Implementation Approach
          • Alternatives Considered
          • Performance Implications
          • Dependencies
          • Engineering Impact
          • Platforms and Environments
          • Best Practices
          • Compatibility
          • User Impact
          • Local Development & Testing Plan
        • Detailed Design
          • Implementation Strategy
          • Java API Integration Approach
          • Future Architecture Considerations
        • Implementation Scope
          • Coverage (Current Scope)
          • Local Development Strategy
        • Success Criteria
          • Functional Requirements
          • Performance Requirements (Local Testing)
          • Security Requirements
          • Integration Requirements
        • Conclusion
          • Immediate Benefits
          • Strategic Advantages
          • Foundation for Full Coverage
          • Technical Excellence
        • Implementation Status
          • Repository and Technology Stack
          • Transparent Proxy Implementation
          • OPA Integration
          • Whitelist Pattern for Selective Enforcement
          • Redis Caching Implementation
          • Authorization Context Header Format
          • Local Development Environment
          • Management Applications
          • Known Limitations
          • Next Steps
      • CDA Authorization Filtering
        • Objective
        • Motivation
        • User Benefit
          • For API Consumers
          • For API Developers
          • For Operations
        • Design Proposal
          • x-cwms-auth-context Header Format
          • AuthorizationContextHelper Class
          • AuthorizationFilterHelper Class
          • Integration with TimeSeriesController
          • Integration with TimeSeriesDaoImpl
        • Alternatives Considered
          • Option 1: Servlet Filter Pattern
          • Option 2: AOP Interceptors
          • Option 3: Helper Classes (Selected)
        • Performance Implications
          • Minimal Overhead
          • Query Efficiency
          • Caching Considerations
        • Dependencies
          • Existing Dependencies (No Changes)
          • New Dependencies
        • Engineering Impact
          • Controller Changes
          • DAO Changes
          • Testing Strategy
        • Compatibility
          • Backward Compatibility
          • Forward Compatibility
        • Implementation Status
          • Completed
          • Future Work
        • Conclusion
      • Access Management Clients
        • Objective
        • Motivation
          • Administrative Requirements
          • Multiple Interface Requirements
        • User Benefit
          • Data Administrators
          • IT Operations
          • Security and Compliance
        • Design Proposal
          • Architecture Overview
          • Data Flow
          • Core Components
          • Implementation Approach
          • Alternatives Considered
          • Performance Implications
          • Dependencies
          • Engineering Impact
          • Platforms and Environments
          • Best Practices
          • Compatibility
        • Implementation Status
        • Success Criteria
          • Functional Requirements
          • Performance Requirements
          • Usability Requirements
        • Conclusion
          • Key Benefits
          • Integration with Authorization System
      • Timeseries CSV Format
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Handling Releases
        • Summary
        • Proposal
          • Dev
          • Test
          • Prod
          • All Environments
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Vertical Datum Policy
        • Summary
        • Context
        • Proposed Changes
          • Vertical Datum Identification in CDA
          • Storage and Retrieval Logic
          • Offset Management
        • Decision Status
      • JMS Queue Message Structure
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Patch (Superseded by 0017)
        • Summary
        • Opinions
          • Opinion 1
        • Existing endpoints that support PATCH
        • Decision Status
        • References
      • Vertical Datum Storage
        • Opinions
          • Opinion 1
        • Context
        • Proposed Changes
        • Background
          • VDI Compoents
          • VDI Formats and Examples
        • VDI endpoints
        • Endpoint Behaviors
        • Decision Status
        • References
      • Catalogs
        • Summary
        • Opinions
          • Opinion 1
        • Differences in Catalog and GetAll data shapes
        • Library Support for HTTP QUERY method
        • Existing catalog endpoints
        • Decision Status
        • References
      • CDA User Lists
        • Context
        • Decision
        • Alternatives Considered
          • Reuse CWMS security groups
          • Store independent user or email records
          • Add PL/SQL CRUD packages
        • Consequences
        • Implementation Status
      • Data Event Message Formats - Forecasts
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Data Event Message Formats - Ratings
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Data Event Message Formats - Levels
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • PATCH Handling Across CDA Endpoints
        • Summary
        • Opinions
          • Opinion 1
        • Summary
        • Opinions
          • Opinion 1
        • Existing endpoints that support PATCH
        • Decision Status
        • References
          • Example
        • Existing endpoints that support PATCH
        • Decision Status
        • References
      • Duplicate Time-Series Values
        • Summary
        • Context
        • Proposal
        • Opinions
          • Opinion 1
        • Consequences
        • Questions Before Acceptance
        • References
      • Generated SDK Lifecycle
        • Summary
        • Proposal
          • Source and generation
          • Names and responsibility
          • Versions and releases
          • Verification and examples
          • Documentation and CI/CD
        • Opinions
          • Maintain generators and SDK docs with CDA
          • Maintain independent SDK repositories and documentation sites
        • Decision Status
        • References
      • Composite Time Series
        • Purpose
        • Need
        • Caveats
        • Proposal
          • Description
          • Additional names not used
          • Definitions
          • Axioms
          • Time Series Naming
        • Composite Time Series Definition
          • Operations required:
          • Events Requires:
          • Operations Prohibited:
        • Composite Time Series Response
        • Storage of member information
        • System responsibility for “knowing” to process composite.
          • Time Series Catalog
          • TimeSeries DTO
          • TimeSeriesDao
        • Error handling and other conditions.
          • Versioned (date) time series
          • Datum conversions
          • On the saving of a composite definition
        • References
      • Data Event Message Formats - Streams
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Data Event Message Formats - Entities
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Data Event Message Formats - Embankments
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Data Event Message Formats - Overflows
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Data Event Message Formats - Locks
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Data Event Message Formats - Gates
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Data Event Message Formats - Turbines
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • Data Event Message Formats - Pumps
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
      • ADR Template
        • Summary
        • Opinions
          • Opinion 1
        • Decision Status
        • References
CWMS Data API
  • Search


© Copyright Public Domain.

Built with Sphinx using a theme provided by Read the Docs.