[ aws . appsync ]

create-resolver

Description

Creates a Resolver object.

A resolver converts incoming requests into a format that a data source can understand and converts the data source’s responses into GraphQL.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  create-resolver
--api-id <value>
--type-name <value>
--field-name <value>
[--data-source-name <value>]
--request-mapping-template <value>
[--response-mapping-template <value>]
[--kind <value>]
[--pipeline-config <value>]
[--sync-config <value>]
[--caching-config <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--cli-auto-prompt <value>]

Options

--api-id (string)

The ID for the GraphQL API for which the resolver is being created.

--type-name (string)

The name of the Type .

--field-name (string)

The name of the field to attach the resolver to.

--data-source-name (string)

The name of the data source for which the resolver is being created.

--request-mapping-template (string)

The mapping template to be used for requests.

A resolver uses a request mapping template to convert a GraphQL expression into a format that a data source can understand. Mapping templates are written in Apache Velocity Template Language (VTL).

--response-mapping-template (string)

The mapping template to be used for responses from the data source.

--kind (string)

The resolver type.

  • UNIT : A UNIT resolver type. A UNIT resolver is the default resolver type. A UNIT resolver enables you to execute a GraphQL query against a single data source.

  • PIPELINE : A PIPELINE resolver type. A PIPELINE resolver enables you to execute a series of Function in a serial manner. You can use a pipeline resolver to execute a GraphQL query against multiple data sources.

Possible values:

  • UNIT

  • PIPELINE

--pipeline-config (structure)

The PipelineConfig .

functions -> (list)

A list of Function objects.

(string)

Shorthand Syntax:

functions=string,string

JSON Syntax:

{
  "functions": ["string", ...]
}

--sync-config (structure)

The SyncConfig for a resolver attached to a versioned datasource.

conflictHandler -> (string)

The Conflict Resolution strategy to perform in the event of a conflict.

  • OPTIMISTIC_CONCURRENCY : Resolve conflicts by rejecting mutations when versions do not match the latest version at the server.

  • AUTOMERGE : Resolve conflicts with the Automerge conflict resolution strategy.

  • LAMBDA : Resolve conflicts with a Lambda function supplied in the LambdaConflictHandlerConfig.

conflictDetection -> (string)

The Conflict Detection strategy to use.

  • VERSION : Detect conflicts based on object versions for this resolver.

  • NONE : Do not detect conflicts when executing this resolver.

lambdaConflictHandlerConfig -> (structure)

The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler.

lambdaConflictHandlerArn -> (string)

The Arn for the Lambda function to use as the Conflict Handler.

Shorthand Syntax:

conflictHandler=string,conflictDetection=string,lambdaConflictHandlerConfig={lambdaConflictHandlerArn=string}

JSON Syntax:

{
  "conflictHandler": "OPTIMISTIC_CONCURRENCY"|"LAMBDA"|"AUTOMERGE"|"NONE",
  "conflictDetection": "VERSION"|"NONE",
  "lambdaConflictHandlerConfig": {
    "lambdaConflictHandlerArn": "string"
  }
}

--caching-config (structure)

The caching configuration for the resolver.

ttl -> (long)

The TTL in seconds for a resolver that has caching enabled.

Valid values are between 1 and 3600 seconds.

cachingKeys -> (list)

The caching keys for a resolver that has caching enabled.

Valid values are entries from the $context.arguments , $context.source , and $context.identity maps.

(string)

Shorthand Syntax:

ttl=long,cachingKeys=string,string

JSON Syntax:

{
  "ttl": long,
  "cachingKeys": ["string", ...]
}

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

--cli-auto-prompt (boolean) Automatically prompt for CLI input parameters.

See ‘aws help’ for descriptions of global parameters.

Output

resolver -> (structure)

The Resolver object.

typeName -> (string)

The resolver type name.

fieldName -> (string)

The resolver field name.

dataSourceName -> (string)

The resolver data source name.

resolverArn -> (string)

The resolver ARN.

requestMappingTemplate -> (string)

The request mapping template.

responseMappingTemplate -> (string)

The response mapping template.

kind -> (string)

The resolver type.

  • UNIT : A UNIT resolver type. A UNIT resolver is the default resolver type. A UNIT resolver enables you to execute a GraphQL query against a single data source.

  • PIPELINE : A PIPELINE resolver type. A PIPELINE resolver enables you to execute a series of Function in a serial manner. You can use a pipeline resolver to execute a GraphQL query against multiple data sources.

pipelineConfig -> (structure)

The PipelineConfig .

functions -> (list)

A list of Function objects.

(string)

syncConfig -> (structure)

The SyncConfig for a resolver attached to a versioned datasource.

conflictHandler -> (string)

The Conflict Resolution strategy to perform in the event of a conflict.

  • OPTIMISTIC_CONCURRENCY : Resolve conflicts by rejecting mutations when versions do not match the latest version at the server.

  • AUTOMERGE : Resolve conflicts with the Automerge conflict resolution strategy.

  • LAMBDA : Resolve conflicts with a Lambda function supplied in the LambdaConflictHandlerConfig.

conflictDetection -> (string)

The Conflict Detection strategy to use.

  • VERSION : Detect conflicts based on object versions for this resolver.

  • NONE : Do not detect conflicts when executing this resolver.

lambdaConflictHandlerConfig -> (structure)

The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler.

lambdaConflictHandlerArn -> (string)

The Arn for the Lambda function to use as the Conflict Handler.

cachingConfig -> (structure)

The caching configuration for the resolver.

ttl -> (long)

The TTL in seconds for a resolver that has caching enabled.

Valid values are between 1 and 3600 seconds.

cachingKeys -> (list)

The caching keys for a resolver that has caching enabled.

Valid values are entries from the $context.arguments , $context.source , and $context.identity maps.

(string)