OVH API
OVH client API
uv
configuration avec uv, sans utiliser python -m venv ni activer manuellement l’environnement. uv run crée et gère automatiquement .venv dans le projet.
1
2
3
4
# Installer uv si nécessaire
curl -LsSf https://astral.sh/uv/install.sh | sh
# archlinux
yay -S uv
OVH API
1
2
3
4
# Créer le projet et ajouter le client OVH
uv init ovh-api
cd ovh-api
uv add ovh
Créez ovh.conf à la racine du projet :
1
2
3
4
5
[default]
endpoint=ovh-eu
application_key=VOTRE_APP_KEY
application_secret=VOTRE_APP_SECRET
consumer_key=VOTRE_CONSUMER_KEY
Protégez le fichier, car il contient des clés secrètes :
1
chmod 600 ovh.conf
Créez main.py :
1
2
3
4
5
6
7
8
9
import ovh
client = ovh.Client(config_file="ovh.conf")
# Vérifier l'accès à l'API
print(client.get("/me"))
# Lister les zones DNS du compte
print(client.get("/domain/zone"))
Exécutez le script :
1
uv run main.py
Pour un script autonome, sans initialiser de projet, vous pouvez aussi faire :
1
uv run --with ovh main.py
La documentation de uv : gestion des projets et exécution de scripts.
Python venv
Pour installer le client API Python d’OVHcloud sous Linux, utilisez un environnement virtuel :
1
2
3
4
python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install ovh
Le paquet ovh prend en charge Python 3.7 et versions ultérieures.
Créez ensuite vos identifiants API OVHcloud et utilisez-les en Python :
1
2
3
4
5
6
7
8
9
10
import ovh
client = ovh.Client(
endpoint="ovh-eu", # utilisez ovh-ca ou ovh-us selon votre région
application_key="VOTRE_APP_KEY",
application_secret="VOTRE_APP_SECRET",
consumer_key="VOTRE_CONSUMER_KEY",
)
print(client.get("/me"))
Ne stockez pas vos clés secrètes dans le code source. Le client peut aussi lire les identifiants depuis un fichier
ovh.conf.
Oui. Créez un fichier ovh.conf :
1
2
3
4
5
[default]
endpoint=ovh-eu
application_key=VOTRE_APP_KEY
application_secret=VOTRE_APP_SECRET
consumer_key=VOTRE_CONSUMER_KEY
Limitez l’accès au fichier :
1
chmod 600 ovh.conf
Puis, dans votre script Python, indiquez son emplacement :
1
2
3
4
import ovh
client = ovh.Client(config_file="ovh.conf")
print(client.get("/me"))
Si le fichier se trouve à l’emplacement par défaut (~/.ovh.conf), vous pouvez omettre config_file :
1
2
client = ovh.Client()
...