Bulk-Write CSV Data
Schreiben Sie viele Einträge im CSV-Format mit einem einzigen HTTP POST in den Kanal
Beschreibung
Um Gerätestrom zu sparen oder Kanalaktualisierungen zu gruppieren, können Sie die API für Massenaktualisierungen verwenden. Wenn Sie die API für Massenaktualisierungen verwenden, sammeln Sie im Laufe der Zeit Daten und laden die Daten dann in ThingSpeak™ hoch. Informationen zum Schreiben von Daten im JSON-Format finden Sie unter Bulk-Write JSON Data. Informationen zum Schreiben eines einzelnen Eintrags finden Sie unter Write Data.
Hinweis
Wenn Sie die React-App mit Test Frequency auf On Data Insertion setzen, wird Ihr React nur einmal pro Massenschreibanforderung ausgelöst, wenn Condition Type mit Condition übereinstimmt, selbst wenn Condition mehr als einmal übereinstimmt.
Anfrage
HTTP-Methode
POST
URL
https://api.thingspeak.com/channels/<channel_id>/bulk_update.csv
URL-Parameter
| Name | Beschreibung |
|---|---|
| (Erforderlich) Kanal-ID für den gewünschten Kanal. |
URL-Beispiel:https://api.thingspeak.com/channels/999990/bulk_update.csv
Inhaltstyp
application/x-www-form-urlencoded
Körperparameter
| Name | Beschreibung | Werttyp |
|---|---|---|
write_api_key | (Erforderlich) Geben Sie den Schreib-API-Schlüssel für diesen bestimmten Kanal an. Der Write-API-Schlüssel befindet sich auf der Registerkarte API Keys der Kanalansicht. | Zeichenfolge |
time_format | (Erforderlich) Geben Sie die absolute Zeit des Ereignisses mit | Zeichenfolge |
updates | Massendaten zum Posten im Kanal. Trennen Sie aufeinanderfolgende Einträge mit einem Pipe-Zeichen ( | Siehe Parameter aktualisieren. |
Das Update enthält die Daten, die Sie auf Ihrem Kanal veröffentlichen können. Die Parameter erscheinen in jedem Update nacheinander in der in der Tabelle angegebenen Reihenfolge. In jedem Update erscheint nur eine der Zeitangaben.
| Name | Beschreibung | Werttyp |
|---|---|---|
| Zeitstempel | (Erforderlich) Wenn | Datum/Uhrzeit oder Ganzzahl |
Feld <X> Daten | (Erforderlich) Feld X-Daten, wobei X die Feld-ID ist | beliebig |
| Breite | (Erforderlich) Breitengrad in Grad, angegeben als Wert zwischen | dezimal |
| Länge | (Erforderlich) Längengrad in Grad, angegeben als Wert zwischen | dezimal |
| Elevation | (Erforderlich) Höhe in Metern | ganze Zahl |
| Status | (Erforderlich) Nachricht für Statusfeldeintrag | Zeichenfolge |
Körper-Format
Jeder CSV-Massenschreibvorgang enthält einen Schreib-API-Schlüssel und eine Zeitformatspezifikation. Jeder Massenschreibvorgang kann mehrere Aktualisierungen enthalten. Trennen Sie aufeinanderfolgende Einträge mit einem Pipe-Zeichen (|). Geben Sie für jeden aufeinanderfolgenden Parameter bis zum letzten Parameter mit gültigen Daten Daten oder einen leeren Eintrag an.
write_api_key=WRITE_API_KEY&time_format=TIME_FORMAT&updates=TIMESTAMP,FIELD1_VALUE,FIELD2_VALUE,FIELD3_VALUE,FIELD4_VALUE,FIELD5_VALUE,FIELD6_VALUE,FIELD7_VALUE,FIELD8_VALUE,LATITUDE,LONGITUDE,ELEVATION,STATUS | DATETIME_STAMP_OR_SECONDS_FROM_LAST_ENTRY,FIELD1_VALUE,FIELD2_VALUE,FIELD3_VALUE,FIELD4_VALUE,FIELD5_VALUE,FIELD6_VALUE,FIELD7_VALUE,FIELD8_VALUE,LATITUDE,LONGITUDE,ELEVATION,STATUSwrite_api_key=XXXXXXXXXXXXXXXX&time_format=absolute&updates=2018-06-14T12:12:22-0500,1,,3,0.4,1.5,1.6,,1.8,40.0,5.4,0,wet|2018-01-30T10:26:23-0500,1.2,2.3,3,4,5,6,7,8,42.0,0.5,50,falling
write_api_key=XXXXXXXXXXXXXXXX&time_format=relative&updates=4,1.1,2,0.3,,,6,7.7,0.8,41.2,19.5,100,ok|3,1,2,3,4,5,6,7,8,41.2,25.1,110,rising
Antwort
Erfolg
200 OK
Die Antwort ist ein JSON-Objekt, das den Erfolg anzeigt:
{
"success": true
}Fehler
Die vollständige Liste finden Sie unter Fehlercodes.
Einschränkungen
Die Anzahl der Nachrichten in einem einzelnen Massenupdate ist auf 960 Nachrichten für Benutzer kostenloser Konten und 14.400 Nachrichten für Benutzer kostenpflichtiger Konten begrenzt. Das Zeitintervall zwischen aufeinanderfolgenden Bulk-Update-Aufrufen muss mindestens 15 Sekunden betragen.
MQTT-Abonnements melden dem Kanal keine Aktualisierungen aus Massenschreibvorgängen.
Alle Updates müssen dasselbe Zeitformat verwenden.
Alle Zeitstempel müssen eindeutig sein. Wenn Sie doppelte Zeitstempel übermitteln, werden alle Ihre Aktualisierungen abgelehnt, andernfalls werden nur Aktualisierungen abgelehnt, deren Zeitstempel sich bereits im Kanal befinden.


