Path: blob/master/src/packages/next/pages/api/v2/compute/set-server-configuration.ts
1452 views
/*1Set the title of a compute server. The owner is the only one allowed2to do this.3*/45import getAccountId from "lib/account/get-account";6import setServerConfiguration from "@cocalc/server/compute/set-server-configuration";7import getParams from "lib/api/get-params";89import { apiRoute, apiRouteOperation } from "lib/api";10import { OkStatus } from "lib/api/status";11import {12SetServerConfigurationInputSchema,13SetServerConfigurationOutputSchema,14} from "lib/api/schema/compute/set-server-configuration";1516async function handle(req, res) {17try {18res.json(await get(req));19} catch (err) {20res.json({ error: `${err.message}` });21return;22}23}2425async function get(req) {26const account_id = await getAccountId(req);27if (!account_id) {28throw Error("must be signed in");29}30const { id, configuration } = getParams(req);31await setServerConfiguration({32account_id,33id,34configuration,35});36return OkStatus;37}3839export default apiRoute({40setServerConfiguration: apiRouteOperation({41method: "POST",42openApiOperation: {43tags: ["Compute"],44},45})46.input({47contentType: "application/json",48body: SetServerConfigurationInputSchema,49})50.outputs([51{52status: 200,53contentType: "application/json",54body: SetServerConfigurationOutputSchema,55},56])57.handler(handle),58});596061