API SSL

Skip to main content
Du bist hier:
Drucken

API SSL

API SSL

Dans ce guide, nous t’expliquons comment utiliser notre API SSL. L’API te permet de récupérer tes certificats SSL et de déclencher des renouvellements de manière automatisée.

 

Étape 1 : activer l’accès API

Avant de pouvoir utiliser l’API SSL, va sur admin.firestorm.ch et connecte-toi avec ton FireStorm-ID. Active l’API sous Compte => Profil client => Accès API.

Étape 2 : copier la clé API

Après l’activation, ta clé API personnelle s’affiche. Copie cette clé et utilise-la pour toutes les requêtes API.

Étape 3 : utiliser l’API

Avec la clé API (recommandé)

curl -H "X-API-Key: DEIN_API_KEY" https://api.firestorm.ch/ssl/v1/certificates

Alternative : Basic Auth

curl -u "DEINE_EMAIL:DEIN_PASSWORT" https://api.firestorm.ch/ssl/v1/certificates

 

Points de terminaison de l’API

Méthode Point de terminaison Description
GET /ssl/v1/certificates Lister tous les certificats SSL
GET /ssl/v1/certificate?service_id={id} Récupérer les détails d’un certificat (historique inclus)
POST /ssl/v1/renew Déclencher le renouvellement d’un certificat SSL

 

Exemples

Lister tous les certificats

curl -H "X-API-Key: DEIN_API_KEY" https://api.firestorm.ch/ssl/v1/certificates

Réponse :

{
    "status": "OK",
    "count": 2,
    "certificates": [
        {
            "service_id": 12345,
            "domain": "example.ch",
            "product": "PositiveSSL",
            "service_status": "Active",
            "ssl_status": "Completed",
            "next_due_date": "2027-02-17",
            "valid_from": "2026-02-17",
            "valid_to": "2026-08-17",
            "days_until_expiry": 180,
            "common_name": "example.ch",
            "auto_reissue_count": 1,
            "last_auto_reissue": "2026-02-17 03:00:00"
        }
    ]
}

 

Filtrer par domaine

curl -H "X-API-Key: DEIN_API_KEY" "https://api.firestorm.ch/ssl/v1/certificates?domain=example.ch"

 

Détails du certificat avec historique

curl -H "X-API-Key: DEIN_API_KEY" "https://api.firestorm.ch/ssl/v1/certificate?service_id=12345"

Réponse :

{
    "status": "OK",
    "certificate": {
        "service_id": 12345,
        "domain": "example.ch",
        "product": "PositiveSSL",
        "service_status": "Active",
        "ssl_status": "Completed",
        "next_due_date": "2027-02-17",
        "valid_from": "2026-02-17",
        "valid_to": "2026-08-17",
        "days_until_expiry": 180,
        "common_name": "example.ch",
        "auto_reissue_count": 1,
        "last_auto_reissue": "2026-02-17 03:00:00",
        "history": [
            {
                "valid_from": "2025-08-17",
                "valid_to": "2026-02-17",
                "common_name": "example.ch",
                "reissued_at": "2026-02-17 03:00:00"
            }
        ]
    }
}

 

Renouveler un certificat SSL

Un renouvellement est possible lorsque la date d’échéance se situe dans les 90 prochains jours. Une nouvelle commande et une facture sont créées automatiquement.

curl -X POST -H "X-API-Key: DEIN_API_KEY" -H "Content-Type: application/json" -d '{"service_id": 12345}' https://api.firestorm.ch/ssl/v1/renew

Réponse en cas de succès :

{
    "status": "OK",
    "message": "Renewal order created successfully.",
    "order_id": 67890,
    "invoice_id": 11111,
    "service": {
        "service_id": 12345,
        "domain": "example.ch",
        "product": "PositiveSSL",
        "next_due_date": "2027-02-17",
        "price_chf": 24.80
    }
}

 

Messages d’erreur

Code HTTP Signification
200 Requête réussie
400 Paramètres manquants ou renouvellement pas encore possible
401 Échec de l’authentification
404 Certificat introuvable ou n’appartenant pas à ton compte
500 Erreur du serveur lors de la création de la commande

 

Remarques

  • Reissue automatique : tes certificats SSL sont automatiquement réémis avant leur expiration (Reissue). Tu dois seulement déclencher le renouvellement annuel (Renewal) via l’API.
  • Période de renouvellement : le renouvellement peut être déclenché au plus tôt 90 jours avant la date d’échéance.
  • Facture : lors du renouvellement, une facture est automatiquement créée avec ton moyen de paiement enregistré.
  • Rate Limiting : après 25 tentatives d’authentification échouées, ton adresse IP est bloquée pendant 6 heures.

 

Automatisation avec Cron

Exemple : vérification quotidienne pour savoir si un renouvellement est dû (nécessite jq) :

#!/bin/bash
API_KEY="DEIN_API_KEY"
API_URL="https://api.firestorm.ch/ssl/v1"

# Alle Zertifikate abrufen
CERTS=$(curl -s -H "X-API-Key: $API_KEY" "$API_URL/certificates")

# Service IDs extrahieren und prüfen
echo "$CERTS" | jq -r ".certificates[] | .service_id" | while read SID; do
  DUE=$(echo "$CERTS" | jq -r ".certificates[] | select(.service_id == $SID) | .next_due_date")
  DAYS=$(( ($(date -d "$DUE" +%s) - $(date +%s)) / 86400 ))

  if [ "$DAYS" -le 30 ] && [ "$DAYS" -ge 0 ]; then
    echo "Service $SID: fällig in $DAYS Tagen - verlängere..."
    curl -s -X POST -H "X-API-Key: $API_KEY" 
      -H "Content-Type: application/json" 
      -d "{"service_id": $SID}" "$API_URL/renew"
  fi
done

 

Pour toute question ou assistance, contacte-nous via notre système de tickets.

Related Post