Synchrones Abrufen von Datensätzen nach Datumsbereich
Dieser Codeausschnitt zeigt Ihnen, wie Sie eine Reihe von Datensätzen mit Hilfe eines Datumsbereichs abrufen können. Es handelt sich um einen synchronen Aufruf, der so lange blockiert wird, bis er eine Antwort liefert. Er wird verwendet, wenn Sie eine begrenzte Anzahl von Datensätzen (Tausende) sofort zurückgeben möchten. Wenn Sie eine große Anzahl von Datensätzen (Millionen) abrufen möchten, verwenden Sie Bericht erstellen.
Die Datumsbereiche sind bei synchronen Abfragen auf ein Zeitfenster von 24 Stunden begrenzt.
Beispiel
| Schlüssel | Beschreibung |
|---|---|
VONAGE_API_KEY | Your Vonage API key (see it on your dashboard). |
VONAGE_API_SECRET | Your Vonage API secret (also available on your dashboard). |
ACCOUNT_ID | The account ID (same as |
REPORT_DIRECTION | Either |
REPORT_PRODUCT | Specifies the product for which reports and records are obtained. Can be one of |
DATE_START | Date of time window from when you want to start gathering records in ISO-8601 format. |
DATE_END | Date of time window from when you want to stop gathering records in ISO-8601 format. |
Schreiben Sie den Code
Fügen Sie Folgendes zu load-records-sync-dates.sh hinzu:
curl -G --data-urlencode date_start=$DATE_START --data-urlencode date_end=$DATE_END -u "$VONAGE_API_KEY:$VONAGE_API_SECRET" \
"https://api.nexmo.com/v2/reports/records?account_id=$ACCOUNT_ID&product=$REPORT_PRODUCT&direction=$REPORT_DIRECTION"Führen Sie Ihren Code aus
Speichern Sie diese Datei auf Ihrem Rechner und führen Sie sie aus:
Probieren Sie es aus
Legen Sie die austauschbaren Variablen für Ihren Account fest.
Für dieses Beispiel setzen Sie
REPORT_PRODUCTzuSMS.Legen Sie anhand der Tabelle die Werte für die übrigen Variablen fest.
Führen Sie das Skript aus und Sie erhalten eine Antwort ähnlich der folgenden:
{
"_links": {
"self": {
"href": "https://api.nexmo.com/v2/reports/records?account_id=abcd1234&product=SMS&direction=outbound&date_start=2020-06-04T08%3A00%3A00Z&date_end=2020-06-04T14%3A00%3A00Z&status=delivered"
}
},
"request_id": "450b434a-ff4f-40f1-80a5-8d6e24d91234",
"request_status": "SUCCESS",
"received_at": "2020-06-04T12:22:25+0000",
"price": 0.0,
"currency": "EUR",
"direction": "outbound",
"product": "SMS",
"account_id": "abcd1234",
"date_start": "2020-06-04T08:00:00+0000",
"date_end": "2020-06-04T14:00:00+0000",
"include_subaccounts": false,
"status": "delivered",
"include_message": false,
"items_count": 2,
"records": [
{
"account_id": "abcd1234",
"message_id": "12000000E506AC66",
"client_ref": null,
"direction": "outbound",
"from": "Acme Inc.",
"to": "447700123456",
"network": "23410",
"network_name": "Telefonica UK Limited",
"country": "GB",
"country_name": "United Kingdom",
"date_received": "2020-06-04T12:21:35+0000",
"date_finalized": "2020-06-04T12:21:37+0000",
"latency": "2274",
"status": "delivered",
"error_code": "0",
"error_code_description": "Delivered",
"currency": "EUR",
"total_price": "0.03330000"
},
...
]
}