create_workspace

create_workspace(**kwargs)

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.

See also: AWS API Documentation

Request Syntax

response = client.create_workspace(
    accountAccessType='CURRENT_ACCOUNT'|'ORGANIZATION',
    authenticationProviders=[
        'AWS_SSO'|'SAML',
    ],
    clientToken='string',
    configuration='string',
    networkAccessControl={
        'prefixListIds': [
            'string',
        ],
        'vpceIds': [
            'string',
        ]
    },
    organizationRoleName='string',
    permissionType='CUSTOMER_MANAGED'|'SERVICE_MANAGED',
    stackSetName='string',
    tags={
        'string': 'string'
    },
    vpcConfiguration={
        'securityGroupIds': [
            'string',
        ],
        'subnetIds': [
            'string',
        ]
    },
    workspaceDataSources=[
        'AMAZON_OPENSEARCH_SERVICE'|'CLOUDWATCH'|'PROMETHEUS'|'XRAY'|'TIMESTREAM'|'SITEWISE'|'ATHENA'|'REDSHIFT'|'TWINMAKER',
    ],
    workspaceDescription='string',
    workspaceName='string',
    workspaceNotificationDestinations=[
        'SNS',
    ],
    workspaceOrganizationalUnits=[
        'string',
    ],
    workspaceRoleArn='string'
)
Parameters
  • accountAccessType (string) --

    [REQUIRED]

    Specifies whether the workspace can access Amazon Web Services resources in this Amazon Web Services account only, or whether it can also access Amazon Web Services resources in other accounts in the same organization. If you specify ORGANIZATION , you must specify which organizational units the workspace can access in the workspaceOrganizationalUnits parameter.

  • authenticationProviders (list) --

    [REQUIRED]

    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.

    • (string) --
  • clientToken (string) --

    A unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

    This field is autopopulated if not provided.

  • configuration (string) -- 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.
  • networkAccessControl (dict) --

    Configuration for 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 will still be required.

    If this is not configured, or is removed, then all IP addresses and VPC endpoints will be allowed. Standard Grafana authentication and authorization will still be required.

    • prefixListIds (list) -- [REQUIRED]

      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 then no IP addresses will be 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 lists in the Amazon Virtual Private Cloud User Guide .

      • (string) --
    • vpceIds (list) -- [REQUIRED]

      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 will be 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 .

      Note

      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 will be ignored.

      • (string) --
  • organizationRoleName (string) -- The name of an IAM role that already exists to use with Organizations to access Amazon Web Services data sources and notification channels in other accounts in an organization.
  • permissionType (string) --

    [REQUIRED]

    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 .

    Note

    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.

  • stackSetName (string) -- The name of the CloudFormation stack set to use to generate IAM roles to be used for this workspace.
  • tags (dict) --

    The list of tags associated with the workspace.

    • (string) --
      • (string) --
  • vpcConfiguration (dict) --

    The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.

    • securityGroupIds (list) -- [REQUIRED]

      The list of Amazon EC2 security group IDs attached to the Amazon VPC for your Grafana workspace to connect. Duplicates not allowed.

      • (string) --
    • subnetIds (list) -- [REQUIRED]

      The list of Amazon EC2 subnet IDs created in the Amazon VPC for your Grafana workspace to connect. Duplicates not allowed.

      • (string) --
  • workspaceDataSources (list) --

    This parameter is for internal use only, and should not be used.

    • (string) --
  • workspaceDescription (string) --

    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}$

  • workspaceName (string) -- The name for the workspace. It does not have to be unique.
  • workspaceNotificationDestinations (list) --

    Specify the Amazon Web Services notification channels that you plan to use in this workspace. Specifying these data sources here enables Amazon Managed Grafana to create IAM roles and permissions that allow Amazon Managed Grafana to use these channels.

    • (string) --
  • workspaceOrganizationalUnits (list) --

    Specifies the organizational units that this workspace is allowed to use data sources from, if this workspace is in an account that is part of an organization.

    • (string) --
  • workspaceRoleArn (string) -- Specified the IAM role that grants permissions to the Amazon Web Services resources that the workspace will view data from, including both data sources and notification channels. You are responsible for managing the permissions for this role as new data sources or notification channels are added.
Return type

dict

Returns

Response Syntax

{
    'workspace': {
        'accountAccessType': 'CURRENT_ACCOUNT'|'ORGANIZATION',
        'authentication': {
            'providers': [
                'AWS_SSO'|'SAML',
            ],
            'samlConfigurationStatus': 'CONFIGURED'|'NOT_CONFIGURED'
        },
        'created': datetime(2015, 1, 1),
        'dataSources': [
            'AMAZON_OPENSEARCH_SERVICE'|'CLOUDWATCH'|'PROMETHEUS'|'XRAY'|'TIMESTREAM'|'SITEWISE'|'ATHENA'|'REDSHIFT'|'TWINMAKER',
        ],
        'description': 'string',
        'endpoint': 'string',
        'freeTrialConsumed': True|False,
        'freeTrialExpiration': datetime(2015, 1, 1),
        'grafanaVersion': 'string',
        'id': 'string',
        'licenseExpiration': datetime(2015, 1, 1),
        'licenseType': 'ENTERPRISE'|'ENTERPRISE_FREE_TRIAL',
        'modified': datetime(2015, 1, 1),
        'name': 'string',
        'networkAccessControl': {
            'prefixListIds': [
                'string',
            ],
            'vpceIds': [
                'string',
            ]
        },
        'notificationDestinations': [
            'SNS',
        ],
        'organizationRoleName': 'string',
        'organizationalUnits': [
            'string',
        ],
        'permissionType': 'CUSTOMER_MANAGED'|'SERVICE_MANAGED',
        'stackSetName': 'string',
        'status': 'ACTIVE'|'CREATING'|'DELETING'|'FAILED'|'UPDATING'|'UPGRADING'|'DELETION_FAILED'|'CREATION_FAILED'|'UPDATE_FAILED'|'UPGRADE_FAILED'|'LICENSE_REMOVAL_FAILED',
        'tags': {
            'string': 'string'
        },
        'vpcConfiguration': {
            'securityGroupIds': [
                'string',
            ],
            'subnetIds': [
                'string',
            ]
        },
        'workspaceRoleArn': 'string'
    }
}

Response Structure

  • (dict) --

    • workspace (dict) --

      A structure containing data about the workspace that was created.

      • accountAccessType (string) --

        Specifies whether the workspace can access Amazon Web Services resources in this Amazon Web Services account only, or whether it can also access Amazon Web Services resources in other accounts in the same organization. If this is ORGANIZATION , the workspaceOrganizationalUnits parameter specifies which organizational units the workspace can access.

      • authentication (dict) --

        A structure that describes whether the workspace uses SAML, IAM Identity Center, or both methods for user authentication.

        • providers (list) --

          Specifies whether the workspace uses SAML, IAM Identity Center, or both methods for user authentication.

          • (string) --
        • samlConfigurationStatus (string) --

          Specifies whether the workplace's user authentication method is fully configured.

      • created (datetime) --

        The date that the workspace was created.

      • dataSources (list) --

        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 .

        • (string) --
      • description (string) --

        The user-defined description of the workspace.

      • endpoint (string) --

        The URL that users can use to access the Grafana console in the workspace.

      • freeTrialConsumed (boolean) --

        Specifies whether this workspace has already fully used its free trial for Grafana Enterprise.

      • freeTrialExpiration (datetime) --

        If this workspace is currently in the free trial period for Grafana Enterprise, this value specifies when that free trial ends.

      • grafanaVersion (string) --

        The version of Grafana supported in this workspace.

      • id (string) --

        The unique ID of this workspace.

      • licenseExpiration (datetime) --

        If this workspace has a full Grafana Enterprise license, this specifies when the license ends and will need to be renewed.

      • licenseType (string) --

        Specifies whether this workspace has a full Grafana Enterprise license or a free trial license.

      • modified (datetime) --

        The most recent date that the workspace was modified.

      • name (string) --

        The name of the workspace.

      • networkAccessControl (dict) --

        The configuration settings for network access to your workspace.

        • prefixListIds (list) --

          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 then no IP addresses will be 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 lists in the Amazon Virtual Private Cloud User Guide .

          • (string) --
        • vpceIds (list) --

          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 will be 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 .

          Note

          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 will be ignored.

          • (string) --
      • notificationDestinations (list) --

        The Amazon Web Services notification channels that Amazon Managed Grafana can automatically create IAM roles and permissions for, to allow Amazon Managed Grafana to use these channels.

        • (string) --
      • organizationRoleName (string) --

        The name of the IAM role that is used to access resources through Organizations.

      • organizationalUnits (list) --

        Specifies the organizational units that this workspace is allowed to use data sources from, if this workspace is in an account that is part of an organization.

        • (string) --
      • permissionType (string) --

        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 (string) --

        The name of the CloudFormation stack set that is used to generate IAM roles to be used for this workspace.

      • status (string) --

        The current status of the workspace.

      • tags (dict) --

        The list of tags associated with the workspace.

        • (string) --
          • (string) --
      • vpcConfiguration (dict) --

        The configuration for connecting to data sources in a private VPC (Amazon Virtual Private Cloud).

        • securityGroupIds (list) --

          The list of Amazon EC2 security group IDs attached to the Amazon VPC for your Grafana workspace to connect. Duplicates not allowed.

          • (string) --
        • subnetIds (list) --

          The list of Amazon EC2 subnet IDs created in the Amazon VPC for your Grafana workspace to connect. Duplicates not allowed.

          • (string) --
      • workspaceRoleArn (string) --

        The IAM role that grants permissions to the Amazon Web Services resources that the workspace will view data from. This role must already exist.

Exceptions

  • ManagedGrafana.Client.exceptions.ThrottlingException
  • ManagedGrafana.Client.exceptions.ConflictException
  • ManagedGrafana.Client.exceptions.ValidationException
  • ManagedGrafana.Client.exceptions.AccessDeniedException
  • ManagedGrafana.Client.exceptions.InternalServerException
  • ManagedGrafana.Client.exceptions.ServiceQuotaExceededException