

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.

# Api
<a name="sam-property-function-api"></a>

Das Objekt, das einen `Api` Ereignisquellentyp beschreibt. Wenn eine [AWS::Serverless::Api](sam-resource-api.md) Ressource definiert ist, müssen der Pfad und die Methodenwerte einer Operation in der OpenAPI-Definition der API entsprechen.

Wenn nein definiert [AWS::Serverless::Api](sam-resource-api.md) ist, stellen die Eingabe und Ausgabe der Funktion die HTTP-Anfrage und die HTTP-Antwort dar.

Mithilfe der JavaScript API können beispielsweise der statusCode und der Hauptteil der Antwort gesteuert werden, indem ein Objekt mit den Schlüsseln StatusCode und body zurückgegeben wird.

## Syntax
<a name="sam-property-function-api-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-function-api-syntax.yaml"></a>

```
  [Auth](#sam-function-api-auth): {{ApiFunctionAuth}}
  [Method](#sam-function-api-method): {{String}}
  [Path](#sam-function-api-path): {{String}}
  [RequestModel](#sam-function-api-requestmodel): {{RequestModel}}
  [RequestParameters](#sam-function-api-requestparameters): {{List of [ String | RequestParameter ]}}
  [RestApiId](#sam-function-api-restapiid): {{String}}
  [ResponseTransferMode](#sam-function-api-responsetransfermode): {{String}}
  TimeoutInMillis: {{Integer}}
```

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

 `Auth`   <a name="sam-function-api-auth"></a>
Authentifizierungskonfiguration für diese spezielle API\+Path\+Methode.  
Nützlich, um die Authentifizierungskonfiguration der `DefaultAuthorizer` API-Einstellung für einen einzelnen Pfad zu überschreiben, wenn kein Pfad angegeben `DefaultAuthorizer` ist, oder um die Standardeinstellung zu überschreiben. `ApiKeyRequired`  
*Typ:* [ApiFunctionAuth](sam-property-function-apifunctionauth.md)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein Äquivalent. CloudFormation 

 `Method`   <a name="sam-function-api-method"></a>
HTTP-Methode, für die diese Funktion aufgerufen wird. Zu den Optionen gehören `DELETE``GET`,`HEAD`,`OPTIONS`,`PATCH`, `POST``PUT`, und`ANY`. Einzelheiten finden Sie unter [HTTP-Methode einrichten](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-settings-method-request.html#setup-method-add-http-method) im *API Gateway Developer Guide*.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

 `Path`   <a name="sam-function-api-path"></a>
URI-Pfad, für den diese Funktion aufgerufen wird. Muss mit `/` beginnen.  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig AWS SAM und hat kein CloudFormation Äquivalent.

 `RequestModel`   <a name="sam-function-api-requestmodel"></a>
Fordern Sie das Modell an, das für diese spezielle API\+Path\+Methode verwendet werden soll. Dies sollte auf den Namen eines Modells verweisen, das im `Models` Abschnitt einer Ressource angegeben ist. [AWS::Serverless::Api](sam-resource-api.md)  
*Typ:* [RequestModel](sam-property-function-requestmodel.md)  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

 `RequestParameters`   <a name="sam-function-api-requestparameters"></a>
Fordern Sie die Parameterkonfiguration für diese spezielle API\+Path\+Methode an. Alle Parameternamen müssen mit, oder beginnen `method.request` und darauf beschränkt `method.request.header` sein. `method.request.querystring` `method.request.path`  
Eine Liste kann sowohl Zeichenketten als auch [RequestParameter](sam-property-function-requestparameter.md)Objekte mit Parameternamen enthalten. Bei Zeichenketten sind die `Caching` Eigenschaften `Required` und standardmäßig auf eingestellt`false`.  
*Typ*: Liste von [Zeichenfolge \| [RequestParameter](sam-property-function-requestparameter.md)]  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

 `RestApiId`   <a name="sam-function-api-restapiid"></a>
Bezeichner einer RestApi Ressource, die eine Operation mit dem angegebenen Pfad und der angegebenen Methode enthalten muss. In der Regel ist dies so eingestellt, dass es auf eine in dieser Vorlage definierte [AWS::Serverless::Api](sam-resource-api.md) Ressource verweist.  
Wenn Sie diese Eigenschaft nicht definieren, AWS SAM wird mithilfe eines generierten `OpenApi` Dokuments eine [AWS::Serverless::Api](sam-resource-api.md) Standardressource erstellt. Diese Ressource enthält eine Vereinigung aller Pfade und Methoden, die durch `Api` Ereignisse in derselben Vorlage definiert wurden, ohne dass a angegeben ist`RestApiId`.  
Dies kann nicht auf eine [AWS::Serverless::Api](sam-resource-api.md) Ressource verweisen, die in einer anderen Vorlage definiert ist.  
*Typ:* Zeichenfolge  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

`ResponseTransferMode`  <a name="sam-function-api-responsetransfermode"></a>
Der Antwortübertragungsmodus für die Lambda-Funktionsintegration. Wird auf gesetzt`RESPONSE_STREAM`, um Lambda-Antwort-Streaming über API Gateway zu aktivieren, sodass die Funktion Antworten zurück an Clients streamen kann. Wenn auf gesetzt`RESPONSE_STREAM`, verwendet API Gateway die InvokeWithResponseStreaming Lambda-API.  
*Typ:* Zeichenfolge  
*Required*: No  
*Gültige Werte*: `BUFFERED` \| `RESPONSE_STREAM`  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integration.html#cfn-apigateway-method-integration-responsetransfermode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integration.html#cfn-apigateway-method-integration-responsetransfermode)Eigenschaft eines `AWS::ApiGateway::Method Integration` übergeben.

`TimeoutInMillis`  <a name="sam-function-api-timeoutinmillis"></a>
Benutzerdefinierte Zeitüberschreitung zwischen 50 und 29.000 Millisekunden.  
Wenn Sie diese Eigenschaft angeben, AWS SAM wird Ihre OpenAPI-Definition geändert. Die OpenAPI-Definition muss mithilfe der `DefinitionBody` Eigenschaft inline angegeben werden. 
*Typ*: Ganzzahl  
*Required*: No  
*Standard*: 29.000 Millisekunden oder 29 Sekunden  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein Äquivalent. CloudFormation 

## Beispiele
<a name="sam-property-function-api--examples"></a>

### Einfaches Beispiel
<a name="sam-property-function-api--examples--apievent"></a>

#### YAML
<a name="sam-property-function-api--examples--apievent--yaml"></a>

```
Events:
  ApiEvent:
    Type: Api
    Properties:
      Path: /path
      Method: get
      RequestParameters:
        - method.request.header.Authorization
        - method.request.querystring.keyword:
            Required: true
            Caching: false
```