UNPKG

@emergentmethods/asknews-typescript-sdk

Version:
170 lines (139 loc) 6.94 kB
/* tslint:disable */ /* eslint-disable */ /** * AskNews API * AskNews API [![status](https://status.asknews.app/api/badge/2/status?style=for-the-badge)](https://status.asknews.app/status/prod) * * The version of the OpenAPI document: 0.24.66 * Contact: contact@emergentmethods.ai * * 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 { ApiKeyResponse, HTTPValidationError, UpsertApiKeyRequest, } from '../models/index'; import { ApiKeyResponseFromJSON, ApiKeyResponseToJSON, HTTPValidationErrorFromJSON, HTTPValidationErrorToJSON, UpsertApiKeyRequestFromJSON, UpsertApiKeyRequestToJSON, } from '../models/index'; export interface DeleteByokKeyRequest { provider: string; } export interface GetByokKeyRequest { provider: string; } export interface UpsertByokKeyRequest { provider: string; upsertApiKeyRequest: UpsertApiKeyRequest; } /** * */ export class ByokApi extends runtime.BaseAPI { /** * Delete a stored BYOK API key for a provider. Bring your own key is reserved for enterprise clients. If you want to use this feature, please contact us at contact@asknews.app * Delete a stored BYOK API key for a provider */ async deleteByokKeyRaw(requestParameters: DeleteByokKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void> > { if (requestParameters['provider'] == null) { throw new runtime.RequiredError( 'provider', 'Required parameter "provider" was null or undefined when calling deleteByokKey().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/chat/byok/{provider}`.replace(`{${"provider"}}`, encodeURIComponent(String(requestParameters['provider']))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Delete a stored BYOK API key for a provider. Bring your own key is reserved for enterprise clients. If you want to use this feature, please contact us at contact@asknews.app * Delete a stored BYOK API key for a provider */ async deleteByokKey(requestParameters: DeleteByokKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> { await this.deleteByokKeyRaw(requestParameters, initOverrides); } /** * Get the stored BYOK API key hint for a provider. Bring your own key is reserved for enterprise clients. If you want to use this feature, please contact us at contact@asknews.app * Get a stored BYOK API key hint for a provider */ async getByokKeyRaw(requestParameters: GetByokKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ApiKeyResponse> > { if (requestParameters['provider'] == null) { throw new runtime.RequiredError( 'provider', 'Required parameter "provider" was null or undefined when calling getByokKey().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/v1/chat/byok/{provider}`.replace(`{${"provider"}}`, encodeURIComponent(String(requestParameters['provider']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ApiKeyResponseFromJSON(jsonValue)); } /** * Get the stored BYOK API key hint for a provider. Bring your own key is reserved for enterprise clients. If you want to use this feature, please contact us at contact@asknews.app * Get a stored BYOK API key hint for a provider */ async getByokKey(requestParameters: GetByokKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ApiKeyResponse> { const response = await this.getByokKeyRaw(requestParameters, initOverrides); return await response.value(); } /** * Store a BYOK API key for a provider. Bring your own key is reserved for enterprise clients. If you want to use this feature, please contact us at contact@asknews.app * Store a BYOK API key for a provider */ async upsertByokKeyRaw(requestParameters: UpsertByokKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ApiKeyResponse> | runtime.StreamApiResponse> { if (requestParameters['provider'] == null) { throw new runtime.RequiredError( 'provider', 'Required parameter "provider" was null or undefined when calling upsertByokKey().' ); } if (requestParameters['upsertApiKeyRequest'] == null) { throw new runtime.RequiredError( 'upsertApiKeyRequest', 'Required parameter "upsertApiKeyRequest" was null or undefined when calling upsertByokKey().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/v1/chat/byok/{provider}`.replace(`{${"provider"}}`, encodeURIComponent(String(requestParameters['provider']))), method: 'PUT', headers: headerParameters, query: queryParameters, body: UpsertApiKeyRequestToJSON(requestParameters['upsertApiKeyRequest']), }, initOverrides); if ('upsertApiKeyRequest' in requestParameters && requestParameters['upsertApiKeyRequest'] != null && 'stream' in requestParameters['upsertApiKeyRequest'] && requestParameters['upsertApiKeyRequest']['stream'] === true) { return new runtime.StreamApiResponse(response); } return new runtime.JSONApiResponse(response, (jsonValue) => ApiKeyResponseFromJSON(jsonValue)); } /** * Store a BYOK API key for a provider. Bring your own key is reserved for enterprise clients. If you want to use this feature, please contact us at contact@asknews.app * Store a BYOK API key for a provider */ async upsertByokKey(requestParameters: UpsertByokKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ApiKeyResponse | ReadableStream<any>> { const response = await this.upsertByokKeyRaw(requestParameters, initOverrides); return await response.value(); } }