削除
Delete API で条件に一致する行やテーブル全体を削除できます。削除は取り消せません。
削除 https://api.telemetry.sh/delete
ヘッダー
| 名前 | タイプ | 説明 |
|---|---|---|
| コンテンツタイプ | 文字列 | アプリケーション/json |
| 認可 | 文字列 | API キー (生のキーまたは Bearer <key> |
スコープのルール:
DELETE /deleteが必要ですwriteまたはread-and-write
本体
| 名前 | タイプ | 説明 |
|---|---|---|
| テーブル | 文字列 | データを削除したいテーブル |
| どこで | 文字列 (オプション) | 削除する行を指定する SQL 句 |
もし where が省略された場合、Telemetry はリクエストをテーブル全体の削除として扱います。
成功の応答
削除応答は、非同期のクリーンアップ確認応答です。 API が返されます 200 OK 削除リライトまたはテーブル無効化ステップが正常にスケジュールされるとすぐに。
一致する行を削除する
{
"status": "success",
"message": "Delete rewrite completed; part cleanup is asynchronous"
}
テーブル全体を削除する
{
"status": "success",
"message": "Table disabled; part cleanup is asynchronous"
}
cURLでの使用例
という名前のテーブルから 3 日より古いすべての行を削除するには uber_rides cURL を使用すると、次のコマンドを使用できます。
API_KEY="YOUR_API_KEY"
WHERE_CONDITION="timestamp <= (now() - INTERVAL '3 day')"
curl -X DELETE https://api.telemetry.sh/delete \
-H "Content-Type: application/json" \
-H "Authorization: $API_KEY" \
-d @- <<EOF
{
"table": "uber_rides",
"where": "$WHERE_CONDITION"
}
EOF
全体を削除したい場合は、 uber_rides 表では、単純に省略します where フィールド:
API_KEY="YOUR_API_KEY"
curl -X DELETE https://api.telemetry.sh/delete \
-H "Content-Type: application/json" \
-H "Authorization: $API_KEY" \
-d '{
"table": "uber_rides"
}'
重要な注意事項
- データの削除: 削除エンドポイントを使用する場合は注意してください。もし
where条件が指定されていない場合は、テーブル全体が削除されます。 - 不可逆性: データを削除すると、復元することはできません。
- 従来のエンドポイント: 可能であれば、テーブル全体のライフサイクル操作にはテーブル API を優先します。
DELETE /deleteを使用した行レベルの削除には引き続き便利です。where条項。
よくあるエラー
400 Bad RequestJSON ボディが無効な場合400 Bad Request正規化後にテーブル名に無効な文字が含まれている場合403 ForbiddenAPI キーのみがある場合read範囲401 UnauthorizedAPI キーが見つからないか無効な場合404 Not Foundまだスキーマが存在しないテーブルから行を削除しようとした場合500 Internal Server ErrorTelemetry が削除リクエストの実行に失敗した場合