

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# AWS::Serverless::GraphQLApi
<a name="sam-resource-graphqlapi"></a>

Verwenden Sie den `AWS::Serverless::GraphQLApi` Ressourcentyp AWS Serverless Application Model (AWS SAM), um eine AWS AppSync GraphQL API für Ihre serverlose Anwendung zu erstellen und zu konfigurieren.

Weitere Informationen dazu finden Sie AWS AppSync unter [Was ist AWS AppSync?](https://docs.aws.amazon.com/appsync/latest/devguide/what-is-appsync.html) im *AWS AppSync Entwicklerhandbuch*.

## Syntax
<a name="sam-resource-graphqlapi-syntax"></a>

### YAML
<a name="sam-resource-graphqlapi-syntax-yaml"></a>

```
LogicalId:
  Type: AWS::Serverless::GraphQLApi
  Properties:
    ApiKeys: ApiKeys
    Auth: Auth
    Cache: [AWS::AppSync::ApiCache](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html)
    DataSources: DataSource
    DomainName: [AWS::AppSync::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html)
    Functions: Function
    Logging: [LogConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html)
    Name: String
    Resolvers: Resolver
    SchemaInline: String
    SchemaUri: String
    Tags:
    - [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)
    XrayEnabled: Boolean
```

## Eigenschaften
<a name="sam-resource-graphqlapi-properties"></a>

`ApiKeys`  <a name="sam-graphqlapi-apikeys"></a>
Erstellen Sie einen eindeutigen Schlüssel, der verwendet werden kann, um GraphQL Operationen auszuführen, für die ein API-Schlüssel erforderlich ist.  
*Typ:* [ApiKeys](sam-property-graphqlapi-apikeys.md)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

`Auth`  <a name="sam-graphqlapi-auth"></a>
Konfigurieren Sie die Authentifizierung für Ihre GraphQL API.  
*Typ*: [Auth](sam-property-graphqlapi-auth.md)  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

`Cache`  <a name="sam-graphqlapi-cache"></a>
Die Eingabe einer `CreateApiCache` Operation.  
*Typ:* [AWS::AppSync::ApiCache](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die [AWS::AppSync::ApiCache](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html)Ressource übergeben.

`DataSources`  <a name="sam-graphqlapi-datasources"></a>
Erstellen Sie Datenquellen für Funktionen, mit denen AWS AppSync Sie eine Verbindung herstellen möchten. AWS SAM unterstützt Amazon DynamoDB und AWS Lambda Datenquellen.  
*Typ:* [DataSource](sam-property-graphqlapi-datasource.md)  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

`DomainName`  <a name="sam-graphqlapi-domainname"></a>
Benutzerdefinierter Domainname für Ihre GraphQL API.  
*Typ:* [AWS::AppSync::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die [AWS::AppSync::DomainName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html)Ressource übergeben. AWS SAM generiert die [AWS::AppSync::DomainNameApiAssociation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html)Ressource automatisch.

`Functions`  <a name="sam-graphqlapi-functions"></a>
Konfigurieren Sie Funktionen GraphQL APIs , um bestimmte Operationen auszuführen.  
*Typ*: [Funktion](sam-property-graphqlapi-function.md)  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

`Logging`  <a name="sam-graphqlapi-logging"></a>
Konfiguriert die CloudWatch Amazon-Protokollierung für Ihre GraphQL API.  
Wenn Sie diese Eigenschaft nicht angeben, AWS SAM werden die folgenden Werte generiert `CloudWatchLogsRoleArn` und festgelegt:  
+ `ExcludeVerboseContent: true`
+ `FieldLogLevel: ALL`
Um die Protokollierung zu deaktivieren, geben Sie Folgendes an:  

```
Logging: false
```
*Typ:* [LogConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[LogConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-logconfig)` Eigenschaft einer `AWS::AppSync::GraphQLApi` Ressource übergeben.

`LogicalId`  <a name="sam-graphqlapi-logicalid"></a>
Der eindeutige Name Ihrer GraphQL API.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-name)` Eigenschaft einer `AWS::AppSync::GraphQLApi` Ressource übergeben.

`Name`  <a name="sam-graphqlapi-name"></a>
Der Name Ihrer GraphQL API. Geben Sie diese Eigenschaft an, um den `LogicalId` Wert zu überschreiben.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-name)` Eigenschaft einer `AWS::AppSync::GraphQLApi` Ressource übergeben.

`Resolvers`  <a name="sam-graphqlapi-resolvers"></a>
Konfigurieren Sie Resolver für die Felder Ihrer GraphQL API. AWS SAM unterstützt [JavaScriptPipeline-Resolver](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-overview-js.html#anatomy-of-a-pipeline-resolver-js).  
*[Typ: Resolver](sam-property-graphqlapi-resolver.md)*  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig AWS SAM und hat kein CloudFormation Äquivalent.

`SchemaInline`  <a name="sam-graphqlapi-schemainline"></a>
Die Textdarstellung eines GraphQL Schemas im SDL Format.  
*Typ:* Zeichenfolge  
*Erforderlich:* Bedingt. Sie müssen `SchemaInline` oder angeben`SchemaUri`.  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Definition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definition)` Eigenschaft einer `AWS::AppSync::GraphQLSchema` Ressource übergeben.

`SchemaUri`  <a name="sam-graphqlapi-schemauri"></a>
Die Amazon Simple Storage Service (Amazon S3) -Bucket-URI oder der Pfad zu einem lokalen Ordner des Schemas.  
Wenn Sie einen Pfad zu einem lokalen Ordner angeben, CloudFormation muss die Datei vor der Bereitstellung zuerst auf Amazon S3 hochgeladen werden. Sie können den verwenden AWS SAMCLI, um diesen Vorgang zu vereinfachen. Weitere Informationen finden Sie unter [So werden lokale Dateien bei der Bereitstellung AWS SAM hochgeladen](deploy-upload-local-files.md).  
*Typ:* Zeichenfolge  
*Erforderlich:* Bedingt. Sie müssen `SchemaInline` oder angeben`SchemaUri`.  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[DefinitionS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definitions3location)` Eigenschaft einer `AWS::AppSync::GraphQLSchema` Ressource übergeben.

`Tags`  <a name="sam-graphqlapi-tags"></a>
Tags (Schlüssel-Wert-Paare) für diese GraphQL API. Verwenden Sie Tags, um Ressourcen zu identifizieren und zu kategorisieren.  
*Typ:* Liste von [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-tags)` Eigenschaft einer `AWS::AppSync::GraphQLApi` Ressource übergeben.

`XrayEnabled`  <a name="sam-graphqlapi-xrayenabled"></a>
Geben Sie an, ob [AWS X-Ray Tracing](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) für diese Ressource verwendet werden soll.  
*Typ*: Boolesch  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[XrayEnabled](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-xrayenabled)` Eigenschaft einer `AWS::AppSync::GraphQLApi` Ressource übergeben.

## Rückgabewerte
<a name="sam-resource-graphqlapi-return-values"></a>

Eine Liste der Rückgabewerte finden Sie [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#aws-resource-appsync-graphqlapi-return-values.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#aws-resource-appsync-graphqlapi-return-values.html)im [CloudFormation Benutzerhandbuch](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

## Beispiele
<a name="sam-resource-graphqlapi-examples"></a>

### GraphQL APImit DynamoDB-Datenquelle
<a name="sam-resource-graphqlapi-examples-example1"></a>

In diesem Beispiel erstellen wir eine GraphQL API, die eine DynamoDB-Tabelle als Datenquelle verwendet.

**schema.graphql**

```
schema {
  query: Query
  mutation: Mutation
}

type Query {
  getPost(id: String!): Post
}

type Mutation {
  addPost(author: String!, title: String!, content: String!): Post!
}

type Post {
  id: String!
  author: String
  title: String
  content: String
  ups: Int!
  downs: Int!
  version: Int!
}
```

**Vorlage.yaml**

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  DynamoDBPostsTable:
    Type: AWS::Serverless::SimpleTable

  MyGraphQLAPI:
    Type: AWS::Serverless::GraphQLApi
    Properties:
      SchemaUri: ./sam_graphql_api/schema.graphql
      Auth:
        Type: AWS_IAM
      DataSources:
        DynamoDb:
          PostsDataSource:
            TableName: !Ref DynamoDBPostsTable
            TableArn: !GetAtt DynamoDBPostsTable.Arn
      Functions:
        preprocessPostItem:
          Runtime:
            Name: APPSYNC_JS
            Version: 1.0.0
          DataSource: NONE
          CodeUri: ./sam_graphql_api/preprocessPostItem.js
        createPostItem:
          Runtime:
            Name: APPSYNC_JS
            Version: "1.0.0"
          DataSource: PostsDataSource
          CodeUri: ./sam_graphql_api/createPostItem.js
        getPostFromTable:
          Runtime:
            Name: APPSYNC_JS
            Version: "1.0.0"
          DataSource: PostsDataSource
          CodeUri: ./sam_graphql_api/getPostFromTable.js
      Resolvers:
        Mutation:
          addPost:
            Runtime:
              Name: APPSYNC_JS
              Version: "1.0.0"
            Pipeline:
            - preprocessPostItem
            - createPostItem
        Query:
          getPost:
            CodeUri: ./sam_graphql_api/getPost.js
            Runtime:
              Name: APPSYNC_JS
              Version: "1.0.0"
            Pipeline:
            - getPostFromTable
```

**createPostItem.js**

```
import { util } from "@aws-appsync/utils";

export function request(ctx) {
  const { key, values } = ctx.prev.result;
  return {
    operation: "PutItem",
    key: util.dynamodb.toMapValues(key),
    attributeValues: util.dynamodb.toMapValues(values),
  };
}

export function response(ctx) {
  return ctx.result;
}
```

**getPostFromTable.js**

```
import { util } from "@aws-appsync/utils";

export function request(ctx) {
  return dynamoDBGetItemRequest({ id: ctx.args.id });
}

export function response(ctx) {
  return ctx.result;
}

/**
 * A helper function to get a DynamoDB item
 */
function dynamoDBGetItemRequest(key) {
  return {
    operation: "GetItem",
    key: util.dynamodb.toMapValues(key),
  };
}
```

**preprocessPostItem.js**

```
import { util } from "@aws-appsync/utils";

export function request(ctx) {
  const id = util.autoId();
  const { ...values } = ctx.args;
  values.ups = 1;
  values.downs = 0;
  values.version = 1;
  return { payload: { key: { id }, values: values } };
}

export function response(ctx) {
  return ctx.result;
}
```

Hier ist unser Resolver-Code:

**getPost.js**

```
export function request(ctx) {
  return {};
}

export function response(ctx) {
  return ctx.prev.result;
}
```

### GraphQLAPI mit einer Lambda-Funktion als Datenquelle
<a name="sam-resource-graphqlapi-examples-example2"></a>

In diesem Beispiel erstellen wir eine GraphQL API, die eine Lambda-Funktion als Datenquelle verwendet.

**template.yaml**

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyLambdaFunction:
    Type: AWS::Serverless::Function
    Properties:
      Handler: index.handler
      Runtime: nodejs20.x
      CodeUri: ./lambda

  MyGraphQLAPI:
    Type: AWS::Serverless::GraphQLApi
    Properties:
      Name: MyApi
      SchemaUri: ./gql/schema.gql
      Auth:
        Type: API_KEY
      ApiKeys:
        MyApiKey:
          Description: my api key
      DataSources:
        Lambda:
          MyLambdaDataSource:
            FunctionArn: !GetAtt MyLambdaFunction.Arn
      Functions:
        lambdaInvoker:
          Runtime:
            Name: APPSYNC_JS
            Version: 1.0.0
          DataSource: MyLambdaDataSource
          CodeUri: ./gql/invoker.js
      Resolvers:
        Mutation:
          addPost:
            Runtime:
              Name: APPSYNC_JS
              Version: 1.0.0
            Pipeline:
            - lambdaInvoker
        Query:
          getPost:
            Runtime:
              Name: APPSYNC_JS
              Version: 1.0.0
            Pipeline:
            - lambdaInvoker

Outputs:
  MyGraphQLAPI:
    Description: AppSync API
    Value: !GetAtt MyGraphQLAPI.GraphQLUrl
  MyGraphQLAPIMyApiKey:
    Description: API Key for authentication
    Value: !GetAtt MyGraphQLAPIMyApiKey.ApiKey
```

**schema.graphql**

```
schema {
  query: Query
  mutation: Mutation
}
type Query {
  getPost(id: ID!): Post
}
type Mutation {
  addPost(id: ID!, author: String!, title: String, content: String): Post!
}
type Post {
  id: ID!
  author: String!
  title: String
  content: String
  ups: Int
  downs: Int
}
```

Hier sind unsere Funktionen:

**lambda/index.js**

```
exports.handler = async (event) => {
  console.log("Received event {}", JSON.stringify(event, 3));

  const posts = {
    1: {
      id: "1",
      title: "First book",
      author: "Author1",
      content: "Book 1 has this content",
      ups: "100",
      downs: "10",
    },
  };

  console.log("Got an Invoke Request.");
  let result;
  switch (event.field) {
    case "getPost":
      return posts[event.arguments.id];
    case "addPost":
      // return the arguments back
      return event.arguments;
    default:
      throw new Error("Unknown field, unable to resolve " + event.field);
  }
};
```

**invoker.js**

```
import { util } from "@aws-appsync/utils";

export function request(ctx) {
  const { source, args } = ctx;
  return {
    operation: "Invoke",
    payload: { field: ctx.info.fieldName, arguments: args, source },
  };
}

export function response(ctx) {
  return ctx.result;
}
```

# ApiKeys
<a name="sam-property-graphqlapi-apikeys"></a>

Erstellen Sie einen eindeutigen Schlüssel, mit dem GraphQL Operationen ausgeführt werden können, für die ein API-Schlüssel erforderlich ist.

## Syntax
<a name="sam-property-graphqlapi-apikeys-syntax"></a>

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

### YAML
<a name="sam-property-graphqlapi-apikeys-syntax-yaml"></a>

```
LogicalId:
  ApiKeyId: String
  Description: String
  ExpiresOn: Double
```

## Eigenschaften
<a name="sam-property-graphqlapi-apikeys-properties"></a>

`ApiKeyId`  <a name="sam-graphqlapi-apikeys-apikeyid"></a>
Der eindeutige Name Ihres API-Schlüssels. Geben Sie an, dass der `LogicalId` Wert überschrieben werden soll.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ApiKeyId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apikeyid)` Eigenschaft einer `AWS::AppSync::ApiKey` Ressource übergeben.

`Description`  <a name="sam-graphqlapi-apikeys-description"></a>
Beschreibung Ihres API-Schlüssels.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-description)` Eigenschaft einer `AWS::AppSync::ApiKey` Ressource übergeben.

`ExpiresOn`  <a name="sam-graphqlapi-apikeys-expireson"></a>
Die Zeit, nach der der API-Schlüssel abläuft. Das Datum wird als Sekunden seit der Epoche dargestellt, abgerundet auf die nächste Stunde.  
*Type*: Double  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Expires](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-expires)` Eigenschaft einer `AWS::AppSync::ApiKey` Ressource übergeben.

`LogicalId`  <a name="sam-graphqlapi-apikeys-logicalid"></a>
Der eindeutige Name Ihres API-Schlüssels.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ApiKeyId](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apikeyid)` Eigenschaft einer `AWS::AppSync::ApiKey` Ressource übergeben.

# Auth
<a name="sam-property-graphqlapi-auth"></a>

Konfigurieren Sie die Autorisierung für Ihre GraphQL API.

## Syntax
<a name="sam-property-graphqlapi-auth-syntax"></a>

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

### YAML
<a name="sam-property-graphqlapi-auth-syntax-yaml"></a>

```
Additional:
- AuthProvider
LambdaAuthorizer: [LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-lambdaauthorizerconfig.html)
OpenIDConnect: [OpenIDConnectConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html)
Type: String
UserPool: [UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html)
```

## Eigenschaften
<a name="sam-property-graphqlapi-auth-properties"></a>

`Additional`  <a name="sam-graphqlapi-auth-additional"></a>
Eine Liste zusätzlicher Autorisierungstypen für Ihre GraphQL API.  
*Typ*: Liste von [AuthProvider](sam-property-graphqlapi-auth-authprovider.md)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

`LambdaAuthorizer`  <a name="sam-graphqlapi-auth-lambdaauthorizer"></a>
Geben Sie die optionale Autorisierungskonfiguration für Ihren Lambda-Funktionsautorisierer an. Sie können diese optionale Eigenschaft konfigurieren, wenn sie als angegeben `Type` ist. `AWS_LAMBDA`  
*Typ*: [LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-lambdaauthorizerconfig)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-lambdaauthorizerconfig.html)` Eigenschaft einer `AWS::AppSync::GraphQLApi` Ressource übergeben.

`OpenIDConnect`  <a name="sam-graphqlapi-auth-openidconnect"></a>
Geben Sie die optionale Autorisierungskonfiguration für Ihren OpenID Connect konformen Dienst an. Sie können diese optionale Eigenschaft konfigurieren, wenn sie als angegeben `Type` ist`OPENID_CONNECT`.  
*Typ*: [Open IDConnect Config](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-openidconnectconfig)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ OpenIDConnectConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html)` Eigenschaft einer `AWS::AppSync::GraphQLApi` Ressource übergeben.

`Type`  <a name="sam-graphqlapi-auth-type"></a>
Der Standardautorisierungstyp zwischen Anwendungen und Ihrer AWS AppSync GraphQL API.  
Eine Liste und Beschreibung der zulässigen Werte finden Sie unter [Autorisierung und Authentifizierung](https://docs.aws.amazon.com/appsync/latest/devguide/security-authz.html) im *AWS AppSync Entwicklerhandbuch*.  
Wenn Sie einen Lambda-Autorisierer (`AWS_LAMBDA`) angeben, AWS SAM wird eine AWS Identity and Access Management (IAM-) Richtlinie erstellt, um Berechtigungen zwischen Ihrer GraphQL API und der Lambda-Funktion bereitzustellen.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[AuthenticationType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-authenticationtype)` Eigenschaft einer Ressource übergeben. `AWS::AppSync::GraphQLApi`

`UserPool`  <a name="sam-graphqlapi-auth-userpool"></a>
Geben Sie die optionale Autorisierungskonfiguration für die Verwendung von Amazon Cognito Cognito-Benutzerpools an. Sie können diese optionale Eigenschaft konfigurieren, wenn sie als `AMAZON_COGNITO_USER_POOLS` angegeben `Type` ist.  
*Typ*: [UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-userpoolconfig)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html)` Eigenschaft einer `AWS::AppSync::GraphQLApi` Ressource übergeben.

## Beispiele
<a name="sam-property-graphqlapi-auth-examples"></a>

### Konfigurieren Sie einen Standard- und einen zusätzlichen Autorisierungstyp
<a name="sam-property-graphqlapi-auth-examples-example1"></a>

In diesem Beispiel konfigurieren wir zunächst einen Lambda-Autorisierungstyp als Standardautorisierungstyp für unsere GraphQL API.

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyGraphQLAPI:
    Type: AWS::Serverless::GraphQLApi
    Properties:
      Auth:
        Type: AWS_LAMBDA
        LambdaAuthorizer:
          AuthorizerUri: !GetAtt Authorizer1.Arn
          AuthorizerResultTtlInSeconds: 10
          IdentityValidationExpression: hello
```

Als Nächstes konfigurieren wir zusätzliche Autorisierungstypen für unsere GraphQL API, indem wir unserer AWS SAM Vorlage Folgendes hinzufügen:

```
        Additional:
        - Type: AWS_IAM
        - Type: API_KEY
        - Type: OPENID_CONNECT
          OpenIDConnect:
            AuthTTL: 10
            ClientId: myId
            IatTTL: 10
            Issuer: prod
```

Dies führt zu der folgenden AWS SAM Vorlage:

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyGraphQLAPI:
    Type: AWS::Serverless::GraphQLApi
    Properties:
      Auth:
        Type: AWS_LAMBDA
        LambdaAuthorizer:
          AuthorizerUri: !GetAtt Authorizer1.Arn
          AuthorizerResultTtlInSeconds: 10
          IdentityValidationExpression: hello
        Additional:
        - Type: AWS_IAM
        - Type: API_KEY
        - Type: OPENID_CONNECT
          OpenIDConnect:
            AuthTTL: 10
            ClientId: myId
            IatTTL: 10
            Issuer: prod
```

# AuthProvider
<a name="sam-property-graphqlapi-auth-authprovider"></a>

Optionale Autorisierungskonfiguration für Ihre zusätzlichen GraphQL API-Autorisierungstypen.

## Syntax
<a name="sam-property-graphqlapi-auth-authprovider-syntax"></a>

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

### YAML
<a name="sam-property-graphqlapi-auth-authprovider-syntax-yaml"></a>

```
LambdaAuthorizer: [LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-lambdaauthorizerconfig.html)
OpenIDConnect: [OpenIDConnectConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html)
Type: String
UserPool: [UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html)
```

## Eigenschaften
<a name="sam-property-graphqlapi-auth-authprovider-properties"></a>

`LambdaAuthorizer`  <a name="sam-graphqlapi-auth-authprovider-lambdaauthorizer"></a>
Geben Sie die optionale Autorisierungskonfiguration für Ihren AWS Lambda Funktionsautorisierer an. Sie können diese optionale Eigenschaft konfigurieren, wenn sie als `AWS_LAMBDA` angegeben `Type` ist.  
*Typ*: [ LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-lambdaauthorizerconfig)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ LambdaAuthorizerConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-lambdaauthorizerconfig.html)` Eigenschaft eines `AWS::AppSync::GraphQLApi` `[ AdditionalAuthenticationProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html)` Objekts übergeben.

`OpenIDConnect`  <a name="sam-graphqlapi-auth-authprovider-openidconnect"></a>
Geben Sie die optionale Autorisierungskonfiguration für Ihren OpenID Connect konformen Dienst an. Sie können diese optionale Eigenschaft konfigurieren, wenn sie als angegeben `Type` ist`OPENID_CONNECT`.  
*Typ*: [Open IDConnect Config](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-openidconnectconfig)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ OpenIDConnectConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-openidconnectconfig.html)` Eigenschaft eines `AWS::AppSync::GraphQLApi` `[ AdditionalAuthenticationProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html)` Objekts übergeben.

`Type`  <a name="sam-graphqlapi-auth-authprovider-type"></a>
Der Standardautorisierungstyp zwischen Anwendungen und Ihrer AWS AppSync GraphQL API.  
Eine Liste und Beschreibung der zulässigen Werte finden Sie unter [Autorisierung und Authentifizierung](https://docs.aws.amazon.com/appsync/latest/devguide/security-authz.html) im *AWS AppSync Entwicklerhandbuch*.  
Wenn Sie einen Lambda-Autorisierer (`AWS_LAMBDA`) angeben, AWS SAM wird eine AWS Identity and Access Management (IAM-) Richtlinie erstellt, um Berechtigungen zwischen Ihrer GraphQL API und der Lambda-Funktion bereitzustellen.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ AuthenticationType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html#cfn-appsync-graphqlapi-additionalauthenticationprovider-authenticationtype)` Eigenschaft eines Objekts übergeben. `AWS::AppSync::GraphQLApi` `[ AdditionalAuthenticationProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html)`

`UserPool`  <a name="sam-graphqlapi-auth-authprovider-userpool"></a>
Geben Sie die optionale Autorisierungskonfiguration für die Verwendung von Amazon Cognito Cognito-Benutzerpools an. Sie können diese optionale Eigenschaft konfigurieren, wenn sie als `AMAZON_COGNITO_USER_POOLS` angegeben `Type` ist.  
*Typ*: [ UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-userpoolconfig)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ UserPoolConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-userpoolconfig.html)` Eigenschaft eines `AWS::AppSync::GraphQLApi` `[ AdditionalAuthenticationProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-additionalauthenticationprovider.html)` Objekts übergeben.

# DataSource
<a name="sam-property-graphqlapi-datasource"></a>

Konfigurieren Sie eine Datenquelle, mit der Ihr GraphQL API-Resolver eine Verbindung herstellen kann. Sie können Vorlagen AWS Serverless Application Model (AWS SAM) verwenden, um Verbindungen zu den folgenden Datenquellen zu konfigurieren:
+ Amazon DynamoDB
+ AWS Lambda

Weitere Informationen zu Datenquellen finden Sie unter [Anhängen einer Datenquelle](https://docs.aws.amazon.com/appsync/latest/devguide/attaching-a-data-source.html) im *AWS AppSync Entwicklerhandbuch*.

## Syntax
<a name="sam-property-graphqlapi-datasource-syntax"></a>

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

### YAML
<a name="sam-property-graphqlapi-datasource-syntax-yaml"></a>

```
DynamoDb: DynamoDb
Lambda: Lambda
```

## Eigenschaften
<a name="sam-property-graphqlapi-datasource-properties"></a>

`DynamoDb`  <a name="sam-graphqlapi-datasource-dynamodb"></a>
Konfigurieren Sie eine DynamoDB-Tabelle als Datenquelle für Ihren GraphQL API-Resolver.  
*Typ:* [DynamoDb](sam-property-graphqlapi-datasource-dynamodb.md)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein Äquivalent. CloudFormation 

`Lambda`  <a name="sam-graphqlapi-datasource-lambda"></a>
Konfigurieren Sie eine Lambda-Funktion als Datenquelle für Ihren GraphQL API-Resolver.  
*Type*: [Lambda](sam-property-graphqlapi-datasource-lambda.md)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

# DynamoDb
<a name="sam-property-graphqlapi-datasource-dynamodb"></a>

Konfigurieren Sie eine Amazon DynamoDB-Tabelle als Datenquelle für Ihren GraphQL API-Resolver.

## Syntax
<a name="sam-property-graphqlapi-datasource-dynamodb-syntax"></a>

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

### YAML
<a name="sam-property-graphqlapi-datasource-dynamodb-syntax-yaml"></a>

```
LogicalId:
  DeltaSync: [DeltaSyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html)
  Description: String
  Name: String
  Permissions: List
  Region: String
  ServiceRoleArn: String
  TableArn: String
  TableName: String
  UseCallerCredentials: Boolean
  Versioned: Boolean
```

## Eigenschaften
<a name="sam-property-graphqlapi-datasource-dynamodb-properties"></a>

`DeltaSync`  <a name="sam-graphqlapi-datasource-dynamodb-deltasync"></a>
Beschreibt eine Delta Sync-Konfiguration.  
*Typ:* [DeltaSyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[DeltaSyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-deltasyncconfig)` Eigenschaft eines `AWS::AppSync::DataSource DynamoDBConfig` Objekts übergeben.

`Description`  <a name="sam-graphqlapi-datasource-dynamodb-description"></a>
Die Beschreibung Ihrer Datenquelle.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-description)` Eigenschaft einer `AWS::AppSync::DataSource` Ressource übergeben.

`LogicalId`  <a name="sam-graphqlapi-datasource-dynamodb-logicalid"></a>
Der eindeutige Name Ihrer Datenquelle.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name)` Eigenschaft einer `AWS::AppSync::DataSource` Ressource übergeben.

`Name`  <a name="sam-graphqlapi-datasource-dynamodb-name"></a>
Der Name Ihrer Datenquelle. Geben Sie diese Eigenschaft an, um den `LogicalId` Wert zu überschreiben.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name)` Eigenschaft einer `AWS::AppSync::DataSource` Ressource übergeben.

`Permissions`  <a name="sam-graphqlapi-datasource-dynamodb-permissions"></a>
Erteilen Sie Berechtigungen für Ihre Datenquelle mithilfe von[AWS SAM Konnektoren](managing-permissions-connectors.md). Sie können jeden der folgenden Werte in einer Liste angeben:  
+ `Read`— Erlauben Sie Ihrem Resolver, Ihre Datenquelle zu lesen.
+ `Write`— Erlauben Sie Ihrem Resolver, in Ihre Datenquelle zu schreiben.
AWS SAM verwendet eine `AWS::Serverless::Connector` Ressource, die bei der Bereitstellung transformiert wird, um Ihre Berechtigungen bereitzustellen. Weitere Informationen zu generierten Ressourcen finden Sie unter[CloudFormation Ressourcen, die generiert werden, wenn Sie angeben AWS::Serverless::Connector](sam-specification-generated-resources-connector.md).  
Sie können `Permissions` oder `ServiceRoleArn` angeben, aber nicht beides. Wenn keines der beiden angegeben ist, AWS SAM werden Standardwerte von `Read` und generiert`Write`. Um den Zugriff auf Ihre Datenquelle zu widerrufen, entfernen Sie das DynamoDB-Objekt aus Ihrer AWS SAM Vorlage.
*Typ*: Liste  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent. Sie ähnelt der `Permissions` Eigenschaft einer `AWS::Serverless::Connector` Ressource.

`Region`  <a name="sam-graphqlapi-datasource-dynamodb-region"></a>
Die AWS-Region Ihrer DynamoDB-Tabelle. Wenn Sie es nicht angeben, AWS SAM verwendet. `[AWS::Region](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/pseudo-parameter-reference.html#cfn-pseudo-param-region)`  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[AwsRegion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-awsregion)` Eigenschaft eines `AWS::AppSync::DataSource DynamoDBConfig` Objekts übergeben.

`ServiceRoleArn`  <a name="sam-graphqlapi-datasource-dynamodb-servicerolearn"></a>
Die AWS Identity and Access Management (IAM-) Dienstrolle ARN für die Datenquelle. Das System übernimmt diese Rolle beim Zugriff auf die Datenquelle.  
Sie können `Permissions` oder `ServiceRoleArn` angeben, aber nicht beides.  
*Typ:* Zeichenfolge  
*Erforderlich*: Nein. Wenn nicht angegeben, wird der Standardwert für AWS SAM angewendet`Permissions`.  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ServiceRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-servicerolearn)` Eigenschaft einer `AWS::AppSync::DataSource` Ressource übergeben.

`TableArn`  <a name="sam-graphqlapi-datasource-dynamodb-tablearn"></a>
Der ARN für die DynamoDB-Tabelle.  
*Typ:* Zeichenfolge  
*Erforderlich:* Bedingt. Wenn Sie es nicht angeben`ServiceRoleArn`, `TableArn` ist es erforderlich.  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

`TableName`  <a name="sam-graphqlapi-datasource-dynamodb-tablename"></a>
Der Name der Tabelle.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[TableName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-tablename)` Eigenschaft eines `AWS::AppSync::DataSource DynamoDBConfig` Objekts übergeben.

`UseCallerCredentials`  <a name="sam-graphqlapi-datasource-dynamodb-usecallercredentials"></a>
Legt fest`true`, dass IAM mit dieser Datenquelle verwendet wird.  
*Typ*: Boolesch  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[UseCallerCredentials](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-usecallercredentials)` Eigenschaft eines `AWS::AppSync::DataSource DynamoDBConfig` Objekts übergeben.

`Versioned`  <a name="sam-graphqlapi-datasource-dynamodb-versioned"></a>
Auf [Konflikterkennung, Konfliktlösung und Synchronisation](https://docs.aws.amazon.com/appsync/latest/devguide/conflict-detection-and-sync.html) mit dieser Datenquelle eingestellt. `true`  
*Typ*: Boolesch  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Versioned](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-versioned)` Eigenschaft eines `AWS::AppSync::DataSource DynamoDBConfig` Objekts übergeben.

# Lambda
<a name="sam-property-graphqlapi-datasource-lambda"></a>

Konfigurieren Sie eine AWS Lambda Funktion als Datenquelle für Ihren GraphQL API-Resolver.

## Syntax
<a name="sam-property-graphqlapi-datasource-lambda-syntax"></a>

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

### YAML
<a name="sam-property-graphqlapi-datasource-lambda-syntax-yaml"></a>

```
LogicalId:
  Description: String
  FunctionArn: String
  Name: String
  ServiceRoleArn: String
```

## Eigenschaften
<a name="sam-property-graphqlapi-datasource-lambda-properties"></a>

`Description`  <a name="sam-graphqlapi-datasource-lambda-description"></a>
Die Beschreibung Ihrer Datenquelle.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-description)` Eigenschaft einer `AWS::AppSync::DataSource` Ressource übergeben.

`FunctionArn`  <a name="sam-graphqlapi-datasource-lambda-functionarn"></a>
Der ARN für die Lambda-Funktion  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[LambdaFunctionArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html#cfn-appsync-datasource-lambdaconfig-lambdafunctionarn)` Eigenschaft eines `AWS::AppSync::DataSource LambdaConfig` Objekts übergeben.

`LogicalId`  <a name="sam-graphqlapi-datasource-lambda-logicalid"></a>
Der eindeutige Name Ihrer Datenquelle.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name)` Eigenschaft einer `AWS::AppSync::DataSource` Ressource übergeben.

`Name`  <a name="sam-graphqlapi-datasource-lambda-name"></a>
Der Name Ihrer Datenquelle. Geben Sie diese Eigenschaft an, um den `LogicalId` Wert zu überschreiben.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name)` Eigenschaft einer `AWS::AppSync::DataSource` Ressource übergeben.

`ServiceRoleArn`  <a name="sam-graphqlapi-datasource-lambda-servicerolearn"></a>
Die AWS Identity and Access Management (IAM-) Dienstrolle ARN für die Datenquelle. Das System übernimmt diese Rolle beim Zugriff auf die Datenquelle.  
Um den Zugriff auf Ihre Datenquelle zu widerrufen, entfernen Sie das Lambda-Objekt aus Ihrer AWS SAM Vorlage.
*Typ:* Zeichenfolge  
*Erforderlich*: Nein. Wenn nicht angegeben, AWS SAM werden `Write` Berechtigungen mithilfe von bereitgestellt[AWS SAM Konnektoren](managing-permissions-connectors.md).  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[ServiceRoleArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-servicerolearn)` Eigenschaft einer `AWS::AppSync::DataSource` Ressource übergeben.

# Funktion
<a name="sam-property-graphqlapi-function"></a>

Konfigurieren Sie Funktionen GraphQL APIs , um bestimmte Operationen auszuführen.

## Syntax
<a name="sam-property-graphqlapi-function-syntax"></a>

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

### YAML
<a name="sam-property-graphqlapi-function-syntax-yaml"></a>

```
LogicalId:
  CodeUri: String
  DataSource: String
  Description: String
  Id: String
  InlineCode: String
  MaxBatchSize: Integer
  Name: String
  Runtime: Runtime
  Sync: [SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-syncconfig.html)
```

## Eigenschaften
<a name="sam-property-graphqlapi-function-properties"></a>

`CodeUri`  <a name="sam-graphqlapi-function-codeuri"></a>
Die Amazon Simple Storage Service (Amazon S3) -URI oder der Pfad zum lokalen Ordner des Funktionscodes.  
Wenn Sie einen Pfad zu einem lokalen Ordner angeben, CloudFormation muss die Datei vor der Bereitstellung zuerst auf Amazon S3 hochgeladen werden. Sie können den verwenden AWS SAMCLI, um diesen Vorgang zu vereinfachen. Weitere Informationen finden Sie unter [So werden lokale Dateien bei der Bereitstellung AWS SAM hochgeladen](deploy-upload-local-files.md).  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[CodeS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-codes3location)` Eigenschaft einer `AWS::AppSync::FunctionConfiguration` Ressource übergeben.

`DataSource`  <a name="sam-graphqlapi-function-datasource"></a>
Der Name der Datenquelle, an die diese Funktion angehängt wird.  
+ Um auf eine Datenquelle innerhalb der `AWS::Serverless::GraphQLApi` Ressource zu verweisen, geben Sie deren logische ID an.
+ Um auf eine Datenquelle außerhalb der `AWS::Serverless::GraphQLApi` Ressource zu verweisen, geben Sie ihr `Name` Attribut mithilfe der `Fn::GetAtt` systeminternen Funktion an. Beispiel, `!GetAtt MyLambdaDataSource.Name`.
+ Um auf eine Datenquelle aus einem anderen Stapel zu verweisen, verwenden Sie. `[Fn::ImportValue](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-importvalue.html)`
Wenn eine Variante von angegeben `[NONE | None | none]` ist, AWS SAM wird ein `None` Wert für das `AWS::AppSync::DataSource` `[Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-type)` Objekt generiert.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[DataSourceName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-datasourcename)` Eigenschaft einer `AWS::AppSync::FunctionConfiguration` Ressource übergeben.

`Description`  <a name="sam-graphqlapi-function-description"></a>
Die Beschreibung Ihrer Funktion.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-description)` Eigenschaft einer `AWS::AppSync::FunctionConfiguration` Ressource übergeben.

`Id`  <a name="sam-graphqlapi-function-id"></a>
Die Funktions-ID für eine Funktion, die sich außerhalb der `AWS::Serverless::GraphQLApi` Ressource befindet.  
+ Um auf eine Funktion innerhalb derselben AWS SAM Vorlage zu verweisen, verwenden Sie die `Fn::GetAtt` systeminterne Funktion. Zum Beispiel `Id: !GetAtt createPostItemFunc.FunctionId`.
+ Um auf eine Funktion aus einem anderen Stack zu verweisen, verwenden Sie. `[Fn::ImportValue](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-importvalue.html)`
Bei der Verwendung `Id` sind alle anderen Eigenschaften nicht zulässig. AWS SAM übergibt automatisch die Funktions-ID Ihrer referenzierten Funktion.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

`InlineCode`  <a name="sam-graphqlapi-function-inlinecode"></a>
Der Funktionscode, der die Anforderungs- und Antwortfunktionen enthält.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Code](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-code)` Eigenschaft einer `AWS::AppSync::FunctionConfiguration` Ressource übergeben.

`LogicalId`  <a name="sam-graphqlapi-function-logicalid"></a>
Der eindeutige Name Ihrer Funktion.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-name)` Eigenschaft einer `AWS::AppSync::FunctionConfiguration` Ressource übergeben.

`MaxBatchSize`  <a name="sam-graphqlapi-function-maxbatchsize"></a>
Die maximale Anzahl der Resolver-Anforderungs-Eingaben, die an eine einzelne AWS Lambda -Funktion in einem `BatchInvoke`-Vorgang gesendet werden.  
*Typ*: Ganzzahl  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die [MaxBatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-maxbatchsize)Eigenschaft einer `AWS::AppSync::FunctionConfiguration` Ressource übergeben.

`Name`  <a name="sam-graphqlapi-function-name"></a>
Der Name der Funktion. Geben Sie an, dass der `LogicalId` Wert überschrieben werden soll.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-name)` Eigenschaft einer `AWS::AppSync::FunctionConfiguration` Ressource übergeben.

`Runtime`  <a name="sam-graphqlapi-function-runtime"></a>
Beschreibt eine Laufzeit, die von einem AWS AppSync Pipeline-Resolver oder einer AWS AppSync Pipeline-Funktion verwendet wird. Gibt den Namen und die Version der zu verwendenden Laufzeit an.  
*[Typ: Runtime](sam-property-graphqlapi-function-runtime.md)*  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent. Sie ähnelt der `[Runtime](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-runtime)` Eigenschaft einer `AWS::AppSync::FunctionConfiguration` Ressource.

`Sync`  <a name="sam-graphqlapi-function-sync"></a>
Beschreibt eine Sync-Konfiguration für eine Funktion.  
Gibt an, welche Konflikterkennungs- und Lösungsstrategie verwendet werden soll, wenn die Funktion aufgerufen wird.  
*Typ:* [SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-syncconfig.html)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-syncconfig)` Eigenschaft einer `AWS::AppSync::FunctionConfiguration` Ressource übergeben.

# Laufzeit
<a name="sam-property-graphqlapi-function-runtime"></a>

Die Laufzeit Ihres Pipeline-Resolvers oder Ihrer Pipeline-Funktion. Gibt den Namen und die Version an, die verwendet werden sollen.

## Syntax
<a name="sam-property-graphqlapi-function-runtime-syntax"></a>

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

### YAML
<a name="sam-property-graphqlapi-function-runtime-syntax-yaml"></a>

```
Name: String
Version: String
```

## Eigenschaften
<a name="sam-property-graphqlapi-function-runtime-properties"></a>

`Name`  <a name="sam-graphqlapi-function-runtime-name"></a>
Der Name der zu verwendenden Laufzeit. Der einzige zulässige Wert ist derzeit `APPSYNC_JS`.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-appsyncruntime.html#cfn-appsync-functionconfiguration-appsyncruntime-name)` Eigenschaft eines `AWS::AppSync::FunctionConfiguration AppSyncRuntime` Objekts übergeben.

`Version`  <a name="sam-graphqlapi-function-runtime-version"></a>
Die Version der zu verwendenden Runtime. Die einzige zulässige Version ist derzeit `1.0.0`.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[RuntimeVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-functionconfiguration-appsyncruntime.html#cfn-appsync-functionconfiguration-appsyncruntime-runtimeversion)` Eigenschaft eines `AWS::AppSync::FunctionConfiguration AppSyncRuntime` Objekts übergeben.

# Resolver
<a name="sam-property-graphqlapi-resolver"></a>

Konfigurieren Sie Resolver für die Felder Ihrer GraphQL API. AWS Serverless Application Model (AWS SAM) unterstützt [JavaScript Pipeline-Resolver](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-overview-js.html).

## Syntax
<a name="sam-property-graphqlapi-resolver-syntax"></a>

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

### YAML
<a name="sam-property-graphqlapi-resolver-syntax-yaml"></a>

```
OperationType:
  LogicalId:
    Caching: [CachingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-cachingconfig.html)
    CodeUri: String
    FieldName: String
    InlineCode: String 
    MaxBatchSize: Integer
    Pipeline: List
    Runtime: Runtime
    Sync: [SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-syncconfig.html)
```

## Eigenschaften
<a name="sam-property-graphqlapi-resolver-properties"></a>

`Caching`  <a name="sam-graphqlapi-resolver-caching"></a>
Die Caching-Konfiguration für den Resolver, für den das Caching aktiviert ist.  
*Typ:* [CachingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-cachingconfig.html)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[CachingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-cachingconfig)` Eigenschaft einer Ressource übergeben. `AWS::AppSync::Resolver`

`CodeUri`  <a name="sam-graphqlapi-resolver-codeuri"></a>
Die Amazon Simple Storage Service (Amazon S3) -URI oder der Pfad zu einem lokalen Ordner des Resolver-Funktionscodes.  
Wenn Sie einen Pfad zu einem lokalen Ordner angeben, CloudFormation muss die Datei vor der Bereitstellung zuerst auf Amazon S3 hochgeladen werden. Sie können den verwenden AWS SAMCLI, um diesen Vorgang zu vereinfachen. Weitere Informationen finden Sie unter [So werden lokale Dateien bei der Bereitstellung AWS SAM hochgeladen](deploy-upload-local-files.md).  
Falls keines `CodeUri` von beiden angegeben AWS SAM wird, wird generiert, `InlineCode` dass die Anfrage an die erste Pipeline-Funktion weitergeleitet wird und die Antwort von der letzten Pipeline-Funktion empfangen wird. `InlineCode`  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[CodeS3Location](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-codes3location)` Eigenschaft einer `AWS::AppSync::Resolver` Ressource übergeben.

`FieldName`  <a name="sam-graphqlapi-resolver-fieldname"></a>
Der Name Ihres Resolvers. Geben Sie diese Eigenschaft an, um den `LogicalId` Wert zu überschreiben.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[FieldName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-fieldname)` Eigenschaft einer `AWS::AppSync::Resolver` Ressource übergeben.

`InlineCode`  <a name="sam-graphqlapi-resolver-inlinecode"></a>
Der Resolver-Code, der die Anforderungs- und Antwortfunktionen enthält.  
Wenn keiner `CodeUri` von beiden angegeben AWS SAM wird, wird generiert, `InlineCode` dass die Anfrage an die erste Pipeline-Funktion umgeleitet wird und die Antwort von der letzten Pipeline-Funktion empfangen wird. `InlineCode`  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Code](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-code)` Eigenschaft einer `AWS::AppSync::Resolver` Ressource übergeben.

`LogicalId`  <a name="sam-graphqlapi-resolver-logicalid"></a>
Der eindeutige Name für Ihren Resolver. In einem GraphQL Schema sollte Ihr Resolvername mit dem Feldnamen übereinstimmen, für den er verwendet wird. Verwenden Sie denselben Feldnamen für`LogicalId`.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

`MaxBatchSize`  <a name="sam-graphqlapi-resolver-maxbatchsize"></a>
Die maximale Anzahl der Resolver-Anforderungs-Eingaben, die an eine einzelne AWS Lambda -Funktion in einem `BatchInvoke`-Vorgang gesendet werden.  
*Typ*: Ganzzahl  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[MaxBatchSize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-maxbatchsize)` Eigenschaft einer `AWS::AppSync::Resolver` Ressource übergeben.

`OperationType`  <a name="sam-graphqlapi-resolver-operationtype"></a>
Der GraphQL Vorgangstyp, der Ihrem Resolver zugeordnet ist. Beispiel: `Query`, `Mutation` oder `Subscription`. Sie können mehrere Resolver in einem `LogicalId` einzigen ineinander verschachteln. `OperationType`  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[TypeName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-typename)` Eigenschaft einer `AWS::AppSync::Resolver` Ressource übergeben.

`Pipeline`  <a name="sam-graphqlapi-resolver-pipeline"></a>
Funktionen im Zusammenhang mit dem Pipeline-Resolver. Geben Sie Funktionen anhand der logischen ID in einer Liste an.  
*Typ*: Liste  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent. Sie ähnelt der `[PipelineConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-pipelineconfig)` Eigenschaft einer `AWS::AppSync::Resolver` Ressource.

`Runtime`  <a name="sam-graphqlapi-resolver-runtime"></a>
Die Laufzeit Ihres Pipeline-Resolvers oder Ihrer Pipeline-Funktion. Gibt den Namen und die Version an, die verwendet werden sollen.  
*Typ*: [Runtime](sam-property-graphqlapi-resolver-runtime.md)  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent. Sie ähnelt der `[Runtime](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-runtime)` Eigenschaft einer `AWS::AppSync::Resolver` Ressource.

`Sync`  <a name="sam-graphqlapi-resolver-sync"></a>
Beschreibt eine Sync-Konfiguration für einen Resolver.  
Gibt an, welche Konflikterkennungs- und Lösungsstrategie verwendet werden soll, wenn der Resolver aufgerufen wird.  
*Typ:* [SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-syncconfig.html)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[SyncConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html#cfn-appsync-resolver-syncconfig)` Eigenschaft einer `AWS::AppSync::Resolver` Ressource übergeben.

## Beispiele
<a name="sam-property-graphqlapi-resolver-examples"></a>

### Verwenden Sie den AWS SAM generierten Resolver-Funktionscode und speichern Sie Felder als Variablen
<a name="sam-property-graphqlapi-resolver-examples-example1"></a>

Hier ist das GraphQL Schema für unser Beispiel:

```
schema {
  query: Query
  mutation: Mutation
}

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

type Mutation {
  addPost(author: String!, title: String!, content: String!): Post!
}

type Post {
  id: ID!
  author: String
  title: String
  content: String
}
```

Hier ist ein Ausschnitt aus unserer AWS SAM Vorlage:

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyGraphQLApi:
    Type: AWS::Serverless::GraphQLApi
    Properties:
      ...
      Functions:
        preprocessPostItem:
          ...
        createPostItem:
          ...
      Resolvers:
        Mutation:
          addPost:
            Runtime:
              Name: APPSYNC_JS
              Version: 1.0.0
            Pipeline:
            - preprocessPostItem
            - createPostItem
```

In unserer AWS SAM Vorlage geben wir oder nicht an`CodeUri`. `InlineCode` Generiert bei der Bereitstellung AWS SAM automatisch den folgenden Inline-Code für unseren Resolver:

```
export function request(ctx) {
  return {};
}

export function response(ctx) {
  return ctx.prev.result;
}
```

Dieser Standard-Resolver-Code leitet die Anfrage an die erste Pipeline-Funktion weiter und empfängt die Antwort von der letzten Pipeline-Funktion.

In unserer ersten Pipeline-Funktion können wir das bereitgestellte `args` Feld verwenden, um das Anforderungsobjekt zu analysieren und unsere Variablen zu erstellen. Wir können diese Variablen dann in unserer Funktion verwenden. Hier ist ein Beispiel für unsere `preprocessPostItem` Funktion:

```
import { util } from "@aws-appsync/utils";

export function request(ctx) {
  const author = ctx.args.author;
  const title = ctx.args.title;
  const content = ctx.args.content;
  
  // Use variables to process data
  
}

export function response(ctx) {
  return ctx.result;
}
```

# Laufzeit
<a name="sam-property-graphqlapi-resolver-runtime"></a>

Die Laufzeit Ihres Pipeline-Resolvers oder Ihrer Pipeline-Funktion. Gibt den Namen und die Version an, die verwendet werden sollen.

## Syntax
<a name="sam-property-graphqlapi-resolver-runtime-syntax"></a>

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

### YAML
<a name="sam-property-graphqlapi-resolver-runtime-syntax-yaml"></a>

```
Name: String
Version: String
```

## Eigenschaften
<a name="sam-property-graphqlapi-resolver-runtime-properties"></a>

`Name`  <a name="sam-graphqlapi-resolver-runtime-name"></a>
Der Name der zu verwendenden Laufzeit. Der einzige zulässige Wert ist derzeit `APPSYNC_JS`.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[Name](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-appsyncruntime.html#cfn-appsync-resolver-appsyncruntime-name)` Eigenschaft eines `AWS::AppSync::Resolver AppSyncRuntime` Objekts übergeben.

`Version`  <a name="sam-graphqlapi-resolver-runtime-version"></a>
Die Version der zu verwendenden Runtime. Die einzige zulässige Version ist derzeit `1.0.0`.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[RuntimeVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-resolver-appsyncruntime.html#cfn-appsync-resolver-appsyncruntime-runtimeversion)` Eigenschaft eines `AWS::AppSync::Resolver AppSyncRuntime` Objekts übergeben.