

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 IoT Jobs API-Operationen
<a name="jobs-api"></a>

AWS IoT Die Jobs-API kann für eine der folgenden Kategorien verwendet werden:
+ Administrative Aufgaben wie die Verwaltung und Kontrolle von Aufträgen. Dies ist die *Steuerebene*.
+ Geräte, die diese Aufgaben ausführen. Dies ist die *Datenebene*, mit der Sie Daten senden und empfangen können.

Die Auftragsverwaltung und die Auftragssteuerung verwenden eine HTTPS-Protokoll-API. Geräte können eine MQTT- oder eine HTTPS-Protokoll-API verwenden. Die Steuerebenen-API ist für eine geringe Anzahl von Aufrufen ausgelegt, wie sie für die Erstellung und Verfolgung von Aufträgen typisch sind. In der Regel öffnet sie eine Verbindung für eine einzelne Anforderung und schließt diese dann nach dem Eingang der Antwort. Die Datenebene HTTPS und die MQTT-API ermöglichen lange Abfragen. Diese API-Vorgänge sind für große Datenmengen ausgelegt, die auf Millionen von Geräten skaliert werden können.

Jede AWS IoT Jobs-HTTPS-API hat einen entsprechenden Befehl, mit dem Sie die API über AWS Command Line Interface (AWS CLI) aufrufen können. Die Befehle werden in Kleinbuchstaben mit Bindestrichen zwischen den Wörtern, aus denen die API besteht, ausgedrückt. Beispielsweise können Sie die `CreateJob`-API in der CLI aufrufen, indem Sie Folgendes eingeben:

```
aws iot create-job ...
```

Wenn während eines Vorgangs ein Fehler auftritt, erhalten Sie eine Fehlerantwort, die Informationen über den Fehler enthält.

## ErrorResponse
<a name="jobs-mqtt-error-response"></a>

Enthält Informationen zu einem Fehler, der während einer Operation des AWS IoT Jobs-Service aufgetreten ist.

Das folgende Beispiel zeigt die Syntax dieser Operation:

```
{
    "code": "ErrorCode",
    "message": "string",
    "clientToken": "string",
    "timestamp": timestamp,
    "executionState": JobExecutionState
}
```

Im Folgenden finden Sie eine Beschreibung dieser `ErrorResponse`:

`code`  
ErrorCode kann wie folgt eingestellt werden:    
InvalidTopic  
Die Anfrage wurde an ein Thema im AWS IoT Jobs-Namespace gesendet, das keiner API-Operation zugeordnet ist.  
InvalidJson  
Der Inhalt der Anforderung konnte nicht als gültiger nach UTF-8 kodierter JSON-Inhalt interpretiert werden.  
InvalidRequest  
Der Inhalt der Anforderung war nicht gültig. Dieser Code wird beispielsweise ausgegeben, wenn eine `UpdateJobExecution`-Anforderung ungültige Statusdetails enthält. Die Mitteilung enthält Einzelheiten zu dem Fehler.  
InvalidStateTransition  
Bei einem Update wurde versucht, die Auftragsausführung in einen Status zu ändern, der aufgrund des aktuellen Status der Auftragsausführung nicht gültig ist. Beispiel: Ein Versuch, eine Anforderung im Status SUCCEED in den Status IN\$1PROGRESS zu ändern. In diesem Fall enthält der Text der Fehlermeldung auch das Feld `executionState`.  
ResourceNotFound  
Die von dem Anforderungsthema angegebene `JobExecution` ist nicht vorhanden.   
VersionMismatch  
Die in der Anfrage angegebene erwartete Version stimmt nicht mit der Version der Jobausführung im AWS IoT Jobs-Service überein. In diesem Fall enthält der Text der Fehlermeldung auch das Feld `executionState`.  
InternalError  
Bei der Verarbeitung der Anforderung ist ein interner Fehler aufgetreten.  
RequestThrottled  
Die Anforderung wurde gedrosselt.  
TerminalStateReached  
Tritt auf, wenn ein Befehl zum Beschreiben eines Auftrags für einen Auftrag im Status „Terminal“ durchgeführt wird.

`message`  
Eine Fehlermeldungszeichenfolge.

`clientToken`  
Eine beliebige Zeichenfolge für die Korrelierung einer Anforderung mit der jeweiligen Antwort.

`timestamp`  
Die seit der Epoche vergangene Zeit (in Sekunden).

`executionState`  
Ein [https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_JobExecutionState.html](https://docs.aws.amazon.com/iot/latest/apireference/API_iot-jobs-data_JobExecutionState.html)-Objekt. Dieses Feld ist nur enthalten, wenn das Feld `code` den Wert `InvalidStateTransition` oder `VersionMismatch` hat. Dadurch ist es in diesen Fällen nicht erforderlich, eine separate `DescribeJobExecution`-Anforderung durchzuführen, um die Daten zum Status der aktuellen Auftragsausführung abzurufen.

**Topics**
+ [Auftragsverwaltung und -steuerung API und Datentypen](jobs-management-control-api.md)
+ [Aufträge, Geräte, MQTT- und HTTPS-API-Operationen und Datentypen](jobs-mqtt-https-api.md)