ScalewayApi::Client
Client Scaleway REST API v1.
Authentification beaucoup plus simple que l'API OVH : un seul en-tête
X-Auth-Token porté par chaque requête. Pas de signature, pas de
synchronisation d'horloge, pas de consumer key.
La secret_key est celle d'une clé API IAM Scaleway (générée sur
https://console.scaleway.com/iam/api-keys). default_project_id est
nécessaire pour créer des ressources (clés SSH, serveurs) : Scaleway
exige la présence du projet dans le corps de la requête.
client = ScalewayApi::Client.new(
secret_key: ENV["SCW_SECRET_KEY"],
default_project_id: ENV["SCW_DEFAULT_PROJECT_ID"],
default_zone: "fr-par-2",
)
Constructors
Instance methods
Effectue un appel API.
method:"GET","POST","PUT","PATCH","DELETE".path: chemin relatif àbase_url(ex."/iam/v1alpha1/ssh-keys"ou"/baremetal/v1/zones/fr-par-2/servers").query: table de paramètres encodée dans l'URL.body: objet JSON-sérialisable (ounil).
Retourne le corps parsé en JSON::Any (ou nil si corps vide).
Résout le project_id à utiliser : argument explicite en priorité,
sinon default_project_id du client. Lève si aucun n'est défini
et que l'endpoint en exige un.
Résout la zone à utiliser : argument explicite en priorité, sinon
default_zone du client.
Injection du transport HTTP (par défaut DefaultHttpTransport).
En test, passer un double qui renvoie {status, body} prédéfini.
Injection du transport HTTP (par défaut DefaultHttpTransport).
En test, passer un double qui renvoie {status, body} prédéfini.