UNPKG

cwmsjs

Version:

CWMS Data API Library for JavaScript/TypeScript created with OpenAPI generator for use with browser webapps

185 lines (150 loc) 5.71 kB
/* tslint:disable */ /* eslint-disable */ /** * CWMS Data API * CWMS REST API for Data Retrieval * * The version of the OpenAPI document: 2.3.2-2025.03.19 * * * 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 type { Blob, Blobs, CdaError, } from '../models/index'; import { BlobFromJSON, BlobToJSON, BlobsFromJSON, BlobsToJSON, CdaErrorFromJSON, CdaErrorToJSON, } from '../models/index'; export interface GetBlobsRequest { office?: string; page?: string; pageSize?: number; like?: string; } export interface GetBlobsWithBlobIdRequest { blobId: string; office?: string; } export interface PostBlobsRequest { blob: Blob; failIfExists?: boolean; } /** * */ export class BlobApi extends runtime.BaseAPI { /** * Get cwmsData blobs */ async getBlobsRaw(requestParameters: GetBlobsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blobs>> { const queryParameters: any = {}; if (requestParameters['office'] != null) { queryParameters['office'] = requestParameters['office']; } if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['pageSize'] != null) { queryParameters['page-size'] = requestParameters['pageSize']; } if (requestParameters['like'] != null) { queryParameters['like'] = requestParameters['like']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/blobs`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => BlobsFromJSON(jsonValue)); } /** * Get cwmsData blobs */ async getBlobs(requestParameters: GetBlobsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blobs> { const response = await this.getBlobsRaw(requestParameters, initOverrides); return await response.value(); } /** * Get cwmsData blobs with blobId */ async getBlobsWithBlobIdRaw(requestParameters: GetBlobsWithBlobIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> { if (requestParameters['blobId'] == null) { throw new runtime.RequiredError( 'blobId', 'Required parameter "blobId" was null or undefined when calling getBlobsWithBlobId().' ); } const queryParameters: any = {}; if (requestParameters['office'] != null) { queryParameters['office'] = requestParameters['office']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/blobs/{blob-id}`.replace(`{${"blob-id"}}`, encodeURIComponent(String(requestParameters['blobId']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Get cwmsData blobs with blobId */ async getBlobsWithBlobId(requestParameters: GetBlobsWithBlobIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> { await this.getBlobsWithBlobIdRaw(requestParameters, initOverrides); } /** * Create new Blob * Post cwmsData blobs */ async postBlobsRaw(requestParameters: PostBlobsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> { if (requestParameters['blob'] == null) { throw new runtime.RequiredError( 'blob', 'Required parameter "blob" was null or undefined when calling postBlobs().' ); } const queryParameters: any = {}; if (requestParameters['failIfExists'] != null) { 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"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/blobs`, method: 'POST', headers: headerParameters, query: queryParameters, body: BlobToJSON(requestParameters['blob']), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Create new Blob * Post cwmsData blobs */ async postBlobs(requestParameters: PostBlobsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> { await this.postBlobsRaw(requestParameters, initOverrides); } }