appsync

package
v0.22.0 Latest Latest
Warning

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

Go to latest
Published: May 26, 2026 License: MIT Imports: 14 Imported by: 0

Documentation

Overview

Package appsync provides AWS AppSync service emulation for kumo.

Index

Constants

View Source
const (
	AuthTypeAPIKey           = "API_KEY"
	AuthTypeAWSIAM           = "AWS_IAM"
	AuthTypeCognitoUserPools = "AMAZON_COGNITO_USER_POOLS"
	AuthTypeOpenIDConnect    = "OPENID_CONNECT"
	AuthTypeAWSLambda        = "AWS_LAMBDA"
)

Authentication types.

View Source
const (
	DataSourceTypeAWSDynamoDB   = "AMAZON_DYNAMODB"
	DataSourceTypeAWSLambda     = "AWS_LAMBDA"
	DataSourceTypeElasticsearch = "AMAZON_ELASTICSEARCH"
	DataSourceTypeOpenSearch    = "AMAZON_OPENSEARCH_SERVICE"
	DataSourceTypeHTTP          = "HTTP"
	DataSourceTypeNone          = "NONE"
	DataSourceTypeRelationalDB  = "RELATIONAL_DATABASE"
	DataSourceTypeEventBridge   = "AMAZON_EVENTBRIDGE"
)

Data source types.

View Source
const (
	SchemaStatusProcessing    = "PROCESSING"
	SchemaStatusActive        = "ACTIVE"
	SchemaStatusDeleting      = "DELETING"
	SchemaStatusFailed        = "FAILED"
	SchemaStatusSuccess       = "SUCCESS"
	SchemaStatusNotApplicable = "NOT_APPLICABLE"
)

Schema status.

Variables

This section is empty.

Functions

This section is empty.

Types

type APIData added in v0.6.0

type APIData struct {
	API         *GraphqlAPI            `json:"api"`
	DataSources map[string]*DataSource `json:"dataSources"` // key: name
	Resolvers   map[string]*Resolver   `json:"resolvers"`   // key: typeName:fieldName
	Schema      *SchemaCreationStatus  `json:"schema"`
}

APIData holds all data associated with a GraphQL API.

type AWSIAMConfig

type AWSIAMConfig struct {
	SigningRegion      string `json:"signingRegion,omitempty"`
	SigningServiceName string `json:"signingServiceName,omitempty"`
}

AWSIAMConfig represents AWS IAM configuration.

type AuthenticationProvider

type AuthenticationProvider struct {
	AuthenticationType     string                  `json:"authenticationType,omitempty"`
	OpenIDConnectConfig    *OpenIDConnectConfig    `json:"openIDConnectConfig,omitempty"`
	UserPoolConfig         *UserPoolConfig         `json:"userPoolConfig,omitempty"`
	LambdaAuthorizerConfig *LambdaAuthorizerConfig `json:"lambdaAuthorizerConfig,omitempty"`
}

AuthenticationProvider represents an additional authentication provider.

type AuthorizationConfig

type AuthorizationConfig struct {
	AuthorizationType string        `json:"authorizationType,omitempty"`
	AWSIAMConfig      *AWSIAMConfig `json:"awsIamConfig,omitempty"`
}

AuthorizationConfig represents authorization configuration for HTTP endpoints.

type CachingConfig

type CachingConfig struct {
	TTL         int64    `json:"ttl,omitempty"`
	CachingKeys []string `json:"cachingKeys,omitempty"`
}

CachingConfig represents caching configuration.

type CreateDataSourceInput

type CreateDataSourceInput struct {
	APIID                    string                    `json:"apiId"`
	Name                     string                    `json:"name"`
	Description              string                    `json:"description,omitempty"`
	Type                     string                    `json:"type"`
	ServiceRoleARN           string                    `json:"serviceRoleArn,omitempty"`
	DynamoDBConfig           *DynamoDBConfig           `json:"dynamodbConfig,omitempty"`
	LambdaConfig             *LambdaConfig             `json:"lambdaConfig,omitempty"`
	ElasticsearchConfig      *ElasticsearchConfig      `json:"elasticsearchConfig,omitempty"`
	OpenSearchServiceConfig  *OpenSearchServiceConfig  `json:"openSearchServiceConfig,omitempty"`
	HTTPConfig               *HTTPConfig               `json:"httpConfig,omitempty"`
	RelationalDatabaseConfig *RelationalDatabaseConfig `json:"relationalDatabaseConfig,omitempty"`
	EventBridgeConfig        *EventBridgeConfig        `json:"eventBridgeConfig,omitempty"`
	MetricsConfig            string                    `json:"metricsConfig,omitempty"`
}

CreateDataSourceInput is the request for CreateDataSource.

type CreateDataSourceOutput

type CreateDataSourceOutput struct {
	DataSource *DataSource `json:"dataSource,omitempty"`
}

CreateDataSourceOutput is the response for CreateDataSource.

type CreateGraphqlAPIInput

type CreateGraphqlAPIInput struct {
	Name                              string                   `json:"name"`
	AuthenticationType                string                   `json:"authenticationType"`
	LogConfig                         *LogConfig               `json:"logConfig,omitempty"`
	UserPoolConfig                    *UserPoolConfig          `json:"userPoolConfig,omitempty"`
	OpenIDConnectConfig               *OpenIDConnectConfig     `json:"openIDConnectConfig,omitempty"`
	Tags                              map[string]string        `json:"tags,omitempty"`
	AdditionalAuthenticationProviders []AuthenticationProvider `json:"additionalAuthenticationProviders,omitempty"`
	XrayEnabled                       bool                     `json:"xrayEnabled,omitempty"`
	LambdaAuthorizerConfig            *LambdaAuthorizerConfig  `json:"lambdaAuthorizerConfig,omitempty"`
	Visibility                        string                   `json:"visibility,omitempty"`
	APIType                           string                   `json:"apiType,omitempty"`
	MergedAPIExecutionRoleARN         string                   `json:"mergedApiExecutionRoleArn,omitempty"`
	OwnerContact                      string                   `json:"ownerContact,omitempty"`
	IntrospectionConfig               string                   `json:"introspectionConfig,omitempty"`
	QueryDepthLimit                   int32                    `json:"queryDepthLimit,omitempty"`
	ResolverCountLimit                int32                    `json:"resolverCountLimit,omitempty"`
	EnhancedMetricsConfig             *EnhancedMetricsConfig   `json:"enhancedMetricsConfig,omitempty"`
}

CreateGraphqlAPIInput is the request for CreateGraphqlApi.

type CreateGraphqlAPIOutput

type CreateGraphqlAPIOutput struct {
	GraphqlAPI *GraphqlAPI `json:"graphqlApi,omitempty"`
}

CreateGraphqlAPIOutput is the response for CreateGraphqlApi.

type CreateResolverInput

type CreateResolverInput struct {
	APIID                   string          `json:"apiId"`
	TypeName                string          `json:"typeName"`
	FieldName               string          `json:"fieldName"`
	DataSourceName          string          `json:"dataSourceName,omitempty"`
	RequestMappingTemplate  string          `json:"requestMappingTemplate,omitempty"`
	ResponseMappingTemplate string          `json:"responseMappingTemplate,omitempty"`
	Kind                    string          `json:"kind,omitempty"`
	PipelineConfig          *PipelineConfig `json:"pipelineConfig,omitempty"`
	SyncConfig              *SyncConfig     `json:"syncConfig,omitempty"`
	CachingConfig           *CachingConfig  `json:"cachingConfig,omitempty"`
	MaxBatchSize            int32           `json:"maxBatchSize,omitempty"`
	Runtime                 *RuntimeConfig  `json:"runtime,omitempty"`
	Code                    string          `json:"code,omitempty"`
	MetricsConfig           string          `json:"metricsConfig,omitempty"`
}

CreateResolverInput is the request for CreateResolver.

type CreateResolverOutput

type CreateResolverOutput struct {
	Resolver *Resolver `json:"resolver,omitempty"`
}

CreateResolverOutput is the response for CreateResolver.

type DataSource

type DataSource struct {
	DataSourceARN            string                    `json:"dataSourceArn,omitempty"`
	Name                     string                    `json:"name,omitempty"`
	Description              string                    `json:"description,omitempty"`
	Type                     string                    `json:"type,omitempty"`
	ServiceRoleARN           string                    `json:"serviceRoleArn,omitempty"`
	DynamoDBConfig           *DynamoDBConfig           `json:"dynamodbConfig,omitempty"`
	LambdaConfig             *LambdaConfig             `json:"lambdaConfig,omitempty"`
	ElasticsearchConfig      *ElasticsearchConfig      `json:"elasticsearchConfig,omitempty"`
	OpenSearchServiceConfig  *OpenSearchServiceConfig  `json:"openSearchServiceConfig,omitempty"`
	HTTPConfig               *HTTPConfig               `json:"httpConfig,omitempty"`
	RelationalDatabaseConfig *RelationalDatabaseConfig `json:"relationalDatabaseConfig,omitempty"`
	EventBridgeConfig        *EventBridgeConfig        `json:"eventBridgeConfig,omitempty"`
	MetricsConfig            string                    `json:"metricsConfig,omitempty"`
}

DataSource represents an AppSync data source.

type DeleteGraphqlAPIInput

type DeleteGraphqlAPIInput struct {
	APIID string `json:"apiId"`
}

DeleteGraphqlAPIInput is the request for DeleteGraphqlApi.

type DeltaSyncConfig

type DeltaSyncConfig struct {
	BaseTableTTL       int64  `json:"baseTableTTL,omitempty"`
	DeltaSyncTableName string `json:"deltaSyncTableName,omitempty"`
	DeltaSyncTableTTL  int64  `json:"deltaSyncTableTTL,omitempty"`
}

DeltaSyncConfig represents delta sync configuration.

type DynamoDBConfig

type DynamoDBConfig struct {
	TableName            string           `json:"tableName,omitempty"`
	AWSRegion            string           `json:"awsRegion,omitempty"`
	UseCallerCredentials bool             `json:"useCallerCredentials,omitempty"`
	DeltaSyncConfig      *DeltaSyncConfig `json:"deltaSyncConfig,omitempty"`
	Versioned            bool             `json:"versioned,omitempty"`
}

DynamoDBConfig represents DynamoDB data source configuration.

type ElasticsearchConfig

type ElasticsearchConfig struct {
	Endpoint  string `json:"endpoint,omitempty"`
	AWSRegion string `json:"awsRegion,omitempty"`
}

ElasticsearchConfig represents Elasticsearch data source configuration.

type EnhancedMetricsConfig

type EnhancedMetricsConfig struct {
	ResolverLevelMetricsBehavior   string `json:"resolverLevelMetricsBehavior,omitempty"`
	DataSourceLevelMetricsBehavior string `json:"dataSourceLevelMetricsBehavior,omitempty"`
	OperationLevelMetricsConfig    string `json:"operationLevelMetricsConfig,omitempty"`
}

EnhancedMetricsConfig represents enhanced metrics configuration.

type Error

type Error struct {
	Code    string
	Message string
}

Error represents an AppSync error.

func (*Error) Error

func (e *Error) Error() string

Error implements the error interface.

type ErrorResponse

type ErrorResponse struct {
	Type    string `json:"__type"`
	Message string `json:"message"`
}

ErrorResponse represents an AppSync error response.

type EventBridgeConfig

type EventBridgeConfig struct {
	EventBusARN string `json:"eventBusArn,omitempty"`
}

EventBridgeConfig represents EventBridge data source configuration.

type GetGraphqlAPIInput

type GetGraphqlAPIInput struct {
	APIID string `json:"apiId"`
}

GetGraphqlAPIInput is the request for GetGraphqlApi.

type GetGraphqlAPIOutput

type GetGraphqlAPIOutput struct {
	GraphqlAPI *GraphqlAPI `json:"graphqlApi,omitempty"`
}

GetGraphqlAPIOutput is the response for GetGraphqlApi.

type GraphqlAPI

type GraphqlAPI struct {
	APIId                             string                   `json:"apiId,omitempty"`
	Name                              string                   `json:"name,omitempty"`
	AuthenticationType                string                   `json:"authenticationType,omitempty"`
	LogConfig                         *LogConfig               `json:"logConfig,omitempty"`
	UserPoolConfig                    *UserPoolConfig          `json:"userPoolConfig,omitempty"`
	OpenIDConnectConfig               *OpenIDConnectConfig     `json:"openIDConnectConfig,omitempty"`
	ARN                               string                   `json:"arn,omitempty"`
	URIs                              map[string]string        `json:"uris,omitempty"`
	Tags                              map[string]string        `json:"tags,omitempty"`
	AdditionalAuthenticationProviders []AuthenticationProvider `json:"additionalAuthenticationProviders,omitempty"`
	XrayEnabled                       bool                     `json:"xrayEnabled,omitempty"`
	WafWebACLARN                      string                   `json:"wafWebAclArn,omitempty"`
	LambdaAuthorizerConfig            *LambdaAuthorizerConfig  `json:"lambdaAuthorizerConfig,omitempty"`
	DNSMap                            map[string]string        `json:"dns,omitempty"`
	Visibility                        string                   `json:"visibility,omitempty"`
	APIType                           string                   `json:"apiType,omitempty"`
	MergedAPIExecutionRoleARN         string                   `json:"mergedApiExecutionRoleArn,omitempty"`
	Owner                             string                   `json:"owner,omitempty"`
	OwnerContact                      string                   `json:"ownerContact,omitempty"`
	IntrospectionConfig               string                   `json:"introspectionConfig,omitempty"`
	QueryDepthLimit                   int32                    `json:"queryDepthLimit,omitempty"`
	ResolverCountLimit                int32                    `json:"resolverCountLimit,omitempty"`
	EnhancedMetricsConfig             *EnhancedMetricsConfig   `json:"enhancedMetricsConfig,omitempty"`
}

GraphqlAPI represents an AWS AppSync GraphQL API.

type HTTPConfig

type HTTPConfig struct {
	Endpoint            string               `json:"endpoint,omitempty"`
	AuthorizationConfig *AuthorizationConfig `json:"authorizationConfig,omitempty"`
}

HTTPConfig represents HTTP data source configuration.

type LambdaAuthorizerConfig

type LambdaAuthorizerConfig struct {
	AuthorizerResultTTLInSeconds int32  `json:"authorizerResultTtlInSeconds,omitempty"`
	AuthorizerURI                string `json:"authorizerUri,omitempty"`
	IdentityValidationExpression string `json:"identityValidationExpression,omitempty"`
}

LambdaAuthorizerConfig represents Lambda authorizer configuration.

type LambdaConfig

type LambdaConfig struct {
	LambdaFunctionARN string `json:"lambdaFunctionArn,omitempty"`
}

LambdaConfig represents Lambda data source configuration.

type LambdaConflictHandlerConfig

type LambdaConflictHandlerConfig struct {
	LambdaConflictHandlerARN string `json:"lambdaConflictHandlerArn,omitempty"`
}

LambdaConflictHandlerConfig represents Lambda conflict handler configuration.

type ListGraphqlAPIsInput

type ListGraphqlAPIsInput struct {
	NextToken  string `json:"nextToken,omitempty"`
	MaxResults int32  `json:"maxResults,omitempty"`
	APIType    string `json:"apiType,omitempty"`
	Owner      string `json:"owner,omitempty"`
}

ListGraphqlAPIsInput is the request for ListGraphqlApis.

type ListGraphqlAPIsOutput

type ListGraphqlAPIsOutput struct {
	GraphqlAPIs []GraphqlAPI `json:"graphqlApis,omitempty"`
	NextToken   string       `json:"nextToken,omitempty"`
}

ListGraphqlAPIsOutput is the response for ListGraphqlApis.

type LogConfig

type LogConfig struct {
	FieldLogLevel         string `json:"fieldLogLevel,omitempty"`
	CloudWatchLogsRoleARN string `json:"cloudWatchLogsRoleArn,omitempty"`
	ExcludeVerboseContent bool   `json:"excludeVerboseContent,omitempty"`
}

LogConfig represents logging configuration.

type MemoryStorage

type MemoryStorage struct {
	APIs map[string]*APIData `json:"apis"` // key: apiID
	// contains filtered or unexported fields
}

MemoryStorage implements Storage with in-memory data structures.

func NewMemoryStorage

func NewMemoryStorage(opts ...Option) *MemoryStorage

NewMemoryStorage creates a new in-memory storage.

func (*MemoryStorage) Close added in v0.6.0

func (s *MemoryStorage) Close() error

Close saves the storage state to disk if persistence is enabled.

func (*MemoryStorage) CreateDataSource

func (s *MemoryStorage) CreateDataSource(_ context.Context, input *CreateDataSourceInput) (*DataSource, error)

CreateDataSource creates a new data source for a GraphQL API.

func (*MemoryStorage) CreateGraphqlAPI

func (s *MemoryStorage) CreateGraphqlAPI(_ context.Context, input *CreateGraphqlAPIInput) (*GraphqlAPI, error)

CreateGraphqlAPI creates a new GraphQL API.

func (*MemoryStorage) CreateResolver

func (s *MemoryStorage) CreateResolver(_ context.Context, input *CreateResolverInput) (*Resolver, error)

CreateResolver creates a new resolver for a GraphQL API.

func (*MemoryStorage) DeleteGraphqlAPI

func (s *MemoryStorage) DeleteGraphqlAPI(_ context.Context, apiID string) error

DeleteGraphqlAPI deletes a GraphQL API.

func (*MemoryStorage) GetGraphqlAPI

func (s *MemoryStorage) GetGraphqlAPI(_ context.Context, apiID string) (*GraphqlAPI, error)

GetGraphqlAPI retrieves a GraphQL API.

func (*MemoryStorage) ListGraphqlAPIs

func (s *MemoryStorage) ListGraphqlAPIs(_ context.Context, input *ListGraphqlAPIsInput) ([]GraphqlAPI, string, error)

ListGraphqlAPIs lists all GraphQL APIs with pagination support.

func (*MemoryStorage) MarshalJSON added in v0.6.0

func (s *MemoryStorage) MarshalJSON() ([]byte, error)

MarshalJSON serializes the storage state to JSON.

func (*MemoryStorage) StartSchemaCreation

func (s *MemoryStorage) StartSchemaCreation(_ context.Context, apiID string, _ []byte) (*SchemaCreationStatus, error)

StartSchemaCreation starts schema creation for a GraphQL API.

func (*MemoryStorage) UnmarshalJSON added in v0.6.0

func (s *MemoryStorage) UnmarshalJSON(data []byte) error

UnmarshalJSON restores the storage state from JSON.

type OpenIDConnectConfig

type OpenIDConnectConfig struct {
	Issuer   string `json:"issuer,omitempty"`
	ClientID string `json:"clientId,omitempty"`
	IATTTL   int64  `json:"iatTTL,omitempty"`
	AuthTTL  int64  `json:"authTTL,omitempty"`
}

OpenIDConnectConfig represents OpenID Connect configuration.

type OpenSearchServiceConfig

type OpenSearchServiceConfig struct {
	Endpoint  string `json:"endpoint,omitempty"`
	AWSRegion string `json:"awsRegion,omitempty"`
}

OpenSearchServiceConfig represents OpenSearch data source configuration.

type Option added in v0.6.0

type Option func(*MemoryStorage)

Option is a configuration option for MemoryStorage.

func WithDataDir added in v0.6.0

func WithDataDir(dir string) Option

WithDataDir enables persistent storage in the specified directory.

type PipelineConfig

type PipelineConfig struct {
	Functions []string `json:"functions,omitempty"`
}

PipelineConfig represents pipeline resolver configuration.

type RDSHTTPEndpointConfig

type RDSHTTPEndpointConfig struct {
	AWSRegion           string `json:"awsRegion,omitempty"`
	DBClusterIdentifier string `json:"dbClusterIdentifier,omitempty"`
	DatabaseName        string `json:"databaseName,omitempty"`
	Schema              string `json:"schema,omitempty"`
	AWSSecretStoreARN   string `json:"awsSecretStoreArn,omitempty"`
}

RDSHTTPEndpointConfig represents RDS HTTP endpoint configuration.

type RelationalDatabaseConfig

type RelationalDatabaseConfig struct {
	RelationalDatabaseSourceType string                 `json:"relationalDatabaseSourceType,omitempty"`
	RDSHTTPEndpointConfig        *RDSHTTPEndpointConfig `json:"rdsHttpEndpointConfig,omitempty"`
}

RelationalDatabaseConfig represents relational database configuration.

type Resolver

type Resolver struct {
	TypeName                string          `json:"typeName,omitempty"`
	FieldName               string          `json:"fieldName,omitempty"`
	DataSourceName          string          `json:"dataSourceName,omitempty"`
	ResolverARN             string          `json:"resolverArn,omitempty"`
	RequestMappingTemplate  string          `json:"requestMappingTemplate,omitempty"`
	ResponseMappingTemplate string          `json:"responseMappingTemplate,omitempty"`
	Kind                    string          `json:"kind,omitempty"`
	PipelineConfig          *PipelineConfig `json:"pipelineConfig,omitempty"`
	SyncConfig              *SyncConfig     `json:"syncConfig,omitempty"`
	CachingConfig           *CachingConfig  `json:"cachingConfig,omitempty"`
	MaxBatchSize            int32           `json:"maxBatchSize,omitempty"`
	Runtime                 *RuntimeConfig  `json:"runtime,omitempty"`
	Code                    string          `json:"code,omitempty"`
	MetricsConfig           string          `json:"metricsConfig,omitempty"`
}

Resolver represents an AppSync resolver.

type RuntimeConfig

type RuntimeConfig struct {
	Name           string `json:"name,omitempty"`
	RuntimeVersion string `json:"runtimeVersion,omitempty"`
}

RuntimeConfig represents resolver runtime configuration.

type SchemaCreationStatus

type SchemaCreationStatus struct {
	Status  string `json:"status,omitempty"`
	Details string `json:"details,omitempty"`
}

SchemaCreationStatus represents schema creation status.

type Service

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

Service implements the AppSync service.

func New

func New(storage Storage) *Service

New creates a new AppSync service.

func (*Service) Close added in v0.6.0

func (s *Service) Close() error

Close saves the storage state if persistence is enabled.

func (*Service) CreateDataSource

func (s *Service) CreateDataSource(w http.ResponseWriter, r *http.Request)

CreateDataSource handles the CreateDataSource operation.

func (*Service) CreateGraphqlAPI

func (s *Service) CreateGraphqlAPI(w http.ResponseWriter, r *http.Request)

CreateGraphqlAPI handles the CreateGraphqlAPI operation.

func (*Service) CreateResolver

func (s *Service) CreateResolver(w http.ResponseWriter, r *http.Request)

CreateResolver handles the CreateResolver operation.

func (*Service) DeleteGraphqlAPI

func (s *Service) DeleteGraphqlAPI(w http.ResponseWriter, r *http.Request)

DeleteGraphqlAPI handles the DeleteGraphqlAPI operation.

func (*Service) GetGraphqlAPI

func (s *Service) GetGraphqlAPI(w http.ResponseWriter, r *http.Request)

GetGraphqlAPI handles the GetGraphqlAPI operation.

func (*Service) ListGraphqlAPIs

func (s *Service) ListGraphqlAPIs(w http.ResponseWriter, r *http.Request)

ListGraphqlAPIs handles the ListGraphqlAPIs operation.

func (*Service) Name

func (s *Service) Name() string

Name returns the service name.

func (*Service) RegisterRoutes

func (s *Service) RegisterRoutes(r service.Router)

RegisterRoutes registers the AppSync routes. AppSync uses REST API protocol with /v1 prefix. Note: Routes use /appsync prefix for internal routing to avoid S3 conflicts.

func (*Service) StartSchemaCreation

func (s *Service) StartSchemaCreation(w http.ResponseWriter, r *http.Request)

StartSchemaCreation handles the StartSchemaCreation operation.

type StartSchemaCreationInput

type StartSchemaCreationInput struct {
	APIID      string `json:"apiId"`
	Definition []byte `json:"definition"`
}

StartSchemaCreationInput is the request for StartSchemaCreation.

type StartSchemaCreationOutput

type StartSchemaCreationOutput struct {
	Status string `json:"status,omitempty"`
}

StartSchemaCreationOutput is the response for StartSchemaCreation.

type Storage

type Storage interface {
	CreateGraphqlAPI(ctx context.Context, input *CreateGraphqlAPIInput) (*GraphqlAPI, error)
	DeleteGraphqlAPI(ctx context.Context, apiID string) error
	GetGraphqlAPI(ctx context.Context, apiID string) (*GraphqlAPI, error)
	ListGraphqlAPIs(ctx context.Context, input *ListGraphqlAPIsInput) ([]GraphqlAPI, string, error)
	CreateDataSource(ctx context.Context, input *CreateDataSourceInput) (*DataSource, error)
	CreateResolver(ctx context.Context, input *CreateResolverInput) (*Resolver, error)
	StartSchemaCreation(ctx context.Context, apiID string, definition []byte) (*SchemaCreationStatus, error)
}

Storage defines the interface for AppSync storage operations.

type SyncConfig

type SyncConfig struct {
	ConflictHandler             string                       `json:"conflictHandler,omitempty"`
	ConflictDetection           string                       `json:"conflictDetection,omitempty"`
	LambdaConflictHandlerConfig *LambdaConflictHandlerConfig `json:"lambdaConflictHandlerConfig,omitempty"`
}

SyncConfig represents sync configuration for resolvers.

type UserPoolConfig

type UserPoolConfig struct {
	UserPoolID       string `json:"userPoolId,omitempty"`
	AWSRegion        string `json:"awsRegion,omitempty"`
	DefaultAction    string `json:"defaultAction,omitempty"`
	AppIDClientRegex string `json:"appIdClientRegex,omitempty"`
}

UserPoolConfig represents Cognito User Pool configuration.

Jump to

Keyboard shortcuts

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