quicksight

package
v1.1.4 Latest Latest
Warning

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

Go to latest
Published: Jul 20, 2026 License: MIT Imports: 22 Imported by: 0

README

QuickSight

Parity grade: A · SDK aws-sdk-go-v2/service/quicksight@v1.112.0 · last audited 2026-07-12 (5256fdde)

Coverage

Metric Value
Operations audited 65 (59 ok, 6 partial)
Feature families 19 (19 deferred)
Known gaps 5
Deferred items 19
Resource leaks clean
Known gaps
  • UpdateDataSet never triggers/reports a new SPICE ingestion (IngestionArn/IngestionId always omitted from UpdateDataSetOutput, even when import mode or schema effectively changes) -- omission is safe (no fabrication) but incomplete vs real AWS
  • CancelIngestion unconditionally sets IngestionStatus=CANCELLED regardless of current status; real AWS behavior for cancelling an already-terminal ingestion is unverified from SDK doc comments alone
  • DeleteGroup does not clean up groupMembers rows for that group (same class of bug as the DeleteUser ghost-membership issue fixed this pass, but on the group side) -- ListGroupMemberships on a same-named recreated group would resurface stale members
  • TagResource/UntagResource/ListTagsForResource accept any ARN string with no existence check against real backend resources; real AWS returns ResourceNotFoundException for unknown resource ARNs
  • Large swaths of the surface (see families: deferred above) were not audited this pass -- scope was capped to the highest-traffic families named in the audit brief (DataSet, DataSource, Dashboard, Analysis, User/Group, Ingestion, Tags)
Deferred
  • Folder
  • Template
  • Theme
  • Topic
  • VPCConnection
  • …and 14 more — see PARITY.md

More

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrNamespaceNotFound is returned when a namespace does not exist.
	ErrNamespaceNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrNamespaceAlreadyExists is returned when a namespace already exists.
	ErrNamespaceAlreadyExists = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrGroupNotFound is returned when a group does not exist.
	ErrGroupNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrGroupAlreadyExists is returned when a group already exists.
	ErrGroupAlreadyExists = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrGroupMemberNotFound is returned when a group member does not exist.
	ErrGroupMemberNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrGroupMemberAlreadyExists is returned when a group member already exists.
	ErrGroupMemberAlreadyExists = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrUserNotFound is returned when a user does not exist.
	ErrUserNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrUserAlreadyExists is returned when a user already exists.
	ErrUserAlreadyExists = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrDataSourceNotFound is returned when a data source does not exist.
	ErrDataSourceNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrDataSourceAlreadyExists is returned when a data source already exists.
	ErrDataSourceAlreadyExists = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrDataSetNotFound is returned when a dataset does not exist.
	ErrDataSetNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrDataSetAlreadyExists is returned when a dataset already exists.
	ErrDataSetAlreadyExists = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrIngestionNotFound is returned when an ingestion does not exist.
	ErrIngestionNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrIngestionAlreadyExists is returned when an ingestion already exists.
	ErrIngestionAlreadyExists = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrDashboardNotFound is returned when a dashboard does not exist.
	ErrDashboardNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrDashboardAlreadyExists is returned when a dashboard already exists.
	ErrDashboardAlreadyExists = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrAnalysisNotFound is returned when an analysis does not exist.
	ErrAnalysisNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrAnalysisAlreadyExists is returned when an analysis already exists.
	ErrAnalysisAlreadyExists = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrFolderNotFound is returned when a folder does not exist.
	ErrFolderNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrFolderAlreadyExists is returned when a folder already exists.
	ErrFolderAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrFolderMemberNotFound is returned when a folder membership does not exist.
	ErrFolderMemberNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrTemplateNotFound is returned when a template (or template version) does not exist.
	ErrTemplateNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrTemplateAlreadyExists is returned when a template already exists.
	ErrTemplateAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrTemplateAliasNotFound is returned when a template alias does not exist.
	ErrTemplateAliasNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrTemplateAliasAlreadyExists is returned when a template alias already exists.
	ErrTemplateAliasAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrThemeNotFound is returned when a theme (or theme version) does not exist.
	ErrThemeNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrThemeAlreadyExists is returned when a theme already exists.
	ErrThemeAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrThemeAliasNotFound is returned when a theme alias does not exist.
	ErrThemeAliasNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrThemeAliasAlreadyExists is returned when a theme alias already exists.
	ErrThemeAliasAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrTopicNotFound is returned when a topic does not exist.
	ErrTopicNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrTopicAlreadyExists is returned when a topic already exists.
	ErrTopicAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrTopicRefreshScheduleNotFound is returned when a topic refresh schedule does not exist.
	ErrTopicRefreshScheduleNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrTopicRefreshScheduleAlreadyExists is returned when a topic refresh schedule already exists.
	ErrTopicRefreshScheduleAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrVPCConnectionNotFound is returned when a VPC connection does not exist.
	ErrVPCConnectionNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrVPCConnectionAlreadyExists is returned when a VPC connection already exists.
	ErrVPCConnectionAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrIAMPolicyAssignmentNotFound is returned when an IAM policy assignment does not exist.
	ErrIAMPolicyAssignmentNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrIAMPolicyAssignmentAlreadyExists is returned when an IAM policy assignment already exists.
	ErrIAMPolicyAssignmentAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrAccountSubscriptionNotFound is returned when an account has no QuickSight subscription.
	ErrAccountSubscriptionNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrAccountSubscriptionAlreadyExists is returned when an account is already subscribed.
	ErrAccountSubscriptionAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrAccountCustomizationNotFound is returned when an account (or namespace) customization
	// does not exist.
	ErrAccountCustomizationNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrAccountCustomizationAlreadyExists is returned when an account (or namespace)
	// customization already exists.
	ErrAccountCustomizationAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrAccountCustomPermissionNotFound is returned when an account has no custom
	// permissions profile applied.
	ErrAccountCustomPermissionNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrDefaultQBusinessApplicationNotFound is returned when no default Q Business
	// application is configured for an account.
	ErrDefaultQBusinessApplicationNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrBrandNotFound is returned when a brand does not exist.
	ErrBrandNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrBrandAlreadyExists is returned when a brand already exists.
	ErrBrandAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrBrandVersionNotFound is returned when a brand version does not exist.
	ErrBrandVersionNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrBrandInUse is returned when a brand cannot be deleted because it is assigned.
	ErrBrandInUse = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrCustomPermissionsNotFound is returned when a custom permissions profile does
	// not exist.
	ErrCustomPermissionsNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrCustomPermissionsAlreadyExists is returned when a custom permissions profile
	// already exists.
	ErrCustomPermissionsAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrCustomPermissionsInUse is returned when a custom permissions profile cannot
	// be deleted because it is assigned to a role or user.
	ErrCustomPermissionsInUse = awserr.New(errConflictException, awserr.ErrAlreadyExists)
	// ErrRoleCustomPermissionNotFound is returned when a role has no custom
	// permissions assigned.
	ErrRoleCustomPermissionNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrRoleMembershipAlreadyExists is returned when a group is already a member of
	// a role.
	ErrRoleMembershipAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrRoleMembershipNotFound is returned when a group is not a member of a role.
	ErrRoleMembershipNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrUserCustomPermissionNotFound is returned when a user has no custom
	// permissions assigned.
	ErrUserCustomPermissionNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrOAuthClientAppNotFound is returned when an OAuth client application does not
	// exist.
	ErrOAuthClientAppNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrOAuthClientAppAlreadyExists is returned when an OAuth client application
	// already exists.
	ErrOAuthClientAppAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrIdentityPropagationConfigNotFound is returned when an identity propagation
	// configuration does not exist for the given service.
	ErrIdentityPropagationConfigNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrAssetBundleExportJobNotFound is returned when an asset bundle export job does
	// not exist.
	ErrAssetBundleExportJobNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrAssetBundleImportJobNotFound is returned when an asset bundle import job does
	// not exist.
	ErrAssetBundleImportJobNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrDashboardSnapshotJobNotFound is returned when a dashboard snapshot job does
	// not exist.
	ErrDashboardSnapshotJobNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrRefreshScheduleNotFound is returned when a dataset refresh schedule does not
	// exist.
	ErrRefreshScheduleNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrRefreshScheduleAlreadyExists is returned when a dataset refresh schedule
	// already exists.
	ErrRefreshScheduleAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrDataSetRefreshPropertiesNotFound is returned when a dataset has no refresh
	// properties configured.
	ErrDataSetRefreshPropertiesNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrValidation is returned on invalid input.
	ErrValidation = awserr.New(errValidation, awserr.ErrInvalidParameter)
	// ErrUnknownOperation is returned when the requested operation is not implemented.
	ErrUnknownOperation = errors.New("unknown operation")
	// ErrActionConnectorNotFound is returned when an action connector does not exist.
	ErrActionConnectorNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrActionConnectorAlreadyExists is returned when an action connector already exists.
	ErrActionConnectorAlreadyExists = awserr.New(errResourceExists, awserr.ErrAlreadyExists)
	// ErrAutomationJobNotFound is returned when an automation job does not exist.
	ErrAutomationJobNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrFlowNotFound is returned when a flow does not exist.
	ErrFlowNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrDashboardVersionNotFound is returned when a dashboard version does not exist.
	ErrDashboardVersionNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
	// ErrSelfUpgradeRequestNotFound is returned when a self-upgrade request does not exist.
	ErrSelfUpgradeRequestNotFound = awserr.New(errResourceNotFound, awserr.ErrNotFound)
)
View Source
var ErrNilAppContext = errors.New("quicksight: nil app context")

ErrNilAppContext is returned when Init is called with a nil AppContext.

Functions

This section is empty.

Types

type AccountCustomization

type AccountCustomization struct {
	Namespace                         string
	DefaultTheme                      string
	DefaultEmailCustomizationTemplate string
}

AccountCustomization represents a QuickSight account's (or namespace's) branding customization.

type AccountSettings

type AccountSettings struct {
	AccountName                  string
	Edition                      string
	DefaultNamespace             string
	NotificationEmail            string
	PublicSharingEnabled         bool
	TerminationProtectionEnabled bool
}

AccountSettings represents a QuickSight account's account-wide settings.

type AccountSubscription

type AccountSubscription struct {
	AccountName               string
	Edition                   string
	NotificationEmail         string
	AuthenticationType        string
	AccountSubscriptionStatus string
}

AccountSubscription represents a QuickSight account subscription.

type ActionConnector

type ActionConnector struct {
	CreatedTime          time.Time
	LastUpdatedTime      time.Time
	AuthenticationConfig map[string]any
	ActionConnectorID    string
	Arn                  string
	Name                 string
	Type                 string
	Description          string
	VPCConnectionArn     string
	Status               string
	Permissions          []ResourcePermission
}

ActionConnector represents a QuickSight action connector: a configured integration (Salesforce, Jira, generic HTTP, etc.) that QuickSight agents and automations can invoke to perform actions against an external service.

type Analysis

type Analysis struct {
	CreatedTime     time.Time
	LastUpdatedTime time.Time
	AnalysisID      string
	Arn             string
	Name            string
	Status          string
	Definition      map[string]any
	Permissions     []ResourcePermission
}

Analysis represents a QuickSight analysis. CreatedTime first: non-pointer prefix reduces GC pointer bytes.

type AssetBundleExportJob

type AssetBundleExportJob struct {
	CreatedTime            time.Time
	JobID                  string
	Arn                    string
	Status                 string
	ExportFormat           string
	DownloadURL            string
	ResourceArns           []string
	IncludeAllDependencies bool
}

AssetBundleExportJob represents an asynchronous asset-bundle export job.

type AssetBundleImportJob

type AssetBundleImportJob struct {
	CreatedTime   time.Time
	JobID         string
	Arn           string
	Status        string
	FailureAction string
}

AssetBundleImportJob represents an asynchronous asset-bundle import job.

type AutomationJob

type AutomationJob struct {
	CreatedAt         time.Time
	StartedAt         time.Time
	EndedAt           time.Time
	AutomationGroupID string
	AutomationID      string
	JobID             string
	Arn               string
	Status            string
	InputPayload      string
	OutputPayload     string
}

AutomationJob represents one run of a QuickSight automation (a console-authored workflow scoped to an automation group/automation).

type Brand

type Brand struct {
	CreatedTime        time.Time
	LastUpdatedTime    time.Time
	Definition         map[string]any
	BrandID            string
	Arn                string
	Status             string
	CurrentVersionID   string
	CurrentVersionStat string
	PublishedVersionID string
}

Brand represents a QuickSight brand, a versioned set of visual identity customizations (logo, theme, name) applied to the console/embedded experiences.

type CustomPermissions

type CustomPermissions struct {
	Capabilities map[string]any
	Name         string
	Arn          string
}

CustomPermissions represents a named, reusable set of QuickSight capability overrides that can be attached to roles or users.

type Dashboard

type Dashboard struct {
	CreatedTime            time.Time
	LastUpdatedTime        time.Time
	Definition             map[string]any
	DashboardID            string
	Arn                    string
	Name                   string
	Status                 string
	Permissions            []ResourcePermission
	LinkEntities           []string
	VersionNumber          int64
	PublishedVersionNumber int64
}

Dashboard represents a QuickSight dashboard. CreatedTime first: non-pointer prefix reduces GC pointer bytes.

type DashboardSnapshotJob

type DashboardSnapshotJob struct {
	CreatedTime     time.Time
	LastUpdatedTime time.Time
	SnapshotConfig  map[string]any
	JobID           string
	Arn             string
	DashboardID     string
	Status          string
	S3URI           string
}

DashboardSnapshotJob represents an asynchronous dashboard snapshot ("export to PDF/CSV/Excel") job.

type DashboardVersion

type DashboardVersion struct {
	CreatedTime   time.Time
	Arn           string
	Status        string
	VersionNumber int64
}

DashboardVersion represents a version of a QuickSight dashboard.

type DataSet

type DataSet struct {
	CreatedTime     time.Time
	LastUpdatedTime time.Time
	DataSetID       string
	Arn             string
	Name            string
	ImportMode      string
	Permissions     []ResourcePermission
}

DataSet represents a QuickSight dataset. CreatedTime first: non-pointer prefix reduces GC pointer bytes.

type DataSetRefreshProperties

type DataSetRefreshProperties struct {
	RefreshConfiguration map[string]any
	FailureConfiguration map[string]any
}

DataSetRefreshProperties represents a QuickSight dataset's SPICE refresh configuration (incremental refresh window, failure notifications, etc.).

type DataSource

type DataSource struct {
	CreatedTime     time.Time
	LastUpdatedTime time.Time
	DataSourceID    string
	Arn             string
	Name            string
	Type            string
	Status          string
	Permissions     []ResourcePermission
}

DataSource represents a QuickSight data source. CreatedTime first: non-pointer prefix reduces GC pointer bytes.

type DefaultQBusinessApplication

type DefaultQBusinessApplication struct {
	ApplicationID string
	Namespace     string
}

DefaultQBusinessApplication represents the default Amazon Q Business application linked to a QuickSight account.

type Flow

type Flow struct {
	CreatedTime     time.Time
	LastUpdatedTime time.Time
	LastPublishedAt time.Time
	Description     string
	Arn             string
	Name            string
	FlowID          string
	CreatedBy       string
	LastPublishedBy string
	LastUpdatedBy   string
	PublishState    string
	Permissions     []ResourcePermission
	RunCount        int32
	UserCount       int32
}

Flow represents a QuickSight flow. QuickSight's API exposes no CreateFlow operation (flows are authored via the console/Quick Suite); only list/search/describe/permission operations are available.

type Folder

type Folder struct {
	CreatedTime     time.Time
	LastUpdatedTime time.Time
	FolderID        string
	Arn             string
	Name            string
	FolderType      string
	ParentFolderArn string
	Permissions     []ResourcePermission
}

Folder represents a QuickSight folder. CreatedTime first: non-pointer prefix reduces GC pointer bytes.

type FolderMember

type FolderMember struct {
	MemberID   string
	MemberType string
}

FolderMember represents a QuickSight folder membership (a dashboard, analysis, dataset, or other asset that belongs to a folder).

type FolderSearchFilter

type FolderSearchFilter struct {
	Operator string
	Name     string
	Value    string
}

FolderSearchFilter represents a single SearchFolders filter criterion.

type Group

type Group struct {
	GroupName   string
	Arn         string
	Description string
	Namespace   string
	PrincipalID string
}

Group represents a QuickSight group.

type GroupMember

type GroupMember struct {
	MemberName string
	Arn        string
}

GroupMember represents a QuickSight group member.

type Handler

type Handler struct {
	Backend StorageBackend
	// contains filtered or unexported fields
}

Handler is the Echo HTTP handler for QuickSight operations.

func NewHandler

func NewHandler(b StorageBackend) *Handler

NewHandler creates a new QuickSight handler.

func (*Handler) ChaosOperations

func (h *Handler) ChaosOperations() []string

ChaosOperations returns operations eligible for fault injection.

func (*Handler) ChaosRegions

func (h *Handler) ChaosRegions() []string

ChaosRegions returns all regions this handler serves.

func (*Handler) ChaosServiceName

func (h *Handler) ChaosServiceName() string

ChaosServiceName returns the lowercase AWS service name.

func (*Handler) ExtractOperation

func (h *Handler) ExtractOperation(c *echo.Context) string

ExtractOperation extracts the QuickSight operation name from the request.

func (*Handler) ExtractResource

func (h *Handler) ExtractResource(c *echo.Context) string

ExtractResource extracts the primary resource ID from the request.

func (*Handler) GetSupportedOperations

func (h *Handler) GetSupportedOperations() []string

GetSupportedOperations returns the list of implemented QuickSight operations.

func (*Handler) Handler

func (h *Handler) Handler() echo.HandlerFunc

Handler returns the Echo handler function.

func (*Handler) MatchPriority

func (h *Handler) MatchPriority() int

MatchPriority returns routing priority (above SecurityHub which also uses /accounts/).

func (*Handler) Name

func (h *Handler) Name() string

Name returns the service name.

func (*Handler) Register

func (h *Handler) Register(_ context.Context, _ *echo.Echo) error

Register registers routes on the Echo server.

func (*Handler) Reset

func (h *Handler) Reset()

Reset clears the backend.

func (*Handler) Restore

func (h *Handler) Restore(ctx context.Context, data []byte) error

Restore implements persistence.Persistable by delegating to the backend.

func (*Handler) RouteMatcher

func (h *Handler) RouteMatcher() service.Matcher

RouteMatcher returns a function that matches QuickSight requests. QuickSight shares /accounts/ prefix with SecurityHub; we disambiguate via the Authorization header signing service name ("quicksight").

func (*Handler) Snapshot

func (h *Handler) Snapshot(ctx context.Context) []byte

Snapshot implements persistence.Persistable by delegating to the backend.

type IAMPolicyAssignment

type IAMPolicyAssignment struct {
	Identities       map[string][]string
	AssignmentID     string
	AssignmentName   string
	AssignmentStatus string
	PolicyArn        string
	Namespace        string
}

IAMPolicyAssignment represents a QuickSight IAM policy assignment, scoped by namespace.

type IPRestriction

type IPRestriction struct {
	RuleMap              map[string]string
	VPCIDRuleMap         map[string]string
	VPCEndpointIDRuleMap map[string]string
	Enabled              bool
}

IPRestriction represents a QuickSight account's IP/VPC access restriction rules.

type IdentityPropagationConfig

type IdentityPropagationConfig struct {
	Service           string
	AuthorizedTargets []string
}

IdentityPropagationConfig represents the authorized targets for one downstream Amazon Web Services service that QuickSight can propagate an end user's identity to.

type InMemoryBackend

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

InMemoryBackend is the in-memory implementation of StorageBackend.

func NewInMemoryBackend

func NewInMemoryBackend(accountID, region string) *InMemoryBackend

NewInMemoryBackend creates a new InMemoryBackend.

func (*InMemoryBackend) AccountID

func (b *InMemoryBackend) AccountID() string

AccountID returns the configured account ID.

func (*InMemoryBackend) BatchCreateTopicReviewedAnswer

func (b *InMemoryBackend) BatchCreateTopicReviewedAnswer(
	accountID, topicID string,
	answers []map[string]any,
) ([]*TopicReviewedAnswer, []TopicAnswerError, error)

func (*InMemoryBackend) BatchDeleteTopicReviewedAnswer

func (b *InMemoryBackend) BatchDeleteTopicReviewedAnswer(
	accountID, topicID string,
	answerIDs []string,
) ([]string, []TopicAnswerError, error)

func (*InMemoryBackend) CancelIngestion

func (b *InMemoryBackend) CancelIngestion(accountID, dataSetID, ingestionID string) error

func (*InMemoryBackend) CreateAccountCustomization

func (b *InMemoryBackend) CreateAccountCustomization(
	accountID, namespace, defaultTheme, defaultEmailCustomizationTemplate string,
) (*AccountCustomization, error)

CreateAccountCustomization creates the branding customization for accountID (scoped to namespace, or account-wide when namespace is "").

func (*InMemoryBackend) CreateAccountSubscription

func (b *InMemoryBackend) CreateAccountSubscription(
	accountID, accountName, edition, authenticationMethod, notificationEmail string,
) (*AccountSubscription, error)

CreateAccountSubscription subscribes accountID to QuickSight.

func (*InMemoryBackend) CreateActionConnector

func (b *InMemoryBackend) CreateActionConnector(
	accountID, actionConnectorID, name, connectorType, description, vpcConnectionArn string,
	authenticationConfig map[string]any,
	permissions []ResourcePermission,
	tags map[string]string,
) (*ActionConnector, error)

func (*InMemoryBackend) CreateAnalysis

func (b *InMemoryBackend) CreateAnalysis(
	accountID, analysisID, name string,
	definition map[string]any,
	permissions []ResourcePermission,
	tags map[string]string,
) (*Analysis, error)

func (*InMemoryBackend) CreateBrand

func (b *InMemoryBackend) CreateBrand(accountID, brandID string, definition map[string]any) (*Brand, error)

func (*InMemoryBackend) CreateCustomPermissions

func (b *InMemoryBackend) CreateCustomPermissions(
	accountID, name string,
	capabilities map[string]any,
	tags map[string]string,
) (*CustomPermissions, error)

func (*InMemoryBackend) CreateDashboard

func (b *InMemoryBackend) CreateDashboard(
	accountID, dashboardID, name string,
	definition map[string]any,
	permissions []ResourcePermission,
	tags map[string]string,
) (*Dashboard, error)

func (*InMemoryBackend) CreateDataSet

func (b *InMemoryBackend) CreateDataSet(
	accountID, dataSetID, name, importMode string,
	permissions []ResourcePermission,
	tags map[string]string,
) (*DataSet, *Ingestion, error)

CreateDataSet creates a dataset. When importMode is SPICE, AWS triggers an ingestion as a side effect of dataset creation and returns its ARN/ID in the CreateDataSet response; this backend mirrors that by creating a real Ingestion record (so a subsequent DescribeIngestion/ListIngestions call finds it) instead of fabricating an ARN/ID that names a resource that was never persisted. For DIRECT_QUERY datasets, no ingestion is triggered and the returned *Ingestion is nil.

func (*InMemoryBackend) CreateDataSource

func (b *InMemoryBackend) CreateDataSource(
	accountID, dataSourceID, name, dsType string,
	permissions []ResourcePermission,
	tags map[string]string,
) (*DataSource, error)

func (*InMemoryBackend) CreateFolder

func (b *InMemoryBackend) CreateFolder(
	accountID, folderID, name, folderType, parentFolderArn string,
	permissions []ResourcePermission,
	tags map[string]string,
) (*Folder, error)

func (*InMemoryBackend) CreateFolderMembership

func (b *InMemoryBackend) CreateFolderMembership(
	accountID, folderID, memberID, memberType string,
) (*FolderMember, error)

func (*InMemoryBackend) CreateGroup

func (b *InMemoryBackend) CreateGroup(accountID, namespace, groupName, description string) (*Group, error)

func (*InMemoryBackend) CreateGroupMembership

func (b *InMemoryBackend) CreateGroupMembership(
	accountID, namespace, groupName, memberName string,
) (*GroupMember, error)

func (*InMemoryBackend) CreateIAMPolicyAssignment

func (b *InMemoryBackend) CreateIAMPolicyAssignment(
	accountID, namespace, assignmentName, assignmentStatus, policyArn string,
	identities map[string][]string,
) (*IAMPolicyAssignment, error)

func (*InMemoryBackend) CreateIngestion

func (b *InMemoryBackend) CreateIngestion(accountID, dataSetID, ingestionID string) (*Ingestion, error)

func (*InMemoryBackend) CreateNamespace

func (b *InMemoryBackend) CreateNamespace(accountID, namespace, capacityRegion string) (*Namespace, error)

func (*InMemoryBackend) CreateOAuthClientApplication

func (b *InMemoryBackend) CreateOAuthClientApplication(
	accountID, clientID, name string,
	fields map[string]any,
) (*OAuthClientApplication, error)

func (*InMemoryBackend) CreateRefreshSchedule

func (b *InMemoryBackend) CreateRefreshSchedule(
	accountID, datasetID, scheduleID, refreshType, startAfterDateTime string,
	scheduleFrequency map[string]any,
) (*RefreshSchedule, error)

func (*InMemoryBackend) CreateRoleMembership

func (b *InMemoryBackend) CreateRoleMembership(accountID, namespace, role, memberName string) error

func (*InMemoryBackend) CreateTemplate

func (b *InMemoryBackend) CreateTemplate(
	accountID, templateID, name, sourceEntityArn string,
	definition map[string]any,
	permissions []ResourcePermission,
	tags map[string]string,
) (*Template, error)

func (*InMemoryBackend) CreateTemplateAlias

func (b *InMemoryBackend) CreateTemplateAlias(
	accountID, templateID, aliasName string,
	versionNumber int64,
) (*TemplateAlias, error)

func (*InMemoryBackend) CreateTheme

func (b *InMemoryBackend) CreateTheme(
	accountID, themeID, name, baseThemeID string,
	configuration map[string]any,
	permissions []ResourcePermission,
	tags map[string]string,
) (*Theme, error)

func (*InMemoryBackend) CreateThemeAlias

func (b *InMemoryBackend) CreateThemeAlias(
	accountID, themeID, aliasName string,
	versionNumber int64,
) (*ThemeAlias, error)

func (*InMemoryBackend) CreateTopic

func (b *InMemoryBackend) CreateTopic(
	accountID, topicID, name, description, userExperienceVersion string,
	dataSets []map[string]any,
	permissions []ResourcePermission,
	tags map[string]string,
) (*Topic, error)

func (*InMemoryBackend) CreateTopicRefreshSchedule

func (b *InMemoryBackend) CreateTopicRefreshSchedule(
	accountID, topicID, datasetID, datasetArn, refreshType string,
	isEnabled bool,
	scheduleConfig map[string]any,
) (*TopicRefreshSchedule, error)

func (*InMemoryBackend) CreateVPCConnection

func (b *InMemoryBackend) CreateVPCConnection(
	accountID, vpcConnectionID, name, vpcID string,
	subnetIDs, securityGroupIDs, dnsResolvers []string,
	roleArn string,
	tags map[string]string,
) (*VPCConnection, error)

func (*InMemoryBackend) DeleteAccountCustomPermission

func (b *InMemoryBackend) DeleteAccountCustomPermission(accountID string) error

DeleteAccountCustomPermission removes accountID's applied custom permissions profile.

func (*InMemoryBackend) DeleteAccountCustomization

func (b *InMemoryBackend) DeleteAccountCustomization(accountID, namespace string) error

DeleteAccountCustomization removes accountID's (namespace-scoped) branding customization.

func (*InMemoryBackend) DeleteAccountSubscription

func (b *InMemoryBackend) DeleteAccountSubscription(accountID string) error

DeleteAccountSubscription unsubscribes accountID from QuickSight.

func (*InMemoryBackend) DeleteActionConnector

func (b *InMemoryBackend) DeleteActionConnector(accountID, actionConnectorID string) (*ActionConnector, error)

func (*InMemoryBackend) DeleteAnalysis

func (b *InMemoryBackend) DeleteAnalysis(accountID, analysisID string, forceDeleteWithoutRecovery bool) error

func (*InMemoryBackend) DeleteBrand

func (b *InMemoryBackend) DeleteBrand(accountID, brandID string) error

func (*InMemoryBackend) DeleteBrandAssignment

func (b *InMemoryBackend) DeleteBrandAssignment(accountID string) error

func (*InMemoryBackend) DeleteCustomPermissions

func (b *InMemoryBackend) DeleteCustomPermissions(accountID, name string) error

func (*InMemoryBackend) DeleteDashboard

func (b *InMemoryBackend) DeleteDashboard(accountID, dashboardID string) error

func (*InMemoryBackend) DeleteDataSet

func (b *InMemoryBackend) DeleteDataSet(accountID, dataSetID string) error

func (*InMemoryBackend) DeleteDataSetRefreshProperties

func (b *InMemoryBackend) DeleteDataSetRefreshProperties(accountID, datasetID string) error

func (*InMemoryBackend) DeleteDataSource

func (b *InMemoryBackend) DeleteDataSource(accountID, dataSourceID string) error

func (*InMemoryBackend) DeleteDefaultQBusinessApplication

func (b *InMemoryBackend) DeleteDefaultQBusinessApplication(accountID, _ string) error

DeleteDefaultQBusinessApplication removes accountID's default Q Business application.

func (*InMemoryBackend) DeleteFolder

func (b *InMemoryBackend) DeleteFolder(accountID, folderID string) error

func (*InMemoryBackend) DeleteFolderMembership

func (b *InMemoryBackend) DeleteFolderMembership(accountID, folderID, memberID, memberType string) error

func (*InMemoryBackend) DeleteGroup

func (b *InMemoryBackend) DeleteGroup(accountID, namespace, groupName string) error

func (*InMemoryBackend) DeleteGroupMembership

func (b *InMemoryBackend) DeleteGroupMembership(accountID, namespace, groupName, memberName string) error

func (*InMemoryBackend) DeleteIAMPolicyAssignment

func (b *InMemoryBackend) DeleteIAMPolicyAssignment(accountID, namespace, assignmentName string) error

func (*InMemoryBackend) DeleteIdentityPropagationConfig

func (b *InMemoryBackend) DeleteIdentityPropagationConfig(accountID, service string) error

func (*InMemoryBackend) DeleteNamespace

func (b *InMemoryBackend) DeleteNamespace(accountID, namespace string) error

func (*InMemoryBackend) DeleteOAuthClientApplication

func (b *InMemoryBackend) DeleteOAuthClientApplication(accountID, clientID string) (*OAuthClientApplication, error)

func (*InMemoryBackend) DeleteRefreshSchedule

func (b *InMemoryBackend) DeleteRefreshSchedule(accountID, datasetID, scheduleID string) error

func (*InMemoryBackend) DeleteRoleCustomPermission

func (b *InMemoryBackend) DeleteRoleCustomPermission(accountID, namespace, role string) error

func (*InMemoryBackend) DeleteRoleMembership

func (b *InMemoryBackend) DeleteRoleMembership(accountID, namespace, role, memberName string) error

func (*InMemoryBackend) DeleteTemplate

func (b *InMemoryBackend) DeleteTemplate(accountID, templateID string, versionNumber int64) error

func (*InMemoryBackend) DeleteTemplateAlias

func (b *InMemoryBackend) DeleteTemplateAlias(accountID, templateID, aliasName string) error

func (*InMemoryBackend) DeleteTheme

func (b *InMemoryBackend) DeleteTheme(accountID, themeID string, versionNumber int64) error

func (*InMemoryBackend) DeleteThemeAlias

func (b *InMemoryBackend) DeleteThemeAlias(accountID, themeID, aliasName string) error

func (*InMemoryBackend) DeleteTopic

func (b *InMemoryBackend) DeleteTopic(accountID, topicID string) error

func (*InMemoryBackend) DeleteTopicRefreshSchedule

func (b *InMemoryBackend) DeleteTopicRefreshSchedule(accountID, topicID, datasetID string) error

func (*InMemoryBackend) DeleteUser

func (b *InMemoryBackend) DeleteUser(accountID, namespace, userName string) error

func (*InMemoryBackend) DeleteUserByPrincipalID

func (b *InMemoryBackend) DeleteUserByPrincipalID(accountID, namespace, principalID string) error

func (*InMemoryBackend) DeleteUserCustomPermission

func (b *InMemoryBackend) DeleteUserCustomPermission(accountID, namespace, userName string) error

func (*InMemoryBackend) DeleteVPCConnection

func (b *InMemoryBackend) DeleteVPCConnection(accountID, vpcConnectionID string) error

func (*InMemoryBackend) DescribeAccountCustomPermission

func (b *InMemoryBackend) DescribeAccountCustomPermission(accountID string) (string, error)

DescribeAccountCustomPermission returns the name of the custom permissions profile applied to accountID, if any.

func (*InMemoryBackend) DescribeAccountCustomization

func (b *InMemoryBackend) DescribeAccountCustomization(accountID, namespace string) (*AccountCustomization, error)

DescribeAccountCustomization returns accountID's (namespace-scoped) branding customization.

func (*InMemoryBackend) DescribeAccountSettings

func (b *InMemoryBackend) DescribeAccountSettings(accountID string) (*AccountSettings, error)

DescribeAccountSettings returns the account's settings, defaulting to the AWS out-of-the-box values (STANDARD edition, "default" namespace, no notification email, sharing/termination-protection disabled) when the account has never called UpdateAccountSettings.

func (*InMemoryBackend) DescribeAccountSubscription

func (b *InMemoryBackend) DescribeAccountSubscription(accountID string) (*AccountSubscription, error)

DescribeAccountSubscription returns accountID's subscription info.

func (*InMemoryBackend) DescribeActionConnector

func (b *InMemoryBackend) DescribeActionConnector(accountID, actionConnectorID string) (*ActionConnector, error)

func (*InMemoryBackend) DescribeActionConnectorPermissions

func (b *InMemoryBackend) DescribeActionConnectorPermissions(
	accountID, actionConnectorID string,
) (*ActionConnector, []ResourcePermission, error)

func (*InMemoryBackend) DescribeAnalysis

func (b *InMemoryBackend) DescribeAnalysis(accountID, analysisID string) (*Analysis, error)

func (*InMemoryBackend) DescribeAnalysisPermissions

func (b *InMemoryBackend) DescribeAnalysisPermissions(
	accountID, analysisID string,
) (*Analysis, []ResourcePermission, error)

func (*InMemoryBackend) DescribeAssetBundleExportJob

func (b *InMemoryBackend) DescribeAssetBundleExportJob(accountID, jobID string) (*AssetBundleExportJob, error)

func (*InMemoryBackend) DescribeAssetBundleImportJob

func (b *InMemoryBackend) DescribeAssetBundleImportJob(accountID, jobID string) (*AssetBundleImportJob, error)

func (*InMemoryBackend) DescribeAutomationJob

func (b *InMemoryBackend) DescribeAutomationJob(
	accountID, automationGroupID, automationID, jobID string,
) (*AutomationJob, error)

DescribeAutomationJob returns the current state of jobID, settling it to SUCCEEDED if it was still RUNNING.

func (*InMemoryBackend) DescribeBrand

func (b *InMemoryBackend) DescribeBrand(accountID, brandID, versionID string) (*Brand, error)

func (*InMemoryBackend) DescribeBrandAssignment

func (b *InMemoryBackend) DescribeBrandAssignment(accountID string) (string, error)

func (*InMemoryBackend) DescribeBrandPublishedVersion

func (b *InMemoryBackend) DescribeBrandPublishedVersion(accountID, brandID string) (*Brand, error)

func (*InMemoryBackend) DescribeCustomPermissions

func (b *InMemoryBackend) DescribeCustomPermissions(accountID, name string) (*CustomPermissions, error)

func (*InMemoryBackend) DescribeDashboard

func (b *InMemoryBackend) DescribeDashboard(accountID, dashboardID string) (*Dashboard, error)

func (*InMemoryBackend) DescribeDashboardPermissions

func (b *InMemoryBackend) DescribeDashboardPermissions(
	accountID, dashboardID string,
) (*Dashboard, []ResourcePermission, error)

func (*InMemoryBackend) DescribeDashboardSnapshotJob

func (b *InMemoryBackend) DescribeDashboardSnapshotJob(
	accountID, dashboardID, jobID string,
) (*DashboardSnapshotJob, error)

func (*InMemoryBackend) DescribeDashboardSnapshotJobResult

func (b *InMemoryBackend) DescribeDashboardSnapshotJobResult(
	accountID, dashboardID, jobID string,
) (*DashboardSnapshotJob, error)

func (*InMemoryBackend) DescribeDashboardsQAConfiguration

func (b *InMemoryBackend) DescribeDashboardsQAConfiguration(accountID string) (string, error)

DescribeDashboardsQAConfiguration returns accountID's Dashboards Q&A status, defaulting to DISABLED when never configured.

func (*InMemoryBackend) DescribeDataSet

func (b *InMemoryBackend) DescribeDataSet(accountID, dataSetID string) (*DataSet, error)

func (*InMemoryBackend) DescribeDataSetPermissions

func (b *InMemoryBackend) DescribeDataSetPermissions(
	accountID, dataSetID string,
) (*DataSet, []ResourcePermission, error)

func (*InMemoryBackend) DescribeDataSetRefreshProperties

func (b *InMemoryBackend) DescribeDataSetRefreshProperties(
	accountID, datasetID string,
) (*DataSetRefreshProperties, error)

func (*InMemoryBackend) DescribeDataSource

func (b *InMemoryBackend) DescribeDataSource(accountID, dataSourceID string) (*DataSource, error)

func (*InMemoryBackend) DescribeDataSourcePermissions

func (b *InMemoryBackend) DescribeDataSourcePermissions(
	accountID, dataSourceID string,
) (*DataSource, []ResourcePermission, error)

func (*InMemoryBackend) DescribeDefaultQBusinessApplication

func (b *InMemoryBackend) DescribeDefaultQBusinessApplication(
	accountID, _ string,
) (*DefaultQBusinessApplication, error)

DescribeDefaultQBusinessApplication returns accountID's default Q Business application, defaulting to an empty (unconfigured) application when never set.

func (*InMemoryBackend) DescribeFolder

func (b *InMemoryBackend) DescribeFolder(accountID, folderID string) (*Folder, error)

func (*InMemoryBackend) DescribeFolderPermissions

func (b *InMemoryBackend) DescribeFolderPermissions(accountID, folderID string) ([]ResourcePermission, error)

func (*InMemoryBackend) DescribeFolderResolvedPermissions

func (b *InMemoryBackend) DescribeFolderResolvedPermissions(
	accountID, folderID string,
) ([]ResourcePermission, error)

func (*InMemoryBackend) DescribeGroup

func (b *InMemoryBackend) DescribeGroup(accountID, namespace, groupName string) (*Group, error)

func (*InMemoryBackend) DescribeGroupMembership

func (b *InMemoryBackend) DescribeGroupMembership(
	accountID, namespace, groupName, memberName string,
) (*GroupMember, error)

func (*InMemoryBackend) DescribeIAMPolicyAssignment

func (b *InMemoryBackend) DescribeIAMPolicyAssignment(
	accountID, namespace, assignmentName string,
) (*IAMPolicyAssignment, error)

func (*InMemoryBackend) DescribeIPRestriction

func (b *InMemoryBackend) DescribeIPRestriction(accountID string) (*IPRestriction, error)

DescribeIPRestriction returns accountID's IP restriction rules, defaulting to an empty, disabled rule set when never configured.

func (*InMemoryBackend) DescribeIngestion

func (b *InMemoryBackend) DescribeIngestion(accountID, dataSetID, ingestionID string) (*Ingestion, error)

func (*InMemoryBackend) DescribeKeyRegistration

func (b *InMemoryBackend) DescribeKeyRegistration(accountID string) ([]RegisteredCustomerManagedKey, error)

DescribeKeyRegistration returns accountID's registered customer-managed keys.

func (*InMemoryBackend) DescribeNamespace

func (b *InMemoryBackend) DescribeNamespace(accountID, namespace string) (*Namespace, error)

func (*InMemoryBackend) DescribeOAuthClientApplication

func (b *InMemoryBackend) DescribeOAuthClientApplication(accountID, clientID string) (*OAuthClientApplication, error)

func (*InMemoryBackend) DescribeQPersonalizationConfiguration

func (b *InMemoryBackend) DescribeQPersonalizationConfiguration(accountID string) (string, error)

DescribeQPersonalizationConfiguration returns accountID's Q personalization mode, defaulting to DISABLED when never configured.

func (*InMemoryBackend) DescribeQuickSightQSearchConfiguration

func (b *InMemoryBackend) DescribeQuickSightQSearchConfiguration(accountID string) (string, error)

DescribeQuickSightQSearchConfiguration returns accountID's Q Search status, defaulting to DISABLED when never configured.

func (*InMemoryBackend) DescribeRefreshSchedule

func (b *InMemoryBackend) DescribeRefreshSchedule(accountID, datasetID, scheduleID string) (*RefreshSchedule, error)

func (*InMemoryBackend) DescribeRoleCustomPermission

func (b *InMemoryBackend) DescribeRoleCustomPermission(accountID, namespace, role string) (string, error)

func (*InMemoryBackend) DescribeSelfUpgradeConfiguration

func (b *InMemoryBackend) DescribeSelfUpgradeConfiguration(accountID, namespace string) (string, error)

DescribeSelfUpgradeConfiguration returns namespace's self-upgrade status, defaulting to ADMIN_APPROVAL (the more conservative option) when never configured, mirroring DescribeQuickSightQSearchConfiguration's default-when-unset convention.

func (*InMemoryBackend) DescribeTemplate

func (b *InMemoryBackend) DescribeTemplate(accountID, templateID string, versionNumber int64) (*Template, error)

func (*InMemoryBackend) DescribeTemplateAlias

func (b *InMemoryBackend) DescribeTemplateAlias(accountID, templateID, aliasName string) (*TemplateAlias, error)

func (*InMemoryBackend) DescribeTemplatePermissions

func (b *InMemoryBackend) DescribeTemplatePermissions(
	accountID, templateID string,
) (*Template, []ResourcePermission, error)

func (*InMemoryBackend) DescribeTheme

func (b *InMemoryBackend) DescribeTheme(accountID, themeID string, versionNumber int64) (*Theme, error)

func (*InMemoryBackend) DescribeThemeAlias

func (b *InMemoryBackend) DescribeThemeAlias(accountID, themeID, aliasName string) (*ThemeAlias, error)

func (*InMemoryBackend) DescribeThemePermissions

func (b *InMemoryBackend) DescribeThemePermissions(accountID, themeID string) (*Theme, []ResourcePermission, error)

func (*InMemoryBackend) DescribeTopic

func (b *InMemoryBackend) DescribeTopic(accountID, topicID string) (*Topic, error)

func (*InMemoryBackend) DescribeTopicPermissions

func (b *InMemoryBackend) DescribeTopicPermissions(accountID, topicID string) (*Topic, []ResourcePermission, error)

func (*InMemoryBackend) DescribeTopicRefresh

func (b *InMemoryBackend) DescribeTopicRefresh(accountID, topicID, refreshID string) (*TopicRefreshDetails, error)

DescribeTopicRefresh reports the status of a topic refresh execution. Because this batch of operations does not include a "start topic refresh" API, refresh records are synthesized lazily on first describe (mirroring the fact that QuickSight refreshes run automatically in the background): the first describe for a given RefreshId creates a COMPLETED record, and subsequent describes for the same RefreshId return that same stored record.

func (*InMemoryBackend) DescribeTopicRefreshSchedule

func (b *InMemoryBackend) DescribeTopicRefreshSchedule(
	accountID, topicID, datasetID string,
) (*TopicRefreshSchedule, error)

func (*InMemoryBackend) DescribeUser

func (b *InMemoryBackend) DescribeUser(accountID, namespace, userName string) (*User, error)

func (*InMemoryBackend) DescribeVPCConnection

func (b *InMemoryBackend) DescribeVPCConnection(accountID, vpcConnectionID string) (*VPCConnection, error)

func (*InMemoryBackend) GenerateEmbedURLForAnonymousUser

func (b *InMemoryBackend) GenerateEmbedURLForAnonymousUser(
	accountID, namespace string,
	authorizedResourceArns []string,
	experienceConfiguration map[string]any,
) (string, string, error)

func (*InMemoryBackend) GenerateEmbedURLForRegisteredUser

func (b *InMemoryBackend) GenerateEmbedURLForRegisteredUser(
	accountID, userArn string,
	experienceConfiguration map[string]any,
) (string, error)

func (*InMemoryBackend) GenerateEmbedURLForRegisteredUserWithIdentity

func (b *InMemoryBackend) GenerateEmbedURLForRegisteredUserWithIdentity(
	_ string,
	experienceConfiguration map[string]any,
) (string, error)

GenerateEmbedURLForRegisteredUserWithIdentity generates an embed URL for identity-enhanced (IAM Identity Center) sessions, which authenticate via the caller's signing credentials rather than an explicit UserArn/accountID lookup.

func (*InMemoryBackend) GenerateIdentityContext

func (b *InMemoryBackend) GenerateIdentityContext(
	accountID, namespace, userIdentifierKind, userIdentifierValue, contextRegion string,
) (string, error)

GenerateIdentityContext mints an opaque identity-context token for the given user identity, for use as the ContextAssertion parameter of an STS AssumeRole call. Like the embed-URL family, GetIdentityContext is stateless: nothing is persisted, a fresh token is minted on every call, mirroring generateEmbedURL's signed-looking, single-use token pattern.

func (*InMemoryBackend) GetDashboardEmbedURL

func (b *InMemoryBackend) GetDashboardEmbedURL(accountID, dashboardID, identityType string) (string, error)

func (*InMemoryBackend) GetFlowMetadata

func (b *InMemoryBackend) GetFlowMetadata(accountID, flowID string) (*Flow, error)

func (*InMemoryBackend) GetFlowPermissions

func (b *InMemoryBackend) GetFlowPermissions(accountID, flowID string) (*Flow, []ResourcePermission, error)

func (*InMemoryBackend) GetSessionEmbedURL

func (b *InMemoryBackend) GetSessionEmbedURL(_, entryPoint string) (string, error)

GetSessionEmbedURL generates a console-session embed URL. Unlike the other embed ops, it isn't scoped to any single stored resource, so accountID is only used (via b.accountID) to build the URL itself.

func (*InMemoryBackend) ListActionConnectors

func (b *InMemoryBackend) ListActionConnectors(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*ActionConnector, string, error)

func (*InMemoryBackend) ListAnalyses

func (b *InMemoryBackend) ListAnalyses(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*Analysis, string, error)

func (*InMemoryBackend) ListAssetBundleExportJobs

func (b *InMemoryBackend) ListAssetBundleExportJobs(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*AssetBundleExportJob, string, error)

func (*InMemoryBackend) ListAssetBundleImportJobs

func (b *InMemoryBackend) ListAssetBundleImportJobs(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*AssetBundleImportJob, string, error)

func (*InMemoryBackend) ListBrands

func (b *InMemoryBackend) ListBrands(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*Brand, string, error)

func (*InMemoryBackend) ListCustomPermissions

func (b *InMemoryBackend) ListCustomPermissions(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*CustomPermissions, string, error)

func (*InMemoryBackend) ListDashboardVersions

func (b *InMemoryBackend) ListDashboardVersions(
	accountID, dashboardID string,
	maxResults int32,
	nextToken string,
) ([]*DashboardVersion, string, error)

func (*InMemoryBackend) ListDashboards

func (b *InMemoryBackend) ListDashboards(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*Dashboard, string, error)

func (*InMemoryBackend) ListDataSets

func (b *InMemoryBackend) ListDataSets(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*DataSet, string, error)

func (*InMemoryBackend) ListDataSources

func (b *InMemoryBackend) ListDataSources(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*DataSource, string, error)

func (*InMemoryBackend) ListFlows

func (b *InMemoryBackend) ListFlows(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*Flow, string, error)

func (*InMemoryBackend) ListFolderMembers

func (b *InMemoryBackend) ListFolderMembers(
	accountID, folderID string,
	maxResults int32,
	nextToken string,
) ([]*FolderMember, string, error)

func (*InMemoryBackend) ListFolders

func (b *InMemoryBackend) ListFolders(
	accountID string,
	maxResults int32,
	nextToken string,
) ([]*Folder, string, error)

func (*InMemoryBackend) ListFoldersForResource

func (b *InMemoryBackend) ListFoldersForResource(
	accountID, resourceArn string,
	maxResults int32,
	nextToken string,
) ([]string, string, error)

ListFoldersForResource lists the ARNs of all folders that resourceArn is a member of.

func (*InMemoryBackend) ListGroupMemberships

func (b *InMemoryBackend) ListGroupMemberships(
	accountID, namespace, groupName string,
	maxResults int32,
	nextToken string,
) ([]*GroupMember, string, error)

func (*InMemoryBackend) ListGroups

func (b *InMemoryBackend) ListGroups(
	_, namespace string,
	maxResults int32,
	nextToken string,
) ([]*Group, string, error)

func (*InMemoryBackend) ListIAMPolicyAssignments

func (b *InMemoryBackend) ListIAMPolicyAssignments(
	accountID, namespace, statusFilter string,
	maxResults int32,
	nextToken string,
) ([]*IAMPolicyAssignment, string, error)

func (*InMemoryBackend) ListIAMPolicyAssignmentsForUser

func (b *InMemoryBackend) ListIAMPolicyAssignmentsForUser(
	accountID, namespace, userName string,
	maxResults int32,
	nextToken string,
) ([]*IAMPolicyAssignment, string, error)

ListIAMPolicyAssignmentsForUser returns the ENABLED assignments in namespace whose Identities reference userName (directly, by user name).

func (*InMemoryBackend) ListIdentityPropagationConfigs

func (b *InMemoryBackend) ListIdentityPropagationConfigs(_ string) ([]*IdentityPropagationConfig, error)

func (*InMemoryBackend) ListIngestions

func (b *InMemoryBackend) ListIngestions(
	_, dataSetID string,
	maxResults int32,
	nextToken string,
) ([]*Ingestion, string, error)

func (*InMemoryBackend) ListNamespaces

func (b *InMemoryBackend) ListNamespaces(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*Namespace, string, error)

func (*InMemoryBackend) ListOAuthClientApplications

func (b *InMemoryBackend) ListOAuthClientApplications(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*OAuthClientApplication, string, error)

func (*InMemoryBackend) ListRefreshSchedules

func (b *InMemoryBackend) ListRefreshSchedules(accountID, datasetID string) ([]*RefreshSchedule, error)

func (*InMemoryBackend) ListRoleMemberships

func (b *InMemoryBackend) ListRoleMemberships(
	accountID, namespace, role string,
	maxResults int32,
	nextToken string,
) ([]string, string, error)

func (*InMemoryBackend) ListSelfUpgrades

func (b *InMemoryBackend) ListSelfUpgrades(
	accountID, namespace string,
	maxResults int32,
	nextToken string,
) ([]*SelfUpgradeRequestDetail, string, error)

func (*InMemoryBackend) ListTagsForResource

func (b *InMemoryBackend) ListTagsForResource(resourceARN string) (map[string]string, error)

func (*InMemoryBackend) ListTemplateAliases

func (b *InMemoryBackend) ListTemplateAliases(
	accountID, templateID string,
	maxResults int32,
	nextToken string,
) ([]*TemplateAlias, string, error)

func (*InMemoryBackend) ListTemplateVersions

func (b *InMemoryBackend) ListTemplateVersions(
	accountID, templateID string,
	maxResults int32,
	nextToken string,
) ([]*TemplateVersion, string, error)

func (*InMemoryBackend) ListTemplates

func (b *InMemoryBackend) ListTemplates(
	accountID string,
	maxResults int32,
	nextToken string,
) ([]*Template, string, error)

func (*InMemoryBackend) ListThemeAliases

func (b *InMemoryBackend) ListThemeAliases(
	accountID, themeID string,
	maxResults int32,
	nextToken string,
) ([]*ThemeAlias, string, error)

func (*InMemoryBackend) ListThemeVersions

func (b *InMemoryBackend) ListThemeVersions(
	accountID, themeID string,
	maxResults int32,
	nextToken string,
) ([]*ThemeVersion, string, error)

func (*InMemoryBackend) ListThemes

func (b *InMemoryBackend) ListThemes(
	accountID string,
	maxResults int32,
	nextToken string,
) ([]*Theme, string, error)

func (*InMemoryBackend) ListTopicRefreshSchedules

func (b *InMemoryBackend) ListTopicRefreshSchedules(accountID, topicID string) ([]*TopicRefreshSchedule, error)

func (*InMemoryBackend) ListTopicReviewedAnswers

func (b *InMemoryBackend) ListTopicReviewedAnswers(accountID, topicID string) ([]*TopicReviewedAnswer, error)

func (*InMemoryBackend) ListTopics

func (b *InMemoryBackend) ListTopics(
	accountID string,
	maxResults int32,
	nextToken string,
) ([]*Topic, string, error)

func (*InMemoryBackend) ListUserGroups

func (b *InMemoryBackend) ListUserGroups(
	accountID, namespace, userName string,
	maxResults int32,
	nextToken string,
) ([]*Group, string, error)

func (*InMemoryBackend) ListUsers

func (b *InMemoryBackend) ListUsers(
	_, namespace string,
	maxResults int32,
	nextToken string,
) ([]*User, string, error)

func (*InMemoryBackend) ListVPCConnections

func (b *InMemoryBackend) ListVPCConnections(
	_ string,
	maxResults int32,
	nextToken string,
) ([]*VPCConnection, string, error)

func (*InMemoryBackend) PredictQAResults

func (b *InMemoryBackend) PredictQAResults(accountID, queryText string) (*QAResult, error)

PredictQAResults answers a natural-language query against the account's registered Topics. This emulator cannot run real Q&A/NLP inference, but it grounds its answer in real backend state: if any Topic's Name appears in the query text, it returns a GENERATED_ANSWER result referencing that real Topic (its actual TopicId/Name), rather than fabricating a plausible-looking answer out of nothing. Otherwise it returns the explicit NO_ANSWER result type, which is itself a valid QAResultType per the AWS API (not an error).

func (*InMemoryBackend) PutDataSetRefreshProperties

func (b *InMemoryBackend) PutDataSetRefreshProperties(
	accountID, datasetID string,
	refreshConfiguration, failureConfiguration map[string]any,
) (*DataSetRefreshProperties, error)

func (*InMemoryBackend) Region

func (b *InMemoryBackend) Region() string

Region returns the configured region.

func (*InMemoryBackend) RegisterUser

func (b *InMemoryBackend) RegisterUser(
	accountID, namespace, userName, email, role, identityType, sessionName string,
) (*User, error)

func (*InMemoryBackend) Reset

func (b *InMemoryBackend) Reset()

Reset clears all stored state.

func (*InMemoryBackend) Restore

func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error

Restore deserializes backend state from JSON. It implements persistence.Persistable.

func (*InMemoryBackend) RestoreAnalysis

func (b *InMemoryBackend) RestoreAnalysis(accountID, analysisID string) (*Analysis, error)

func (*InMemoryBackend) SearchActionConnectors

func (b *InMemoryBackend) SearchActionConnectors(
	_ string,
	filters []SearchFilter,
	maxResults int32,
	nextToken string,
) ([]*ActionConnector, string, error)

func (*InMemoryBackend) SearchAnalyses

func (b *InMemoryBackend) SearchAnalyses(
	_ string,
	filters []SearchFilter,
	maxResults int32,
	nextToken string,
) ([]*Analysis, string, error)

SearchAnalyses searches analyses by name (filter Name == filterAnalysisName); any other filter Name is an ownership-related filter that this in-memory backend doesn't track and is treated as a pass-through match.

func (*InMemoryBackend) SearchDashboards

func (b *InMemoryBackend) SearchDashboards(
	_ string,
	filters []SearchFilter,
	maxResults int32,
	nextToken string,
) ([]*Dashboard, string, error)

SearchDashboards searches dashboards by name (filter Name == filterDashboardName); any other filter Name is an ownership-related filter that this in-memory backend doesn't track and is treated as a pass-through match.

func (*InMemoryBackend) SearchDataSets

func (b *InMemoryBackend) SearchDataSets(
	_ string,
	filters []SearchFilter,
	maxResults int32,
	nextToken string,
) ([]*DataSet, string, error)

SearchDataSets searches data sets by name (filter Name == filterDataSetName); any other filter Name is an ownership-related filter that this in-memory backend doesn't track and is treated as a pass-through match.

func (*InMemoryBackend) SearchDataSources

func (b *InMemoryBackend) SearchDataSources(
	_ string,
	filters []SearchFilter,
	maxResults int32,
	nextToken string,
) ([]*DataSource, string, error)

SearchDataSources searches data sources by name (filter Name == filterDataSourceName); any other filter Name is an ownership-related filter that this in-memory backend doesn't track and is treated as a pass-through match, mirroring folderMatchesFilter's permissive default.

func (*InMemoryBackend) SearchFlows

func (b *InMemoryBackend) SearchFlows(
	_ string,
	filters []SearchFilter,
	maxResults int32,
	nextToken string,
) ([]*Flow, string, error)

func (*InMemoryBackend) SearchFolders

func (b *InMemoryBackend) SearchFolders(
	accountID string,
	filters []FolderSearchFilter,
	maxResults int32,
	nextToken string,
) ([]*Folder, string, error)

func (*InMemoryBackend) SearchGroups

func (b *InMemoryBackend) SearchGroups(
	_, namespace, query string,
	maxResults int32,
	nextToken string,
) ([]*Group, string, error)

func (*InMemoryBackend) SearchTopics

func (b *InMemoryBackend) SearchTopics(
	_ string,
	filters []SearchFilter,
	maxResults int32,
	nextToken string,
) ([]*Topic, string, error)

SearchTopics searches topics by name (filter Name == filterTopicName); any other filter Name (QUICKSIGHT_USER, QUICKSIGHT_VIEWER_OR_OWNER, etc.) is an ownership-related filter that this in-memory backend doesn't track principals for and is treated as a pass-through match, mirroring SearchDashboards/SearchAnalyses.

func (*InMemoryBackend) Snapshot

func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte

Snapshot serializes backend state to JSON. It implements persistence.Persistable.

func (*InMemoryBackend) StartAssetBundleExportJob

func (b *InMemoryBackend) StartAssetBundleExportJob(
	_, jobID, exportFormat string,
	resourceArns []string,
	includeAllDependencies bool,
) (*AssetBundleExportJob, error)

func (*InMemoryBackend) StartAssetBundleImportJob

func (b *InMemoryBackend) StartAssetBundleImportJob(
	_, jobID, failureAction string,
) (*AssetBundleImportJob, error)

func (*InMemoryBackend) StartAutomationJob

func (b *InMemoryBackend) StartAutomationJob(
	_, automationGroupID, automationID, inputPayload string,
) (*AutomationJob, error)

StartAutomationJob starts a new run of automationID (scoped to automationGroupID) and returns the freshly assigned job. QuickSight has no API to create automation groups/automations themselves (they're authored via the console), so any non-empty IDs are accepted.

func (*InMemoryBackend) StartDashboardSnapshotJob

func (b *InMemoryBackend) StartDashboardSnapshotJob(
	accountID, dashboardID, jobID string,
	snapshotConfiguration map[string]any,
) (*DashboardSnapshotJob, error)

func (*InMemoryBackend) StartDashboardSnapshotJobSchedule

func (b *InMemoryBackend) StartDashboardSnapshotJobSchedule(accountID, dashboardID, scheduleID string) error

StartDashboardSnapshotJobSchedule starts an immediate, on-demand execution of a dashboard's existing snapshot job schedule. Real StartDashboardSnapshotJobScheduleOutput carries no data fields beyond the RequestId/Status envelope; the caller polls DescribeDashboardSnapshotJob separately for results. This emulator does not model schedule definitions themselves (there is no corresponding Create/Describe API for them in the SDK), so it validates what real state it can: that the target dashboard exists and a non-empty ScheduleId was supplied.

func (*InMemoryBackend) TagResource

func (b *InMemoryBackend) TagResource(resourceARN string, tags map[string]string) error

func (*InMemoryBackend) UntagResource

func (b *InMemoryBackend) UntagResource(resourceARN string, tagKeys []string) error

func (*InMemoryBackend) UpdateAccountCustomPermission

func (b *InMemoryBackend) UpdateAccountCustomPermission(accountID, customPermissionsName string) error

UpdateAccountCustomPermission applies (creating or replacing) a custom permissions profile to accountID.

func (*InMemoryBackend) UpdateAccountCustomization

func (b *InMemoryBackend) UpdateAccountCustomization(
	accountID, namespace, defaultTheme, defaultEmailCustomizationTemplate string,
) (*AccountCustomization, error)

UpdateAccountCustomization mutates an existing branding customization.

func (*InMemoryBackend) UpdateAccountSettings

func (b *InMemoryBackend) UpdateAccountSettings(
	accountID, defaultNS, notificationEmail string,
	terminationProtectionEnabled *bool,
) (*AccountSettings, error)

UpdateAccountSettings mutates (creating if necessary) the account's settings.

func (*InMemoryBackend) UpdateActionConnector

func (b *InMemoryBackend) UpdateActionConnector(
	accountID, actionConnectorID, name, description, vpcConnectionArn string,
	authenticationConfig map[string]any,
) (*ActionConnector, error)

func (*InMemoryBackend) UpdateActionConnectorPermissions

func (b *InMemoryBackend) UpdateActionConnectorPermissions(
	accountID, actionConnectorID string,
	grant, revoke []ResourcePermission,
) (*ActionConnector, []ResourcePermission, error)

func (*InMemoryBackend) UpdateAnalysis

func (b *InMemoryBackend) UpdateAnalysis(
	accountID, analysisID, name string,
	definition map[string]any,
) (*Analysis, error)

func (*InMemoryBackend) UpdateAnalysisPermissions

func (b *InMemoryBackend) UpdateAnalysisPermissions(
	accountID, analysisID string,
	grant, revoke []ResourcePermission,
) (*Analysis, []ResourcePermission, error)

func (*InMemoryBackend) UpdateBrand

func (b *InMemoryBackend) UpdateBrand(accountID, brandID string, definition map[string]any) (*Brand, error)

func (*InMemoryBackend) UpdateBrandAssignment

func (b *InMemoryBackend) UpdateBrandAssignment(accountID, brandArn string) (string, error)

func (*InMemoryBackend) UpdateBrandPublishedVersion

func (b *InMemoryBackend) UpdateBrandPublishedVersion(accountID, brandID, versionID string) error

func (*InMemoryBackend) UpdateCustomPermissions

func (b *InMemoryBackend) UpdateCustomPermissions(
	accountID, name string,
	capabilities map[string]any,
) (*CustomPermissions, error)

func (*InMemoryBackend) UpdateDashboard

func (b *InMemoryBackend) UpdateDashboard(
	accountID, dashboardID, name string,
	definition map[string]any,
) (*Dashboard, error)
func (b *InMemoryBackend) UpdateDashboardLinks(
	accountID, dashboardID string,
	linkEntities []string,
) (*Dashboard, error)

UpdateDashboardLinks replaces the set of analysis ARNs linked to a dashboard.

func (*InMemoryBackend) UpdateDashboardPermissions

func (b *InMemoryBackend) UpdateDashboardPermissions(
	accountID, dashboardID string,
	grant, revoke []ResourcePermission,
) (*Dashboard, []ResourcePermission, error)

func (*InMemoryBackend) UpdateDashboardPublishedVersion

func (b *InMemoryBackend) UpdateDashboardPublishedVersion(
	accountID, dashboardID string,
	versionNumber int64,
) (*Dashboard, error)

UpdateDashboardPublishedVersion flips which stored version of a dashboard is the published one. versionNumber must name a version that actually exists (i.e. be in [1, VersionNumber], matching the versions ListDashboardVersions synthesizes), else ErrDashboardVersionNotFound.

func (*InMemoryBackend) UpdateDashboardsQAConfiguration

func (b *InMemoryBackend) UpdateDashboardsQAConfiguration(accountID, status string) (string, error)

UpdateDashboardsQAConfiguration sets accountID's Dashboards Q&A status.

func (*InMemoryBackend) UpdateDataSet

func (b *InMemoryBackend) UpdateDataSet(accountID, dataSetID, name, importMode string) (*DataSet, error)

func (*InMemoryBackend) UpdateDataSetPermissions

func (b *InMemoryBackend) UpdateDataSetPermissions(
	accountID, dataSetID string,
	grant, revoke []ResourcePermission,
) (*DataSet, []ResourcePermission, error)

func (*InMemoryBackend) UpdateDataSource

func (b *InMemoryBackend) UpdateDataSource(accountID, dataSourceID, name string) (*DataSource, error)

func (*InMemoryBackend) UpdateDataSourcePermissions

func (b *InMemoryBackend) UpdateDataSourcePermissions(
	accountID, dataSourceID string,
	grant, revoke []ResourcePermission,
) (*DataSource, []ResourcePermission, error)

func (*InMemoryBackend) UpdateDefaultQBusinessApplication

func (b *InMemoryBackend) UpdateDefaultQBusinessApplication(
	accountID, applicationID, namespace string,
) (*DefaultQBusinessApplication, error)

UpdateDefaultQBusinessApplication sets (creating if necessary) accountID's default Q Business application.

func (*InMemoryBackend) UpdateFlowPermissions

func (b *InMemoryBackend) UpdateFlowPermissions(
	accountID, flowID string,
	grant, revoke []ResourcePermission,
) (*Flow, []ResourcePermission, error)

func (*InMemoryBackend) UpdateFolder

func (b *InMemoryBackend) UpdateFolder(accountID, folderID, name string) (*Folder, error)

func (*InMemoryBackend) UpdateFolderPermissions

func (b *InMemoryBackend) UpdateFolderPermissions(
	accountID, folderID string,
	grant, revoke []ResourcePermission,
) ([]ResourcePermission, error)

func (*InMemoryBackend) UpdateGroup

func (b *InMemoryBackend) UpdateGroup(accountID, namespace, groupName, description string) (*Group, error)

func (*InMemoryBackend) UpdateIAMPolicyAssignment

func (b *InMemoryBackend) UpdateIAMPolicyAssignment(
	accountID, namespace, assignmentName, assignmentStatus, policyArn string,
	identities map[string][]string,
) (*IAMPolicyAssignment, error)

func (*InMemoryBackend) UpdateIPRestriction

func (b *InMemoryBackend) UpdateIPRestriction(
	accountID string,
	ruleMap, vpcIDRuleMap, vpcEndpointIDRuleMap map[string]string,
	enabled *bool,
) (*IPRestriction, error)

UpdateIPRestriction replaces (creating if necessary) accountID's IP restriction rules. Nil maps leave the corresponding rule map unchanged; a nil enabled leaves Enabled unchanged.

func (*InMemoryBackend) UpdateIdentityPropagationConfig

func (b *InMemoryBackend) UpdateIdentityPropagationConfig(_, service string, authorizedTargets []string) error

func (*InMemoryBackend) UpdateKeyRegistration

func (b *InMemoryBackend) UpdateKeyRegistration(
	accountID string,
	keys []RegisteredCustomerManagedKey,
) ([]RegisteredCustomerManagedKey, error)

UpdateKeyRegistration replaces accountID's set of registered customer-managed keys.

func (*InMemoryBackend) UpdateOAuthClientApplication

func (b *InMemoryBackend) UpdateOAuthClientApplication(
	accountID, clientID, name string,
	fields map[string]any,
) (*OAuthClientApplication, error)

func (*InMemoryBackend) UpdatePublicSharingSettings

func (b *InMemoryBackend) UpdatePublicSharingSettings(accountID string, enabled bool) error

UpdatePublicSharingSettings sets whether public sharing is enabled for accountID. The value is surfaced back through DescribeAccountSettings.PublicSharingEnabled.

func (*InMemoryBackend) UpdateQPersonalizationConfiguration

func (b *InMemoryBackend) UpdateQPersonalizationConfiguration(accountID, mode string) (string, error)

UpdateQPersonalizationConfiguration sets accountID's Q personalization mode.

func (*InMemoryBackend) UpdateQuickSightQSearchConfiguration

func (b *InMemoryBackend) UpdateQuickSightQSearchConfiguration(accountID, status string) (string, error)

UpdateQuickSightQSearchConfiguration sets accountID's Q Search status.

func (*InMemoryBackend) UpdateRefreshSchedule

func (b *InMemoryBackend) UpdateRefreshSchedule(
	accountID, datasetID, scheduleID, refreshType, startAfterDateTime string,
	scheduleFrequency map[string]any,
) (*RefreshSchedule, error)

func (*InMemoryBackend) UpdateRoleCustomPermission

func (b *InMemoryBackend) UpdateRoleCustomPermission(accountID, namespace, role, customPermissionsName string) error

func (*InMemoryBackend) UpdateSPICECapacityConfiguration

func (b *InMemoryBackend) UpdateSPICECapacityConfiguration(accountID, purchaseMode string) error

UpdateSPICECapacityConfiguration sets accountID's SPICE capacity purchase mode. The real AWS operation's response carries no data beyond RequestId/Status, so there is nothing to return here beyond validation. An empty purchaseMode is a no-op (PurchaseMode is required by the real API, but callers that omit it here leave the stored configuration untouched rather than erroring); a non-empty, unrecognized value is rejected.

func (*InMemoryBackend) UpdateSelfUpgrade

func (b *InMemoryBackend) UpdateSelfUpgrade(
	accountID, namespace, action, upgradeRequestID string,
) (*SelfUpgradeRequestDetail, error)

UpdateSelfUpgrade approves, denies, or (re-)verifies an existing self-upgrade request. VERIFY re-confirms an already-decided request without changing its RequestStatus (there is no distinct "VERIFIED" status in the QuickSight API; only PENDING/APPROVED/DENIED/UPDATE_FAILED/VERIFY_FAILED exist), but always refreshes LastUpdateAttemptTime.

func (*InMemoryBackend) UpdateSelfUpgradeConfiguration

func (b *InMemoryBackend) UpdateSelfUpgradeConfiguration(accountID, namespace, status string) (string, error)

UpdateSelfUpgradeConfiguration sets namespace's self-upgrade status.

func (*InMemoryBackend) UpdateTemplate

func (b *InMemoryBackend) UpdateTemplate(
	accountID, templateID, name, sourceEntityArn string,
	definition map[string]any,
) (*Template, error)

func (*InMemoryBackend) UpdateTemplateAlias

func (b *InMemoryBackend) UpdateTemplateAlias(
	accountID, templateID, aliasName string,
	versionNumber int64,
) (*TemplateAlias, error)

func (*InMemoryBackend) UpdateTemplatePermissions

func (b *InMemoryBackend) UpdateTemplatePermissions(
	accountID, templateID string,
	grant, revoke []ResourcePermission,
) (*Template, []ResourcePermission, error)

func (*InMemoryBackend) UpdateTheme

func (b *InMemoryBackend) UpdateTheme(
	accountID, themeID, name, baseThemeID string,
	configuration map[string]any,
) (*Theme, error)

func (*InMemoryBackend) UpdateThemeAlias

func (b *InMemoryBackend) UpdateThemeAlias(
	accountID, themeID, aliasName string,
	versionNumber int64,
) (*ThemeAlias, error)

func (*InMemoryBackend) UpdateThemePermissions

func (b *InMemoryBackend) UpdateThemePermissions(
	accountID, themeID string,
	grant, revoke []ResourcePermission,
) (*Theme, []ResourcePermission, error)

func (*InMemoryBackend) UpdateTopic

func (b *InMemoryBackend) UpdateTopic(
	accountID, topicID, name, description, userExperienceVersion string,
	dataSets []map[string]any,
) (*Topic, error)

func (*InMemoryBackend) UpdateTopicPermissions

func (b *InMemoryBackend) UpdateTopicPermissions(
	accountID, topicID string,
	grant, revoke []ResourcePermission,
) (*Topic, []ResourcePermission, error)

func (*InMemoryBackend) UpdateTopicRefreshSchedule

func (b *InMemoryBackend) UpdateTopicRefreshSchedule(
	accountID, topicID, datasetID, refreshType string,
	isEnabled *bool,
	scheduleConfig map[string]any,
) (*TopicRefreshSchedule, error)

UpdateTopicRefreshSchedule updates an existing schedule. Pointer/nil-able parameters are only applied when non-nil/non-empty so a partial (or empty) update body leaves existing fields untouched, matching the CreateFolder/ UpdateFolder convention used elsewhere in this package.

func (*InMemoryBackend) UpdateUser

func (b *InMemoryBackend) UpdateUser(accountID, namespace, userName, email, role string) (*User, error)

func (*InMemoryBackend) UpdateUserCustomPermission

func (b *InMemoryBackend) UpdateUserCustomPermission(
	accountID, namespace, userName, customPermissionsName string,
) error

func (*InMemoryBackend) UpdateVPCConnection

func (b *InMemoryBackend) UpdateVPCConnection(
	accountID, vpcConnectionID, name string,
	subnetIDs, securityGroupIDs, dnsResolvers []string,
	roleArn string,
) (*VPCConnection, error)

type Ingestion

type Ingestion struct {
	CreatedTime     time.Time
	IngestionID     string
	Arn             string
	DataSetID       string
	IngestionStatus string
}

Ingestion represents a QuickSight ingestion. CreatedTime first: non-pointer prefix reduces GC pointer bytes.

type Namespace

type Namespace struct {
	CreationStatus string
	Name           string
	Arn            string
	CapacityRegion string
	IdentityStore  string
}

Namespace represents a QuickSight namespace.

type OAuthClientApplication

type OAuthClientApplication struct {
	CreatedTime     time.Time
	LastUpdatedTime time.Time
	Extra           map[string]any
	ClientID        string
	Arn             string
	Name            string
	Status          string
}

OAuthClientApplication represents a QuickSight OAuth 2.0 client application used to connect to a data source's identity provider.

type Provider

type Provider struct{}

Provider implements service.Provider for Amazon QuickSight.

func (*Provider) Init

Init initializes the QuickSight service backend and handler.

func (*Provider) Name

func (p *Provider) Name() string

Name returns the provider name.

type QAResult

type QAResult struct {
	AnswerID     string
	AnswerStatus string
	QuestionID   string
	QuestionText string
	TopicID      string
	TopicName    string
	ResultType   string
}

QAResult represents a single Predict QA result: either a generated natural-language answer referencing a real Topic in the account, or an explicit "no answer" result when no topic matches the query text.

type RefreshSchedule

type RefreshSchedule struct {
	ScheduleFrequency  map[string]any
	ScheduleID         string
	Arn                string
	RefreshType        string
	StartAfterDateTime string
}

RefreshSchedule represents a QuickSight dataset SPICE refresh schedule.

type RegisteredCustomerManagedKey

type RegisteredCustomerManagedKey struct {
	KeyArn     string
	DefaultKey bool
}

RegisteredCustomerManagedKey represents a customer-managed KMS key registered with QuickSight.

type ResourcePermission

type ResourcePermission struct {
	Principal string   `json:"principal"`
	Actions   []string `json:"actions"`
}

ResourcePermission represents a QuickSight principal + allowed actions grant.

type SearchFilter

type SearchFilter = FolderSearchFilter

SearchFilter is a generic Name/Operator/Value search filter, shared by the Search{Analyses,Dashboards,DataSets,DataSources} operations. It has the same shape as FolderSearchFilter (SearchFolders' filter type).

type SelfUpgradeRequestDetail

type SelfUpgradeRequestDetail struct {
	LastUpdateFailureReason string
	OriginalRole            string
	RequestNote             string
	RequestStatus           string
	RequestedRole           string
	UpgradeRequestID        string
	CreationTime            int64
	LastUpdateAttemptTime   int64
}

SelfUpgradeRequestDetail represents one namespace self-upgrade request (a user's request to be upgraded to a different UserRole).

type StorageBackend

type StorageBackend interface {
	// Namespaces
	CreateNamespace(accountID, namespace, capacityRegion string) (*Namespace, error)
	DescribeNamespace(accountID, namespace string) (*Namespace, error)
	DeleteNamespace(accountID, namespace string) error
	ListNamespaces(accountID string, maxResults int32, nextToken string) ([]*Namespace, string, error)

	// Groups
	CreateGroup(accountID, namespace, groupName, description string) (*Group, error)
	DescribeGroup(accountID, namespace, groupName string) (*Group, error)
	UpdateGroup(accountID, namespace, groupName, description string) (*Group, error)
	DeleteGroup(accountID, namespace, groupName string) error
	ListGroups(accountID, namespace string, maxResults int32, nextToken string) ([]*Group, string, error)
	SearchGroups(accountID, namespace, query string, maxResults int32, nextToken string) ([]*Group, string, error)

	// Group Memberships
	CreateGroupMembership(accountID, namespace, groupName, memberName string) (*GroupMember, error)
	DescribeGroupMembership(accountID, namespace, groupName, memberName string) (*GroupMember, error)
	DeleteGroupMembership(accountID, namespace, groupName, memberName string) error
	ListGroupMemberships(
		accountID, namespace, groupName string,
		maxResults int32,
		nextToken string,
	) ([]*GroupMember, string, error)

	// Users
	RegisterUser(accountID, namespace, userName, email, role, identityType, sessionName string) (*User, error)
	DescribeUser(accountID, namespace, userName string) (*User, error)
	UpdateUser(accountID, namespace, userName, email, role string) (*User, error)
	DeleteUser(accountID, namespace, userName string) error
	DeleteUserByPrincipalID(accountID, namespace, principalID string) error
	ListUsers(accountID, namespace string, maxResults int32, nextToken string) ([]*User, string, error)
	ListUserGroups(accountID, namespace, userName string, maxResults int32, nextToken string) ([]*Group, string, error)

	// DataSources
	CreateDataSource(
		accountID, dataSourceID, name, dsType string,
		permissions []ResourcePermission,
		tags map[string]string,
	) (*DataSource, error)
	DescribeDataSource(accountID, dataSourceID string) (*DataSource, error)
	UpdateDataSource(accountID, dataSourceID, name string) (*DataSource, error)
	DeleteDataSource(accountID, dataSourceID string) error
	ListDataSources(accountID string, maxResults int32, nextToken string) ([]*DataSource, string, error)
	SearchDataSources(
		accountID string,
		filters []SearchFilter,
		maxResults int32,
		nextToken string,
	) ([]*DataSource, string, error)
	DescribeDataSourcePermissions(accountID, dataSourceID string) (*DataSource, []ResourcePermission, error)
	UpdateDataSourcePermissions(
		accountID, dataSourceID string,
		grant, revoke []ResourcePermission,
	) (*DataSource, []ResourcePermission, error)

	// DataSets
	// CreateDataSet returns the created dataset plus the *Ingestion triggered
	// as a side effect when importMode is SPICE (nil for DIRECT_QUERY, which
	// triggers no ingestion).
	CreateDataSet(
		accountID, dataSetID, name, importMode string,
		permissions []ResourcePermission,
		tags map[string]string,
	) (*DataSet, *Ingestion, error)
	DescribeDataSet(accountID, dataSetID string) (*DataSet, error)
	UpdateDataSet(accountID, dataSetID, name, importMode string) (*DataSet, error)
	DeleteDataSet(accountID, dataSetID string) error
	ListDataSets(accountID string, maxResults int32, nextToken string) ([]*DataSet, string, error)
	SearchDataSets(
		accountID string,
		filters []SearchFilter,
		maxResults int32,
		nextToken string,
	) ([]*DataSet, string, error)
	DescribeDataSetPermissions(accountID, dataSetID string) (*DataSet, []ResourcePermission, error)
	UpdateDataSetPermissions(
		accountID, dataSetID string,
		grant, revoke []ResourcePermission,
	) (*DataSet, []ResourcePermission, error)

	// Ingestions
	CreateIngestion(accountID, dataSetID, ingestionID string) (*Ingestion, error)
	DescribeIngestion(accountID, dataSetID, ingestionID string) (*Ingestion, error)
	CancelIngestion(accountID, dataSetID, ingestionID string) error
	ListIngestions(accountID, dataSetID string, maxResults int32, nextToken string) ([]*Ingestion, string, error)

	// Dashboards
	CreateDashboard(
		accountID, dashboardID, name string,
		definition map[string]any,
		permissions []ResourcePermission,
		tags map[string]string,
	) (*Dashboard, error)
	DescribeDashboard(accountID, dashboardID string) (*Dashboard, error)
	UpdateDashboard(accountID, dashboardID, name string, definition map[string]any) (*Dashboard, error)
	DeleteDashboard(accountID, dashboardID string) error
	ListDashboards(accountID string, maxResults int32, nextToken string) ([]*Dashboard, string, error)
	ListDashboardVersions(
		accountID, dashboardID string,
		maxResults int32,
		nextToken string,
	) ([]*DashboardVersion, string, error)
	SearchDashboards(
		accountID string,
		filters []SearchFilter,
		maxResults int32,
		nextToken string,
	) ([]*Dashboard, string, error)
	UpdateDashboardPublishedVersion(accountID, dashboardID string, versionNumber int64) (*Dashboard, error)
	UpdateDashboardLinks(accountID, dashboardID string, linkEntities []string) (*Dashboard, error)
	DescribeDashboardPermissions(accountID, dashboardID string) (*Dashboard, []ResourcePermission, error)
	UpdateDashboardPermissions(
		accountID, dashboardID string,
		grant, revoke []ResourcePermission,
	) (*Dashboard, []ResourcePermission, error)

	// Analyses
	CreateAnalysis(
		accountID, analysisID, name string,
		definition map[string]any,
		permissions []ResourcePermission,
		tags map[string]string,
	) (*Analysis, error)
	DescribeAnalysis(accountID, analysisID string) (*Analysis, error)
	UpdateAnalysis(accountID, analysisID, name string, definition map[string]any) (*Analysis, error)
	DeleteAnalysis(accountID, analysisID string, forceDeleteWithoutRecovery bool) error
	ListAnalyses(accountID string, maxResults int32, nextToken string) ([]*Analysis, string, error)
	RestoreAnalysis(accountID, analysisID string) (*Analysis, error)
	SearchAnalyses(
		accountID string,
		filters []SearchFilter,
		maxResults int32,
		nextToken string,
	) ([]*Analysis, string, error)
	DescribeAnalysisPermissions(accountID, analysisID string) (*Analysis, []ResourcePermission, error)
	UpdateAnalysisPermissions(
		accountID, analysisID string,
		grant, revoke []ResourcePermission,
	) (*Analysis, []ResourcePermission, error)

	// Tags
	TagResource(resourceARN string, tags map[string]string) error
	UntagResource(resourceARN string, tagKeys []string) error
	ListTagsForResource(resourceARN string) (map[string]string, error)

	// Folders
	CreateFolder(
		accountID, folderID, name, folderType, parentFolderArn string,
		permissions []ResourcePermission,
		tags map[string]string,
	) (*Folder, error)
	DescribeFolder(accountID, folderID string) (*Folder, error)
	UpdateFolder(accountID, folderID, name string) (*Folder, error)
	DeleteFolder(accountID, folderID string) error
	ListFolders(accountID string, maxResults int32, nextToken string) ([]*Folder, string, error)
	SearchFolders(
		accountID string,
		filters []FolderSearchFilter,
		maxResults int32,
		nextToken string,
	) ([]*Folder, string, error)

	// Folder memberships
	CreateFolderMembership(accountID, folderID, memberID, memberType string) (*FolderMember, error)
	DeleteFolderMembership(accountID, folderID, memberID, memberType string) error
	ListFolderMembers(
		accountID, folderID string,
		maxResults int32,
		nextToken string,
	) ([]*FolderMember, string, error)

	// Folder permissions
	DescribeFolderPermissions(accountID, folderID string) ([]ResourcePermission, error)
	UpdateFolderPermissions(
		accountID, folderID string,
		grant, revoke []ResourcePermission,
	) ([]ResourcePermission, error)
	DescribeFolderResolvedPermissions(accountID, folderID string) ([]ResourcePermission, error)

	// Folders-for-resource
	ListFoldersForResource(
		accountID, resourceArn string,
		maxResults int32,
		nextToken string,
	) ([]string, string, error)

	// Templates
	CreateTemplate(
		accountID, templateID, name, sourceEntityArn string,
		definition map[string]any,
		permissions []ResourcePermission,
		tags map[string]string,
	) (*Template, error)
	DescribeTemplate(accountID, templateID string, versionNumber int64) (*Template, error)
	UpdateTemplate(
		accountID, templateID, name, sourceEntityArn string,
		definition map[string]any,
	) (*Template, error)
	DeleteTemplate(accountID, templateID string, versionNumber int64) error
	ListTemplates(accountID string, maxResults int32, nextToken string) ([]*Template, string, error)
	ListTemplateVersions(
		accountID, templateID string,
		maxResults int32,
		nextToken string,
	) ([]*TemplateVersion, string, error)
	DescribeTemplatePermissions(accountID, templateID string) (*Template, []ResourcePermission, error)
	UpdateTemplatePermissions(
		accountID, templateID string,
		grant, revoke []ResourcePermission,
	) (*Template, []ResourcePermission, error)

	// Template aliases
	CreateTemplateAlias(accountID, templateID, aliasName string, versionNumber int64) (*TemplateAlias, error)
	DescribeTemplateAlias(accountID, templateID, aliasName string) (*TemplateAlias, error)
	UpdateTemplateAlias(accountID, templateID, aliasName string, versionNumber int64) (*TemplateAlias, error)
	DeleteTemplateAlias(accountID, templateID, aliasName string) error
	ListTemplateAliases(
		accountID, templateID string,
		maxResults int32,
		nextToken string,
	) ([]*TemplateAlias, string, error)

	// Themes
	CreateTheme(
		accountID, themeID, name, baseThemeID string,
		configuration map[string]any,
		permissions []ResourcePermission,
		tags map[string]string,
	) (*Theme, error)
	DescribeTheme(accountID, themeID string, versionNumber int64) (*Theme, error)
	UpdateTheme(
		accountID, themeID, name, baseThemeID string,
		configuration map[string]any,
	) (*Theme, error)
	DeleteTheme(accountID, themeID string, versionNumber int64) error
	ListThemes(accountID string, maxResults int32, nextToken string) ([]*Theme, string, error)
	ListThemeVersions(
		accountID, themeID string,
		maxResults int32,
		nextToken string,
	) ([]*ThemeVersion, string, error)
	DescribeThemePermissions(accountID, themeID string) (*Theme, []ResourcePermission, error)
	UpdateThemePermissions(
		accountID, themeID string,
		grant, revoke []ResourcePermission,
	) (*Theme, []ResourcePermission, error)

	// Theme aliases
	CreateThemeAlias(accountID, themeID, aliasName string, versionNumber int64) (*ThemeAlias, error)
	DescribeThemeAlias(accountID, themeID, aliasName string) (*ThemeAlias, error)
	UpdateThemeAlias(accountID, themeID, aliasName string, versionNumber int64) (*ThemeAlias, error)
	DeleteThemeAlias(accountID, themeID, aliasName string) error
	ListThemeAliases(
		accountID, themeID string,
		maxResults int32,
		nextToken string,
	) ([]*ThemeAlias, string, error)

	// Topics
	CreateTopic(
		accountID, topicID, name, description, userExperienceVersion string,
		dataSets []map[string]any,
		permissions []ResourcePermission,
		tags map[string]string,
	) (*Topic, error)
	DescribeTopic(accountID, topicID string) (*Topic, error)
	UpdateTopic(
		accountID, topicID, name, description, userExperienceVersion string,
		dataSets []map[string]any,
	) (*Topic, error)
	DeleteTopic(accountID, topicID string) error
	ListTopics(accountID string, maxResults int32, nextToken string) ([]*Topic, string, error)
	SearchTopics(
		accountID string,
		filters []SearchFilter,
		maxResults int32,
		nextToken string,
	) ([]*Topic, string, error)

	// Topic permissions
	DescribeTopicPermissions(accountID, topicID string) (*Topic, []ResourcePermission, error)
	UpdateTopicPermissions(
		accountID, topicID string,
		grant, revoke []ResourcePermission,
	) (*Topic, []ResourcePermission, error)

	// Topic refresh
	DescribeTopicRefresh(accountID, topicID, refreshID string) (*TopicRefreshDetails, error)

	// Topic refresh schedules
	CreateTopicRefreshSchedule(
		accountID, topicID, datasetID, datasetArn, refreshType string,
		isEnabled bool,
		scheduleConfig map[string]any,
	) (*TopicRefreshSchedule, error)
	DescribeTopicRefreshSchedule(accountID, topicID, datasetID string) (*TopicRefreshSchedule, error)
	UpdateTopicRefreshSchedule(
		accountID, topicID, datasetID, refreshType string,
		isEnabled *bool,
		scheduleConfig map[string]any,
	) (*TopicRefreshSchedule, error)
	DeleteTopicRefreshSchedule(accountID, topicID, datasetID string) error
	ListTopicRefreshSchedules(accountID, topicID string) ([]*TopicRefreshSchedule, error)

	// Topic reviewed answers
	BatchCreateTopicReviewedAnswer(
		accountID, topicID string,
		answers []map[string]any,
	) ([]*TopicReviewedAnswer, []TopicAnswerError, error)
	BatchDeleteTopicReviewedAnswer(
		accountID, topicID string,
		answerIDs []string,
	) ([]string, []TopicAnswerError, error)
	ListTopicReviewedAnswers(accountID, topicID string) ([]*TopicReviewedAnswer, error)

	// VPC connections
	CreateVPCConnection(
		accountID, vpcConnectionID, name, vpcID string,
		subnetIDs, securityGroupIDs, dnsResolvers []string,
		roleArn string,
		tags map[string]string,
	) (*VPCConnection, error)
	DescribeVPCConnection(accountID, vpcConnectionID string) (*VPCConnection, error)
	UpdateVPCConnection(
		accountID, vpcConnectionID, name string,
		subnetIDs, securityGroupIDs, dnsResolvers []string,
		roleArn string,
	) (*VPCConnection, error)
	DeleteVPCConnection(accountID, vpcConnectionID string) error
	ListVPCConnections(accountID string, maxResults int32, nextToken string) ([]*VPCConnection, string, error)

	// IAM policy assignments
	CreateIAMPolicyAssignment(
		accountID, namespace, assignmentName, assignmentStatus, policyArn string,
		identities map[string][]string,
	) (*IAMPolicyAssignment, error)
	DescribeIAMPolicyAssignment(accountID, namespace, assignmentName string) (*IAMPolicyAssignment, error)
	UpdateIAMPolicyAssignment(
		accountID, namespace, assignmentName, assignmentStatus, policyArn string,
		identities map[string][]string,
	) (*IAMPolicyAssignment, error)
	DeleteIAMPolicyAssignment(accountID, namespace, assignmentName string) error
	ListIAMPolicyAssignments(
		accountID, namespace, statusFilter string,
		maxResults int32,
		nextToken string,
	) ([]*IAMPolicyAssignment, string, error)
	ListIAMPolicyAssignmentsForUser(
		accountID, namespace, userName string,
		maxResults int32,
		nextToken string,
	) ([]*IAMPolicyAssignment, string, error)

	// Account settings
	DescribeAccountSettings(accountID string) (*AccountSettings, error)
	UpdateAccountSettings(
		accountID, defaultNamespace, notificationEmail string,
		terminationProtectionEnabled *bool,
	) (*AccountSettings, error)

	// Account subscription
	CreateAccountSubscription(
		accountID, accountName, edition, authenticationMethod, notificationEmail string,
	) (*AccountSubscription, error)
	DescribeAccountSubscription(accountID string) (*AccountSubscription, error)
	DeleteAccountSubscription(accountID string) error

	// Account customization
	CreateAccountCustomization(
		accountID, namespace, defaultTheme, defaultEmailCustomizationTemplate string,
	) (*AccountCustomization, error)
	DescribeAccountCustomization(accountID, namespace string) (*AccountCustomization, error)
	UpdateAccountCustomization(
		accountID, namespace, defaultTheme, defaultEmailCustomizationTemplate string,
	) (*AccountCustomization, error)
	DeleteAccountCustomization(accountID, namespace string) error

	// Account custom permission
	DescribeAccountCustomPermission(accountID string) (string, error)
	UpdateAccountCustomPermission(accountID, customPermissionsName string) error
	DeleteAccountCustomPermission(accountID string) error

	// IP restriction
	DescribeIPRestriction(accountID string) (*IPRestriction, error)
	UpdateIPRestriction(
		accountID string,
		ruleMap, vpcIDRuleMap, vpcEndpointIDRuleMap map[string]string,
		enabled *bool,
	) (*IPRestriction, error)

	// Public sharing
	UpdatePublicSharingSettings(accountID string, enabled bool) error

	// Key registration
	DescribeKeyRegistration(accountID string) ([]RegisteredCustomerManagedKey, error)
	UpdateKeyRegistration(
		accountID string,
		keys []RegisteredCustomerManagedKey,
	) ([]RegisteredCustomerManagedKey, error)

	// Default Q Business Application
	DescribeDefaultQBusinessApplication(accountID, namespace string) (*DefaultQBusinessApplication, error)
	UpdateDefaultQBusinessApplication(
		accountID, applicationID, namespace string,
	) (*DefaultQBusinessApplication, error)
	DeleteDefaultQBusinessApplication(accountID, namespace string) error

	// Q personalization
	DescribeQPersonalizationConfiguration(accountID string) (string, error)
	UpdateQPersonalizationConfiguration(accountID, mode string) (string, error)

	// Q Search configuration
	DescribeQuickSightQSearchConfiguration(accountID string) (string, error)
	UpdateQuickSightQSearchConfiguration(accountID, status string) (string, error)

	// Dashboards Q&A configuration
	DescribeDashboardsQAConfiguration(accountID string) (string, error)
	UpdateDashboardsQAConfiguration(accountID, status string) (string, error)

	// Brands
	CreateBrand(accountID, brandID string, definition map[string]any) (*Brand, error)
	DescribeBrand(accountID, brandID, versionID string) (*Brand, error)
	UpdateBrand(accountID, brandID string, definition map[string]any) (*Brand, error)
	DeleteBrand(accountID, brandID string) error
	ListBrands(accountID string, maxResults int32, nextToken string) ([]*Brand, string, error)
	DescribeBrandPublishedVersion(accountID, brandID string) (*Brand, error)
	UpdateBrandPublishedVersion(accountID, brandID, versionID string) error
	DescribeBrandAssignment(accountID string) (string, error)
	UpdateBrandAssignment(accountID, brandArn string) (string, error)
	DeleteBrandAssignment(accountID string) error

	// Custom permissions
	CreateCustomPermissions(
		accountID, name string,
		capabilities map[string]any,
		tags map[string]string,
	) (*CustomPermissions, error)
	DescribeCustomPermissions(accountID, name string) (*CustomPermissions, error)
	UpdateCustomPermissions(accountID, name string, capabilities map[string]any) (*CustomPermissions, error)
	DeleteCustomPermissions(accountID, name string) error
	ListCustomPermissions(accountID string, maxResults int32, nextToken string) ([]*CustomPermissions, string, error)

	// Role custom permission
	UpdateRoleCustomPermission(accountID, namespace, role, customPermissionsName string) error
	DescribeRoleCustomPermission(accountID, namespace, role string) (string, error)
	DeleteRoleCustomPermission(accountID, namespace, role string) error

	// Role memberships
	CreateRoleMembership(accountID, namespace, role, memberName string) error
	DeleteRoleMembership(accountID, namespace, role, memberName string) error
	ListRoleMemberships(
		accountID, namespace, role string,
		maxResults int32,
		nextToken string,
	) ([]string, string, error)

	// User custom permission
	UpdateUserCustomPermission(accountID, namespace, userName, customPermissionsName string) error
	DeleteUserCustomPermission(accountID, namespace, userName string) error

	// OAuth client applications
	CreateOAuthClientApplication(
		accountID, clientID, name string,
		fields map[string]any,
	) (*OAuthClientApplication, error)
	DescribeOAuthClientApplication(accountID, clientID string) (*OAuthClientApplication, error)
	UpdateOAuthClientApplication(
		accountID, clientID, name string,
		fields map[string]any,
	) (*OAuthClientApplication, error)
	DeleteOAuthClientApplication(accountID, clientID string) (*OAuthClientApplication, error)
	ListOAuthClientApplications(
		accountID string,
		maxResults int32,
		nextToken string,
	) ([]*OAuthClientApplication, string, error)

	// Identity propagation configuration
	UpdateIdentityPropagationConfig(accountID, service string, authorizedTargets []string) error
	DeleteIdentityPropagationConfig(accountID, service string) error
	ListIdentityPropagationConfigs(accountID string) ([]*IdentityPropagationConfig, error)

	// Asset bundle export jobs
	StartAssetBundleExportJob(
		accountID, jobID, exportFormat string,
		resourceArns []string,
		includeAllDependencies bool,
	) (*AssetBundleExportJob, error)
	DescribeAssetBundleExportJob(accountID, jobID string) (*AssetBundleExportJob, error)
	ListAssetBundleExportJobs(
		accountID string,
		maxResults int32,
		nextToken string,
	) ([]*AssetBundleExportJob, string, error)

	// Asset bundle import jobs
	StartAssetBundleImportJob(accountID, jobID, failureAction string) (*AssetBundleImportJob, error)
	DescribeAssetBundleImportJob(accountID, jobID string) (*AssetBundleImportJob, error)
	ListAssetBundleImportJobs(
		accountID string,
		maxResults int32,
		nextToken string,
	) ([]*AssetBundleImportJob, string, error)

	// Dashboard snapshot jobs
	StartDashboardSnapshotJob(
		accountID, dashboardID, jobID string,
		snapshotConfiguration map[string]any,
	) (*DashboardSnapshotJob, error)
	DescribeDashboardSnapshotJob(accountID, dashboardID, jobID string) (*DashboardSnapshotJob, error)
	DescribeDashboardSnapshotJobResult(accountID, dashboardID, jobID string) (*DashboardSnapshotJob, error)
	StartDashboardSnapshotJobSchedule(accountID, dashboardID, scheduleID string) error

	// Predict QA results
	PredictQAResults(accountID, queryText string) (*QAResult, error)

	// DataSet refresh schedules
	CreateRefreshSchedule(
		accountID, datasetID, scheduleID, refreshType, startAfterDateTime string,
		scheduleFrequency map[string]any,
	) (*RefreshSchedule, error)
	DescribeRefreshSchedule(accountID, datasetID, scheduleID string) (*RefreshSchedule, error)
	UpdateRefreshSchedule(
		accountID, datasetID, scheduleID, refreshType, startAfterDateTime string,
		scheduleFrequency map[string]any,
	) (*RefreshSchedule, error)
	DeleteRefreshSchedule(accountID, datasetID, scheduleID string) error
	ListRefreshSchedules(accountID, datasetID string) ([]*RefreshSchedule, error)

	// DataSet refresh properties
	PutDataSetRefreshProperties(
		accountID, datasetID string,
		refreshConfiguration, failureConfiguration map[string]any,
	) (*DataSetRefreshProperties, error)
	DescribeDataSetRefreshProperties(accountID, datasetID string) (*DataSetRefreshProperties, error)
	DeleteDataSetRefreshProperties(accountID, datasetID string) error

	// Embed URLs
	GenerateEmbedURLForAnonymousUser(
		accountID, namespace string,
		authorizedResourceArns []string,
		experienceConfiguration map[string]any,
	) (embedURL, anonymousUserArn string, err error)
	GenerateEmbedURLForRegisteredUser(
		accountID, userArn string,
		experienceConfiguration map[string]any,
	) (string, error)
	GenerateEmbedURLForRegisteredUserWithIdentity(
		accountID string,
		experienceConfiguration map[string]any,
	) (string, error)
	GetDashboardEmbedURL(accountID, dashboardID, identityType string) (string, error)
	GetSessionEmbedURL(accountID, entryPoint string) (string, error)

	// Identity context
	GenerateIdentityContext(
		accountID, namespace, userIdentifierKind, userIdentifierValue, contextRegion string,
	) (string, error)

	// Action connectors
	CreateActionConnector(
		accountID, actionConnectorID, name, connectorType, description, vpcConnectionArn string,
		authenticationConfig map[string]any,
		permissions []ResourcePermission,
		tags map[string]string,
	) (*ActionConnector, error)
	DescribeActionConnector(accountID, actionConnectorID string) (*ActionConnector, error)
	UpdateActionConnector(
		accountID, actionConnectorID, name, description, vpcConnectionArn string,
		authenticationConfig map[string]any,
	) (*ActionConnector, error)
	DeleteActionConnector(accountID, actionConnectorID string) (*ActionConnector, error)
	ListActionConnectors(accountID string, maxResults int32, nextToken string) ([]*ActionConnector, string, error)
	SearchActionConnectors(
		accountID string,
		filters []SearchFilter,
		maxResults int32,
		nextToken string,
	) ([]*ActionConnector, string, error)
	DescribeActionConnectorPermissions(
		accountID, actionConnectorID string,
	) (*ActionConnector, []ResourcePermission, error)
	UpdateActionConnectorPermissions(
		accountID, actionConnectorID string,
		grant, revoke []ResourcePermission,
	) (*ActionConnector, []ResourcePermission, error)

	// Automation jobs
	StartAutomationJob(accountID, automationGroupID, automationID, inputPayload string) (*AutomationJob, error)
	DescribeAutomationJob(accountID, automationGroupID, automationID, jobID string) (*AutomationJob, error)

	// SPICE capacity configuration
	UpdateSPICECapacityConfiguration(accountID, purchaseMode string) error

	// Flows (QuickSight exposes no CreateFlow API; flows are authored via the
	// console/Quick Suite and only read/searched/permissioned through the API).
	ListFlows(accountID string, maxResults int32, nextToken string) ([]*Flow, string, error)
	SearchFlows(
		accountID string,
		filters []SearchFilter,
		maxResults int32,
		nextToken string,
	) ([]*Flow, string, error)
	GetFlowMetadata(accountID, flowID string) (*Flow, error)
	GetFlowPermissions(accountID, flowID string) (*Flow, []ResourcePermission, error)
	UpdateFlowPermissions(
		accountID, flowID string,
		grant, revoke []ResourcePermission,
	) (*Flow, []ResourcePermission, error)

	// Namespace self-upgrade
	DescribeSelfUpgradeConfiguration(accountID, namespace string) (string, error)
	UpdateSelfUpgradeConfiguration(accountID, namespace, status string) (string, error)
	ListSelfUpgrades(
		accountID, namespace string,
		maxResults int32,
		nextToken string,
	) ([]*SelfUpgradeRequestDetail, string, error)
	UpdateSelfUpgrade(accountID, namespace, action, upgradeRequestID string) (*SelfUpgradeRequestDetail, error)

	AccountID() string
	Region() string
	Reset()
}

type Template

type Template struct {
	CreatedTime     time.Time
	LastUpdatedTime time.Time
	TemplateID      string
	Arn             string
	Name            string
	Version         *TemplateVersion
	Permissions     []ResourcePermission
}

Template represents a QuickSight template (a versioned, reusable dashboard/analysis layout definition).

type TemplateAlias

type TemplateAlias struct {
	AliasName             string
	Arn                   string
	TemplateVersionNumber int64
}

TemplateAlias represents a named pointer to a specific template version.

type TemplateVersion

type TemplateVersion struct {
	CreatedTime     time.Time
	Definition      map[string]any
	Arn             string
	Status          string
	SourceEntityArn string
	Description     string
	VersionNumber   int64
}

TemplateVersion represents one version of a QuickSight template. CreatedTime first: non-pointer prefix reduces GC pointer bytes.

type Theme

type Theme struct {
	CreatedTime     time.Time
	LastUpdatedTime time.Time
	ThemeID         string
	Arn             string
	Name            string
	Type            string
	Version         *ThemeVersion
	Permissions     []ResourcePermission
}

Theme represents a QuickSight theme (a versioned set of visual style settings).

type ThemeAlias

type ThemeAlias struct {
	AliasName          string
	Arn                string
	ThemeVersionNumber int64
}

ThemeAlias represents a named pointer to a specific theme version.

type ThemeVersion

type ThemeVersion struct {
	CreatedTime   time.Time
	Configuration map[string]any
	Arn           string
	Status        string
	BaseThemeID   string
	Description   string
	VersionNumber int64
}

ThemeVersion represents one version of a QuickSight theme. CreatedTime first: non-pointer prefix reduces GC pointer bytes.

type Topic

type Topic struct {
	CreatedTime           time.Time
	LastUpdatedTime       time.Time
	TopicID               string
	Arn                   string
	Name                  string
	Description           string
	UserExperienceVersion string
	DataSets              []map[string]any
	Permissions           []ResourcePermission
}

Topic represents a QuickSight topic (a natural-language Q&A data source).

type TopicAnswerError

type TopicAnswerError struct {
	AnswerID string
	Message  string
}

TopicAnswerError represents a single failed entry in a batch reviewed-answer create/delete operation.

type TopicRefreshDetails

type TopicRefreshDetails struct {
	RefreshID     string
	RefreshStatus string
}

TopicRefreshDetails represents the status of a single topic refresh execution.

type TopicRefreshSchedule

type TopicRefreshSchedule struct {
	ScheduleConfig map[string]any
	DatasetID      string
	DatasetArn     string
	RefreshType    string
	IsEnabled      bool
}

TopicRefreshSchedule represents one refresh schedule for a topic's dataset, keyed by DatasetId.

type TopicReviewedAnswer

type TopicReviewedAnswer struct {
	PrimaryVisual map[string]any
	Template      map[string]any
	AnswerID      string
	DatasetArn    string
	Question      string
	Mode          string
}

TopicReviewedAnswer represents one human-reviewed answer attached to a topic.

type User

type User struct {
	UserName     string
	Arn          string
	Email        string
	Role         string
	IdentityType string
	Namespace    string
	PrincipalID  string
	SessionName  string
	Active       bool
}

User represents a QuickSight user.

type VPCConnection

type VPCConnection struct {
	CreatedTime        time.Time
	LastUpdatedTime    time.Time
	VPCConnectionID    string
	Arn                string
	Name               string
	VPCID              string
	RoleArn            string
	Status             string
	AvailabilityStatus string
	SubnetIDs          []string
	SecurityGroupIDs   []string
	DNSResolvers       []string
}

VPCConnection represents a QuickSight VPC connection.

Jump to

Keyboard shortcuts

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