AppSync

class aws_cdk.aws_events_targets.AppSync(appsync_api, *, graph_ql_operation, event_role=None, variables=None, dead_letter_queue=None, max_event_age=None, retry_attempts=None)

Bases: object

Use an AppSync GraphQL API as a target for Amazon EventBridge rules.

ExampleMetadata:

infused

Example:

import aws_cdk.aws_appsync as appsync


api = appsync.GraphqlApi(self, "api",
    name="api",
    definition=appsync.Definition.from_file("schema.graphql"),
    authorization_config=appsync.AuthorizationConfig(
        default_authorization=appsync.AuthorizationMode(authorization_type=appsync.AuthorizationType.IAM)
    )
)

rule = events.Rule(self, "Rule",
    schedule=events.Schedule.rate(cdk.Duration.hours(1))
)

rule.add_target(targets.AppSync(api,
    graph_qLOperation="mutation Publish($message: String!){ publish(message: $message) { message } }",
    variables=events.RuleTargetInput.from_object({
        "message": "hello world"
    })
))
Parameters:
  • appsync_api (IGraphqlApi) –

  • graph_ql_operation (str) – The GraphQL operation; that is, the query, mutation, or subscription to be parsed and executed by the GraphQL service.

  • event_role (Optional[IRole]) – The role to assume before invoking the target (i.e., the pipeline) when the given rule is triggered. Default: - a new role with permissions to access mutations will be created

  • variables (Optional[RuleTargetInput]) – The variables that are include in the GraphQL operation. Default: - The entire event is used

  • dead_letter_queue (Optional[IQueue]) – The SQS queue to be used as deadLetterQueue. Check out the considerations for using a dead-letter queue. The events not successfully delivered are automatically retried for a specified period of time, depending on the retry policy of the target. If an event is not delivered before all retry attempts are exhausted, it will be sent to the dead letter queue. Default: - no dead-letter queue

  • max_event_age (Optional[Duration]) – The maximum age of a request that Lambda sends to a function for processing. Minimum value of 60. Maximum value of 86400. Default: Duration.hours(24)

  • retry_attempts (Union[int, float, None]) – The maximum number of times to retry when the function returns an error. Minimum value of 0. Maximum value of 185. Default: 185

Methods

bind(rule, _id=None)

Returns a RuleTarget that can be used to trigger this AppSync GraphQL API as a result from an EventBridge event.

Parameters:
  • rule (IRule) –

  • _id (Optional[str]) –

Return type:

RuleTargetConfig