68 lines
2.2 KiB
Python
68 lines
2.2 KiB
Python
import requests
|
|
|
|
# Fonction pour afficher le menu de sélection du domaine
|
|
def select_domain():
|
|
options = {
|
|
"NOMSITEINTERNET1": "ID DU DOMAINE",
|
|
"NOMSITEINTERNET2": "ID DU DOMAINE",
|
|
"NOMSITEINTERNET3": "ID DU DOMAINE"
|
|
}
|
|
|
|
print("Merci de faire votre choix :")
|
|
for i, domain in enumerate(options.keys(), start=1):
|
|
print(f"{i}. {domain}")
|
|
|
|
while True:
|
|
choice = input("Entrez le numéro du domaine : ")
|
|
try:
|
|
choice = int(choice)
|
|
if 1 <= choice <= len(options):
|
|
domain = list(options.keys())[choice - 1]
|
|
domain_id = list(options.values())[choice - 1]
|
|
return domain, domain_id
|
|
else:
|
|
print("Choix invalide. Réessayez.")
|
|
except ValueError:
|
|
print("Choix invalide. Réessayez.")
|
|
|
|
# Lire le nom de domaine à partir de l'entrée utilisateur
|
|
DOMAIN_NAME = input("Entrez le nom de domaine à utiliser : ")
|
|
|
|
# Appeler la fonction pour afficher le menu de sélection du domaine
|
|
DOMAIN_SUFFIX, DOMAIN_ID = select_domain()
|
|
|
|
# Remplacez la valeur suivante par votre clé API Ionos
|
|
API_KEY = "SECRET.API"
|
|
|
|
# Endpoint de l'API pour créer un enregistrement de sous-domaine
|
|
API_ENDPOINT = f"https://api.hosting.ionos.com/dns/v1/zones/{DOMAIN_ID}/records"
|
|
|
|
# Données du sous-domaine au format JSON
|
|
SUBDOMAIN_DATA = [
|
|
{
|
|
"name": f"{DOMAIN_NAME}.{DOMAIN_SUFFIX}",
|
|
"type": "A",
|
|
"content": "1.1.1.1", # Adresse IP cible pour le sous-domaine
|
|
"ttl": 60,
|
|
"disabled": False
|
|
}
|
|
]
|
|
|
|
# Utilisation de requests pour effectuer la requête POST avec les données du sous-domaine
|
|
headers = {
|
|
"X-API-Key": API_KEY,
|
|
"accept": "application/json",
|
|
"Content-Type": "application/json"
|
|
}
|
|
|
|
response = requests.post(API_ENDPOINT, headers=headers, json=SUBDOMAIN_DATA)
|
|
|
|
if response.status_code == 201:
|
|
created_subdomain = response.json()[0]['name']
|
|
print(f"Le sous-domaine '{created_subdomain}' a été créé avec succès !")
|
|
else:
|
|
print("Une erreur s'est produite lors de la création du sous-domaine.")
|
|
print(f"Code d'erreur : {response.status_code}")
|
|
print("Message d'erreur :")
|
|
print(response.json())
|