刪除
使用 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 的使用範例
要使用 cURL 從名為 uber_rides 的資料表中刪除超過 3 天的所有行,可以使用以下命令:
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 Request如果 JSON 主體無效400 Bad Request如果資料表名規範化後包含無效字元403 Forbidden如果 API 金鑰僅具有read範圍401 Unauthorized(如果 API 金鑰丟失或無效)404 Not Found如果您嘗試從尚無架構的資料表中刪除行500 Internal Server Error如果 Telemetry 執行刪除請求失敗