Files
autoglue/sdk/ts/src/apis/ServersApi.ts
2025-12-08 17:04:10 +00:00

515 lines
15 KiB
TypeScript

/* tslint:disable */
/* eslint-disable */
/**
* AutoGlue API
* API for managing K3s clusters across cloud providers
*
* The version of the OpenAPI document: dev
*
*
* 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 {
DtoCreateServerRequest,
DtoServerResponse,
DtoUpdateServerRequest,
} from "../models/index";
import {
DtoCreateServerRequestFromJSON,
DtoCreateServerRequestToJSON,
DtoServerResponseFromJSON,
DtoServerResponseToJSON,
DtoUpdateServerRequestFromJSON,
DtoUpdateServerRequestToJSON,
} from "../models/index";
export interface CreateServerRequest {
dtoCreateServerRequest: DtoCreateServerRequest;
xOrgID?: string;
}
export interface DeleteServerRequest {
id: string;
xOrgID?: string;
}
export interface GetServerRequest {
id: string;
xOrgID?: string;
}
export interface ListServersRequest {
xOrgID?: string;
status?: string;
role?: string;
}
export interface ResetServerHostKeyRequest {
id: string;
xOrgID?: string;
body?: object;
}
export interface UpdateServerRequest {
id: string;
dtoUpdateServerRequest: DtoUpdateServerRequest;
xOrgID?: string;
}
/**
*
*/
export class ServersApi extends runtime.BaseAPI {
/**
* Creates a server bound to the org in X-Org-ID. Validates that ssh_key_id belongs to the org.
* Create server (org scoped)
*/
async createServerRaw(
requestParameters: CreateServerRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<runtime.ApiResponse<DtoServerResponse>> {
if (requestParameters["dtoCreateServerRequest"] == null) {
throw new runtime.RequiredError(
"dtoCreateServerRequest",
'Required parameter "dtoCreateServerRequest" was null or undefined when calling createServer().',
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters["Content-Type"] = "application/json";
if (requestParameters["xOrgID"] != null) {
headerParameters["X-Org-ID"] = String(requestParameters["xOrgID"]);
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-KEY"] =
await this.configuration.apiKey("X-ORG-KEY"); // OrgKeyAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-SECRET"] =
await this.configuration.apiKey("X-ORG-SECRET"); // OrgSecretAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] =
await this.configuration.apiKey("Authorization"); // BearerAuth authentication
}
let urlPath = `/servers`;
const response = await this.request(
{
path: urlPath,
method: "POST",
headers: headerParameters,
query: queryParameters,
body: DtoCreateServerRequestToJSON(
requestParameters["dtoCreateServerRequest"],
),
},
initOverrides,
);
return new runtime.JSONApiResponse(response, (jsonValue) =>
DtoServerResponseFromJSON(jsonValue),
);
}
/**
* Creates a server bound to the org in X-Org-ID. Validates that ssh_key_id belongs to the org.
* Create server (org scoped)
*/
async createServer(
requestParameters: CreateServerRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<DtoServerResponse> {
const response = await this.createServerRaw(
requestParameters,
initOverrides,
);
return await response.value();
}
/**
* Permanently deletes the server.
* Delete server (org scoped)
*/
async deleteServerRaw(
requestParameters: DeleteServerRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<runtime.ApiResponse<void>> {
if (requestParameters["id"] == null) {
throw new runtime.RequiredError(
"id",
'Required parameter "id" was null or undefined when calling deleteServer().',
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (requestParameters["xOrgID"] != null) {
headerParameters["X-Org-ID"] = String(requestParameters["xOrgID"]);
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-KEY"] =
await this.configuration.apiKey("X-ORG-KEY"); // OrgKeyAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-SECRET"] =
await this.configuration.apiKey("X-ORG-SECRET"); // OrgSecretAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] =
await this.configuration.apiKey("Authorization"); // BearerAuth authentication
}
let urlPath = `/servers/{id}`;
urlPath = urlPath.replace(
`{${"id"}}`,
encodeURIComponent(String(requestParameters["id"])),
);
const response = await this.request(
{
path: urlPath,
method: "DELETE",
headers: headerParameters,
query: queryParameters,
},
initOverrides,
);
return new runtime.VoidApiResponse(response);
}
/**
* Permanently deletes the server.
* Delete server (org scoped)
*/
async deleteServer(
requestParameters: DeleteServerRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<void> {
await this.deleteServerRaw(requestParameters, initOverrides);
}
/**
* Returns one server in the given organization.
* Get server by ID (org scoped)
*/
async getServerRaw(
requestParameters: GetServerRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<runtime.ApiResponse<DtoServerResponse>> {
if (requestParameters["id"] == null) {
throw new runtime.RequiredError(
"id",
'Required parameter "id" was null or undefined when calling getServer().',
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (requestParameters["xOrgID"] != null) {
headerParameters["X-Org-ID"] = String(requestParameters["xOrgID"]);
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-KEY"] =
await this.configuration.apiKey("X-ORG-KEY"); // OrgKeyAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-SECRET"] =
await this.configuration.apiKey("X-ORG-SECRET"); // OrgSecretAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] =
await this.configuration.apiKey("Authorization"); // BearerAuth authentication
}
let urlPath = `/servers/{id}`;
urlPath = urlPath.replace(
`{${"id"}}`,
encodeURIComponent(String(requestParameters["id"])),
);
const response = await this.request(
{
path: urlPath,
method: "GET",
headers: headerParameters,
query: queryParameters,
},
initOverrides,
);
return new runtime.JSONApiResponse(response, (jsonValue) =>
DtoServerResponseFromJSON(jsonValue),
);
}
/**
* Returns one server in the given organization.
* Get server by ID (org scoped)
*/
async getServer(
requestParameters: GetServerRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<DtoServerResponse> {
const response = await this.getServerRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Returns servers for the organization in X-Org-ID. Optional filters: status, role.
* List servers (org scoped)
*/
async listServersRaw(
requestParameters: ListServersRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<runtime.ApiResponse<Array<DtoServerResponse>>> {
const queryParameters: any = {};
if (requestParameters["status"] != null) {
queryParameters["status"] = requestParameters["status"];
}
if (requestParameters["role"] != null) {
queryParameters["role"] = requestParameters["role"];
}
const headerParameters: runtime.HTTPHeaders = {};
if (requestParameters["xOrgID"] != null) {
headerParameters["X-Org-ID"] = String(requestParameters["xOrgID"]);
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-KEY"] =
await this.configuration.apiKey("X-ORG-KEY"); // OrgKeyAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-SECRET"] =
await this.configuration.apiKey("X-ORG-SECRET"); // OrgSecretAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] =
await this.configuration.apiKey("Authorization"); // BearerAuth authentication
}
let urlPath = `/servers`;
const response = await this.request(
{
path: urlPath,
method: "GET",
headers: headerParameters,
query: queryParameters,
},
initOverrides,
);
return new runtime.JSONApiResponse(response, (jsonValue) =>
jsonValue.map(DtoServerResponseFromJSON),
);
}
/**
* Returns servers for the organization in X-Org-ID. Optional filters: status, role.
* List servers (org scoped)
*/
async listServers(
requestParameters: ListServersRequest = {},
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<Array<DtoServerResponse>> {
const response = await this.listServersRaw(
requestParameters,
initOverrides,
);
return await response.value();
}
/**
* Clears the stored SSH host key for this server. The next SSH connection will re-learn the host key (trust-on-first-use).
* Reset SSH host key (org scoped)
*/
async resetServerHostKeyRaw(
requestParameters: ResetServerHostKeyRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<runtime.ApiResponse<DtoServerResponse>> {
if (requestParameters["id"] == null) {
throw new runtime.RequiredError(
"id",
'Required parameter "id" was null or undefined when calling resetServerHostKey().',
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters["Content-Type"] = "application/json";
if (requestParameters["xOrgID"] != null) {
headerParameters["X-Org-ID"] = String(requestParameters["xOrgID"]);
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-KEY"] =
await this.configuration.apiKey("X-ORG-KEY"); // OrgKeyAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-SECRET"] =
await this.configuration.apiKey("X-ORG-SECRET"); // OrgSecretAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] =
await this.configuration.apiKey("Authorization"); // BearerAuth authentication
}
let urlPath = `/servers/{id}/reset-hostkey`;
urlPath = urlPath.replace(
`{${"id"}}`,
encodeURIComponent(String(requestParameters["id"])),
);
const response = await this.request(
{
path: urlPath,
method: "POST",
headers: headerParameters,
query: queryParameters,
body: requestParameters["body"] as any,
},
initOverrides,
);
return new runtime.JSONApiResponse(response, (jsonValue) =>
DtoServerResponseFromJSON(jsonValue),
);
}
/**
* Clears the stored SSH host key for this server. The next SSH connection will re-learn the host key (trust-on-first-use).
* Reset SSH host key (org scoped)
*/
async resetServerHostKey(
requestParameters: ResetServerHostKeyRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<DtoServerResponse> {
const response = await this.resetServerHostKeyRaw(
requestParameters,
initOverrides,
);
return await response.value();
}
/**
* Partially update fields; changing ssh_key_id validates ownership.
* Update server (org scoped)
*/
async updateServerRaw(
requestParameters: UpdateServerRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<runtime.ApiResponse<DtoServerResponse>> {
if (requestParameters["id"] == null) {
throw new runtime.RequiredError(
"id",
'Required parameter "id" was null or undefined when calling updateServer().',
);
}
if (requestParameters["dtoUpdateServerRequest"] == null) {
throw new runtime.RequiredError(
"dtoUpdateServerRequest",
'Required parameter "dtoUpdateServerRequest" was null or undefined when calling updateServer().',
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters["Content-Type"] = "application/json";
if (requestParameters["xOrgID"] != null) {
headerParameters["X-Org-ID"] = String(requestParameters["xOrgID"]);
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-KEY"] =
await this.configuration.apiKey("X-ORG-KEY"); // OrgKeyAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["X-ORG-SECRET"] =
await this.configuration.apiKey("X-ORG-SECRET"); // OrgSecretAuth authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] =
await this.configuration.apiKey("Authorization"); // BearerAuth authentication
}
let urlPath = `/servers/{id}`;
urlPath = urlPath.replace(
`{${"id"}}`,
encodeURIComponent(String(requestParameters["id"])),
);
const response = await this.request(
{
path: urlPath,
method: "PATCH",
headers: headerParameters,
query: queryParameters,
body: DtoUpdateServerRequestToJSON(
requestParameters["dtoUpdateServerRequest"],
),
},
initOverrides,
);
return new runtime.JSONApiResponse(response, (jsonValue) =>
DtoServerResponseFromJSON(jsonValue),
);
}
/**
* Partially update fields; changing ssh_key_id validates ownership.
* Update server (org scoped)
*/
async updateServer(
requestParameters: UpdateServerRequest,
initOverrides?: RequestInit | runtime.InitOverrideFunction,
): Promise<DtoServerResponse> {
const response = await this.updateServerRaw(
requestParameters,
initOverrides,
);
return await response.value();
}
}