openapi: 3.0.0 info: version: '2020-08-18' x-release: v4 title: Amazon Managed Grafana Tags Workspaces API description:
Amazon Managed Grafana is a fully managed and secure data visualization service that you can use to instantly query, correlate, and visualize operational metrics, logs, and traces from multiple sources. Amazon Managed Grafana makes it easy to deploy, operate, and scale Grafana, a widely deployed data visualization tool that is popular for its extensible data support.
With Amazon Managed Grafana, you create logically isolated Grafana servers called workspaces. In a workspace, you can create Grafana dashboards and visualizations to analyze your metrics, logs, and traces without having to build, package, or deploy any hardware to run Grafana servers.
x-logo: url: https://twitter.com/awscloud/profile_image?size=original backgroundColor: '#FFFFFF' termsOfService: https://aws.amazon.com/service-terms/ contact: name: Mike Ralphson email: mike.ralphson@gmail.com url: https://github.com/mermade/aws2openapi x-twitter: PermittedSoc license: name: Apache 2.0 License url: http://www.apache.org/licenses/ x-providerName: amazonaws.com x-serviceName: grafana x-aws-signingName: grafana x-origin: - contentType: application/json url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/grafana-2020-08-18.normal.json converter: url: https://github.com/mermade/aws2openapi version: 1.0.0 x-apisguru-driver: external x-apiClientRegistration: url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct x-apisguru-categories: - cloud x-preferred: true servers: - url: http://grafana.{region}.amazonaws.com variables: region: description: The AWS region enum: - us-east-1 - us-east-2 - us-west-1 - us-west-2 - us-gov-west-1 - us-gov-east-1 - ca-central-1 - eu-north-1 - eu-west-1 - eu-west-2 - eu-west-3 - eu-central-1 - eu-south-1 - af-south-1 - ap-northeast-1 - ap-northeast-2 - ap-northeast-3 - ap-southeast-1 - ap-southeast-2 - ap-east-1 - ap-south-1 - sa-east-1 - me-south-1 default: us-east-1 description: The Amazon Managed Grafana multi-region endpoint - url: https://grafana.{region}.amazonaws.com variables: region: description: The AWS region enum: - us-east-1 - us-east-2 - us-west-1 - us-west-2 - us-gov-west-1 - us-gov-east-1 - ca-central-1 - eu-north-1 - eu-west-1 - eu-west-2 - eu-west-3 - eu-central-1 - eu-south-1 - af-south-1 - ap-northeast-1 - ap-northeast-2 - ap-northeast-3 - ap-southeast-1 - ap-southeast-2 - ap-east-1 - ap-south-1 - sa-east-1 - me-south-1 default: us-east-1 description: The Amazon Managed Grafana multi-region endpoint - url: http://grafana.{region}.amazonaws.com.cn variables: region: description: The AWS region enum: - cn-north-1 - cn-northwest-1 default: cn-north-1 description: The Amazon Managed Grafana endpoint for China (Beijing) and China (Ningxia) - url: https://grafana.{region}.amazonaws.com.cn variables: region: description: The AWS region enum: - cn-north-1 - cn-northwest-1 default: cn-north-1 description: The Amazon Managed Grafana endpoint for China (Beijing) and China (Ningxia) security: - hmac: [] tags: - name: Workspaces paths: /workspaces/{workspaceId}/licenses/{licenseType}: parameters: - $ref: '#/components/parameters/X-Amz-Content-Sha256' - $ref: '#/components/parameters/X-Amz-Date' - $ref: '#/components/parameters/X-Amz-Algorithm' - $ref: '#/components/parameters/X-Amz-Credential' - $ref: '#/components/parameters/X-Amz-Security-Token' - $ref: '#/components/parameters/X-Amz-Signature' - $ref: '#/components/parameters/X-Amz-SignedHeaders' post: operationId: AssociateLicense description: Assigns a Grafana Enterprise license to a workspace. Upgrading to Grafana Enterprise incurs additional fees. For more information, see Upgrade a workspace to Grafana Enterprise. responses: '202': description: Success content: application/json: schema: $ref: '#/components/schemas/AssociateLicenseResponse' '480': description: ResourceNotFoundException content: application/json: schema: $ref: '#/components/schemas/ResourceNotFoundException' '481': description: ThrottlingException content: application/json: schema: $ref: '#/components/schemas/ThrottlingException' '482': description: ValidationException content: application/json: schema: $ref: '#/components/schemas/ValidationException' '483': description: AccessDeniedException content: application/json: schema: $ref: '#/components/schemas/AccessDeniedException' '484': description: InternalServerException content: application/json: schema: $ref: '#/components/schemas/InternalServerException' parameters: - name: licenseType in: path required: true description: The type of license to associate with the workspace. schema: type: string enum: - ENTERPRISE - ENTERPRISE_FREE_TRIAL - name: workspaceId in: path required: true description: The ID of the workspace to associate the license with. schema: type: string pattern: ^g-[0-9a-f]{10}$ summary: Amazon Managed Grafana Associate License tags: - Workspaces delete: operationId: DisassociateLicense description: Removes the Grafana Enterprise license from a workspace. responses: '202': description: Success content: application/json: schema: $ref: '#/components/schemas/DisassociateLicenseResponse' '480': description: ResourceNotFoundException content: application/json: schema: $ref: '#/components/schemas/ResourceNotFoundException' '481': description: ThrottlingException content: application/json: schema: $ref: '#/components/schemas/ThrottlingException' '482': description: ValidationException content: application/json: schema: $ref: '#/components/schemas/ValidationException' '483': description: AccessDeniedException content: application/json: schema: $ref: '#/components/schemas/AccessDeniedException' '484': description: InternalServerException content: application/json: schema: $ref: '#/components/schemas/InternalServerException' parameters: - name: licenseType in: path required: true description: The type of license to remove from the workspace. schema: type: string enum: - ENTERPRISE - ENTERPRISE_FREE_TRIAL - name: workspaceId in: path required: true description: The ID of the workspace to remove the Grafana Enterprise license from. schema: type: string pattern: ^g-[0-9a-f]{10}$ summary: Amazon Managed Grafana Disassociate License tags: - Workspaces /workspaces: parameters: - $ref: '#/components/parameters/X-Amz-Content-Sha256' - $ref: '#/components/parameters/X-Amz-Date' - $ref: '#/components/parameters/X-Amz-Algorithm' - $ref: '#/components/parameters/X-Amz-Credential' - $ref: '#/components/parameters/X-Amz-Security-Token' - $ref: '#/components/parameters/X-Amz-Signature' - $ref: '#/components/parameters/X-Amz-SignedHeaders' post: operationId: CreateWorkspace description:Creates a workspace. In a workspace, you can create Grafana dashboards and visualizations to analyze your metrics, logs, and traces. You don't have to build, package, or deploy any hardware to run the Grafana server.
Don't use CreateWorkspace to modify an existing workspace. Instead, use UpdateWorkspace.
ORGANIZATION, you must specify which organizational units the workspace can access in the workspaceOrganizationalUnits parameter.
type: string
enum:
- CURRENT_ACCOUNT
- ORGANIZATION
authenticationProviders:
description: Specifies whether this workspace uses SAML 2.0, IAM Identity Center (successor to Single Sign-On), or both to authenticate users for using the Grafana console within a workspace. For more information, see User authentication in Amazon Managed Grafana.
type: array
items:
$ref: '#/components/schemas/AuthenticationProviderTypes'
clientToken:
description: A unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.
type: string
pattern: ^[!-~]{1,64}$
configuration:
description: The configuration string for the workspace that you create. For more information about the format and configuration options available, see Working in your Grafana workspace.
type: string
minLength: 2
maxLength: 65536
grafanaVersion:
description: Specifies the version of Grafana to support in the new workspace.
To get a list of supported version, use the ListVersions operation.
The configuration settings for in-bound network access to your workspace.
When this is configured, only listed IP addresses and VPC endpoints will be able to access your workspace. Standard Grafana authentication and authorization are still required.
Access is granted to a caller that is in either the IP address list or the VPC endpoint list - they do not need to be in both.
If this is not configured, or is removed, then all IP addresses and VPC endpoints are allowed. Standard Grafana authentication and authorization are still required.
While both prefixListIds and vpceIds are required, you can pass in an empty array of strings for either parameter if you do not want to allow any of that type.
If both are passed as empty arrays, no traffic is allowed to the workspace, because only explicitly allowed connections are accepted.
An array of prefix list IDs. A prefix list is a list of CIDR ranges of IP addresses. The IP addresses specified are allowed to access your workspace. If the list is not included in the configuration (passed an empty array) then no IP addresses are allowed to access the workspace. You create a prefix list using the Amazon VPC console.
Prefix list IDs have the format pl-1a2b3c4d .
For more information about prefix lists, see Group CIDR blocks using managed prefix listsin the Amazon Virtual Private Cloud User Guide.
vpceIds: allOf: - $ref: '#/components/schemas/VpceIds' - description:An array of Amazon VPC endpoint IDs for the workspace. You can create VPC endpoints to your Amazon Managed Grafana workspace for access from within a VPC. If a NetworkAccessConfiguration is specified then only VPC endpoints specified here are allowed to access the workspace. If you pass in an empty array of strings, then no VPCs are allowed to access the workspace.
VPC endpoint IDs have the format vpce-1a2b3c4d .
For more information about creating an interface VPC endpoint, see Interface VPC endpoints in the Amazon Managed Grafana User Guide.
The only VPC endpoints that can be specified here are interface VPC endpoints for Grafana workspaces (using the com.amazonaws.[region].grafana-workspace service endpoint). Other VPC endpoints are ignored.
When creating a workspace through the Amazon Web Services API, CLI or Amazon Web Services CloudFormation, you must manage IAM roles and provision the permissions that the workspace needs to use Amazon Web Services data sources and notification channels.
You must also specify a workspaceRoleArn for a role that you will manage for the workspace to use when accessing those datasources and notification channels.
The ability for Amazon Managed Grafana to create and update IAM roles on behalf of the user is supported only in the Amazon Managed Grafana console, where this value may be set to SERVICE_MANAGED.
Use only the CUSTOMER_MANAGED permission type when creating a workspace with the API, CLI or Amazon Web Services CloudFormation.
For more information, see Amazon Managed Grafana permissions and policies for Amazon Web Services data sources and notification channels.
type: string enum: - CUSTOMER_MANAGED - SERVICE_MANAGED stackSetName: description: The name of the CloudFormation stack set to use to generate IAM roles to be used for this workspace. type: string tags: description: The list of tags associated with the workspace. type: object minProperties: 0 maxProperties: 50 additionalProperties: $ref: '#/components/schemas/TagValue' vpcConfiguration: description:The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.
Provided securityGroupIds and subnetIds must be part of the same VPC.
Connecting to a private VPC is not yet available in the Asia Pacific (Seoul) Region (ap-northeast-2).
A description for the workspace. This is used only to help you identify this workspace.
Pattern: ^[\\p{L}\\p{Z}\\p{N}\\p{P}]{0,2048}$
ListWorkspaces operation.)
schema:
type: string
summary: Amazon Managed Grafana List Workspaces
tags:
- Workspaces
/workspaces/{workspaceId}/apikeys:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
- $ref: '#/components/parameters/X-Amz-Date'
- $ref: '#/components/parameters/X-Amz-Algorithm'
- $ref: '#/components/parameters/X-Amz-Credential'
- $ref: '#/components/parameters/X-Amz-Security-Token'
- $ref: '#/components/parameters/X-Amz-Signature'
- $ref: '#/components/parameters/X-Amz-SignedHeaders'
post:
operationId: CreateWorkspaceApiKey
description: Creates a Grafana API key for the workspace. This key can be used to authenticate requests sent to the workspace's HTTP API. See https://docs.aws.amazon.com/grafana/latest/userguide/Using-Grafana-APIs.html for available APIs and example requests.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CreateWorkspaceApiKeyResponse'
'480':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'481':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'482':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'483':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'484':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'485':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
'486':
description: ServiceQuotaExceededException
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceQuotaExceededException'
parameters:
- name: workspaceId
in: path
required: true
description: The ID of the workspace to create an API key.
schema:
type: string
pattern: ^g-[0-9a-f]{10}$
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- keyName
- keyRole
- secondsToLive
properties:
keyName:
description: Specifies the name of the key. Keynames must be unique to the workspace.
type: string
minLength: 1
maxLength: 100
keyRole:
description: 'Specifies the permission level of the key.
Valid values: VIEWER|EDITOR|ADMIN
Modifies an existing Amazon Managed Grafana workspace. If you use this operation and omit any optional parameters, the existing values of those parameters are not changed.
To modify the user authentication methods that the workspace uses, such as SAML or IAM Identity Center, use UpdateWorkspaceAuthentication.
To modify which users in the workspace have the Admin and Editor Grafana roles, use UpdatePermissions.
ORGANIZATION, you must specify which organizational units the workspace can access in the workspaceOrganizationalUnits parameter.
type: string
enum:
- CURRENT_ACCOUNT
- ORGANIZATION
networkAccessControl:
description: The configuration settings for in-bound network access to your workspace.
When this is configured, only listed IP addresses and VPC endpoints will be able to access your workspace. Standard Grafana authentication and authorization are still required.
Access is granted to a caller that is in either the IP address list or the VPC endpoint list - they do not need to be in both.
If this is not configured, or is removed, then all IP addresses and VPC endpoints are allowed. Standard Grafana authentication and authorization are still required.
While both prefixListIds and vpceIds are required, you can pass in an empty array of strings for either parameter if you do not want to allow any of that type.
If both are passed as empty arrays, no traffic is allowed to the workspace, because only explicitly allowed connections are accepted.
An array of prefix list IDs. A prefix list is a list of CIDR ranges of IP addresses. The IP addresses specified are allowed to access your workspace. If the list is not included in the configuration (passed an empty array) then no IP addresses are allowed to access the workspace. You create a prefix list using the Amazon VPC console.
Prefix list IDs have the format pl-1a2b3c4d .
For more information about prefix lists, see Group CIDR blocks using managed prefix listsin the Amazon Virtual Private Cloud User Guide.
vpceIds: allOf: - $ref: '#/components/schemas/VpceIds' - description:An array of Amazon VPC endpoint IDs for the workspace. You can create VPC endpoints to your Amazon Managed Grafana workspace for access from within a VPC. If a NetworkAccessConfiguration is specified then only VPC endpoints specified here are allowed to access the workspace. If you pass in an empty array of strings, then no VPCs are allowed to access the workspace.
VPC endpoint IDs have the format vpce-1a2b3c4d .
For more information about creating an interface VPC endpoint, see Interface VPC endpoints in the Amazon Managed Grafana User Guide.
The only VPC endpoints that can be specified here are interface VPC endpoints for Grafana workspaces (using the com.amazonaws.[region].grafana-workspace service endpoint). Other VPC endpoints are ignored.
permissionType set to CUSTOMER_MANAGED.
type: string
minLength: 1
maxLength: 2048
format: password
permissionType:
description: Use this parameter if you want to change a workspace from SERVICE_MANAGED to CUSTOMER_MANAGED. This allows you to manage the permissions that the workspace uses to access datasources and notification channels. If the workspace is in a member Amazon Web Services account of an organization, and that account is not a delegated administrator account, and you want the workspace to access data sources in other Amazon Web Services accounts in the organization, you must choose CUSTOMER_MANAGED.
If you specify this as CUSTOMER_MANAGED, you must also specify a workspaceRoleArn that the workspace will use for accessing Amazon Web Services resources.
For more information on the role and permissions needed, see Amazon Managed Grafana permissions and policies for Amazon Web Services data sources and notification channels
Do not use this to convert a CUSTOMER_MANAGED workspace to SERVICE_MANAGED. Do not include this parameter if you want to leave the workspace as SERVICE_MANAGED.
You can convert a CUSTOMER_MANAGED workspace to SERVICE_MANAGED using the Amazon Managed Grafana console. For more information, see Managing permissions for data sources and notification channels.
Whether to remove the network access configuration from the workspace.
Setting this to true and providing a networkAccessControl to set will return an error.
If you remove this configuration by setting this to true, then all IP addresses and VPC endpoints will be allowed. Standard Grafana authentication and authorization will still be required.
Whether to remove the VPC configuration from the workspace.
Setting this to true and providing a vpcConfiguration to set will return an error.
The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.
Provided securityGroupIds and subnetIds must be part of the same VPC.
Connecting to a private VPC is not yet available in the Asia Pacific (Seoul) Region (ap-northeast-2).
permissionType CUSTOMER_MANAGED, then this role is required.
type: string
minLength: 1
maxLength: 2048
format: password
summary: Amazon Managed Grafana Update Workspace
tags:
- Workspaces
/workspaces/{workspaceId}/apikeys/{keyName}:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
- $ref: '#/components/parameters/X-Amz-Date'
- $ref: '#/components/parameters/X-Amz-Algorithm'
- $ref: '#/components/parameters/X-Amz-Credential'
- $ref: '#/components/parameters/X-Amz-Security-Token'
- $ref: '#/components/parameters/X-Amz-Signature'
- $ref: '#/components/parameters/X-Amz-SignedHeaders'
delete:
operationId: DeleteWorkspaceApiKey
description: Deletes a Grafana API key for the workspace.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteWorkspaceApiKeyResponse'
'480':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'481':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'482':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'483':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'484':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'485':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
parameters:
- name: keyName
in: path
required: true
description: The name of the API key to delete.
schema:
type: string
minLength: 1
maxLength: 100
- name: workspaceId
in: path
required: true
description: The ID of the workspace to delete.
schema:
type: string
pattern: ^g-[0-9a-f]{10}$
summary: Amazon Managed Grafana Delete Workspace Api Key
tags:
- Workspaces
/workspaces/{workspaceId}/authentication:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
- $ref: '#/components/parameters/X-Amz-Date'
- $ref: '#/components/parameters/X-Amz-Algorithm'
- $ref: '#/components/parameters/X-Amz-Credential'
- $ref: '#/components/parameters/X-Amz-Security-Token'
- $ref: '#/components/parameters/X-Amz-Signature'
- $ref: '#/components/parameters/X-Amz-SignedHeaders'
get:
operationId: DescribeWorkspaceAuthentication
description: Displays information about the authentication methods used in one Amazon Managed Grafana workspace.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeWorkspaceAuthenticationResponse'
'480':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'481':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'482':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'483':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'484':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
parameters:
- name: workspaceId
in: path
required: true
description: The ID of the workspace to return authentication information about.
schema:
type: string
pattern: ^g-[0-9a-f]{10}$
summary: Amazon Managed Grafana Describe Workspace Authentication
tags:
- Workspaces
post:
operationId: UpdateWorkspaceAuthentication
description: Use this operation to define the identity provider (IdP) that this workspace authenticates users from, using SAML. You can also map SAML assertion attributes to workspace user information and define which groups in the assertion attribute are to have the Admin and Editor roles in the workspace.
Changes to the authentication method for a workspace may take a few minutes to take effect.
Admin and Editor roles in the workspace.
summary: Amazon Managed Grafana Update Workspace Authentication
tags:
- Workspaces
/workspaces/{workspaceId}/configuration:
parameters:
- $ref: '#/components/parameters/X-Amz-Content-Sha256'
- $ref: '#/components/parameters/X-Amz-Date'
- $ref: '#/components/parameters/X-Amz-Algorithm'
- $ref: '#/components/parameters/X-Amz-Credential'
- $ref: '#/components/parameters/X-Amz-Security-Token'
- $ref: '#/components/parameters/X-Amz-Signature'
- $ref: '#/components/parameters/X-Amz-SignedHeaders'
get:
operationId: DescribeWorkspaceConfiguration
description: Gets the current configuration string for the given workspace.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeWorkspaceConfigurationResponse'
'480':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'481':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'482':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'483':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
parameters:
- name: workspaceId
in: path
required: true
description: The ID of the workspace to get configuration information for.
schema:
type: string
pattern: ^g-[0-9a-f]{10}$
summary: Amazon Managed Grafana Describe Workspace Configuration
tags:
- Workspaces
put:
operationId: UpdateWorkspaceConfiguration
description: Updates the configuration string for the given workspace
responses:
'202':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateWorkspaceConfigurationResponse'
'480':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'481':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'482':
description: ConflictException
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictException'
'483':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'484':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'485':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
parameters:
- name: workspaceId
in: path
required: true
description: The ID of the workspace to update.
schema:
type: string
pattern: ^g-[0-9a-f]{10}$
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- configuration
properties:
configuration:
description: The new configuration string for the workspace. For more information about the format and configuration options available, see Working in your Grafana workspace.
type: string
minLength: 2
maxLength: 65536
grafanaVersion:
description: Specifies the version of Grafana to support in the new workspace.
Can only be used to upgrade (for example, from 8.4 to 9.4), not downgrade (for example, from 9.4 to 8.4).
To know what versions are available to upgrade to for a specific workspace, see the ListVersions operation.
Admin and Editor roles in this workspace. If you use this operation without specifying userId or groupId, the operation returns the roles of all users and groups. If you specify a userId or a groupId, only the roles for that user or group are returned. If you do this, you can specify only one userId or one groupId.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ListPermissionsResponse'
'480':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'481':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'482':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'483':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'484':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
parameters:
- name: groupId
in: query
required: false
description: (Optional) Limits the results to only the group that matches this ID.
schema:
type: string
minLength: 1
maxLength: 47
- name: maxResults
in: query
required: false
description: The maximum number of results to include in the response.
schema:
type: integer
minimum: 1
maximum: 100
- name: nextToken
in: query
required: false
description: The token to use when requesting the next set of results. You received this token from a previous ListPermissions operation.
schema:
type: string
- name: userId
in: query
required: false
description: (Optional) Limits the results to only the user that matches this ID.
schema:
type: string
minLength: 1
maxLength: 47
- name: userType
in: query
required: false
description: (Optional) If you specify SSO_USER, then only the permissions of IAM Identity Center users are returned. If you specify SSO_GROUP, only the permissions of IAM Identity Center groups are returned.
schema:
type: string
enum:
- SSO_USER
- SSO_GROUP
- name: workspaceId
in: path
required: true
description: The ID of the workspace to list permissions for. This parameter is required.
schema:
type: string
pattern: ^g-[0-9a-f]{10}$
summary: Amazon Managed Grafana List Permissions
tags:
- Workspaces
patch:
operationId: UpdatePermissions
description: Updates which users in a workspace have the Grafana Admin or Editor roles.
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/UpdatePermissionsResponse'
'480':
description: ResourceNotFoundException
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceNotFoundException'
'481':
description: ThrottlingException
content:
application/json:
schema:
$ref: '#/components/schemas/ThrottlingException'
'482':
description: ValidationException
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationException'
'483':
description: AccessDeniedException
content:
application/json:
schema:
$ref: '#/components/schemas/AccessDeniedException'
'484':
description: InternalServerException
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerException'
parameters:
- name: workspaceId
in: path
required: true
description: The ID of the workspace to update.
schema:
type: string
pattern: ^g-[0-9a-f]{10}$
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- updateInstructionBatch
properties:
updateInstructionBatch:
description: An array of structures that contain the permission updates to make.
type: array
items:
$ref: '#/components/schemas/UpdateInstruction'
minItems: 0
maxItems: 20
summary: Amazon Managed Grafana Update Permissions
tags:
- Workspaces
components:
schemas:
SecurityGroupId:
type: string
minLength: 0
maxLength: 255
ResourceNotFoundException: {}
RoleValue:
type: string
minLength: 1
maxLength: 256
CreateWorkspaceApiKeyResponse:
type: object
required:
- key
- keyName
- workspaceId
properties:
key:
allOf:
- $ref: '#/components/schemas/ApiKeyToken'
- description: The key token. Use this value as a bearer token to authenticate HTTP requests to the workspace.
keyName:
allOf:
- $ref: '#/components/schemas/ApiKeyName'
- description: The name of the key that was created.
workspaceId:
allOf:
- $ref: '#/components/schemas/WorkspaceId'
- description: The ID of the workspace that the key is valid for.
UpdateError:
type: object
required:
- causedBy
- code
- message
properties:
causedBy:
allOf:
- $ref: '#/components/schemas/UpdateInstruction'
- description: Specifies which permission update caused the error.
code:
allOf:
- $ref: '#/components/schemas/UpdateErrorCodeInteger'
- description: The error code.
message:
allOf:
- $ref: '#/components/schemas/String'
- description: The message for this error.
description: A structure containing information about one error encountered while performing an UpdatePermissions operation.
IdpMetadata:
type: object
properties:
url:
allOf:
- $ref: '#/components/schemas/IdpMetadataUrl'
- description: The URL of the location containing the IdP metadata.
xml:
allOf:
- $ref: '#/components/schemas/String'
- description: The full IdP metadata, in XML format.
description: A structure containing the identity provider (IdP) metadata used to integrate the identity provider with this workspace. You can specify the metadata either by providing a URL to its location in the url parameter, or by specifying the full metadata in XML format in the xml parameter. Specifying both will cause an error.
RoleValueList:
type: array
items:
$ref: '#/components/schemas/RoleValue'
AccountAccessType:
type: string
enum:
- CURRENT_ACCOUNT
- ORGANIZATION
PrefixListId:
type: string
minLength: 1
maxLength: 100
UpdateAction:
type: string
enum:
- ADD
- REVOKE
SamlConfigurationStatus:
type: string
enum:
- CONFIGURED
- NOT_CONFIGURED
AssociateLicenseResponse:
type: object
required:
- workspace
properties:
workspace:
allOf:
- $ref: '#/components/schemas/WorkspaceDescription'
- description: A structure containing data about the workspace.
NetworkAccessConfiguration:
type: object
required:
- prefixListIds
- vpceIds
properties:
prefixListIds:
allOf:
- $ref: '#/components/schemas/PrefixListIds'
- description: An array of prefix list IDs. A prefix list is a list of CIDR ranges of IP addresses. The IP addresses specified are allowed to access your workspace. If the list is not included in the configuration (passed an empty array) then no IP addresses are allowed to access the workspace. You create a prefix list using the Amazon VPC console.
Prefix list IDs have the format pl-1a2b3c4d .
For more information about prefix lists, see Group CIDR blocks using managed prefix listsin the Amazon Virtual Private Cloud User Guide.
vpceIds: allOf: - $ref: '#/components/schemas/VpceIds' - description:An array of Amazon VPC endpoint IDs for the workspace. You can create VPC endpoints to your Amazon Managed Grafana workspace for access from within a VPC. If a NetworkAccessConfiguration is specified then only VPC endpoints specified here are allowed to access the workspace. If you pass in an empty array of strings, then no VPCs are allowed to access the workspace.
VPC endpoint IDs have the format vpce-1a2b3c4d .
For more information about creating an interface VPC endpoint, see Interface VPC endpoints in the Amazon Managed Grafana User Guide.
The only VPC endpoints that can be specified here are interface VPC endpoints for Grafana workspaces (using the com.amazonaws.[region].grafana-workspace service endpoint). Other VPC endpoints are ignored.
The configuration settings for in-bound network access to your workspace.
When this is configured, only listed IP addresses and VPC endpoints will be able to access your workspace. Standard Grafana authentication and authorization are still required.
Access is granted to a caller that is in either the IP address list or the VPC endpoint list - they do not need to be in both.
If this is not configured, or is removed, then all IP addresses and VPC endpoints are allowed. Standard Grafana authentication and authorization are still required.
While both prefixListIds and vpceIds are required, you can pass in an empty array of strings for either parameter if you do not want to allow any of that type.
If both are passed as empty arrays, no traffic is allowed to the workspace, because only explicitly allowed connections are accepted.
Admin role to.
editor:
allOf:
- $ref: '#/components/schemas/RoleValueList'
- description: A list of groups from the SAML assertion attribute to grant the Grafana Editor role to.
description: This structure defines which groups defined in the SAML assertion attribute are to be mapped to the Grafana Admin and Editor roles in the workspace. SAML authenticated users not part of Admin or Editor role groups have Viewer permission over the workspace.
DescribeWorkspaceResponse:
type: object
required:
- workspace
properties:
workspace:
allOf:
- $ref: '#/components/schemas/WorkspaceDescription'
- description: A structure containing information about the workspace.
VpcConfiguration:
type: object
required:
- securityGroupIds
- subnetIds
properties:
securityGroupIds:
allOf:
- $ref: '#/components/schemas/SecurityGroupIds'
- description: The list of Amazon EC2 security group IDs attached to the Amazon VPC for your Grafana workspace to connect. Duplicates not allowed.
subnetIds:
allOf:
- $ref: '#/components/schemas/SubnetIds'
- description: The list of Amazon EC2 subnet IDs created in the Amazon VPC for your Grafana workspace to connect. Duplicates not allowed.
description: The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.
Provided securityGroupIds and subnetIds must be part of the same VPC.
Connecting to a private VPC is not yet available in the Asia Pacific (Seoul) Region (ap-northeast-2).
ORGANIZATION, the workspaceOrganizationalUnits parameter specifies which organizational units the workspace can access.
authentication:
allOf:
- $ref: '#/components/schemas/AuthenticationSummary'
- description: A structure that describes whether the workspace uses SAML, IAM Identity Center, or both methods for user authentication.
created:
allOf:
- $ref: '#/components/schemas/Timestamp'
- description: The date that the workspace was created.
dataSources:
allOf:
- $ref: '#/components/schemas/DataSourceTypesList'
- description: Specifies the Amazon Web Services data sources that have been configured to have IAM roles and permissions created to allow Amazon Managed Grafana to read data from these sources.
This list is only used when the workspace was created through the Amazon Web Services console, and the permissionType is SERVICE_MANAGED.
If this is SERVICE_MANAGED, and the workplace was created through the Amazon Managed Grafana console, then Amazon Managed Grafana automatically creates the IAM roles and provisions the permissions that the workspace needs to use Amazon Web Services data sources and notification channels.
If this is CUSTOMER_MANAGED, you must manage those roles and permissions yourself.
If you are working with a workspace in a member account of an organization and that account is not a delegated administrator account, and you want the workspace to access data sources in other Amazon Web Services accounts in the organization, this parameter must be set to CUSTOMER_MANAGED.
For more information about converting between customer and service managed, see Managing permissions for data sources and notification channels. For more information about the roles and permissions that must be managed for customer managed workspaces, see Amazon Managed Grafana permissions and policies for Amazon Web Services data sources and notification channels
stackSetName: allOf: - $ref: '#/components/schemas/StackSetName' - description: The name of the CloudFormation stack set that is used to generate IAM roles to be used for this workspace. status: allOf: - $ref: '#/components/schemas/WorkspaceStatus' - description: The current status of the workspace. tags: allOf: - $ref: '#/components/schemas/TagMap' - description: The list of tags associated with the workspace. vpcConfiguration: allOf: - $ref: '#/components/schemas/VpcConfiguration' - description: The configuration for connecting to data sources in a private VPC (Amazon Virtual Private Cloud). workspaceRoleArn: allOf: - $ref: '#/components/schemas/IamRoleArn' - description: The IAM role that grants permissions to the Amazon Web Services resources that the workspace will view data from. This role must already exist. description: A structure containing information about an Amazon Managed Grafana workspace in your account. Timestamp: type: string format: date-time GrafanaVersion: type: string minLength: 1 maxLength: 255 WorkspaceStatus: type: string enum: - ACTIVE - CREATING - DELETING - FAILED - UPDATING - UPGRADING - DELETION_FAILED - CREATION_FAILED - UPDATE_FAILED - UPGRADE_FAILED - LICENSE_REMOVAL_FAILED - VERSION_UPDATING - VERSION_UPDATE_FAILED AwsSsoAuthentication: type: object properties: ssoClientId: allOf: - $ref: '#/components/schemas/SSOClientId' - description: The ID of the IAM Identity Center-managed application that is created by Amazon Managed Grafana. description: 'A structure containing information about how this workspace works with IAM Identity Center. ' StackSetName: type: string Description: type: string minLength: 0 maxLength: 2048 format: password AuthenticationProviders: type: array items: $ref: '#/components/schemas/AuthenticationProviderTypes' AssertionAttribute: type: string minLength: 1 maxLength: 256 OrganizationalUnit: type: string UpdateInstruction: type: object required: - action - role - users properties: action: allOf: - $ref: '#/components/schemas/UpdateAction' - description: Specifies whether this update is to add or revoke role permissions. role: allOf: - $ref: '#/components/schemas/Role' - description: The role to add or revoke for the user or the group specified inusers.
users:
allOf:
- $ref: '#/components/schemas/UserList'
- description: A structure that specifies the user or group to add or revoke the role for.
description: Contains the instructions for one Grafana role permission update in a UpdatePermissions operation.
LicenseType:
type: string
enum:
- ENTERPRISE
- ENTERPRISE_FREE_TRIAL
IdpMetadataUrl:
type: string
minLength: 1
maxLength: 2048
UpdatePermissionsResponse:
type: object
required:
- errors
properties:
errors:
allOf:
- $ref: '#/components/schemas/UpdateErrorList'
- description: An array of structures that contain the errors from the operation, if any.
WorkspaceList:
type: array
items:
$ref: '#/components/schemas/WorkspaceSummary'
AuthenticationDescription:
type: object
required:
- providers
properties:
awsSso:
allOf:
- $ref: '#/components/schemas/AwsSsoAuthentication'
- description: 'A structure containing information about how this workspace works with IAM Identity Center. '
providers:
allOf:
- $ref: '#/components/schemas/AuthenticationProviders'
- description: Specifies whether this workspace uses IAM Identity Center, SAML, or both methods to authenticate users to use the Grafana console in the Amazon Managed Grafana workspace.
saml:
allOf:
- $ref: '#/components/schemas/SamlAuthentication'
- description: 'A structure containing information about how this workspace works with SAML, including what attributes within the assertion are to be mapped to user information in the workspace. '
description: A structure containing information about the user authentication methods used by the workspace.
PaginationToken:
type: string
UserList:
type: array
items:
$ref: '#/components/schemas/User'
UpdateWorkspaceAuthenticationResponse:
type: object
required:
- authentication
properties:
authentication:
allOf:
- $ref: '#/components/schemas/AuthenticationDescription'
- description: A structure that describes the user authentication for this workspace after the update is made.
String:
type: string
CreateWorkspaceResponse:
type: object
required:
- workspace
properties:
workspace:
allOf:
- $ref: '#/components/schemas/WorkspaceDescription'
- description: A structure containing data about the workspace that was created.
PermissionEntryList:
type: array
items:
$ref: '#/components/schemas/PermissionEntry'
SecurityGroupIds:
type: array
items:
$ref: '#/components/schemas/SecurityGroupId'
minItems: 1
maxItems: 100
OverridableConfigurationJson:
type: string
minLength: 2
maxLength: 65536
ThrottlingException: {}
PermissionEntry:
type: object
required:
- role
- user
properties:
role:
allOf:
- $ref: '#/components/schemas/Role'
- description: Specifies whether the user or group has the Admin, Editor, or Viewer role.
user:
allOf:
- $ref: '#/components/schemas/User'
- description: A structure with the ID of the user or group with this role.
description: A structure containing the identity of one user or group and the Admin, Editor, or Viewer role that they have.
AllowedOrganizations:
type: array
items:
$ref: '#/components/schemas/AllowedOrganization'
SubnetIds:
type: array
items:
$ref: '#/components/schemas/SubnetId'
minItems: 1
maxItems: 100
ApiKeyName:
type: string
minLength: 1
maxLength: 100
IamRoleArn:
type: string
minLength: 1
maxLength: 2048
format: password
WorkspaceName:
type: string
pattern: ^[a-zA-Z0-9-._~]{1,255}$
format: password
SubnetId:
type: string
minLength: 0
maxLength: 255
AssertionAttributes:
type: object
properties:
email:
allOf:
- $ref: '#/components/schemas/AssertionAttribute'
- description: The name of the attribute within the SAML assertion to use as the email names for SAML users.
groups:
allOf:
- $ref: '#/components/schemas/AssertionAttribute'
- description: The name of the attribute within the SAML assertion to use as the user full "friendly" names for user groups.
login:
allOf:
- $ref: '#/components/schemas/AssertionAttribute'
- description: The name of the attribute within the SAML assertion to use as the login names for SAML users.
name:
allOf:
- $ref: '#/components/schemas/AssertionAttribute'
- description: The name of the attribute within the SAML assertion to use as the user full "friendly" names for SAML users.
org:
allOf:
- $ref: '#/components/schemas/AssertionAttribute'
- description: The name of the attribute within the SAML assertion to use as the user full "friendly" names for the users' organizations.
role:
allOf:
- $ref: '#/components/schemas/AssertionAttribute'
- description: The name of the attribute within the SAML assertion to use as the user roles.
description: A structure that defines which attributes in the IdP assertion are to be used to define information about the users authenticated by the IdP to use the workspace.
UpdateErrorList:
type: array
items:
$ref: '#/components/schemas/UpdateError'
UpdateErrorCodeInteger:
type: integer
minimum: 100
maximum: 999
UpdateWorkspaceConfigurationResponse:
type: object
properties: {}
WorkspaceId:
type: string
pattern: ^g-[0-9a-f]{10}$
Boolean:
type: boolean
ServiceQuotaExceededException: {}
Role:
type: string
enum:
- ADMIN
- EDITOR
- VIEWER
NotificationDestinationType:
type: string
enum:
- SNS
ListPermissionsResponse:
type: object
required:
- permissions
properties:
nextToken:
allOf:
- $ref: '#/components/schemas/PaginationToken'
- description: The token to use in a subsequent ListPermissions operation to return the next set of results.
permissions:
allOf:
- $ref: '#/components/schemas/PermissionEntryList'
- description: The permissions returned by the operation.
ListWorkspacesResponse:
type: object
required:
- workspaces
properties:
nextToken:
allOf:
- $ref: '#/components/schemas/PaginationToken'
- description: The token to use when requesting the next set of workspaces.
workspaces:
allOf:
- $ref: '#/components/schemas/WorkspaceList'
- description: An array of structures that contain some information about the workspaces in the account.
DeleteWorkspaceApiKeyResponse:
type: object
required:
- keyName
- workspaceId
properties:
keyName:
allOf:
- $ref: '#/components/schemas/ApiKeyName'
- description: The name of the key that was deleted.
workspaceId:
allOf:
- $ref: '#/components/schemas/WorkspaceId'
- description: The ID of the workspace where the key was deleted.
TagValue:
type: string
minLength: 0
maxLength: 256
OrganizationalUnitList:
type: array
items:
$ref: '#/components/schemas/OrganizationalUnit'
AllowedOrganization:
type: string
minLength: 1
maxLength: 256
SamlAuthentication:
type: object
required:
- status
properties:
configuration:
allOf:
- $ref: '#/components/schemas/SamlConfiguration'
- description: 'A structure containing details about how this workspace works with SAML. '
status:
allOf:
- $ref: '#/components/schemas/SamlConfigurationStatus'
- description: Specifies whether the workspace's SAML configuration is complete.
description: 'A structure containing information about how this workspace works with SAML. '
ConflictException: {}
PrefixListIds:
type: array
items:
$ref: '#/components/schemas/PrefixListId'
WorkspaceSummary:
type: object
required:
- authentication
- created
- endpoint
- grafanaVersion
- id
- modified
- status
properties:
authentication:
allOf:
- $ref: '#/components/schemas/AuthenticationSummary'
- description: A structure containing information about the authentication methods used in the workspace.
created:
allOf:
- $ref: '#/components/schemas/Timestamp'
- description: The date that the workspace was created.
description:
allOf:
- $ref: '#/components/schemas/Description'
- description: The customer-entered description of the workspace.
endpoint:
allOf:
- $ref: '#/components/schemas/Endpoint'
- description: The URL endpoint to use to access the Grafana console in the workspace.
grafanaVersion:
allOf:
- $ref: '#/components/schemas/GrafanaVersion'
- description: The Grafana version that the workspace is running.
id:
allOf:
- $ref: '#/components/schemas/WorkspaceId'
- description: The unique ID of the workspace.
modified:
allOf:
- $ref: '#/components/schemas/Timestamp'
- description: The most recent date that the workspace was modified.
name:
allOf:
- $ref: '#/components/schemas/WorkspaceName'
- description: The name of the workspace.
notificationDestinations:
allOf:
- $ref: '#/components/schemas/NotificationDestinationsList'
- description: The Amazon Web Services notification channels that Amazon Managed Grafana can automatically create IAM roles and permissions for, which allows Amazon Managed Grafana to use these channels.
status:
allOf:
- $ref: '#/components/schemas/WorkspaceStatus'
- description: The current status of the workspace.
tags:
allOf:
- $ref: '#/components/schemas/TagMap'
- description: The list of tags associated with the workspace.
description: A structure that contains some information about one workspace in the account.
ValidationException: {}
DataSourceTypesList:
type: array
items:
$ref: '#/components/schemas/DataSourceType'
ApiKeyToken:
type: string
format: password
VpceId:
type: string
minLength: 1
maxLength: 100
SamlConfiguration:
type: object
required:
- idpMetadata
properties:
allowedOrganizations:
allOf:
- $ref: '#/components/schemas/AllowedOrganizations'
- description: Lists which organizations defined in the SAML assertion are allowed to use the Amazon Managed Grafana workspace. If this is empty, all organizations in the assertion attribute have access.
assertionAttributes:
allOf:
- $ref: '#/components/schemas/AssertionAttributes'
- description: A structure that defines which attributes in the SAML assertion are to be used to define information about the users authenticated by that IdP to use the workspace.
idpMetadata:
allOf:
- $ref: '#/components/schemas/IdpMetadata'
- description: A structure containing the identity provider (IdP) metadata used to integrate the identity provider with this workspace.
loginValidityDuration:
allOf:
- $ref: '#/components/schemas/LoginValidityDuration'
- description: How long a sign-on session by a SAML user is valid, before the user has to sign on again.
roleValues:
allOf:
- $ref: '#/components/schemas/RoleValues'
- description: A structure containing arrays that map group names in the SAML assertion to the Grafana Admin and Editor roles in the workspace.
description: 'A structure containing information about how this workspace works with SAML. '
SSOClientId:
type: string
OrganizationRoleName:
type: string
minLength: 1
maxLength: 2048
format: password
DisassociateLicenseResponse:
type: object
required:
- workspace
properties:
workspace:
allOf:
- $ref: '#/components/schemas/WorkspaceDescription'
- description: A structure containing information about the workspace.
AuthenticationSummary:
type: object
required:
- providers
properties:
providers:
allOf:
- $ref: '#/components/schemas/AuthenticationProviders'
- description: Specifies whether the workspace uses SAML, IAM Identity Center, or both methods for user authentication.
samlConfigurationStatus:
allOf:
- $ref: '#/components/schemas/SamlConfigurationStatus'
- description: Specifies whether the workplace's user authentication method is fully configured.
description: A structure that describes whether the workspace uses SAML, IAM Identity Center, or both methods for user authentication, and whether that authentication is fully configured.
DeleteWorkspaceResponse:
type: object
required:
- workspace
properties:
workspace:
allOf:
- $ref: '#/components/schemas/WorkspaceDescription'
- description: A structure containing information about the workspace that was deleted.
User:
type: object
required:
- id
- type
properties:
id:
allOf:
- $ref: '#/components/schemas/SsoId'
- description: 'The ID of the user or group.
Pattern: ^([0-9a-fA-F]{10}-|)[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}$