Page History
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
import requests
def execute_curl_request(cursor=None):
url = 'https://api.eu-west-1.blancco.cloud/v1/report/export'
headers = {
'Content-Type': 'application/json',
'X-BLANCCO-API-KEY': 'YOUR-API-KEY'
}
data = {
"filter": {
"date": {
"gte": "2023-07-01T00:00:00Z"
}
},
"format": "XML",
"container": "NONE",
"size": 1
}
if cursor:
url += f"?cursor={cursor}"
response = requests.post(url, headers=headers, json=data)
return response
def check_and_print_response(response):
if response.status_code == 200:
#print("\nResponse:")
print(response.text)
cursor_header = response.headers.get('x-blancco-cursor')
return cursor_header, True
else:
print("Request failed with status code:", response.status_code)
return None, False
if __name__ == "__main__":
cursor = None
success_count = 0
failure_count = 0
while True:
response = execute_curl_request(cursor)
if success_count == 0:
print("\n--------------------------------------------------")
new_cursor, success = check_and_print_response(response)
if success:
success_count += 1
else:
failure_count += 1
if new_cursor:
cursor = new_cursor
else:
#print("No more reports available")
break
print("\n--------------------------------------------------")
print("All matching reports exported. Summary of exported reports below:")
print(f"Successful exports: {success_count}")
print(f"Failed exports: {failure_count}")
|