import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { GrafanaClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GrafanaClient"; import type { CreateWorkspaceServiceAccountTokenRequest, CreateWorkspaceServiceAccountTokenResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link CreateWorkspaceServiceAccountTokenCommand}. */ export interface CreateWorkspaceServiceAccountTokenCommandInput extends CreateWorkspaceServiceAccountTokenRequest { } /** * @public * * The output of {@link CreateWorkspaceServiceAccountTokenCommand}. */ export interface CreateWorkspaceServiceAccountTokenCommandOutput extends CreateWorkspaceServiceAccountTokenResponse, __MetadataBearer { } declare const CreateWorkspaceServiceAccountTokenCommand_base: { new (input: CreateWorkspaceServiceAccountTokenCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: CreateWorkspaceServiceAccountTokenCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Creates a token that can be used to authenticate and authorize Grafana HTTP API operations for the given workspace service account. The service account acts as a user for the API operations, and defines the permissions that are used by the API.

When you create the service account token, you will receive a key that is used when calling Grafana APIs. Do not lose this key, as it will not be retrievable again.

If you do lose the key, you can delete the token and recreate it to receive a new key. This will disable the initial key.

Service accounts are only available for workspaces that are compatible with Grafana version 9 and above.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { GrafanaClient, CreateWorkspaceServiceAccountTokenCommand } from "@aws-sdk/client-grafana"; // ES Modules import * // const { GrafanaClient, CreateWorkspaceServiceAccountTokenCommand } = require("@aws-sdk/client-grafana"); // CommonJS import * // import type { GrafanaClientConfig } from "@aws-sdk/client-grafana"; * const config = {}; // type is GrafanaClientConfig * const client = new GrafanaClient(config); * const input = { // CreateWorkspaceServiceAccountTokenRequest * name: "STRING_VALUE", // required * secondsToLive: Number("int"), // required * serviceAccountId: "STRING_VALUE", // required * workspaceId: "STRING_VALUE", // required * }; * const command = new CreateWorkspaceServiceAccountTokenCommand(input); * const response = await client.send(command); * // { // CreateWorkspaceServiceAccountTokenResponse * // serviceAccountToken: { // ServiceAccountTokenSummaryWithKey * // id: "STRING_VALUE", // required * // name: "STRING_VALUE", // required * // key: "STRING_VALUE", // required * // }, * // serviceAccountId: "STRING_VALUE", // required * // workspaceId: "STRING_VALUE", // required * // }; * * ``` * * @param CreateWorkspaceServiceAccountTokenCommandInput - {@link CreateWorkspaceServiceAccountTokenCommandInput} * @returns {@link CreateWorkspaceServiceAccountTokenCommandOutput} * @see {@link CreateWorkspaceServiceAccountTokenCommandInput} for command's `input` shape. * @see {@link CreateWorkspaceServiceAccountTokenCommandOutput} for command's `response` shape. * @see {@link GrafanaClientResolvedConfig | config} for GrafanaClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You do not have sufficient permissions to perform this action.

* * @throws {@link ConflictException} (client fault) *

A resource was in an inconsistent state during an update or a deletion.

* * @throws {@link InternalServerException} (server fault) *

Unexpected error while processing the request. Retry the request.

* * @throws {@link ResourceNotFoundException} (client fault) *

The request references a resource that does not exist.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

The request would cause a service quota to be exceeded.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied because of request throttling. Retry the request.

* * @throws {@link ValidationException} (client fault) *

The value of a parameter in the request caused an error.

* * @throws {@link GrafanaServiceException} *

Base exception class for all service exceptions from Grafana service.

* * * @public */ export declare class CreateWorkspaceServiceAccountTokenCommand extends CreateWorkspaceServiceAccountTokenCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateWorkspaceServiceAccountTokenRequest; output: CreateWorkspaceServiceAccountTokenResponse; }; sdk: { input: CreateWorkspaceServiceAccountTokenCommandInput; output: CreateWorkspaceServiceAccountTokenCommandOutput; }; }; }