cwmsjs
Version:
CWMS Data API Library for JavaScript/TypeScript created with OpenAPI generator for use with browser webapps
628 lines (501 loc) • 23.9 kB
text/typescript
/* tslint:disable */
/* eslint-disable */
/**
* CWMS Data API
* CWMS REST API for Data Retrieval
*
* The version of the OpenAPI document: 2.4.0-2026.3.16
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import * as runtime from '../runtime';
import {
CdaError,
CdaErrorFromJSON,
CdaErrorToJSON,
LocationLevel,
LocationLevelFromJSON,
LocationLevelToJSON,
LocationLevels,
LocationLevelsFromJSON,
LocationLevelsToJSON,
SpecifiedLevel,
SpecifiedLevelFromJSON,
SpecifiedLevelToJSON,
TimeSeries,
TimeSeriesFromJSON,
TimeSeriesToJSON,
} from '../models';
export interface DeleteLevelsWithLevelIdRequest {
levelId: string;
cascadeDelete?: boolean;
office?: string;
effectiveDate?: string;
timezone?: string;
}
export interface DeleteSpecifiedLevelsWithSpecifiedLevelIdRequest {
specifiedLevelId: string;
office: string;
}
export interface GetLevelsRequest {
levelIdMask?: string;
office?: string;
unit?: string;
datum?: string;
begin?: string;
end?: string;
timezone?: string;
format?: string;
includeAliases?: boolean;
page?: string;
pageSize?: number;
}
export interface GetLevelsWithLevelIdRequest {
levelId: string;
office: string;
effectiveDate: string;
useExactEffectiveDate?: boolean;
timezone?: string;
unit?: string;
}
export interface GetLevelsWithLevelIdTimeSeriesRequest {
levelId: string;
office: string;
unit: string;
interval?: string;
begin?: string;
end?: string;
timezone?: string;
}
export interface GetSpecifiedLevelsRequest {
office?: string;
templateIdMask?: string;
}
export interface PatchLevelsWithLevelIdRequest {
levelId: string;
locationLevel: LocationLevel;
effectiveDate?: string;
}
export interface PatchSpecifiedLevelsWithSpecifiedLevelIdRequest {
specifiedLevelId: string;
specifiedLevelId2: string;
office: string;
}
export interface PostLevelsRequest {
locationLevel: LocationLevel;
}
export interface PostSpecifiedLevelsRequest {
specifiedLevel: SpecifiedLevel;
failIfExists?: boolean;
}
/**
*
*/
export class LevelsApi extends runtime.BaseAPI {
/**
* Delete CWMS Location Level
* Delete levels with levelId
*/
async deleteLevelsWithLevelIdRaw(requestParameters: DeleteLevelsWithLevelIdRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> {
if (requestParameters.levelId === null || requestParameters.levelId === undefined) {
throw new runtime.RequiredError('levelId','Required parameter requestParameters.levelId was null or undefined when calling deleteLevelsWithLevelId.');
}
const queryParameters: any = {};
if (requestParameters.cascadeDelete !== undefined) {
queryParameters['cascade-delete'] = requestParameters.cascadeDelete;
}
if (requestParameters.office !== undefined) {
queryParameters['office'] = requestParameters.office;
}
if (requestParameters.effectiveDate !== undefined) {
queryParameters['effective-date'] = requestParameters.effectiveDate;
}
if (requestParameters.timezone !== undefined) {
queryParameters['timezone'] = requestParameters.timezone;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/levels/{level-id}`.replace(`{${"level-id"}}`, encodeURIComponent(String(requestParameters.levelId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Delete CWMS Location Level
* Delete levels with levelId
*/
async deleteLevelsWithLevelId(requestParameters: DeleteLevelsWithLevelIdRequest, initOverrides?: RequestInit): Promise<void> {
await this.deleteLevelsWithLevelIdRaw(requestParameters, initOverrides);
}
/**
* Deletes requested specified level id
* Delete specifiedLevels with specifiedLevelId
*/
async deleteSpecifiedLevelsWithSpecifiedLevelIdRaw(requestParameters: DeleteSpecifiedLevelsWithSpecifiedLevelIdRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> {
if (requestParameters.specifiedLevelId === null || requestParameters.specifiedLevelId === undefined) {
throw new runtime.RequiredError('specifiedLevelId','Required parameter requestParameters.specifiedLevelId was null or undefined when calling deleteSpecifiedLevelsWithSpecifiedLevelId.');
}
if (requestParameters.office === null || requestParameters.office === undefined) {
throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling deleteSpecifiedLevelsWithSpecifiedLevelId.');
}
const queryParameters: any = {};
if (requestParameters.office !== undefined) {
queryParameters['office'] = requestParameters.office;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/specified-levels/{specified-level-id}`.replace(`{${"specified-level-id"}}`, encodeURIComponent(String(requestParameters.specifiedLevelId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Deletes requested specified level id
* Delete specifiedLevels with specifiedLevelId
*/
async deleteSpecifiedLevelsWithSpecifiedLevelId(requestParameters: DeleteSpecifiedLevelsWithSpecifiedLevelIdRequest, initOverrides?: RequestInit): Promise<void> {
await this.deleteSpecifiedLevelsWithSpecifiedLevelIdRaw(requestParameters, initOverrides);
}
/**
* Get levels
*/
async getLevelsRaw(requestParameters: GetLevelsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<object>> {
const queryParameters: any = {};
if (requestParameters.levelIdMask !== undefined) {
queryParameters['level-id-mask'] = requestParameters.levelIdMask;
}
if (requestParameters.office !== undefined) {
queryParameters['office'] = requestParameters.office;
}
if (requestParameters.unit !== undefined) {
queryParameters['unit'] = requestParameters.unit;
}
if (requestParameters.datum !== undefined) {
queryParameters['datum'] = requestParameters.datum;
}
if (requestParameters.begin !== undefined) {
queryParameters['begin'] = requestParameters.begin;
}
if (requestParameters.end !== undefined) {
queryParameters['end'] = requestParameters.end;
}
if (requestParameters.timezone !== undefined) {
queryParameters['timezone'] = requestParameters.timezone;
}
if (requestParameters.format !== undefined) {
queryParameters['format'] = requestParameters.format;
}
if (requestParameters.includeAliases !== undefined) {
queryParameters['include-aliases'] = requestParameters.includeAliases;
}
if (requestParameters.page !== undefined) {
queryParameters['page'] = requestParameters.page;
}
if (requestParameters.pageSize !== undefined) {
queryParameters['page-size'] = requestParameters.pageSize;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/levels`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* Get levels
*/
async getLevels(requestParameters: GetLevelsRequest = {}, initOverrides?: RequestInit): Promise<object> {
const response = await this.getLevelsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Retrieves requested Location Level
* Get levels with levelId
*/
async getLevelsWithLevelIdRaw(requestParameters: GetLevelsWithLevelIdRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<LocationLevel>> {
if (requestParameters.levelId === null || requestParameters.levelId === undefined) {
throw new runtime.RequiredError('levelId','Required parameter requestParameters.levelId was null or undefined when calling getLevelsWithLevelId.');
}
if (requestParameters.office === null || requestParameters.office === undefined) {
throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling getLevelsWithLevelId.');
}
if (requestParameters.effectiveDate === null || requestParameters.effectiveDate === undefined) {
throw new runtime.RequiredError('effectiveDate','Required parameter requestParameters.effectiveDate was null or undefined when calling getLevelsWithLevelId.');
}
const queryParameters: any = {};
if (requestParameters.office !== undefined) {
queryParameters['office'] = requestParameters.office;
}
if (requestParameters.effectiveDate !== undefined) {
queryParameters['effective-date'] = requestParameters.effectiveDate;
}
if (requestParameters.useExactEffectiveDate !== undefined) {
queryParameters['use-exact-effective-date'] = requestParameters.useExactEffectiveDate;
}
if (requestParameters.timezone !== undefined) {
queryParameters['timezone'] = requestParameters.timezone;
}
if (requestParameters.unit !== undefined) {
queryParameters['unit'] = requestParameters.unit;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/levels/{level-id}`.replace(`{${"level-id"}}`, encodeURIComponent(String(requestParameters.levelId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => LocationLevelFromJSON(jsonValue));
}
/**
* Retrieves requested Location Level
* Get levels with levelId
*/
async getLevelsWithLevelId(requestParameters: GetLevelsWithLevelIdRequest, initOverrides?: RequestInit): Promise<LocationLevel> {
const response = await this.getLevelsWithLevelIdRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Retrieves requested Location Level
* Get levels with levelId timeseries
*/
async getLevelsWithLevelIdTimeSeriesRaw(requestParameters: GetLevelsWithLevelIdTimeSeriesRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<TimeSeries>> {
if (requestParameters.levelId === null || requestParameters.levelId === undefined) {
throw new runtime.RequiredError('levelId','Required parameter requestParameters.levelId was null or undefined when calling getLevelsWithLevelIdTimeSeries.');
}
if (requestParameters.office === null || requestParameters.office === undefined) {
throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling getLevelsWithLevelIdTimeSeries.');
}
if (requestParameters.unit === null || requestParameters.unit === undefined) {
throw new runtime.RequiredError('unit','Required parameter requestParameters.unit was null or undefined when calling getLevelsWithLevelIdTimeSeries.');
}
const queryParameters: any = {};
if (requestParameters.office !== undefined) {
queryParameters['office'] = requestParameters.office;
}
if (requestParameters.interval !== undefined) {
queryParameters['interval'] = requestParameters.interval;
}
if (requestParameters.begin !== undefined) {
queryParameters['begin'] = requestParameters.begin;
}
if (requestParameters.end !== undefined) {
queryParameters['end'] = requestParameters.end;
}
if (requestParameters.timezone !== undefined) {
queryParameters['timezone'] = requestParameters.timezone;
}
if (requestParameters.unit !== undefined) {
queryParameters['unit'] = requestParameters.unit;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/levels/{level-id}/timeseries`.replace(`{${"level-id"}}`, encodeURIComponent(String(requestParameters.levelId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => TimeSeriesFromJSON(jsonValue));
}
/**
* Retrieves requested Location Level
* Get levels with levelId timeseries
*/
async getLevelsWithLevelIdTimeSeries(requestParameters: GetLevelsWithLevelIdTimeSeriesRequest, initOverrides?: RequestInit): Promise<TimeSeries> {
const response = await this.getLevelsWithLevelIdTimeSeriesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get specifiedLevels
*/
async getSpecifiedLevelsRaw(requestParameters: GetSpecifiedLevelsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<SpecifiedLevel>> {
const queryParameters: any = {};
if (requestParameters.office !== undefined) {
queryParameters['office'] = requestParameters.office;
}
if (requestParameters.templateIdMask !== undefined) {
queryParameters['template-id-mask'] = requestParameters.templateIdMask;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/specified-levels`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => SpecifiedLevelFromJSON(jsonValue));
}
/**
* Get specifiedLevels
*/
async getSpecifiedLevels(requestParameters: GetSpecifiedLevelsRequest = {}, initOverrides?: RequestInit): Promise<SpecifiedLevel> {
const response = await this.getSpecifiedLevelsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Update CWMS Location Level
* Patch levels with levelId
*/
async patchLevelsWithLevelIdRaw(requestParameters: PatchLevelsWithLevelIdRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> {
if (requestParameters.levelId === null || requestParameters.levelId === undefined) {
throw new runtime.RequiredError('levelId','Required parameter requestParameters.levelId was null or undefined when calling patchLevelsWithLevelId.');
}
if (requestParameters.locationLevel === null || requestParameters.locationLevel === undefined) {
throw new runtime.RequiredError('locationLevel','Required parameter requestParameters.locationLevel was null or undefined when calling patchLevelsWithLevelId.');
}
const queryParameters: any = {};
if (requestParameters.effectiveDate !== undefined) {
queryParameters['effective-date'] = requestParameters.effectiveDate;
}
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/levels/{level-id}`.replace(`{${"level-id"}}`, encodeURIComponent(String(requestParameters.levelId))),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: LocationLevelToJSON(requestParameters.locationLevel),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Update CWMS Location Level
* Patch levels with levelId
*/
async patchLevelsWithLevelId(requestParameters: PatchLevelsWithLevelIdRequest, initOverrides?: RequestInit): Promise<void> {
await this.patchLevelsWithLevelIdRaw(requestParameters, initOverrides);
}
/**
* Renames the requested specified level id
* Patch specifiedLevels with specifiedLevelId
*/
async patchSpecifiedLevelsWithSpecifiedLevelIdRaw(requestParameters: PatchSpecifiedLevelsWithSpecifiedLevelIdRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> {
if (requestParameters.specifiedLevelId === null || requestParameters.specifiedLevelId === undefined) {
throw new runtime.RequiredError('specifiedLevelId','Required parameter requestParameters.specifiedLevelId was null or undefined when calling patchSpecifiedLevelsWithSpecifiedLevelId.');
}
if (requestParameters.specifiedLevelId2 === null || requestParameters.specifiedLevelId2 === undefined) {
throw new runtime.RequiredError('specifiedLevelId2','Required parameter requestParameters.specifiedLevelId2 was null or undefined when calling patchSpecifiedLevelsWithSpecifiedLevelId.');
}
if (requestParameters.office === null || requestParameters.office === undefined) {
throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling patchSpecifiedLevelsWithSpecifiedLevelId.');
}
const queryParameters: any = {};
if (requestParameters.specifiedLevelId2 !== undefined) {
queryParameters['specified-level-id'] = requestParameters.specifiedLevelId2;
}
if (requestParameters.office !== undefined) {
queryParameters['office'] = requestParameters.office;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/specified-levels/{specified-level-id}`.replace(`{${"specified-level-id"}}`, encodeURIComponent(String(requestParameters.specifiedLevelId))),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Renames the requested specified level id
* Patch specifiedLevels with specifiedLevelId
*/
async patchSpecifiedLevelsWithSpecifiedLevelId(requestParameters: PatchSpecifiedLevelsWithSpecifiedLevelIdRequest, initOverrides?: RequestInit): Promise<void> {
await this.patchSpecifiedLevelsWithSpecifiedLevelIdRaw(requestParameters, initOverrides);
}
/**
* Create new CWMS Location Level
* Post levels
*/
async postLevelsRaw(requestParameters: PostLevelsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> {
if (requestParameters.locationLevel === null || requestParameters.locationLevel === undefined) {
throw new runtime.RequiredError('locationLevel','Required parameter requestParameters.locationLevel was null or undefined when calling postLevels.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/levels`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: LocationLevelToJSON(requestParameters.locationLevel),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Create new CWMS Location Level
* Post levels
*/
async postLevels(requestParameters: PostLevelsRequest, initOverrides?: RequestInit): Promise<void> {
await this.postLevelsRaw(requestParameters, initOverrides);
}
/**
* Create new SpecifiedLevel
* Post specifiedLevels
*/
async postSpecifiedLevelsRaw(requestParameters: PostSpecifiedLevelsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> {
if (requestParameters.specifiedLevel === null || requestParameters.specifiedLevel === undefined) {
throw new runtime.RequiredError('specifiedLevel','Required parameter requestParameters.specifiedLevel was null or undefined when calling postSpecifiedLevels.');
}
const queryParameters: any = {};
if (requestParameters.failIfExists !== undefined) {
queryParameters['fail-if-exists'] = requestParameters.failIfExists;
}
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json;version=2';
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/specified-levels`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SpecifiedLevelToJSON(requestParameters.specifiedLevel),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Create new SpecifiedLevel
* Post specifiedLevels
*/
async postSpecifiedLevels(requestParameters: PostSpecifiedLevelsRequest, initOverrides?: RequestInit): Promise<void> {
await this.postSpecifiedLevelsRaw(requestParameters, initOverrides);
}
}