> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Commit et upload

> Dans cette section, vous apprendrez à effectuer des commits et des uploads à l'aide du Client, de l'Application et du CLI.

Vous pouvez effectuer des commits et des uploads à l'aide de Client ou Application. Il
vous suffit d'un objet `squarecloud.File` et de passer le chemin où se trouve votre
fichier zip.

## Effectuer un commit

<Tabs>
  <Tab title="Avec Client">
    ```python theme={null}
    import squarecloud as square

    client = square.Client('API_KEY')

    async def example():
        file = square.File('path/to/you/file.zip')
        await client.commit(file=file, app_id='application_id')
    ```
  </Tab>

  <Tab title="Avec Application">
    ```python theme={null}
    import squarecloud as square

    client = square.Client('API_KEY')

    async def example():
        app = await client.app(app_id='application_id')
        file = square.File('path/to/you/file.zip')
        await app.commit(file=file)
    ```
  </Tab>
</Tabs>

## Effectuer un upload

Pour uploader une application, vous pouvez utiliser uniquement le \[Client].

<Tabs>
  <Tab title="Avec Client">
    ```python theme={null}
    import squarecloud as square

    client = square.Client(...)

    async def example():
        file = square.File('path/to/you/file.zip')
        await client.upload_app(file=file)
    ```
  </Tab>
</Tabs>

**N'oubliez pas que pour uploader une application, vous avez besoin d'un zip qui contient (au moins) les fichiers suivants :**

* Fichier principal : responsable du démarrage de votre application
* Fichier de dépendances : contient les informations sur les dépendances nécessaires
* Fichier de configuration (squarecloud.app) : un fichier de configuration précisant le
  nom,
  la description, le nom du fichier principal, la version, etc. Pour en savoir plus sur le
  fichier de configuration, consultez ce [guide](https://docs.squarecloud.app/fr/getting-started/config-file).

<Tip>
  Pour votre commodité, une classe a été ajoutée pour créer ce fichier de configuration :
  `squarecloud.utils.ConfigFile`.
</Tip>
