grafana

package module
v1.21.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 29, 2024 License: Apache-2.0 Imports: 41 Imported by: 8

Documentation

Overview

Package grafana provides the API client, operations, and parameter types for Amazon Managed Grafana.

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.

Index

Constants

View Source
const ServiceAPIVersion = "2020-08-18"
View Source
const ServiceID = "grafana"

Variables

This section is empty.

Functions

func NewDefaultEndpointResolver

func NewDefaultEndpointResolver() *internalendpoints.Resolver

NewDefaultEndpointResolver constructs a new service endpoint resolver

func WithAPIOptions

func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options)

WithAPIOptions returns a functional option for setting the Client's APIOptions option.

func WithEndpointResolver deprecated

func WithEndpointResolver(v EndpointResolver) func(*Options)

Deprecated: EndpointResolver and WithEndpointResolver. Providing a value for this field will likely prevent you from using any endpoint-related service features released after the introduction of EndpointResolverV2 and BaseEndpoint. To migrate an EndpointResolver implementation that uses a custom endpoint, set the client option BaseEndpoint instead.

func WithEndpointResolverV2 added in v1.15.0

func WithEndpointResolverV2(v EndpointResolverV2) func(*Options)

WithEndpointResolverV2 returns a functional option for setting the Client's EndpointResolverV2 option.

func WithSigV4SigningName added in v1.17.2

func WithSigV4SigningName(name string) func(*Options)

WithSigV4SigningName applies an override to the authentication workflow to use the given signing name for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing name from both auth scheme resolution and endpoint resolution.

func WithSigV4SigningRegion added in v1.17.2

func WithSigV4SigningRegion(region string) func(*Options)

WithSigV4SigningRegion applies an override to the authentication workflow to use the given signing region for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing region from both auth scheme resolution and endpoint resolution.

Types

type AssociateLicenseInput

type AssociateLicenseInput struct {

	// The type of license to associate with the workspace. Amazon Managed Grafana
	// workspaces no longer support Grafana Enterprise free trials.
	//
	// This member is required.
	LicenseType types.LicenseType

	// The ID of the workspace to associate the license with.
	//
	// This member is required.
	WorkspaceId *string

	// A token from Grafana Labs that ties your Amazon Web Services account with a
	// Grafana Labs account. For more information, see Register with Grafana Labs (https://docs.aws.amazon.com/grafana/latest/userguide/upgrade-to-Grafana-Enterprise.html#AMG-workspace-register-enterprise)
	// .
	GrafanaToken *string
	// contains filtered or unexported fields
}

type AssociateLicenseOutput

type AssociateLicenseOutput struct {

	// A structure containing data about the workspace.
	//
	// This member is required.
	Workspace *types.WorkspaceDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type AuthResolverParameters added in v1.17.2

type AuthResolverParameters struct {
	// The name of the operation being invoked.
	Operation string

	// The region in which the operation is being invoked.
	Region string
}

AuthResolverParameters contains the set of inputs necessary for auth scheme resolution.

type AuthSchemeResolver added in v1.17.2

type AuthSchemeResolver interface {
	ResolveAuthSchemes(context.Context, *AuthResolverParameters) ([]*smithyauth.Option, error)
}

AuthSchemeResolver returns a set of possible authentication options for an operation.

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client provides the API client to make operations call for Amazon Managed Grafana.

func New

func New(options Options, optFns ...func(*Options)) *Client

New returns an initialized Client based on the functional options. Provide additional functional options to further configure the behavior of the client, such as changing the client's endpoint or adding custom middleware behavior.

func NewFromConfig

func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client

NewFromConfig returns a new client from the provided config.

func (*Client) AssociateLicense

func (c *Client) AssociateLicense(ctx context.Context, params *AssociateLicenseInput, optFns ...func(*Options)) (*AssociateLicenseOutput, error)

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 (https://docs.aws.amazon.com/grafana/latest/userguide/upgrade-to-Grafana-Enterprise.html) .

func (*Client) CreateWorkspace

func (c *Client) CreateWorkspace(ctx context.Context, params *CreateWorkspaceInput, optFns ...func(*Options)) (*CreateWorkspaceOutput, error)

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 (https://docs.aws.amazon.com/grafana/latest/APIReference/API_UpdateWorkspace.html) .

func (*Client) CreateWorkspaceApiKey added in v1.9.0

func (c *Client) CreateWorkspaceApiKey(ctx context.Context, params *CreateWorkspaceApiKeyInput, optFns ...func(*Options)) (*CreateWorkspaceApiKeyOutput, error)

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 (https://docs.aws.amazon.com/grafana/latest/userguide/Using-Grafana-APIs.html) for available APIs and example requests.

func (*Client) DeleteWorkspace

func (c *Client) DeleteWorkspace(ctx context.Context, params *DeleteWorkspaceInput, optFns ...func(*Options)) (*DeleteWorkspaceOutput, error)

Deletes an Amazon Managed Grafana workspace.

func (*Client) DeleteWorkspaceApiKey added in v1.9.0

func (c *Client) DeleteWorkspaceApiKey(ctx context.Context, params *DeleteWorkspaceApiKeyInput, optFns ...func(*Options)) (*DeleteWorkspaceApiKeyOutput, error)

Deletes a Grafana API key for the workspace.

func (*Client) DescribeWorkspace

func (c *Client) DescribeWorkspace(ctx context.Context, params *DescribeWorkspaceInput, optFns ...func(*Options)) (*DescribeWorkspaceOutput, error)

Displays information about one Amazon Managed Grafana workspace.

func (*Client) DescribeWorkspaceAuthentication

func (c *Client) DescribeWorkspaceAuthentication(ctx context.Context, params *DescribeWorkspaceAuthenticationInput, optFns ...func(*Options)) (*DescribeWorkspaceAuthenticationOutput, error)

Displays information about the authentication methods used in one Amazon Managed Grafana workspace.

func (*Client) DescribeWorkspaceConfiguration added in v1.10.0

func (c *Client) DescribeWorkspaceConfiguration(ctx context.Context, params *DescribeWorkspaceConfigurationInput, optFns ...func(*Options)) (*DescribeWorkspaceConfigurationOutput, error)

Gets the current configuration string for the given workspace.

func (*Client) DisassociateLicense

func (c *Client) DisassociateLicense(ctx context.Context, params *DisassociateLicenseInput, optFns ...func(*Options)) (*DisassociateLicenseOutput, error)

Removes the Grafana Enterprise license from a workspace.

func (*Client) ListPermissions

func (c *Client) ListPermissions(ctx context.Context, params *ListPermissionsInput, optFns ...func(*Options)) (*ListPermissionsOutput, error)

Lists the users and groups who have the Grafana 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 .

func (*Client) ListTagsForResource added in v1.8.0

func (c *Client) ListTagsForResource(ctx context.Context, params *ListTagsForResourceInput, optFns ...func(*Options)) (*ListTagsForResourceOutput, error)

The ListTagsForResource operation returns the tags that are associated with the Amazon Managed Service for Grafana resource specified by the resourceArn . Currently, the only resource that can be tagged is a workspace.

func (*Client) ListVersions added in v1.14.0

func (c *Client) ListVersions(ctx context.Context, params *ListVersionsInput, optFns ...func(*Options)) (*ListVersionsOutput, error)

Lists available versions of Grafana. These are available when calling CreateWorkspace . Optionally, include a workspace to list the versions to which it can be upgraded.

func (*Client) ListWorkspaces

func (c *Client) ListWorkspaces(ctx context.Context, params *ListWorkspacesInput, optFns ...func(*Options)) (*ListWorkspacesOutput, error)

Returns a list of Amazon Managed Grafana workspaces in the account, with some information about each workspace. For more complete information about one workspace, use DescribeWorkspace (https://docs.aws.amazon.com/AAMG/latest/APIReference/API_DescribeWorkspace.html) .

func (*Client) Options added in v1.18.0

func (c *Client) Options() Options

Options returns a copy of the client configuration.

Callers SHOULD NOT perform mutations on any inner structures within client config. Config overrides should instead be made on a per-operation basis through functional options.

func (*Client) TagResource added in v1.8.0

func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error)

The TagResource operation associates tags with an Amazon Managed Grafana resource. Currently, the only resource that can be tagged is workspaces. If you specify a new tag key for the resource, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.

func (*Client) UntagResource added in v1.8.0

func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, optFns ...func(*Options)) (*UntagResourceOutput, error)

The UntagResource operation removes the association of the tag with the Amazon Managed Grafana resource.

func (*Client) UpdatePermissions

func (c *Client) UpdatePermissions(ctx context.Context, params *UpdatePermissionsInput, optFns ...func(*Options)) (*UpdatePermissionsOutput, error)

Updates which users in a workspace have the Grafana Admin or Editor roles.

func (*Client) UpdateWorkspace

func (c *Client) UpdateWorkspace(ctx context.Context, params *UpdateWorkspaceInput, optFns ...func(*Options)) (*UpdateWorkspaceOutput, error)

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 (https://docs.aws.amazon.com/grafana/latest/APIReference/API_UpdateWorkspaceAuthentication.html) . To modify which users in the workspace have the Admin and Editor Grafana roles, use UpdatePermissions (https://docs.aws.amazon.com/grafana/latest/APIReference/API_UpdatePermissions.html) .

func (*Client) UpdateWorkspaceAuthentication

func (c *Client) UpdateWorkspaceAuthentication(ctx context.Context, params *UpdateWorkspaceAuthenticationInput, optFns ...func(*Options)) (*UpdateWorkspaceAuthenticationOutput, error)

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.

func (*Client) UpdateWorkspaceConfiguration added in v1.10.0

func (c *Client) UpdateWorkspaceConfiguration(ctx context.Context, params *UpdateWorkspaceConfigurationInput, optFns ...func(*Options)) (*UpdateWorkspaceConfigurationOutput, error)

Updates the configuration string for the given workspace

type CreateWorkspaceApiKeyInput added in v1.9.0

type CreateWorkspaceApiKeyInput struct {

	// Specifies the name of the key. Keynames must be unique to the workspace.
	//
	// This member is required.
	KeyName *string

	// Specifies the permission level of the key. Valid values: VIEWER | EDITOR | ADMIN
	//
	// This member is required.
	KeyRole *string

	// Specifies the time in seconds until the key expires. Keys can be valid for up
	// to 30 days.
	//
	// This member is required.
	SecondsToLive *int32

	// The ID of the workspace to create an API key.
	//
	// This member is required.
	WorkspaceId *string
	// contains filtered or unexported fields
}

type CreateWorkspaceApiKeyOutput added in v1.9.0

type CreateWorkspaceApiKeyOutput struct {

	// The key token. Use this value as a bearer token to authenticate HTTP requests
	// to the workspace.
	//
	// This member is required.
	Key *string

	// The name of the key that was created.
	//
	// This member is required.
	KeyName *string

	// The ID of the workspace that the key is valid for.
	//
	// This member is required.
	WorkspaceId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateWorkspaceInput

type CreateWorkspaceInput struct {

	// 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.
	//
	// This member is required.
	AccountAccessType types.AccountAccessType

	// Specifies whether this workspace uses SAML 2.0, IAM Identity Center, or both to
	// authenticate users for using the Grafana console within a workspace. For more
	// information, see User authentication in Amazon Managed Grafana (https://docs.aws.amazon.com/grafana/latest/userguide/authentication-in-AMG.html)
	// .
	//
	// This member is required.
	AuthenticationProviders []types.AuthenticationProviderTypes

	// 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 (https://docs.aws.amazon.com/grafana/latest/userguide/AMG-manage-permissions.html)
	// .
	//
	// This member is required.
	PermissionType types.PermissionType

	// A unique, case-sensitive, user-provided identifier to ensure the idempotency of
	// the request.
	ClientToken *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 (https://docs.aws.amazon.com/grafana/latest/userguide/AMG-configure-workspace.html)
	// .
	//
	// This value conforms to the media type: application/json
	Configuration *string

	// Specifies the version of Grafana to support in the new workspace. If not
	// specified, defaults to the latest version (for example, 9.4). To get a list of
	// supported versions, use the ListVersions operation.
	GrafanaVersion *string

	// 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.
	NetworkAccessControl *types.NetworkAccessConfiguration

	// 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.
	OrganizationRoleName *string

	// The name of the CloudFormation stack set to use to generate IAM roles to be
	// used for this workspace.
	StackSetName *string

	// The list of tags associated with the workspace.
	Tags map[string]string

	// The configuration settings for an Amazon VPC that contains data sources for
	// your Grafana workspace to connect to. Connecting to a private VPC is not yet
	// available in the Asia Pacific (Seoul) Region (ap-northeast-2).
	VpcConfiguration *types.VpcConfiguration

	// This parameter is for internal use only, and should not be used.
	WorkspaceDataSources []types.DataSourceType

	// 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}$
	WorkspaceDescription *string

	// The name for the workspace. It does not have to be unique.
	WorkspaceName *string

	// 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.
	WorkspaceNotificationDestinations []types.NotificationDestinationType

	// 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.
	WorkspaceOrganizationalUnits []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.
	WorkspaceRoleArn *string
	// contains filtered or unexported fields
}

type CreateWorkspaceOutput

type CreateWorkspaceOutput struct {

	// A structure containing data about the workspace that was created.
	//
	// This member is required.
	Workspace *types.WorkspaceDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteWorkspaceApiKeyInput added in v1.9.0

type DeleteWorkspaceApiKeyInput struct {

	// The name of the API key to delete.
	//
	// This member is required.
	KeyName *string

	// The ID of the workspace to delete.
	//
	// This member is required.
	WorkspaceId *string
	// contains filtered or unexported fields
}

type DeleteWorkspaceApiKeyOutput added in v1.9.0

type DeleteWorkspaceApiKeyOutput struct {

	// The name of the key that was deleted.
	//
	// This member is required.
	KeyName *string

	// The ID of the workspace where the key was deleted.
	//
	// This member is required.
	WorkspaceId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteWorkspaceInput

type DeleteWorkspaceInput struct {

	// The ID of the workspace to delete.
	//
	// This member is required.
	WorkspaceId *string
	// contains filtered or unexported fields
}

type DeleteWorkspaceOutput

type DeleteWorkspaceOutput struct {

	// A structure containing information about the workspace that was deleted.
	//
	// This member is required.
	Workspace *types.WorkspaceDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeWorkspaceAuthenticationInput

type DescribeWorkspaceAuthenticationInput struct {

	// The ID of the workspace to return authentication information about.
	//
	// This member is required.
	WorkspaceId *string
	// contains filtered or unexported fields
}

type DescribeWorkspaceAuthenticationOutput

type DescribeWorkspaceAuthenticationOutput struct {

	// A structure containing information about the authentication methods used in the
	// workspace.
	//
	// This member is required.
	Authentication *types.AuthenticationDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeWorkspaceConfigurationInput added in v1.10.0

type DescribeWorkspaceConfigurationInput struct {

	// The ID of the workspace to get configuration information for.
	//
	// This member is required.
	WorkspaceId *string
	// contains filtered or unexported fields
}

type DescribeWorkspaceConfigurationOutput added in v1.10.0

type DescribeWorkspaceConfigurationOutput struct {

	// The configuration string for the workspace that you requested. For more
	// information about the format and configuration options available, see Working
	// in your Grafana workspace (https://docs.aws.amazon.com/grafana/latest/userguide/AMG-configure-workspace.html)
	// .
	//
	// This value conforms to the media type: application/json
	//
	// This member is required.
	Configuration *string

	// The supported Grafana version for the workspace.
	GrafanaVersion *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeWorkspaceInput

type DescribeWorkspaceInput struct {

	// The ID of the workspace to display information about.
	//
	// This member is required.
	WorkspaceId *string
	// contains filtered or unexported fields
}

type DescribeWorkspaceOutput

type DescribeWorkspaceOutput struct {

	// A structure containing information about the workspace.
	//
	// This member is required.
	Workspace *types.WorkspaceDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DisassociateLicenseInput

type DisassociateLicenseInput struct {

	// The type of license to remove from the workspace.
	//
	// This member is required.
	LicenseType types.LicenseType

	// The ID of the workspace to remove the Grafana Enterprise license from.
	//
	// This member is required.
	WorkspaceId *string
	// contains filtered or unexported fields
}

type DisassociateLicenseOutput

type DisassociateLicenseOutput struct {

	// A structure containing information about the workspace.
	//
	// This member is required.
	Workspace *types.WorkspaceDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type EndpointParameters added in v1.15.0

type EndpointParameters struct {
	// The AWS region used to dispatch the request.
	//
	// Parameter is
	// required.
	//
	// AWS::Region
	Region *string

	// When true, use the dual-stack endpoint. If the configured endpoint does not
	// support dual-stack, dispatching the request MAY return an error.
	//
	// Defaults to
	// false if no value is provided.
	//
	// AWS::UseDualStack
	UseDualStack *bool

	// When true, send this request to the FIPS-compliant regional endpoint. If the
	// configured endpoint does not have a FIPS compliant endpoint, dispatching the
	// request will return an error.
	//
	// Defaults to false if no value is
	// provided.
	//
	// AWS::UseFIPS
	UseFIPS *bool

	// Override the endpoint used to send this request
	//
	// Parameter is
	// required.
	//
	// SDK::Endpoint
	Endpoint *string
}

EndpointParameters provides the parameters that influence how endpoints are resolved.

func (EndpointParameters) ValidateRequired added in v1.15.0

func (p EndpointParameters) ValidateRequired() error

ValidateRequired validates required parameters are set.

func (EndpointParameters) WithDefaults added in v1.15.0

func (p EndpointParameters) WithDefaults() EndpointParameters

WithDefaults returns a shallow copy of EndpointParameterswith default values applied to members where applicable.

type EndpointResolver

type EndpointResolver interface {
	ResolveEndpoint(region string, options EndpointResolverOptions) (aws.Endpoint, error)
}

EndpointResolver interface for resolving service endpoints.

func EndpointResolverFromURL

func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver

EndpointResolverFromURL returns an EndpointResolver configured using the provided endpoint url. By default, the resolved endpoint resolver uses the client region as signing region, and the endpoint source is set to EndpointSourceCustom.You can provide functional options to configure endpoint values for the resolved endpoint.

type EndpointResolverFunc

type EndpointResolverFunc func(region string, options EndpointResolverOptions) (aws.Endpoint, error)

EndpointResolverFunc is a helper utility that wraps a function so it satisfies the EndpointResolver interface. This is useful when you want to add additional endpoint resolving logic, or stub out specific endpoints with custom values.

func (EndpointResolverFunc) ResolveEndpoint

func (fn EndpointResolverFunc) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error)

type EndpointResolverOptions

type EndpointResolverOptions = internalendpoints.Options

EndpointResolverOptions is the service endpoint resolver options

type EndpointResolverV2 added in v1.15.0

type EndpointResolverV2 interface {
	// ResolveEndpoint attempts to resolve the endpoint with the provided options,
	// returning the endpoint if found. Otherwise an error is returned.
	ResolveEndpoint(ctx context.Context, params EndpointParameters) (
		smithyendpoints.Endpoint, error,
	)
}

EndpointResolverV2 provides the interface for resolving service endpoints.

func NewDefaultEndpointResolverV2 added in v1.15.0

func NewDefaultEndpointResolverV2() EndpointResolverV2

type HTTPClient

type HTTPClient interface {
	Do(*http.Request) (*http.Response, error)
}

type HTTPSignerV4

type HTTPSignerV4 interface {
	SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time, optFns ...func(*v4.SignerOptions)) error
}

type IdempotencyTokenProvider added in v1.2.3

type IdempotencyTokenProvider interface {
	GetIdempotencyToken() (string, error)
}

IdempotencyTokenProvider interface for providing idempotency token

type ListPermissionsAPIClient

type ListPermissionsAPIClient interface {
	ListPermissions(context.Context, *ListPermissionsInput, ...func(*Options)) (*ListPermissionsOutput, error)
}

ListPermissionsAPIClient is a client that implements the ListPermissions operation.

type ListPermissionsInput

type ListPermissionsInput struct {

	// The ID of the workspace to list permissions for. This parameter is required.
	//
	// This member is required.
	WorkspaceId *string

	// (Optional) Limits the results to only the group that matches this ID.
	GroupId *string

	// The maximum number of results to include in the response.
	MaxResults *int32

	// The token to use when requesting the next set of results. You received this
	// token from a previous ListPermissions operation.
	NextToken *string

	// (Optional) Limits the results to only the user that matches this ID.
	UserId *string

	// (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.
	UserType types.UserType
	// contains filtered or unexported fields
}

type ListPermissionsOutput

type ListPermissionsOutput struct {

	// The permissions returned by the operation.
	//
	// This member is required.
	Permissions []types.PermissionEntry

	// The token to use in a subsequent ListPermissions operation to return the next
	// set of results.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListPermissionsPaginator

type ListPermissionsPaginator struct {
	// contains filtered or unexported fields
}

ListPermissionsPaginator is a paginator for ListPermissions

func NewListPermissionsPaginator

func NewListPermissionsPaginator(client ListPermissionsAPIClient, params *ListPermissionsInput, optFns ...func(*ListPermissionsPaginatorOptions)) *ListPermissionsPaginator

NewListPermissionsPaginator returns a new ListPermissionsPaginator

func (*ListPermissionsPaginator) HasMorePages

func (p *ListPermissionsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*ListPermissionsPaginator) NextPage

func (p *ListPermissionsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListPermissionsOutput, error)

NextPage retrieves the next ListPermissions page.

type ListPermissionsPaginatorOptions

type ListPermissionsPaginatorOptions struct {
	// The maximum number of results to include in the response.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

ListPermissionsPaginatorOptions is the paginator options for ListPermissions

type ListTagsForResourceInput added in v1.8.0

type ListTagsForResourceInput struct {

	// The ARN of the resource the list of tags are associated with.
	//
	// This member is required.
	ResourceArn *string
	// contains filtered or unexported fields
}

type ListTagsForResourceOutput added in v1.8.0

type ListTagsForResourceOutput struct {

	// The list of tags that are associated with the resource.
	Tags map[string]string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListVersionsAPIClient added in v1.14.0

type ListVersionsAPIClient interface {
	ListVersions(context.Context, *ListVersionsInput, ...func(*Options)) (*ListVersionsOutput, error)
}

ListVersionsAPIClient is a client that implements the ListVersions operation.

type ListVersionsInput added in v1.14.0

type ListVersionsInput struct {

	// The maximum number of results to include in the response.
	MaxResults *int32

	// The token to use when requesting the next set of results. You receive this
	// token from a previous ListVersions operation.
	NextToken *string

	// The ID of the workspace to list the available upgrade versions. If not
	// included, lists all versions of Grafana that are supported for CreateWorkspace .
	WorkspaceId *string
	// contains filtered or unexported fields
}

type ListVersionsOutput added in v1.14.0

type ListVersionsOutput struct {

	// The Grafana versions available to create. If a workspace ID is included in the
	// request, the Grafana versions to which this workspace can be upgraded.
	GrafanaVersions []string

	// The token to use in a subsequent ListVersions operation to return the next set
	// of results.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListVersionsPaginator added in v1.14.0

type ListVersionsPaginator struct {
	// contains filtered or unexported fields
}

ListVersionsPaginator is a paginator for ListVersions

func NewListVersionsPaginator added in v1.14.0

func NewListVersionsPaginator(client ListVersionsAPIClient, params *ListVersionsInput, optFns ...func(*ListVersionsPaginatorOptions)) *ListVersionsPaginator

NewListVersionsPaginator returns a new ListVersionsPaginator

func (*ListVersionsPaginator) HasMorePages added in v1.14.0

func (p *ListVersionsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*ListVersionsPaginator) NextPage added in v1.14.0

func (p *ListVersionsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListVersionsOutput, error)

NextPage retrieves the next ListVersions page.

type ListVersionsPaginatorOptions added in v1.14.0

type ListVersionsPaginatorOptions struct {
	// The maximum number of results to include in the response.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

ListVersionsPaginatorOptions is the paginator options for ListVersions

type ListWorkspacesAPIClient

type ListWorkspacesAPIClient interface {
	ListWorkspaces(context.Context, *ListWorkspacesInput, ...func(*Options)) (*ListWorkspacesOutput, error)
}

ListWorkspacesAPIClient is a client that implements the ListWorkspaces operation.

type ListWorkspacesInput

type ListWorkspacesInput struct {

	// The maximum number of workspaces to include in the results.
	MaxResults *int32

	// The token for the next set of workspaces to return. (You receive this token
	// from a previous ListWorkspaces operation.)
	NextToken *string
	// contains filtered or unexported fields
}

type ListWorkspacesOutput

type ListWorkspacesOutput struct {

	// An array of structures that contain some information about the workspaces in
	// the account.
	//
	// This member is required.
	Workspaces []types.WorkspaceSummary

	// The token to use when requesting the next set of workspaces.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListWorkspacesPaginator

type ListWorkspacesPaginator struct {
	// contains filtered or unexported fields
}

ListWorkspacesPaginator is a paginator for ListWorkspaces

func NewListWorkspacesPaginator

func NewListWorkspacesPaginator(client ListWorkspacesAPIClient, params *ListWorkspacesInput, optFns ...func(*ListWorkspacesPaginatorOptions)) *ListWorkspacesPaginator

NewListWorkspacesPaginator returns a new ListWorkspacesPaginator

func (*ListWorkspacesPaginator) HasMorePages

func (p *ListWorkspacesPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*ListWorkspacesPaginator) NextPage

func (p *ListWorkspacesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListWorkspacesOutput, error)

NextPage retrieves the next ListWorkspaces page.

type ListWorkspacesPaginatorOptions

type ListWorkspacesPaginatorOptions struct {
	// The maximum number of workspaces to include in the results.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

ListWorkspacesPaginatorOptions is the paginator options for ListWorkspaces

type Options

type Options struct {
	// Set of options to modify how an operation is invoked. These apply to all
	// operations invoked for this client. Use functional options on operation call to
	// modify this list for per operation behavior.
	APIOptions []func(*middleware.Stack) error

	// The optional application specific identifier appended to the User-Agent header.
	AppID string

	// This endpoint will be given as input to an EndpointResolverV2. It is used for
	// providing a custom base endpoint that is subject to modifications by the
	// processing EndpointResolverV2.
	BaseEndpoint *string

	// Configures the events that will be sent to the configured logger.
	ClientLogMode aws.ClientLogMode

	// The credentials object to use when signing requests.
	Credentials aws.CredentialsProvider

	// The configuration DefaultsMode that the SDK should use when constructing the
	// clients initial default settings.
	DefaultsMode aws.DefaultsMode

	// The endpoint options to be used when attempting to resolve an endpoint.
	EndpointOptions EndpointResolverOptions

	// The service endpoint resolver.
	//
	// Deprecated: Deprecated: EndpointResolver and WithEndpointResolver. Providing a
	// value for this field will likely prevent you from using any endpoint-related
	// service features released after the introduction of EndpointResolverV2 and
	// BaseEndpoint. To migrate an EndpointResolver implementation that uses a custom
	// endpoint, set the client option BaseEndpoint instead.
	EndpointResolver EndpointResolver

	// Resolves the endpoint used for a particular service operation. This should be
	// used over the deprecated EndpointResolver.
	EndpointResolverV2 EndpointResolverV2

	// Signature Version 4 (SigV4) Signer
	HTTPSignerV4 HTTPSignerV4

	// Provides idempotency tokens values that will be automatically populated into
	// idempotent API operations.
	IdempotencyTokenProvider IdempotencyTokenProvider

	// The logger writer interface to write logging messages to.
	Logger logging.Logger

	// The region to send requests to. (Required)
	Region string

	// RetryMaxAttempts specifies the maximum number attempts an API client will call
	// an operation that fails with a retryable error. A value of 0 is ignored, and
	// will not be used to configure the API client created default retryer, or modify
	// per operation call's retry max attempts. If specified in an operation call's
	// functional options with a value that is different than the constructed client's
	// Options, the Client's Retryer will be wrapped to use the operation's specific
	// RetryMaxAttempts value.
	RetryMaxAttempts int

	// RetryMode specifies the retry mode the API client will be created with, if
	// Retryer option is not also specified. When creating a new API Clients this
	// member will only be used if the Retryer Options member is nil. This value will
	// be ignored if Retryer is not nil. Currently does not support per operation call
	// overrides, may in the future.
	RetryMode aws.RetryMode

	// Retryer guides how HTTP requests should be retried in case of recoverable
	// failures. When nil the API client will use a default retryer. The kind of
	// default retry created by the API client can be changed with the RetryMode
	// option.
	Retryer aws.Retryer

	// The RuntimeEnvironment configuration, only populated if the DefaultsMode is set
	// to DefaultsModeAuto and is initialized using config.LoadDefaultConfig . You
	// should not populate this structure programmatically, or rely on the values here
	// within your applications.
	RuntimeEnvironment aws.RuntimeEnvironment

	// The HTTP client to invoke API calls with. Defaults to client's default HTTP
	// implementation if nil.
	HTTPClient HTTPClient

	// The auth scheme resolver which determines how to authenticate for each
	// operation.
	AuthSchemeResolver AuthSchemeResolver

	// The list of auth schemes supported by the client.
	AuthSchemes []smithyhttp.AuthScheme
	// contains filtered or unexported fields
}

func (Options) Copy

func (o Options) Copy() Options

Copy creates a clone where the APIOptions list is deep copied.

func (Options) GetIdentityResolver added in v1.17.2

func (o Options) GetIdentityResolver(schemeID string) smithyauth.IdentityResolver

type ResolveEndpoint

type ResolveEndpoint struct {
	Resolver EndpointResolver
	Options  EndpointResolverOptions
}

func (*ResolveEndpoint) HandleSerialize

func (*ResolveEndpoint) ID

func (*ResolveEndpoint) ID() string

type TagResourceInput added in v1.8.0

type TagResourceInput struct {

	// The ARN of the resource the tag is associated with.
	//
	// This member is required.
	ResourceArn *string

	// The list of tag keys and values to associate with the resource. You can
	// associate tag keys only, tags (key and values) only or a combination of tag keys
	// and tags.
	//
	// This member is required.
	Tags map[string]string
	// contains filtered or unexported fields
}

type TagResourceOutput added in v1.8.0

type TagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UntagResourceInput added in v1.8.0

type UntagResourceInput struct {

	// The ARN of the resource the tag association is removed from.
	//
	// This member is required.
	ResourceArn *string

	// The key values of the tag to be removed from the resource.
	//
	// This member is required.
	TagKeys []string
	// contains filtered or unexported fields
}

type UntagResourceOutput added in v1.8.0

type UntagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdatePermissionsInput

type UpdatePermissionsInput struct {

	// An array of structures that contain the permission updates to make.
	//
	// This member is required.
	UpdateInstructionBatch []types.UpdateInstruction

	// The ID of the workspace to update.
	//
	// This member is required.
	WorkspaceId *string
	// contains filtered or unexported fields
}

type UpdatePermissionsOutput

type UpdatePermissionsOutput struct {

	// An array of structures that contain the errors from the operation, if any.
	//
	// This member is required.
	Errors []types.UpdateError

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateWorkspaceAuthenticationInput

type UpdateWorkspaceAuthenticationInput struct {

	// Specifies whether this workspace uses SAML 2.0, IAM Identity Center, or both to
	// authenticate users for using the Grafana console within a workspace. For more
	// information, see User authentication in Amazon Managed Grafana (https://docs.aws.amazon.com/grafana/latest/userguide/authentication-in-AMG.html)
	// .
	//
	// This member is required.
	AuthenticationProviders []types.AuthenticationProviderTypes

	// The ID of the workspace to update the authentication for.
	//
	// This member is required.
	WorkspaceId *string

	// If the workspace uses SAML, use this structure to 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.
	SamlConfiguration *types.SamlConfiguration
	// contains filtered or unexported fields
}

type UpdateWorkspaceAuthenticationOutput

type UpdateWorkspaceAuthenticationOutput struct {

	// A structure that describes the user authentication for this workspace after the
	// update is made.
	//
	// This member is required.
	Authentication *types.AuthenticationDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateWorkspaceConfigurationInput added in v1.10.0

type UpdateWorkspaceConfigurationInput struct {

	// The new configuration string for the workspace. For more information about the
	// format and configuration options available, see Working in your Grafana
	// workspace (https://docs.aws.amazon.com/grafana/latest/userguide/AMG-configure-workspace.html)
	// .
	//
	// This value conforms to the media type: application/json
	//
	// This member is required.
	Configuration *string

	// The ID of the workspace to update.
	//
	// This member is required.
	WorkspaceId *string

	// Specifies the version of Grafana to support in the workspace. If not specified,
	// keeps the current version of the 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 (https://docs.aws.amazon.com/grafana/latest/APIReference/API_ListVersions.html)
	// operation.
	GrafanaVersion *string
	// contains filtered or unexported fields
}

type UpdateWorkspaceConfigurationOutput added in v1.10.0

type UpdateWorkspaceConfigurationOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateWorkspaceInput

type UpdateWorkspaceInput struct {

	// The ID of the workspace to update.
	//
	// This member is required.
	WorkspaceId *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 you specify
	// ORGANIZATION , you must specify which organizational units the workspace can
	// access in the workspaceOrganizationalUnits parameter.
	AccountAccessType types.AccountAccessType

	// The configuration settings 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.
	NetworkAccessControl *types.NetworkAccessConfiguration

	// The name of an IAM role that already exists to use to access resources through
	// Organizations. This can only be used with a workspace that has the
	// permissionType set to CUSTOMER_MANAGED .
	OrganizationRoleName *string

	// 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 (https://docs.aws.amazon.com/grafana/latest/userguide/AMG-manage-permissions.html)
	// 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 (https://docs.aws.amazon.com/grafana/latest/userguide/AMG-datasource-and-notification.html)
	// .
	PermissionType types.PermissionType

	// 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.
	RemoveNetworkAccessConfiguration *bool

	// Whether to remove the VPC configuration from the workspace. Setting this to true
	// and providing a vpcConfiguration to set will return an error.
	RemoveVpcConfiguration *bool

	// The name of the CloudFormation stack set to use to generate IAM roles to be
	// used for this workspace.
	StackSetName *string

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

	// This parameter is for internal use only, and should not be used.
	WorkspaceDataSources []types.DataSourceType

	// A description for the workspace. This is used only to help you identify this
	// workspace.
	WorkspaceDescription *string

	// A new name for the workspace to update.
	WorkspaceName *string

	// 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.
	WorkspaceNotificationDestinations []types.NotificationDestinationType

	// 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.
	WorkspaceOrganizationalUnits []string

	// Specifies an IAM role that grants permissions to Amazon Web Services resources
	// that the workspace accesses, such as data sources and notification channels. If
	// this workspace has permissionType CUSTOMER_MANAGED , then this role is required.
	WorkspaceRoleArn *string
	// contains filtered or unexported fields
}

type UpdateWorkspaceOutput

type UpdateWorkspaceOutput struct {

	// A structure containing data about the workspace that was created.
	//
	// This member is required.
	Workspace *types.WorkspaceDescription

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL