The Automation API is now available. No CLI. No human-in-the-loop. Just your code. Learn More

Module appsync

This page documents the language specification for the aws package. If you're looking for help working with the inputs, outputs, or functions of aws resources in a Pulumi program, please see the resource documentation for examples and API reference.

Resources

Others

Resources

Resource ApiKey

class ApiKey extends CustomResource

Provides an AppSync API Key.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const exampleGraphQLApi = new aws.appsync.GraphQLApi("exampleGraphQLApi", {authenticationType: "API_KEY"});
const exampleApiKey = new aws.appsync.ApiKey("exampleApiKey", {
    apiId: exampleGraphQLApi.id,
    expires: "2018-05-03T04:00:00Z",
});

constructor

new ApiKey(name: string, args: ApiKeyArgs, opts?: pulumi.CustomResourceOptions)

Create a ApiKey resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ApiKeyState, opts?: pulumi.CustomResourceOptions): ApiKey

Get an existing ApiKey resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is ApiKey

Returns true if the given object is an instance of ApiKey. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property apiId

public apiId: pulumi.Output<string>;

The ID of the associated AppSync API

property description

public description: pulumi.Output<string>;

The API key description. Defaults to “Managed by Pulumi”.

property expires

public expires: pulumi.Output<string | undefined>;

RFC3339 string representation of the expiry date. Rounded down to nearest hour. By default, it is 7 days from the date of creation.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property key

public key: pulumi.Output<string>;

The API key

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource DataSource

class DataSource extends CustomResource

Provides an AppSync DataSource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const exampleTable = new aws.dynamodb.Table("exampleTable", {
    readCapacity: 1,
    writeCapacity: 1,
    hashKey: "UserId",
    attributes: [{
        name: "UserId",
        type: "S",
    }],
});
const exampleRole = new aws.iam.Role("exampleRole", {assumeRolePolicy: `{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Principal": {
        "Service": "appsync.amazonaws.com"
      },
      "Effect": "Allow"
    }
  ]
}
`});
const exampleRolePolicy = new aws.iam.RolePolicy("exampleRolePolicy", {
    role: exampleRole.id,
    policy: pulumi.interpolate`{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "dynamodb:*"
      ],
      "Effect": "Allow",
      "Resource": [
        "${exampleTable.arn}"
      ]
    }
  ]
}
`,
});
const exampleGraphQLApi = new aws.appsync.GraphQLApi("exampleGraphQLApi", {authenticationType: "API_KEY"});
const exampleDataSource = new aws.appsync.DataSource("exampleDataSource", {
    apiId: exampleGraphQLApi.id,
    name: "tf_appsync_example",
    serviceRoleArn: exampleRole.arn,
    type: "AMAZON_DYNAMODB",
    dynamodbConfig: {
        tableName: exampleTable.name,
    },
});

constructor

new DataSource(name: string, args: DataSourceArgs, opts?: pulumi.CustomResourceOptions)

Create a DataSource resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DataSourceState, opts?: pulumi.CustomResourceOptions): DataSource

Get an existing DataSource resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is DataSource

Returns true if the given object is an instance of DataSource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property apiId

public apiId: pulumi.Output<string>;

The API ID for the GraphQL API for the DataSource.

property arn

public arn: pulumi.Output<string>;

The ARN

property description

public description: pulumi.Output<string | undefined>;

A description of the DataSource.

property dynamodbConfig

public dynamodbConfig: pulumi.Output<DataSourceDynamodbConfig | undefined>;

DynamoDB settings. See below

property elasticsearchConfig

public elasticsearchConfig: pulumi.Output<DataSourceElasticsearchConfig | undefined>;

Amazon Elasticsearch settings. See below

property httpConfig

public httpConfig: pulumi.Output<DataSourceHttpConfig | undefined>;

HTTP settings. See below

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property lambdaConfig

public lambdaConfig: pulumi.Output<DataSourceLambdaConfig | undefined>;

AWS Lambda settings. See below

property name

public name: pulumi.Output<string>;

A user-supplied name for the DataSource.

property serviceRoleArn

public serviceRoleArn: pulumi.Output<string | undefined>;

The IAM service role ARN for the data source.

property type

public type: pulumi.Output<string>;

The type of the DataSource. Valid values: AWS_LAMBDA, AMAZON_DYNAMODB, AMAZON_ELASTICSEARCH, HTTP, NONE.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Function

class Function extends CustomResource

Provides an AppSync Function.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const exampleGraphQLApi = new aws.appsync.GraphQLApi("exampleGraphQLApi", {
    authenticationType: "API_KEY",
    schema: `type Mutation {
  putPost(id: ID!, title: String!): Post
}

type Post {
  id: ID!
  title: String!
}

type Query {
  singlePost(id: ID!): Post
}

schema {
  query: Query
  mutation: Mutation
}
`,
});
const exampleDataSource = new aws.appsync.DataSource("exampleDataSource", {
    apiId: exampleGraphQLApi.id,
    name: "example",
    type: "HTTP",
    httpConfig: {
        endpoint: "http://example.com",
    },
});
const exampleFunction = new aws.appsync.Function("exampleFunction", {
    apiId: exampleGraphQLApi.id,
    dataSource: exampleDataSource.name,
    name: "example",
    requestMappingTemplate: `{
    "version": "2018-05-29",
    "method": "GET",
    "resourcePath": "/",
    "params":{
        "headers": $utils.http.copyheaders($ctx.request.headers)
    }
}
`,
    responseMappingTemplate: `#if($ctx.result.statusCode == 200)
    $ctx.result.body
#else
    $utils.appendError($ctx.result.body, $ctx.result.statusCode)
#end
`,
});

constructor

new Function(name: string, args: FunctionArgs, opts?: pulumi.CustomResourceOptions)

Create a Function resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FunctionState, opts?: pulumi.CustomResourceOptions): Function

Get an existing Function resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Function

Returns true if the given object is an instance of Function. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property apiId

public apiId: pulumi.Output<string>;

The ID of the associated AppSync API.

property arn

public arn: pulumi.Output<string>;

The ARN of the Function object.

property dataSource

public dataSource: pulumi.Output<string>;

The Function DataSource name.

property description

public description: pulumi.Output<string | undefined>;

The Function description.

property functionId

public functionId: pulumi.Output<string>;

A unique ID representing the Function object.

property functionVersion

public functionVersion: pulumi.Output<string | undefined>;

The version of the request mapping template. Currently the supported value is 2018-05-29.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The Function name. The function name does not have to be unique.

property requestMappingTemplate

public requestMappingTemplate: pulumi.Output<string>;

The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template.

property responseMappingTemplate

public responseMappingTemplate: pulumi.Output<string>;

The Function response mapping template.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource GraphQLApi

class GraphQLApi extends CustomResource

Provides an AppSync GraphQL API.

Example Usage

API Key Authentication
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.appsync.GraphQLApi("example", {
    authenticationType: "API_KEY",
});
AWS Cognito User Pool Authentication
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.appsync.GraphQLApi("example", {
    authenticationType: "AMAZON_COGNITO_USER_POOLS",
    userPoolConfig: {
        awsRegion: data.aws_region.current.name,
        defaultAction: "DENY",
        userPoolId: aws_cognito_user_pool.example.id,
    },
});
AWS IAM Authentication
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.appsync.GraphQLApi("example", {
    authenticationType: "AWS_IAM",
});
With Schema
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.appsync.GraphQLApi("example", {
    authenticationType: "AWS_IAM",
    schema: `schema {
	query: Query
}
type Query {
  test: Int
}
`,
});
OpenID Connect Authentication
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.appsync.GraphQLApi("example", {
    authenticationType: "OPENID_CONNECT",
    openidConnectConfig: {
        issuer: "https://example.com",
    },
});
With Multiple Authentication Providers
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.appsync.GraphQLApi("example", {
    additionalAuthenticationProviders: [{
        authenticationType: "AWS_IAM",
    }],
    authenticationType: "API_KEY",
});
Enabling Logging
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const exampleRole = new aws.iam.Role("exampleRole", {assumeRolePolicy: `{
    "Version": "2012-10-17",
    "Statement": [
        {
        "Effect": "Allow",
        "Principal": {
            "Service": "appsync.amazonaws.com"
        },
        "Action": "sts:AssumeRole"
        }
    ]
}
`});
const exampleRolePolicyAttachment = new aws.iam.RolePolicyAttachment("exampleRolePolicyAttachment", {
    policyArn: "arn:aws:iam::aws:policy/service-role/AWSAppSyncPushToCloudWatchLogs",
    role: exampleRole.name,
});
// ... other configuration ...
const exampleGraphQLApi = new aws.appsync.GraphQLApi("exampleGraphQLApi", {logConfig: {
    cloudwatchLogsRoleArn: exampleRole.arn,
    fieldLogLevel: "ERROR",
}});

constructor

new GraphQLApi(name: string, args: GraphQLApiArgs, opts?: pulumi.CustomResourceOptions)

Create a GraphQLApi resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: GraphQLApiState, opts?: pulumi.CustomResourceOptions): GraphQLApi

Get an existing GraphQLApi resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is GraphQLApi

Returns true if the given object is an instance of GraphQLApi. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property additionalAuthenticationProviders

public additionalAuthenticationProviders: pulumi.Output<GraphQLApiAdditionalAuthenticationProvider[] | undefined>;

One or more additional authentication providers for the GraphqlApi. Defined below.

property arn

public arn: pulumi.Output<string>;

The ARN

property authenticationType

public authenticationType: pulumi.Output<string>;

The authentication type. Valid values: API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property logConfig

public logConfig: pulumi.Output<GraphQLApiLogConfig | undefined>;

Nested argument containing logging configuration. Defined below.

property name

public name: pulumi.Output<string>;

A user-supplied name for the GraphqlApi.

property openidConnectConfig

public openidConnectConfig: pulumi.Output<GraphQLApiOpenidConnectConfig | undefined>;

Nested argument containing OpenID Connect configuration. Defined below.

property schema

public schema: pulumi.Output<string | undefined>;

The schema definition, in GraphQL schema language format. This provider cannot perform drift detection of this configuration.

property tags

public tags: pulumi.Output<{[key: string]: string} | undefined>;

A map of tags to assign to the resource.

property uris

public uris: pulumi.Output<{[key: string]: string}>;

Map of URIs associated with the API. e.g. uris["GRAPHQL"] = https://ID.appsync-api.REGION.amazonaws.com/graphql

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userPoolConfig

public userPoolConfig: pulumi.Output<GraphQLApiUserPoolConfig | undefined>;

The Amazon Cognito User Pool configuration. Defined below.

property xrayEnabled

public xrayEnabled: pulumi.Output<boolean | undefined>;

Whether tracing with X-ray is enabled. Defaults to false.

Resource Resolver

class Resolver extends CustomResource

Provides an AppSync Resolver.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const testGraphQLApi = new aws.appsync.GraphQLApi("testGraphQLApi", {
    authenticationType: "API_KEY",
    schema: `type Mutation {
	putPost(id: ID!, title: String!): Post
}

type Post {
	id: ID!
	title: String!
}

type Query {
	singlePost(id: ID!): Post
}

schema {
	query: Query
	mutation: Mutation
}
`,
});
const testDataSource = new aws.appsync.DataSource("testDataSource", {
    apiId: testGraphQLApi.id,
    name: "tf_example",
    type: "HTTP",
    httpConfig: {
        endpoint: "http://example.com",
    },
});
// UNIT type resolver (default)
const testResolver = new aws.appsync.Resolver("testResolver", {
    apiId: testGraphQLApi.id,
    field: "singlePost",
    type: "Query",
    dataSource: testDataSource.name,
    requestTemplate: `{
    "version": "2018-05-29",
    "method": "GET",
    "resourcePath": "/",
    "params":{
        "headers": $utils.http.copyheaders($ctx.request.headers)
    }
}
`,
    responseTemplate: `#if($ctx.result.statusCode == 200)
    $ctx.result.body
#else
    $utils.appendError($ctx.result.body, $ctx.result.statusCode)
#end
`,
    cachingConfig: {
        cachingKeys: [
            `$context.identity.sub`,
            `$context.arguments.id`,
        ],
        ttl: 60,
    },
});
// PIPELINE type resolver
const mutationPipelineTest = new aws.appsync.Resolver("mutationPipelineTest", {
    type: "Mutation",
    apiId: testGraphQLApi.id,
    field: "pipelineTest",
    requestTemplate: "{}",
    responseTemplate: `$util.toJson($ctx.result)`,
    kind: "PIPELINE",
    pipelineConfig: {
        functions: [
            aws_appsync_function.test1.function_id,
            aws_appsync_function.test2.function_id,
            aws_appsync_function.test3.function_id,
        ],
    },
});

constructor

new Resolver(name: string, args: ResolverArgs, opts?: pulumi.CustomResourceOptions)

Create a Resolver resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ResolverState, opts?: pulumi.CustomResourceOptions): Resolver

Get an existing Resolver resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Resolver

Returns true if the given object is an instance of Resolver. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property apiId

public apiId: pulumi.Output<string>;

The API ID for the GraphQL API.

property arn

public arn: pulumi.Output<string>;

The ARN

property cachingConfig

public cachingConfig: pulumi.Output<ResolverCachingConfig | undefined>;

The CachingConfig.

property dataSource

public dataSource: pulumi.Output<string | undefined>;

The DataSource name.

property field

public field: pulumi.Output<string>;

The field name from the schema defined in the GraphQL API.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property kind

public kind: pulumi.Output<string | undefined>;

The resolver type. Valid values are UNIT and PIPELINE.

property pipelineConfig

public pipelineConfig: pulumi.Output<ResolverPipelineConfig | undefined>;

The PipelineConfig.

property requestTemplate

public requestTemplate: pulumi.Output<string>;

The request mapping template for UNIT resolver or ‘before mapping template’ for PIPELINE resolver.

property responseTemplate

public responseTemplate: pulumi.Output<string>;

The response mapping template for UNIT resolver or ‘after mapping template’ for PIPELINE resolver.

property type

public type: pulumi.Output<string>;

The type name from the schema defined in the GraphQL API.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Others

interface ApiKeyArgs

interface ApiKeyArgs

The set of arguments for constructing a ApiKey resource.

property apiId

apiId: pulumi.Input<string>;

The ID of the associated AppSync API

property description

description?: pulumi.Input<string>;

The API key description. Defaults to “Managed by Pulumi”.

property expires

expires?: pulumi.Input<string>;

RFC3339 string representation of the expiry date. Rounded down to nearest hour. By default, it is 7 days from the date of creation.

interface ApiKeyState

interface ApiKeyState

Input properties used for looking up and filtering ApiKey resources.

property apiId

apiId?: pulumi.Input<string>;

The ID of the associated AppSync API

property description

description?: pulumi.Input<string>;

The API key description. Defaults to “Managed by Pulumi”.

property expires

expires?: pulumi.Input<string>;

RFC3339 string representation of the expiry date. Rounded down to nearest hour. By default, it is 7 days from the date of creation.

property key

key?: pulumi.Input<string>;

The API key

interface DataSourceArgs

interface DataSourceArgs

The set of arguments for constructing a DataSource resource.

property apiId

apiId: pulumi.Input<string>;

The API ID for the GraphQL API for the DataSource.

property description

description?: pulumi.Input<string>;

A description of the DataSource.

property dynamodbConfig

dynamodbConfig?: pulumi.Input<DataSourceDynamodbConfig>;

DynamoDB settings. See below

property elasticsearchConfig

elasticsearchConfig?: pulumi.Input<DataSourceElasticsearchConfig>;

Amazon Elasticsearch settings. See below

property httpConfig

httpConfig?: pulumi.Input<DataSourceHttpConfig>;

HTTP settings. See below

property lambdaConfig

lambdaConfig?: pulumi.Input<DataSourceLambdaConfig>;

AWS Lambda settings. See below

property name

name?: pulumi.Input<string>;

A user-supplied name for the DataSource.

property serviceRoleArn

serviceRoleArn?: pulumi.Input<string>;

The IAM service role ARN for the data source.

property type

type: pulumi.Input<string>;

The type of the DataSource. Valid values: AWS_LAMBDA, AMAZON_DYNAMODB, AMAZON_ELASTICSEARCH, HTTP, NONE.

interface DataSourceState

interface DataSourceState

Input properties used for looking up and filtering DataSource resources.

property apiId

apiId?: pulumi.Input<string>;

The API ID for the GraphQL API for the DataSource.

property arn

arn?: pulumi.Input<string>;

The ARN

property description

description?: pulumi.Input<string>;

A description of the DataSource.

property dynamodbConfig

dynamodbConfig?: pulumi.Input<DataSourceDynamodbConfig>;

DynamoDB settings. See below

property elasticsearchConfig

elasticsearchConfig?: pulumi.Input<DataSourceElasticsearchConfig>;

Amazon Elasticsearch settings. See below

property httpConfig

httpConfig?: pulumi.Input<DataSourceHttpConfig>;

HTTP settings. See below

property lambdaConfig

lambdaConfig?: pulumi.Input<DataSourceLambdaConfig>;

AWS Lambda settings. See below

property name

name?: pulumi.Input<string>;

A user-supplied name for the DataSource.

property serviceRoleArn

serviceRoleArn?: pulumi.Input<string>;

The IAM service role ARN for the data source.

property type

type?: pulumi.Input<string>;

The type of the DataSource. Valid values: AWS_LAMBDA, AMAZON_DYNAMODB, AMAZON_ELASTICSEARCH, HTTP, NONE.

interface FunctionArgs

interface FunctionArgs

The set of arguments for constructing a Function resource.

property apiId

apiId: pulumi.Input<string>;

The ID of the associated AppSync API.

property dataSource

dataSource: pulumi.Input<string>;

The Function DataSource name.

property description

description?: pulumi.Input<string>;

The Function description.

property functionVersion

functionVersion?: pulumi.Input<string>;

The version of the request mapping template. Currently the supported value is 2018-05-29.

property name

name?: pulumi.Input<string>;

The Function name. The function name does not have to be unique.

property requestMappingTemplate

requestMappingTemplate: pulumi.Input<string>;

The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template.

property responseMappingTemplate

responseMappingTemplate: pulumi.Input<string>;

The Function response mapping template.

interface FunctionState

interface FunctionState

Input properties used for looking up and filtering Function resources.

property apiId

apiId?: pulumi.Input<string>;

The ID of the associated AppSync API.

property arn

arn?: pulumi.Input<string>;

The ARN of the Function object.

property dataSource

dataSource?: pulumi.Input<string>;

The Function DataSource name.

property description

description?: pulumi.Input<string>;

The Function description.

property functionId

functionId?: pulumi.Input<string>;

A unique ID representing the Function object.

property functionVersion

functionVersion?: pulumi.Input<string>;

The version of the request mapping template. Currently the supported value is 2018-05-29.

property name

name?: pulumi.Input<string>;

The Function name. The function name does not have to be unique.

property requestMappingTemplate

requestMappingTemplate?: pulumi.Input<string>;

The Function request mapping template. Functions support only the 2018-05-29 version of the request mapping template.

property responseMappingTemplate

responseMappingTemplate?: pulumi.Input<string>;

The Function response mapping template.

interface GraphQLApiArgs

interface GraphQLApiArgs

The set of arguments for constructing a GraphQLApi resource.

property additionalAuthenticationProviders

additionalAuthenticationProviders?: pulumi.Input<pulumi.Input<GraphQLApiAdditionalAuthenticationProvider>[]>;

One or more additional authentication providers for the GraphqlApi. Defined below.

property authenticationType

authenticationType: pulumi.Input<string>;

The authentication type. Valid values: API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT

property logConfig

logConfig?: pulumi.Input<GraphQLApiLogConfig>;

Nested argument containing logging configuration. Defined below.

property name

name?: pulumi.Input<string>;

A user-supplied name for the GraphqlApi.

property openidConnectConfig

openidConnectConfig?: pulumi.Input<GraphQLApiOpenidConnectConfig>;

Nested argument containing OpenID Connect configuration. Defined below.

property schema

schema?: pulumi.Input<string>;

The schema definition, in GraphQL schema language format. This provider cannot perform drift detection of this configuration.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A map of tags to assign to the resource.

property userPoolConfig

userPoolConfig?: pulumi.Input<GraphQLApiUserPoolConfig>;

The Amazon Cognito User Pool configuration. Defined below.

property xrayEnabled

xrayEnabled?: pulumi.Input<boolean>;

Whether tracing with X-ray is enabled. Defaults to false.

interface GraphQLApiState

interface GraphQLApiState

Input properties used for looking up and filtering GraphQLApi resources.

property additionalAuthenticationProviders

additionalAuthenticationProviders?: pulumi.Input<pulumi.Input<GraphQLApiAdditionalAuthenticationProvider>[]>;

One or more additional authentication providers for the GraphqlApi. Defined below.

property arn

arn?: pulumi.Input<string>;

The ARN

property authenticationType

authenticationType?: pulumi.Input<string>;

The authentication type. Valid values: API_KEY, AWS_IAM, AMAZON_COGNITO_USER_POOLS, OPENID_CONNECT

property logConfig

logConfig?: pulumi.Input<GraphQLApiLogConfig>;

Nested argument containing logging configuration. Defined below.

property name

name?: pulumi.Input<string>;

A user-supplied name for the GraphqlApi.

property openidConnectConfig

openidConnectConfig?: pulumi.Input<GraphQLApiOpenidConnectConfig>;

Nested argument containing OpenID Connect configuration. Defined below.

property schema

schema?: pulumi.Input<string>;

The schema definition, in GraphQL schema language format. This provider cannot perform drift detection of this configuration.

property tags

tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A map of tags to assign to the resource.

property uris

uris?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Map of URIs associated with the API. e.g. uris["GRAPHQL"] = https://ID.appsync-api.REGION.amazonaws.com/graphql

property userPoolConfig

userPoolConfig?: pulumi.Input<GraphQLApiUserPoolConfig>;

The Amazon Cognito User Pool configuration. Defined below.

property xrayEnabled

xrayEnabled?: pulumi.Input<boolean>;

Whether tracing with X-ray is enabled. Defaults to false.

interface ResolverArgs

interface ResolverArgs

The set of arguments for constructing a Resolver resource.

property apiId

apiId: pulumi.Input<string>;

The API ID for the GraphQL API.

property cachingConfig

cachingConfig?: pulumi.Input<ResolverCachingConfig>;

The CachingConfig.

property dataSource

dataSource?: pulumi.Input<string>;

The DataSource name.

property field

field: pulumi.Input<string>;

The field name from the schema defined in the GraphQL API.

property kind

kind?: pulumi.Input<string>;

The resolver type. Valid values are UNIT and PIPELINE.

property pipelineConfig

pipelineConfig?: pulumi.Input<ResolverPipelineConfig>;

The PipelineConfig.

property requestTemplate

requestTemplate: pulumi.Input<string>;

The request mapping template for UNIT resolver or ‘before mapping template’ for PIPELINE resolver.

property responseTemplate

responseTemplate: pulumi.Input<string>;

The response mapping template for UNIT resolver or ‘after mapping template’ for PIPELINE resolver.

property type

type: pulumi.Input<string>;

The type name from the schema defined in the GraphQL API.

interface ResolverState

interface ResolverState

Input properties used for looking up and filtering Resolver resources.

property apiId

apiId?: pulumi.Input<string>;

The API ID for the GraphQL API.

property arn

arn?: pulumi.Input<string>;

The ARN

property cachingConfig

cachingConfig?: pulumi.Input<ResolverCachingConfig>;

The CachingConfig.

property dataSource

dataSource?: pulumi.Input<string>;

The DataSource name.

property field

field?: pulumi.Input<string>;

The field name from the schema defined in the GraphQL API.

property kind

kind?: pulumi.Input<string>;

The resolver type. Valid values are UNIT and PIPELINE.

property pipelineConfig

pipelineConfig?: pulumi.Input<ResolverPipelineConfig>;

The PipelineConfig.

property requestTemplate

requestTemplate?: pulumi.Input<string>;

The request mapping template for UNIT resolver or ‘before mapping template’ for PIPELINE resolver.

property responseTemplate

responseTemplate?: pulumi.Input<string>;

The response mapping template for UNIT resolver or ‘after mapping template’ for PIPELINE resolver.

property type

type?: pulumi.Input<string>;

The type name from the schema defined in the GraphQL API.