UpdateResolver - AWS AppSync

UpdateResolver

Updates a Resolver object.

Request Syntax

POST /v1/apis/apiId/types/typeName/resolvers/fieldName HTTP/1.1 Content-type: application/json { "cachingConfig": { "cachingKeys": [ "string" ], "ttl": number }, "dataSourceName": "string", "kind": "string", "maxBatchSize": number, "pipelineConfig": { "functions": [ "string" ] }, "requestMappingTemplate": "string", "responseMappingTemplate": "string", "syncConfig": { "conflictDetection": "string", "conflictHandler": "string", "lambdaConflictHandlerConfig": { "lambdaConflictHandlerArn": "string" } } }

URI Request Parameters

The request uses the following URI parameters.

apiId

The API ID.

Required: Yes

fieldName

The new field name.

Length Constraints: Minimum length of 1. Maximum length of 65536.

Pattern: [_A-Za-z][_0-9A-Za-z]*

Required: Yes

typeName

The new type name.

Length Constraints: Minimum length of 1. Maximum length of 65536.

Pattern: [_A-Za-z][_0-9A-Za-z]*

Required: Yes

Request Body

The request accepts the following data in JSON format.

cachingConfig

The caching configuration for the resolver.

Type: CachingConfig object

Required: No

dataSourceName

The new data source name.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 65536.

Pattern: [_A-Za-z][_0-9A-Za-z]*

Required: No

kind

The resolver type.

  • UNIT: A UNIT resolver type. A UNIT resolver is the default resolver type. You can use a UNIT resolver to run a GraphQL query against a single data source.

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

Type: String

Valid Values: UNIT | PIPELINE

Required: No

maxBatchSize

The maximum batching size for a resolver.

Type: Integer

Valid Range: Minimum value of 0. Maximum value of 2000.

Required: No

pipelineConfig

The PipelineConfig.

Type: PipelineConfig object

Required: No

requestMappingTemplate

The new request mapping template.

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).

VTL request mapping templates are optional when using an AWS Lambda data source. For all other data sources, VTL request and response mapping templates are required.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 65536.

Pattern: ^.*$

Required: No

responseMappingTemplate

The new response mapping template.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 65536.

Pattern: ^.*$

Required: No

syncConfig

The SyncConfig for a resolver attached to a versioned data source.

Type: SyncConfig object

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "resolver": { "cachingConfig": { "cachingKeys": [ "string" ], "ttl": number }, "dataSourceName": "string", "fieldName": "string", "kind": "string", "maxBatchSize": number, "pipelineConfig": { "functions": [ "string" ] }, "requestMappingTemplate": "string", "resolverArn": "string", "responseMappingTemplate": "string", "syncConfig": { "conflictDetection": "string", "conflictHandler": "string", "lambdaConflictHandlerConfig": { "lambdaConflictHandlerArn": "string" } }, "typeName": "string" } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

resolver

The updated Resolver object.

Type: Resolver object

Errors

For information about the errors that are common to all actions, see Common Errors.

ConcurrentModificationException

Another modification is in progress at this time and it must complete before you can make your change.

HTTP Status Code: 409

InternalFailureException

An internal AWS AppSync error occurred. Try your request again.

HTTP Status Code: 500

NotFoundException

The resource specified in the request was not found. Check the resource, and then try again.

HTTP Status Code: 404

UnauthorizedException

You aren't authorized to perform this operation.

HTTP Status Code: 401

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: