Zum Hauptinhalt springen
Alle folgenden Operationen können entweder über die Client-Klasse, die Application-Klasse oder die CLI ausgeführt werden. Nachfolgend findest du Beispiele, wie du jede dieser Aufgaben mit beiden Klassen durchführst:

Liste der Dateien abrufen

client.app_files_list und app.files_list geben eine Liste von FileInfo-Objekten zurück.
import squarecloud as square

client = square.Client(api_key='API KEY')

async def example():
    files_list = await client.app_files_list(app_id='application_id', path='/')

    for file in files_list:
        print(file.name)  # 'main.py'
        print(file.type)  # 'directory' or 'file'
        print(file.size)  # 2140
        print(file.lastModified)  # 1677112835000

Eine Datei lesen

client.read_app_file und app.read_file geben ein BytesIO-Objekt zurück.
import squarecloud as square

client = square.Client(api_key='API KEY')

async def example():
    file_bytes = await client.read_app_file(
        app_id='application_id', path='main.py'
    )

    print(file_bytes)  # b'01101000 01101001'

Eine Datei erstellen

client.create_app_file und app.create_file geben ein Response-Objekt zurück.
import squarecloud as square

client = square.Client(api_key='API KEY')

async def example():
    await client.create_app_file(
        app_id='application_id', path='/file.txt', file=square.File('file.txt')
    )

Eine Datei löschen

client.delete_app_file und app.delete_file geben ein Response-Objekt zurück.
import squarecloud as square

client = square.Client(api_key='API KEY')

async def example():
    await client.delete_app_file(app_id='application_id', path='/file.txt')

Eine Datei verschieben

client.move_app_file und app.move_file geben ein Response-Objekt zurück.
import squarecloud as square

client = square.Client(api_key='API KEY')


async def example():
    await client.move_app_file(
        app_id='application_id',
        origin='path/to/origin/file.py',
        dest='path/to/destination/file.py',
    )