Skip to content

Instantly share code, notes, and snippets.

@odinuv
Created April 20, 2021 19:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save odinuv/c51bb038f7dcc590e612c02687fdd21b to your computer and use it in GitHub Desktop.
Save odinuv/c51bb038f7dcc590e612c02687fdd21b to your computer and use it in GitHub Desktop.
Script
import requests
baseUrl = "https://connection.keboola.com"
deleteFrom = "2021-04-19T07:48:00+00:00"
deleteTo = "2021-04-19T10:45:00+00:00"
storageToken = "578-xxxxx"
tableIds = ["in.c-sample.non-existent", "in.c-sample-data.boo"]
for tableId in tableIds:
url = baseUrl + "/v2/storage/tables/" + tableId + "/snapshots"
print("Backing up table: " + tableId)
payload = {'description': 'Backup before deleting rows'}
headers = {
'X-StorageApi-Token': storageToken
}
response = requests.request("POST", url, headers=headers, data=payload,
files=[])
if response.status_code != 202:
print(response.text)
exit('Failed')
print("Deleting rows: " + tableId)
url = baseUrl + "/v2/storage/tables/" + tableId + "/rows"
payload = {
'changedSince': deleteFrom,
'changedUntil': deleteTo
}
headers = {
'X-StorageApi-Token': storageToken
}
response = requests.request("DELETE", url, headers=headers, data=payload,
files=[])
print(response.text)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment