CloudLink:使用 Cloudlink Rest API 下載 Cloudlink 備份的 Python 指令檔範例

Summary: 此檔僅用於教育和資訊目的。 可作為使用 Python 語言編寫 Cloudlink 自動化指令檔時的參考。 對於在 Dell 客戶環境中執行此檔案,Dell 概不負責。這 指令檔顯示使用 Cloudlink RestAPI 呼叫,透過 Python 指令檔下載 Cloudlink 備份檔案的方法。 此指令檔適用於 Cloudlink 8.x 系列。 該腳本不會更改任何/的狀態,只會下載備份檔。 Cloudlink 節點 (由 IP 位址指示) 的存取權係透過 Cloudlink secadmin 使用者的登入資料授予。 ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

# Copyright Dell © 2025

# This file is for education / information purposes only.
# Can be used as a reference when writing Cloudlink automation scripts with Python language.
# Dell takes no responsibility for this file being executed in Dell Customer's environment

# The script shows a way to download Cloudlink backup file with a Python script using Cloudlink RestAPI calls.
# 此指令檔適用於 Cloudlink 8.x 行。
# The script doesn't alter state of any system, just downloads the backup file.
# Access to the Cloudlink node (indicated by IP address) is granted with credentials of a Cloudlink secadmin user.

import requests
import base64
import urllib3
import os

# Suppress only the single InsecureRequestWarning from urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)

auth_url = "https://<cloudlink node ip>/cloudlink/oauth/token?grant_type=password&username=secadmin&password=<the password>&scope=all"

auth_response = requests.post(auth_url,timeout=1800, verify=False)

if auth_response.status_code == 200:
    # Parse the JSON response
    data = auth_response.json()
else:
    print(f"Error: {auth_response.status_code}")
    exit()

print("Auth token: "+data.get("access_token"))
access_token = data.get('access_token')

# Define the API endpoint
url = "https://<clc ip>:443/cloudlink/rest/backup"

# Define the headers (if needed)
headers = {
    "Authorization": "Bearer "+access_token,
    "Content-Type": "application/json"
}

# Make a GET request
response = requests.get(url, headers=headers, verify=False)

# Check the response status code
if response.status_code == 200:
    # Parse the JSON response
    data = response.json()
    print(data.get('file_name'))
else:
    print(f"Error: {response.status_code}")
    exit()

file_name = data.get('file_name')
file_content_base64 = data.get('file_content')

# Decode the base64 string to binary data
file_content_binary = base64.b64decode(file_content_base64)

# Save the binary data to a file
with open(str(file_name), "wb") as binary_file:
    binary_file.write(file_content_binary)

print("Backup has been saved to "+os.getcwd()+"\\"+str(file_name))

 

Article Properties
Article Number: 000330399
Article Type: How To
Last Modified: 10 Jun 2025
Version:  1
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.