Online Online.net

API

Ceci est une fonctionnalité avancée, cette documentation est faite pour des développeurs(euses).

Online.net expose une API publique REST pour quelques opérations. L'URL de base pour tous les appels est https://api.online.net/api/v1.

Pour utiliser cette API, les utilisateur(trice)s peuvent s'identifier à l'aide de leur token API privé, ou avec des applications qui supportent l'authentification OAuth2.

  • Les méthodes sont regroupées par espace de nom (par exemple "server", "user").
  • Les verbes HTTP supportés sont GET, POST, PUT et DELETE.
  • Sauf quand la documentation spécifie un cas particulier, tous les appels d'API sans erreur retournent un code HTTP 200 avec un objet JSON.
  • Les erreurs sont retournées avec un code HTTP 4XX (par exemple 400 ou 403), et un objet JSON avec les propriétés "error" (message d'erreur) et "code" (un entier, optionnel).
  • L'API envoie des en-têtes ETag et gère l'en-tête If-None-Match.
  • Les dates sont formattées comme dans la méthode Javascript date.toJSON.
  • Sauf quand c'est spécifié, toutes les méthodes d'API requièrent l'authentification.
  • Pour le déboggage seulement, vous pouvez obtenir un formattage plus lisible de l'objet JSON en envoyant l'en-tête X-Pretty-JSON: 1.

/abuse

GET /abuse

Obtenir une liste des alertes de sécurité

Retourne une liste d'alertes de sécurité reçues au sujet de services de l'utilisateur(trice). Les paramètres 'ip' et 'domain' peuvent être utilisés pour filtrer la liste.

Paramètres :
  Nom Type Description
GET status chaîne Status des alertes de sécurité : 'pending' (en cours) ou 'resolved' (résolues) (vide : toutes les alertes)
GET ip chaîne Adresse IP
GET domain chaîne Nom de domaine
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id d'alerte maximum
GET since_id entier Pagination : Id d'alerte minimum
Valeur de retour :

Une liste de valeurs de type AbuseReport afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /abuse/info/{alert_id}

Obtenir des informations sur une alerte de sécurité

Retourne des informations sur une alerte de sécurité reçue au sujet d'un service de l'utilisateur(trice).

Paramètres :
  Nom Type Description
path alert_id entier Id de l'alerte
Valeur de retour :

AbuseReport afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

POST /abuse/reply

Répondre à une alerte de sécurité

Répond à une alerte de sécurité reçue au sujet d'un service de l'utilisateur(trice). Retourne true en cas de succès.

Paramètres :
  Nom Type Description
POST abuse_id entier Id de l'alerte de sécurité
POST answer chaîne Réponse qui sera envoyée à l'expéditeur de l'alerte de sécurité
POST solution chaîne Description de la solution apportée
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

/domain

GET /domain

Retourne la liste des domaines appartenants à l'utilisateur courant

Retourne une liste de domaine.

Valeur de retour :

Une liste de valeurs de type Domain afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /domain

Ajouter un nom de domaine externe

Ajoute un nom de domaine externe, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
POST domain_name chaîne Nom de domaine externe à ajouter
POST external booléen Is external
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Vous n'êtes pas autorisé à ajouter un nom de domaine externe
500 Erreur interne

GET /domain/{domain_id}

Retourne un domaine spécifique

Retourne un domaine.

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine
Valeur de retour :

Une liste de valeurs de type Domain afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /domain/{domain_id}/version

Retourne une liste paginée de version associées à ce domaine

Retourne toute les versios associées avec ce domaine.

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine à récupérer
Valeur de retour :

Une liste de valeurs de type ZoneVersion afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /domain/{domain_id}/version

Création d'une nouvelle version

Création d'une nouvelle version vide.

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine
POST name chaîne Le nom de la version à créer
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Domaine non trouvé
500 Erreur interne

GET /domain/{domain_id}/version/{version_id}

Récupère une version de zone

Retourne une version spécifique.

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine à récupérer
path version_id chaîne L'id de la version à récupérer
Valeur de retour :

Une liste de valeurs de type ZoneVersion afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /domain/{domain_id}/version/{version_id}

Supprime une version de zone

Supprime une version de zone et tous les resource records associés.

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine
path version_id chaîne L'id de la version
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Domaine ou version non trouvée
500 Erreur interne

PATCH /domain/{domain_id}/version/{version_id}

Edition des métadonnées d'une version

Edite les métadonnées d'une version.

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine
path version_id chaîne L'id de la version à activer
POST name chaîne Le nouveau nom de la version
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Domaine ou version non trouvée
500 Erreur interne

PATCH /domain/{domain_id}/version/{version_id}/enable

Activer cette version

Active cette version, cela va déployer la zone vers nos serveurs DNS et entamer la propagation de votre zone

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine
path version_id chaîne L'id de la version à activer
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /domain/{domain_id}/version/{version_id}/zone

Retourne la zone associée à cette version

Retourne la zone associée à cette version (la liste des resource records contenus dans la zone).

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine
path version_id chaîne L'id de la version à activer
Valeur de retour :

Une liste de valeurs de type ResourceRecord afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Domaine, Version ou Resource Record non trouvés
500 Erreur interne

POST /domain/{domain_id}/version/{version_id}/zone

Création d'un resource record

Création d'un resource record et association de celui ci avec une zone.

Paramètres :
  Nom Type Description
POST name chaîne Nom du resource record. Il ne peut contenir qu'un nom valide, ainsi que les wildcards '*' et '@'
POST type chaîne Type du resource record ex: A, AAAA, MX, TXT
POST priority entier Priorité/poids pour ce resource record
POST ttl entier TTL pour le resource record
POST data chaîne Donnée pour le resource record
path domain_id entier L'id du domaine
path version_id chaîne L'id de la version
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Domaine ou version non trouvée
500 Erreur interne

GET /domain/{domain_id}/version/{version_id}/zone/{rr_id}

Récupère un resource record

Création d'un resource record et association de celui ci avec une zone.

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine
path version_id chaîne L'id de la version
path rr_id chaîne L'id du resource record à éditer
Valeur de retour :

ResourceRecord afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Domaine, Version ou Resource Record non trouvés
500 Erreur interne

DELETE /domain/{domain_id}/version/{version_id}/zone/{rr_id}

Supprime un resource record d'une version

Supprime un resource record d'une version.

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine
path version_id chaîne L'id de la version à activer
path rr_id chaîne L'id du resource record à supprimer
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Domaine, Version ou Resource Record non trouvés
500 Erreur interne

PATCH /domain/{domain_id}/version/{version_id}/zone/{rr_id}

Edition d'un resource record

Edition d'un resource record.

Paramètres :
  Nom Type Description
POST name chaîne Nom du resource record. Il ne peut contenir qu'un nom valide, ainsi que les wildcards '*' et '@'
POST type chaîne Type du resource record ex: A, AAAA, MX, TXT
POST priority entier Priorité/poids pour ce resource record
POST ttl entier TTL pour le resource record
POST data chaîne Donnée pour le resource record
path domain_id entier L'id du domaine
path version_id chaîne L'id de la version
path rr_id chaîne L'id du resource record à éditer
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Domaine, Version ou Resource Record non trouvés
500 Erreur interne

PUT /domain/{domain_id}/version/{version_id}/zone_from_bind

Création d'une zone compléte à partir d'une string au format bind

Création d'une zone compléte à partir d'une chaîne au format bind. Tous les enregistrements existants dans la zone seront supprimés.

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine
path version_id chaîne L'id de la version
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Domaine ou version non trouvée
500 Erreur interne

GET /domain/{domain_id}/zone

Retourne la zone actuellement active

Retourne la zone actuellement active.

Paramètres :
  Nom Type Description
path domain_id entier L'id du domaine
Valeur de retour :

Une liste de valeurs de type ResourceRecord afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Domaine non trouvé
500 Erreur interne

/hosting

GET /hosting

Obtenir une liste de liens vers les hébergements de l'utilisateur

Retourne une liste de liens vers les hébergements de l'utilisateur.

Paramètres :
  Nom Type Description
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id maximum
GET since_id entier Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type HostingRef afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /hosting/{hosting_id}

Obtenir des informations sur un hébergement

Retourne des informations sur un hébergement.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
Valeur de retour :

Hosting afficher le schéma

Limitation du nombre de requêtes :

30 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

PATCH /hosting/{hosting_id}

Modifier l'hébergement d'un utilisateur

Modifie un hébergement de l'utilisateur. Ne retourne rien avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
POST php_version chaîne Version de PHP
Valeur de retour :

Aucune

Limitation du nombre de requêtes :

30 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
501 Non implémenté
503 Service indisponible
500 Erreur interne

GET /hosting/{hosting_id}/database

Obtenir une liste des bases de données sur l'hébergement de l'utilisateur

Retourne une liste de bases de données sur l'hébergement de l'utilisateur.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id maximum
GET since_id entier Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type HostingDatabase afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /hosting/{hosting_id}/database

Créer une base de données

Crée une base de données sur l'hébergement de l'utilisateur, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
POST name chaîne Nom de la base de données
POST password chaîne Mot de passe
POST type chaîne Type de base de données : mysql, pgsql
Valeur de retour :

entier afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
503 Service indisponible
500 Erreur interne

GET /hosting/{hosting_id}/database/{database_id}

Obtenir des informations sur une base de données

Retourne des informations sur une base de données.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path database_id entier Id de la base de données
Valeur de retour :

HostingDatabase afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /hosting/{hosting_id}/database/{database_id}

Supprimer une base de données

Supprime une base de données. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path database_id entier Id de la base de données
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

PATCH /hosting/{hosting_id}/database/{database_id}

Modifier une base de données

Modifie une base de données sur l'hébergement de l'utilisateur. Ne retourne rien avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path database_id entier Id de la base de données
POST password chaîne Mot de passe
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /hosting/{hosting_id}/domain

Obtenir une liste des domaines liés à l'hébergement de l'utilisateur

Retourne une liste de domaines liés à l'hébergement.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id maximum
GET since_id entier Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type HostingSubdomain afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /hosting/{hosting_id}/domain

Lier un domaine

Lie un domaine à l'hébergement de l'utilisateur, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
POST domain_name chaîne Nom de domaine
POST type chaîne Type (alias|linked)
Valeur de retour :

entier afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
503 Service indisponible
500 Erreur interne

GET /hosting/{hosting_id}/domain/{domain_id}

Obtenir des informations sur un domaine lié

Retourne des informations sur un domaine lié.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path domain_id entier Id du domaine
Valeur de retour :

HostingDomain afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /hosting/{hosting_id}/domain/{domain_id}

Délier un domaine

Délie un domaine. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path domain_id entier Id du domaine
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

PATCH /hosting/{hosting_id}/domain/{domain_id}

Modifier un domaine lié

Modifie un domaine lié. Ne retourne rien avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path domain_id entier Id du domaine
POST type chaîne Type (alias|linked)
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
501 Non implémenté
503 Service indisponible
500 Erreur interne

GET /hosting/{hosting_id}/email

Obtenir une liste des comptes e-mail sur l'hébergement de l'utilisateur

Retourne une liste de comptes e-mail sur l'hébergement de l'utilisateur.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id maximum
GET since_id entier Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type HostingEmail afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /hosting/{hosting_id}/email

Créer un compte e-mail

Crée un compte e-mail sur l'hébergement de l'utilisateur, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
POST domain chaîne Nom de domaine
POST login chaîne Identifiant
POST password chaîne Mot de passe
Valeur de retour :

entier afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

GET /hosting/{hosting_id}/email/forward

Obtenir une liste des transferts d'e-mail sur l'hébergement de l'utilisateur

Retourne une liste de transferts d'e-mail sur l'hébergement de l'utilisateur.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id maximum
GET since_id entier Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type HostingEmailForward afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /hosting/{hosting_id}/email/forward

Créer un transfert d'e-mail

Crée un transfert d'e-mail sur l'hébergement de l'utilisateur, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
POST email_id entier Id du compte e-mail
POST destination chaîne Compte e-mail de destination
Valeur de retour :

entier afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

GET /hosting/{hosting_id}/email/forward/{email_forward_id}

Obtenir des informations sur un transfert d'e-mail

Retourne des informations sur un transfert d'e-mail.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path email_forward_id entier Id du transfert d'e-mail
Valeur de retour :

HostingEmailForward afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /hosting/{hosting_id}/email/forward/{email_forward_id}

Supprimer un transfert d'e-mail

Supprime un transfert d'e-mail. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path email_forward_id entier Id du transfert d'e-mail
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /hosting/{hosting_id}/email/redirection

Obtenir une liste des redirections e-mail sur l'hébergement de l'utilisateur

Retourne une liste de redirections e-mail sur l'hébergement de l'utilisateur.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id maximum
GET since_id entier Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type HostingEmailRedirection afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /hosting/{hosting_id}/email/redirection

Créer une redirection e-mail

Crée une redirection e-mail sur l'hébergement de l'utilisateur, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
POST domain chaîne Nom de domaine
POST login chaîne Identifiant
POST destination chaîne Compte e-mail de destination
Valeur de retour :

entier afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

GET /hosting/{hosting_id}/email/redirection/{email_redirection_id}

Obtenir des informations sur une redirection e-mail

Retourne des informations sur une redirection e-mail.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path email_redirection_id entier Id de la redirection e-mail
Valeur de retour :

HostingEmailRedirection afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /hosting/{hosting_id}/email/redirection/{email_redirection_id}

Supprimer une redirection e-mail

Supprime une redirection e-mail. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path email_redirection_id entier Id de la redirection e-mail
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /hosting/{hosting_id}/email/{email_id}

Obtenir des informations sur un compte e-mail

Retourne des informations sur un compte e-mail.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path email_id entier Id du compte e-mail
Valeur de retour :

HostingEmail afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /hosting/{hosting_id}/email/{email_id}

Supprimer un compte e-mail

Supprime un compte e-mail. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path email_id entier Id du compte e-mail
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

PATCH /hosting/{hosting_id}/email/{email_id}

Modifier un compte e-mail

Modifie un compte e-mail sur l'hébergement de l'utilisateur. Ne retourne rien avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path email_id entier Id du compte e-mail
POST password chaîne Mot de passe
POST local_copy booléen Activer la copie locale
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /hosting/{hosting_id}/ftp

Obtenir une liste des comptes FTP sur l'hébergement de l'utilisateur

Retourne une liste de comptes FTP sur l'hébergement de l'utilisateur.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id maximum
GET since_id entier Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type HostingFtp afficher le schéma

Limitation du nombre de requêtes :

150 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /hosting/{hosting_id}/ftp

Créer un compte FTP

Crée un compte FTP sur l'hébergement de l'utilisateur, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
POST domain chaîne Nom de domaine
POST login chaîne Identifiant
POST password chaîne Mot de passe
POST path chaîne Chemin sur le serveur
Valeur de retour :

entier afficher le schéma

Limitation du nombre de requêtes :

150 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

GET /hosting/{hosting_id}/ftp/{ftp_id}

Obtenir des informations sur un compte FTP

Retourne des informations sur un compte FTP.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path ftp_id entier Id du compte FTP
Valeur de retour :

HostingFtp afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /hosting/{hosting_id}/ftp/{ftp_id}

Supprimer un compte FTP

Supprime un compte FTP. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path ftp_id entier Id du compte FTP
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

PATCH /hosting/{hosting_id}/ftp/{ftp_id}

Modifier un compte FTP

Modifie un compte FTP sur l'hébergement de l'utilisateur. Ne retourne rien avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path ftp_id entier Id du compte FTP
POST password chaîne Mot de passe
POST path chaîne Chemin sur le serveur
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /hosting/{hosting_id}/subdomain

Obtenir la liste des sous-domaines sur l'hébergement de l'utilisateur

Retourne une liste de sous-domaines liés à l'hébergement de l'utilisateur.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id maximum
GET since_id entier Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type HostingSubdomain afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /hosting/{hosting_id}/subdomain

Créer un sous domaine

Crée un sous-domaine sur l'hébergement de l'utilisateur, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
POST domain_name chaîne Nom de domaine
POST subdomain_name chaîne Nom de domaine voulu
Valeur de retour :

entier afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
503 Service indisponible
500 Erreur interne

GET /hosting/{hosting_id}/subdomain/{subdomain_id}

Obtenir des informations sur un sous-domaine.

Retourne des informations sur un sous-domaine.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path subdomain_id entier Id du sous-domaine
Valeur de retour :

HostingSubdomain afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /hosting/{hosting_id}/subdomain/{subdomain_id}

Supprime un sous-domaine

Supprime un sous domaine. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path subdomain_id entier Id du sous-domaine
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

GET /hosting/{hosting_id}/task

Obtenir une liste des tâches planifiées sur l'hébergement de l'utilisateur

Retourne une liste de tâches planifiées sur l'hébergement de l'utilisateur.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id maximum
GET since_id entier Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type HostingTask afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /hosting/{hosting_id}/task

Créer une tâche planifiée

Crée une tâche planifiée sur l'hébergement de l'utilisateur, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
POST url chaîne URL à visiter
POST login chaîne Identifiant HTTP
POST password chaîne Mot de passe HTTP
POST email chaîne Adresse e-mail à laquelle les résultats seront envoyés
POST hour entier Heure (0-23, par défaut : toutes les heures)
POST day entier Jour du mois (1-31, par défaut : tous les jours)
POST month entier Mois (1-12, par défaut : tous les mois)
Valeur de retour :

entier afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

GET /hosting/{hosting_id}/task/{task_id}

Obtenir des informations sur une tâche planifiée

Retourne des informations sur une tâche planifiée.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path task_id entier Id de la tâche planifiée
Valeur de retour :

HostingTask afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /hosting/{hosting_id}/task/{task_id}

Supprimer une tâche planifiée

Supprime une tâche planifiée. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path task_id entier Id de la tâche planifiée
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

PATCH /hosting/{hosting_id}/task/{task_id}

Modifier une tâche planifiée

Modifie une tâche planifiée sur l'hébergement de l'utilisateur. Pour supprimer l'identifiant ou le mot de passe, utilisez une chaîne vide comme valeur du paramètre. Ne retourne rien avec un code HTTP 204.

Paramètres :
  Nom Type Description
path hosting_id entier Id de l'hébergement
path task_id entier Id de la tâche planifiée
POST login chaîne Identifiant HTTP
POST password chaîne Mot de passe HTTP
POST email chaîne Adresse e-mail à laquelle les résultats seront envoyés
POST hour entier Heure (0-23, par défaut : toutes les heures)
POST day entier Jour du mois (1-31, par défaut : tous les jours)
POST month entier Mois (1-12, par défaut : tous les mois)
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

/network

GET /network/ddos

Obtenir une liste des alertes DDoS

Retourne une liste d'alertes DDoS qui affectent les serveurs de l'utilisateur(trice).

Paramètres :
  Nom Type Description
GET target_ip chaîne Adresse IP cible
GET count entier Pagination : Nombre de résultats à retourner
GET max_id entier Pagination : Id d'alerte maximum
GET since_id entier Pagination : Id d'alerte minimum
Valeur de retour :

Une liste de valeurs de type DdosAlert afficher le schéma

Limitation du nombre de requêtes :

6 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /network/ddos/info/{alert_id}

Obtenir des informations sur une alerte DDoS

Retourne des informations sur une alerte DDoS qui affecte ou a affecté les serveurs de l'utilisateur(trice).

Paramètres :
  Nom Type Description
path alert_id entier Id de l'alerte
Valeur de retour :

DdosAlert afficher le schéma

Limitation du nombre de requêtes :

12 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /network/secondaryDns

Lister les entrées de serveur DNS secondaire

Liste les entrées de serveur DNS secondaire, avec nom de domaine, IP principale, et l'IP et le nom d'hôte du serveur DNS secondaire.

Valeur de retour :

Une liste de valeurs de type SecondaryDnsServerEntry afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /network/secondaryDns

Ajouter une entrée de serveur DNS secondaire

Ajoute une entrée de serveur DNS secondaire, retourne true en cas de succès.

Paramètres :
  Nom Type Description
POST domain chaîne Nom de domaine
POST ip chaîne IP principale
Valeur de retour :

chaîne afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Conflit (voir le message d'erreur)
503 Service indisponible
500 Erreur interne

DELETE /network/secondaryDns/{domain}

Effacer une entrée de serveur DNS secondaire

Efface une entrée de serveur DNS secondaire. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path domain chaîne Nom de domaine
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

/ods

GET /ods

Get the list of your ODS

This method allows you to get your ODS list

Paramètres :
  Nom Type Description
GET status chaîne Filter of ODS status [new, active, pending, error, deleted]; default: all)
GET count entier Pagination : Nombre de résultats à retourner
GET page entier Pagination: Page
Valeur de retour :

Une liste de valeurs de type ODSServer afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /ods/{ods_uuid}

Get a ODS

This method allows you to retrieve only one ODS, corresponding to the uuid you specify

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
Valeur de retour :

ODSServer afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/backups

Get the list of backups from all databases in your ODS

This method allows you to retrieve the list of backups of all the databases of your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
GET count entier Pagination : Nombre de résultats à retourner
GET page entier Pagination: Page
Valeur de retour :

ODSBackup afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

POST /ods/{ods_uuid}/backups

Create a backup for a database of your ODS

This method allows you to create a backup for a database on your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
POST database_name chaîne The target database name
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/backups/{backup_uuid}

Get a backup from your ODS

This method allows you to retrieve a particular backup on your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path backup_uuid chaîne The uuid of your backup
Valeur de retour :

ODSBackup afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

DELETE /ods/{ods_uuid}/backups/{backup_uuid}

Remove a backup on your ODS

This method allows you to delete a specific backup on your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
POST backup_uuid chaîne The uuid of your backup
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/databases

Get the list of databases on your ODS

This method allows to retrieve the list of the databases present on a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
GET count entier Pagination : Nombre de résultats à retourner
GET page entier Pagination: Page
Valeur de retour :

ODSDatabase afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

POST /ods/{ods_uuid}/databases

Creating a new database on your ODS

This method creates a new database for a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
POST database_name chaîne The name of your database
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

DELETE /ods/{ods_uuid}/databases/{database_name}

Delete a database from your ODS

This method allows you to delete a database on a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path database_name chaîne The name of your database
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/databases/{database_name}/access

Get the access list of a database of your ODS

This method allows you to retrieve the list of accesses for a database of your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path database_name chaîne The name of your database
GET count entier Pagination : Nombre de résultats à retourner
GET page entier Pagination: Page
Valeur de retour :

ODSGrantFromDatabase afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

POST /ods/{ods_uuid}/databases/{database_name}/access

Create access for a user to a database of your ODS

This method creates an access between a user and a database for a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path database_name chaîne The name of your database
POST access chaîne The level access
POST username chaîne The user target
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/databases/{database_name}/access/{username}

Get access between a database and a user on your ODS

This method allows to retrieve an access between a database and a user on a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path database_name chaîne The name of your database
path username chaîne The name of your database
Valeur de retour :

ODSGrant afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

DELETE /ods/{ods_uuid}/databases/{database_name}/access/{username}

Delete an access between a user and a database on your ODS

This method allows you to delete an access between a user and a database for a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path database_name chaîne The name of your database
path username chaîne The name of your database
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

PATCH /ods/{ods_uuid}/databases/{database_name}/access/{username}

Change a user's access level to a database of your ODS

This method allows you to change an access level between a user and a database for a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path database_name chaîne The name of your database
path username chaîne The name of your database
POST access chaîne The level access [rw, ro, admin]
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/databases/{database_name}/backups

Get the list of backups for a database of your ODS

This method allows you to retrieve the list of backups for a database of your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path database_name chaîne The name of your database
GET count entier Pagination : Nombre de résultats à retourner
GET page entier Pagination: Page
Valeur de retour :

ODSBackupFromDatabase afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

POST /ods/{ods_uuid}/databases/{database_name}/backups

Create a backup for a database on your ODS

This method allows you to create a backup for a database on your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path database_name chaîne The name of your database
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/databases/{database_name}/backups/{backup_uuid}

Get a backup from your ODS

This method allows you to retrieve a backup present on your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path database_name chaîne The name of your database
path backup_uuid chaîne Uuid of your backup
Valeur de retour :

ODSBackupFromDatabase afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

DELETE /ods/{ods_uuid}/databases/{database_name}/backups/{backup_uuid}

Remove a backup from your ODS

This method allows you to delete a backup on your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path database_name chaîne The name of your database
path backup_uuid chaîne Uuid of your backup
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/users

Get the users list of a ODS

This method allows you to get the users list on your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
GET count entier Pagination : Nombre de résultats à retourner
GET page entier Pagination: Page
Valeur de retour :

ODSUser afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

POST /ods/{ods_uuid}/users

Create an user on the ODS

This method allows you to create an user on your ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
POST login chaîne The login of your user
POST password chaîne The password of your user
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/users/{username}

Get an user on the ODS

This method allows you to get a specific user on a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path username chaîne The login of your user
Valeur de retour :

ODSUser afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

DELETE /ods/{ods_uuid}/users/{username}

Delete an user on the ODS

This method allows you to delete a specific user on the ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path username chaîne The login of your user
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

PATCH /ods/{ods_uuid}/users/{username}

Change password of an user of your ODS

This method allows to retrieve the list of accesses of a user present on a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path username chaîne The login of your user
POST password chaîne The new password of the user
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/users/{username}/access

Get the list of access of an user on your ODS

This method allows you to get the list of access of an user on a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path username chaîne The login of your user
GET count entier Pagination : Nombre de résultats à retourner
GET page entier Pagination: Page
Valeur de retour :

ODSGrantFromUser afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

POST /ods/{ods_uuid}/users/{username}/access

Create a user access to a database on your ODS

This method creates an access between a user and a database on a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path username chaîne The login of your user
POST access chaîne The level access of your user, [ro, rw, admin]
POST database_name chaîne The database name
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /ods/{ods_uuid}/users/{username}/access/{database_name}

Change the access level of a user to a database on your ODS

This method is used to retrieve an access between a database and a user for a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path username chaîne The login of your user
path database_name chaîne The target database name
Valeur de retour :

ODSGrant afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

DELETE /ods/{ods_uuid}/users/{username}/access/{database_name}

Delete an access between a user and a database on your ODS

This method allows you to delete an access between a user and a database for a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path username chaîne The login of your user
path database_name chaîne The target database name
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

PATCH /ods/{ods_uuid}/users/{username}/access/{database_name}

Change the access level of a user to a database on your ODS

This method allows you to change an access level between a user and a database for a ODS

Paramètres :
  Nom Type Description
path ods_uuid chaîne Uuid of your ODS
path username chaîne The login of your user
path database_name chaîne The target database name
POST access chaîne The new level access [rw, ro, admin]
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

/rpn

GET /rpn/group

Obtenir une liste de groupes RPN

Retourne une liste de groupes RPN.

Valeur de retour :

Une liste de valeurs de type RpnGroup afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /rpn/group

Créer un groupe RPN

Crée un groupe RPN avec les ids de serveurs donnés, retourne true en cas de succès.

Paramètres :
  Nom Type Description
POST name chaîne Nom du groupe
POST server_ids List[integer] Ids de serveurs (séparés par des virgules)
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Conflit (voir le message d'erreur)
500 Erreur interne

POST /rpn/group/addServers

Ajouter ou inviter des serveurs à un groupe RPN

Ajoute ou invite des serveurs à un groupe RPN, retourne true en cas de succès.

Paramètres :
  Nom Type Description
POST group_id entier Id du groupe
POST server_ids List[integer] Ids de serveurs (séparés par des virgules)
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Conflit (voir le message d'erreur)
410 Ressource effacée (voir le message d'erreur)
500 Erreur interne

POST /rpn/group/removeServers

Enlever des serveurs d'un groupe RPN

Enlève des serveurs d'un groupe RPN, retourne true en cas de succès. Enlever tous les serveurs d'un groupe entraîne la suppression du groupe.

Paramètres :
  Nom Type Description
POST group_id entier Id du groupe
POST server_ids List[integer] Ids de serveurs (séparés par des virgules)
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Conflit (voir le message d'erreur)
410 Ressource effacée (voir le message d'erreur)
500 Erreur interne

GET /rpn/group/{group_id}

Obtenir des informations sur un groupe RPN

Retourne des informations sur un groupe RPN.

Paramètres :
  Nom Type Description
path group_id entier Identifiant du groupe RPN
Valeur de retour :

RpnGroup afficher le schéma

Limitation du nombre de requêtes :

30 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée
500 Erreur interne

GET /rpn/v2

Get a list of RPN v2 groups

Returns a list of RPN v2 groups.

Valeur de retour :

Une liste de valeurs de type Rpnv2 afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

POST /rpn/v2

Create a new RPN v2 group

Returns a new RPN v2 group.

Valeur de retour :

Une liste de valeurs de type Rpnv2 afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Ressource introuvable (voir le message d'erreur)
403 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /rpn/v2/{group_id}

Get a RPN v2 group

Returns a RPN v2 group.

Paramètres :
  Nom Type Description
path group_id chaîne Id of Rpn v2 group
Valeur de retour :

Une liste de valeurs de type Rpnv2 afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

DELETE /rpn/v2/{group_id}

Delete a RPN v2 group

Returns a RPN v2 group.

Paramètres :
  Nom Type Description
path group_id chaîne Id of Rpn v2 group
Valeur de retour :

Une liste de valeurs de type Rpnv2 afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

POST /rpn/v2/{group_id}/addMember

Add a RPN v2 group member

Returns a RPN v2 group.

Paramètres :
  Nom Type Description
path group_id chaîne Id of Rpn v2 group
POST server_ids chaîne list of member to add
Valeur de retour :

Une liste de valeurs de type Rpnv2 afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

POST /rpn/v2/{group_id}/compatiblity

Add compatibility between RPN v1/v2

Returns a RPN v2 group.

Paramètres :
  Nom Type Description
path group_id chaîne Id of Rpn v2 group
POST rpn_id entier Rpn V1 group
Valeur de retour :

Une liste de valeurs de type Rpnv2 afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

DELETE /rpn/v2/{group_id}/compatiblity

Remove compatibility between RPN v1/v2

Returns a RPN v2 group.

Paramètres :
  Nom Type Description
path group_id chaîne Id of Rpn v2 group
Valeur de retour :

Une liste de valeurs de type Rpnv2 afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

PATCH /rpn/v2/{group_id}/editVlanMember/{member_id}

Edit Vlan id (only for server member)

Returns a RPN v2 group member.

Paramètres :
  Nom Type Description
path group_id chaîne Id of Rpn v2 group
path member_id chaîne Id of Rpn v2 group member
POST vlan_number entier Vlan number
POST reset_vlan booléen If boolean is TRUE, you reset your Vlan of your group member to default value
Valeur de retour :

Une liste de valeurs de type Rpnv2 afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

DELETE /rpn/v2/{group_id}/removeMember

Remove a RPN v2 group member

Returns a RPN v2 group.

Paramètres :
  Nom Type Description
path group_id chaîne Id of Rpn v2 group
POST server_ids chaîne list of member to delete
Valeur de retour :

Une liste de valeurs de type Rpnv2 afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
403 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

/server

GET /server

Obtenir une liste de liens vers les serveurs de l'utilisateur(trice)

Retourne une liste de liens vers les serveurs de l'utilisateur(trice).

Valeur de retour :

Une liste de valeurs de type ServerRef afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /server/backup/archive

Archiver la sauvegarde FTP d'un serveur sur C14

Archive la sauvegarde FTP d'un serveur sur C14, retourne true avec un code HTTP 202.

Paramètres :
  Nom Type Description
POST server_id entier Id du serveur
POST parity chaîne Parity (standard, or enterprise; default: standard)
POST crypto chaîne Crypto (aes-256-cbc or none; default: aes-256-cbc)
POST platforms List[string] Id des plateformes où l'archive sera stockée
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

POST /server/backup/edit

Éditer les propriétés d'une sauvegarde FTP

Modifie les propriétés d'une sauvegarde FTP, retourne true en cas de succès.

Paramètres :
  Nom Type Description
POST server_id chaîne Id du serveur
POST password chaîne Nouveau mot de passe
POST autologin booléen Identification automatique
POST acl_enabled booléen ACL activés
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /server/backup/{server_id}

Obtenir des informations sur la sauvegarde FTP d'un serveur

Retourne les informations sur la sauvegarde FTP d'un serveur.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
Valeur de retour :

FtpBackup afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /server/bmc/session/{server_id}

Obtenir les identifiants pour une session BMC (iLO/iDRAC)

Retourne les informations d'authentification pour la session BMC (iLO/iDRAC) pour le serveur donné.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
Valeur de retour :

BmcSession afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
410 Ressource effacée (voir le message d'erreur)
503 Service indisponible
500 Erreur interne

POST /server/bmc/session/{server_id}

Créer une session BMC (iLO/iDRAC)

Crée une session BMC (iLO/iDRAC), retourne un code HTTP 201. La session peut prendre quelques minutes à être opérationnelle. La session n'est accessible que via l'adresse IP transmise lors de sa création.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
POST ip chaîne IP autorisée
Valeur de retour :

chaîne afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Conflit (voir le message d'erreur)
503 Service indisponible
500 Erreur interne

DELETE /server/bmc/session/{server_id}

Fermer une session BMC (iLO/iDRAC)

Ferme la session BMC (iLO/iDRAC) associé avec le serveur donné. Ne retourne rien, avec un code HTTP 204

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
410 Ressource effacée (voir le message d'erreur)
501 Non implémenté
503 Service indisponible
500 Erreur interne

POST /server/boot/normal/{server_id}

Démarrer en mode normal

Démarre un serveur en mode normal, retourne true en cas de succès.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

POST /server/boot/rescue/{server_id}

Démarrer en mode rescue

Démarre un serveur en mode rescue, retourne des identifiants ([login], mot de passe, protocole, IP) en cas de succès.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
POST image chaîne Identifieur d'image de rescue (voir /server/rescue_images pour les valeurs possibles)
Valeur de retour :

RescueCredentials afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /server/failover

Obtenir toutes les IP failover

Retourne une liste de toutes les IP failover, avec un lien vers le serveur cible.

Paramètres :
  Nom Type Description
GET protected booléen Liste les IP protégées par l'option Anti-DDoS (false par défaut)
Valeur de retour :

Une liste de valeurs de type Failover afficher le schéma

Limitation du nombre de requêtes :

6 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /server/failover/deleteMac

Supprimer l'adresse MAC d'une IP failover

Supprime l'adresse MAC d'une IP failover, retourne true ou une erreur si l'IP n'a pas ou plus d'adresse MAC.

Paramètres :
  Nom Type Description
POST address chaîne IP failover
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

POST /server/failover/duplicateMac

Assigne l'adresse MAC d'une IP failover à une autre IP failover

Duplique l'adresse MAC d'une IP failover pour l'assigner à une autre IP failover (qui a la même IP de destination), retourne true en cas de succès. (Si une adresse MAC existe déjà pour l'IP failover cible, retourne une erreur avec l'adresse MAC existante.)

Paramètres :
  Nom Type Description
POST address chaîne IP failover
POST target chaîne IP failover cible
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

POST /server/failover/edit

Modifier la destination d'une IP failover

Modifie la destination d'une IP failover, retourne true en cas de succès. Note : les IP failover qui ont la même adresse MAC ne peuvent changer de destination que toutes à la fois. Pour modifier plusieurs IP, séparez les par des virgules.

Paramètres :
  Nom Type Description
POST source chaîne IP failover (ou plusieurs IP failover séparées par des virgules)
POST destination chaîne IP du serveur (laisser vide pour null-router l'IP failover)
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
409 Action déjà demandée
503 Service indisponible
500 Erreur interne

POST /server/failover/generateMac

Générer une adresse MAC pour une IP failover

Génère une adresse MAC pour une IP failover, et retourne l'adresse MAC. (Si une adresse MAC existe déjà pour cette IP failover, retourne une erreur avec l'adresse MAC existante.)

Paramètres :
  Nom Type Description
POST address chaîne IP failover
POST type chaîne Type de préfixe pour l'adresse MAC : 'vmware' (00:50:56), 'xen' (00:16:3e), ou 'kvm' (52:54:00)
Valeur de retour :

chaîne afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
503 Service indisponible
500 Erreur interne

GET /server/hardware/disk/{disk_id}

Obtenir des informations sur un disque de serveur

Retourne des informations au sujet d'un disque de serveur.

Paramètres :
  Nom Type Description
path disk_id entier Id du disque
Valeur de retour :

Disk afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée
500 Erreur interne

GET /server/hardware/raidController/{raid_controller_id}

Obtenir des informations sur le contrôleur RAID d'un serveur

Retourne des informations au sujet du contrôleur RAID d'un serveur.

Paramètres :
  Nom Type Description
path raid_controller_id entier Id du contrôleur RAID
Valeur de retour :

RaidController afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée
500 Erreur interne

POST /server/hardwareWatch/disable/{server_id}

Désactiver HardwareWatch

Désactive HardwareWatch, retourne true.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

POST /server/hardwareWatch/enable/{server_id}

Activer HardwareWatch

Active HardwareWatch, retourne true.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
POST phone booléen Vous appeler sur votre mobile ou ligne fixe avant de démarrer toute intervention sur votre matériel. La valeur par défaut est true.
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

POST /server/install/{server_id}

Start the installation of a server

Start the installation of a server

Paramètres :
  Nom Type Description
path server_id entier
POST os_id entier
POST hostname chaîne
POST send_mail_monitoring booléen
POST send_mail_new_os_version booléen
POST partitioning List[DiskPartitioning] Each key in this array represent the disk connector on which the partitioning will be applied
POST partitioning_template_ref chaîne
POST user_login chaîne
POST user_password chaîne
POST root_password chaîne
POST panel_password chaîne
POST ssh_keys List[string] UUID des clés SSH
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

POST /server/ip/edit

Éditer les propriétés d'une IP (reverse ou destination d'une IP failover)

Édite les propriétés d'une IP, retourne true en cas de succès. Vous pouvez modifiez le reverse, et/ou l'IP de destination si c'est une IP failover. Note : les IP failover qui ont la même adresse MAC ne peuvent changer de destination que toutes à la fois. Pour modifier plusieurs IP, séparez les par des virgules.

Paramètres :
  Nom Type Description
POST address chaîne Adresse IP (ou plusieurs adresses IP séparées par des virgules)
POST reverse chaîne Reverse (utilisez la valeur 'false' pour revenir au reverse par défaut)
POST destination chaîne IP de destination (utilisez la valeur 'false' pour null-router une IP failover)
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
409 Action déjà demandée
503 Service indisponible
500 Erreur interne

GET /server/ip/{address}

Obtenir des informations sur une adresse IP

Retourne des informations sur une adresse IP. (Actuellement seulement pour les IPv4.)

Paramètres :
  Nom Type Description
path address chaîne Adresse IP
Valeur de retour :

ServerIP afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

GET /server/operatingSystems/{server_id}

Obtenir une liste des systèmes d'exploitation disponibles pour un serveur

Retourne une liste de systèmes d'exploitation disponibles pour le serveur de l'utilisateur.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
GET type chaîne Type (all, server, panel, desktop, live, custom, ou virtualization; par défaut: all)
Valeur de retour :

Une liste de valeurs de type OperatingSystem afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /server/reboot/{server_id}

Redémarrer un serveur

Redémarre un serveur, retourne true en cas de succès.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
POST reason chaîne Raison
POST email chaîne Adresse e-mail à notifier
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /server/rescue_images/{server_id}

Obtenir une liste d'identifieurs pour les images de rescue disponibles

Retourne une liste d'identifieurs pour les images de rescue disponibles (exemple : ubuntu-12.04_amd64).

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
Valeur de retour :

Une liste de valeurs de type chaîne afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /server/shutdown/{server_id}

Éteindre un serveur

Éteint un serveur, retourne true en cas de succès.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
POST reason chaîne Raison
POST email chaîne Adresse e-mail à notifier
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

GET /server/{server_id}

Obtenir des informations sur un serveur

Retourne des informations sur un serveur.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
GET refresh booléen Forcer le rafraîchissement de l'état de l'alimentation (lent)
Valeur de retour :

Server afficher le schéma

Limitation du nombre de requêtes :

30 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée
500 Erreur interne

PUT /server/{server_id}

Modifier les propriétés d'un serveur

Modifie les propriétés d'un serveur, retourne true en cas de succès.

Paramètres :
  Nom Type Description
path server_id entier Id du serveur
put hostname chaîne Nom de la machine
Valeur de retour :

booléen afficher le schéma

Limitation du nombre de requêtes :

30 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
500 Erreur interne

/storage

GET /storage/rpn/rsync

Obtenir une liste de cibles de sauvegarde RPN Rsync

Retourne une liste de cibles de sauvegarde RPN Rsync.

Valeur de retour :

Une liste de valeurs de type RpnRsyncBackup afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /storage/rpn/rsync/edit

Éditer les propriétés d'une cible de sauvegarde RPN Rsync

Modifie les propriétés d'une cible de sauvegarde RPN Rsync, retourne true en cas de succès.

Paramètres :
  Nom Type Description
POST name chaîne Nom d'une cible de sauvegarde RPN Rsync
POST password chaîne Nouveau mot de passe
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Conflit (voir le message d'erreur)
500 Erreur interne

GET /storage/rpn/san

Obtenir une liste de RPN SAN

Retourne une liste de RPN SAN.

Valeur de retour :

Une liste de valeurs de type RpnSan afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /storage/rpn/san/addServer

Autoriser un serveur à utiliser un RPN SAN

Autorise un serveur à utiliser un RPN SAN, retourne true en cas de succès.

Paramètres :
  Nom Type Description
POST iqn_suffix chaîne Suffixe IQN du RPN SAN
POST server_id entier Id du serveur
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Conflit (voir le message d'erreur)
500 Erreur interne

POST /storage/rpn/san/removeServer

Enlever l'autorisation d'un serveur à utiliser un RPN SAN

Enlève l'autorisation d'un serveur à utiliser un RPN SAN, retourne true en cas de succès.

Paramètres :
  Nom Type Description
POST iqn_suffix chaîne Suffixe IQN du RPN SAN
POST server_id entier Id du serveur
Valeur de retour :

booléen afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Conflit (voir le message d'erreur)
500 Erreur interne

/storage/c14

GET /storage/c14/archive

Obtenir une liste des archive de l'utilisateur

Retourne une liste des archive de l'utilisateur.

Valeur de retour :

Une liste de valeurs de type ArchiveRef afficher le schéma

Limitation du nombre de requêtes :

200 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /storage/c14/platform

Obtenir une liste de liens vers les plateformes

Retourne une liste de liens vers les plateformes.

Valeur de retour :

Une liste de valeurs de type PlatformRef afficher le schéma

Limitation du nombre de requêtes :

60 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /storage/c14/platform/{platform_id}

Obtenir des informations sur une plateforme

Retourne des informations sur une plateforme.

Paramètres :
  Nom Type Description
path platform_id entier Id de la plateforme
Valeur de retour :

Platform afficher le schéma

Limitation du nombre de requêtes :

30 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /storage/c14/protocol

Obtenir une liste des protocoles utilisables

Retourne une liste des protocoles utilisables.

Valeur de retour :

Une liste de valeurs de type Protocol afficher le schéma

Limitation du nombre de requêtes :

60 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /storage/c14/safe

Obtenir une liste de liens vers les coffres-forts de l'utilisateur

Retourne une liste de liens vers les coffres-forts de l'utilisateur.

Paramètres :
  Nom Type Description
GET count entier Pagination : Nombre de résultats à retourner
GET max_id chaîne Pagination : Id maximum
GET since_id chaîne Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type SafeRef afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /storage/c14/safe

Créer un coffre-fort

Crée un coffre-fort sur le compte de l'utilisateur, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
POST name chaîne Nom
POST description chaîne Description
Valeur de retour :

chaîne afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
500 Erreur interne

GET /storage/c14/safe/{safe_id}

Obtenir des informations sur un coffre-fort

Retourne des informations sur un coffre-fort.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
Valeur de retour :

Safe afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /storage/c14/safe/{safe_id}

Effacer un coffre-fort

Efface un coffre-fort. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
Valeur de retour :

Aucune

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
410 Ressource effacée (voir le message d'erreur)
500 Erreur interne

PATCH /storage/c14/safe/{safe_id}

Éditer les propriétés d'un coffre-fort

Édite les propriétés d'un coffre-fort sur le compte de l'utilisateur. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
POST name chaîne Nom
POST description chaîne Description
Valeur de retour :

Aucune

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

GET /storage/c14/safe/{safe_id}/archive

Obtenir une liste d'archives dans le coffre-fort de l'utilisateur

Retourne une liste d'archives dans le coffre-fort de l'utilisateur.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
GET count entier Pagination : Nombre de résultats à retourner
GET max_id chaîne Pagination : Id maximum
GET since_id chaîne Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type ArchiveRef afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /storage/c14/safe/{safe_id}/archive

Créer une archive

Crée une archive dans le coffre-fort, retourne son id avec un code HTTP 201.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
POST name chaîne Nom
POST description chaîne Description
POST parity chaîne Parité (standard, ou enterprise; par défaut : standard)
POST crypto chaîne Crypto (aes-256-cbc or none; default: aes-256-cbc)
POST protocols List[string] Protocoles de transfert de fichiers utilisés
POST ssh_keys List[string] UUID des clés SSH
POST days entier Nombre de jours avant que les fichiers soient archivés automatiquement (2, 5, ou 7; par défaut : 7)
POST large_bucket booléen Define if you need a large bucket (default: false, this option is allowed by support on request)
POST platforms List[string] Id des plateformes où l'archive sera stockée
Valeur de retour :

chaîne afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

GET /storage/c14/safe/{safe_id}/archive/{archive_id}

Obtenir des informations sur une archive

Retourne des informations sur une archive.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
Valeur de retour :

Archive afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

DELETE /storage/c14/safe/{safe_id}/archive/{archive_id}

Effacer une archive

Efface une archive. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
Valeur de retour :

Aucune

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
410 Ressource effacée (voir le message d'erreur)
500 Erreur interne

PATCH /storage/c14/safe/{safe_id}/archive/{archive_id}

Éditer les propriétés d'une archive

Édite une archive. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
POST name chaîne Nom
POST description chaîne Description
POST new_safe_id chaîne Id du coffre-fort de destination
Valeur de retour :

Aucune

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
403 Permission refusée (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

POST /storage/c14/safe/{safe_id}/archive/{archive_id}/archive

Archiver les fichiers depuis l'espace de stockage temporaire

Archive les fichiers depuis l'espace de stockage temporaire, retourne true avec un code HTTP 202.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
POST duplicates entier Défini le nombre de duplicatas
Valeur de retour :

booléen afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

GET /storage/c14/safe/{safe_id}/archive/{archive_id}/bucket

Obtenir des informations sur l'espace de stockage temporaire d'une archive

Retourne des informations sur l'espace de stockage temporaire d'une archive.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
Valeur de retour :

Bucket afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /storage/c14/safe/{safe_id}/archive/{archive_id}/job

Obtenir une liste des actions sur une archive

Retourne une liste des actions sur une archive.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
GET status chaîne L'état de l'action
GET count entier Pagination : Nombre de résultats à retourner
GET max_id chaîne Pagination : Id maximum
GET since_id chaîne Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type Job afficher le schéma

Limitation du nombre de requêtes :

60 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /storage/c14/safe/{safe_id}/archive/{archive_id}/job/{job_id}

Obtenir des informations sur une action

Retourne des informations sur une action.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
path job_id chaîne Id de l'action
Valeur de retour :

Job afficher le schéma

Limitation du nombre de requêtes :

60 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /storage/c14/safe/{safe_id}/archive/{archive_id}/key

Obtenir la clé de chiffrement d'une archive

Retourne la clé de chiffrement d'une archive.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
Valeur de retour :

chaîne afficher le schéma

Limitation du nombre de requêtes :

30 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
410 Ressource effacée (voir le message d'erreur)
500 Erreur interne

POST /storage/c14/safe/{safe_id}/archive/{archive_id}/key

Définir la clé de chiffrement d'une archive

Définit la clé de chiffrement d'une archive. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
POST key chaîne Clé de chiffrement
Valeur de retour :

Aucune

Limitation du nombre de requêtes :

30 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
410 Ressource effacée (voir le message d'erreur)
500 Erreur interne

DELETE /storage/c14/safe/{safe_id}/archive/{archive_id}/key

Effacer la clé de chiffrement d'une archive

Supprime la clé de chiffrement d'une archive. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
Valeur de retour :

Aucune

Limitation du nombre de requêtes :

30 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
410 Ressource effacée (voir le message d'erreur)
500 Erreur interne

GET /storage/c14/safe/{safe_id}/archive/{archive_id}/location

Obtenir une liste de sites de l'archive de l'utilisateur

Retourne une liste de sites de l'archive de l'utilisateur.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
GET count entier Pagination : Nombre de résultats à retourner
GET max_id chaîne Pagination : Id maximum
GET since_id chaîne Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type ArchiveLocationRef afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /storage/c14/safe/{safe_id}/archive/{archive_id}/location/{location_id}

Obtenir des informations sur un site d'une archive

Retourne des informations sur un site d'une archive.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
path location_id chaîne Id du site de l'archive
Valeur de retour :

ArchiveLocation afficher le schéma

Limitation du nombre de requêtes :

60 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /storage/c14/safe/{safe_id}/archive/{archive_id}/location/{location_id}/verify

Vérifier les fichiers d'un site d'une archive

Planifie une vérification des fichiers sur un site d'une archive, retourne true avec un code HTTP 202.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
path location_id chaîne Id du site de l'archive
Valeur de retour :

booléen afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
410 Ressource effacée (voir le message d'erreur)
500 Erreur interne

POST /storage/c14/safe/{safe_id}/archive/{archive_id}/unarchive

Désarchiver les fichiers dans un espace de stockage temporaire

Désarchive les fichiers dans un espace de stockage temporaire, retourne true avec un code HTTP 202.

Paramètres :
  Nom Type Description
path safe_id chaîne Id du coffre-fort
path archive_id chaîne Id de l'archive
POST location_id chaîne Id du site de l'archive
POST rearchive booléen Réarchiver les données après 7 jours (par défaut : true)
POST key chaîne Clé de chiffrement
POST protocols List[string] Protocoles de transfert de fichiers utilisés
POST ssh_keys List[string] UUID des clés SSH
Valeur de retour :

booléen afficher le schéma

Limitation du nombre de requêtes :

120 requêtes par tranche de 60 secondes

Possibles codes d'erreur HTTP :
Code HTTP Raison
403 Permission refusée (voir le message d'erreur)
404 Ressource introuvable (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

/user

GET /user

Obtenir les infos du compte identifié

Retourne des informations sur l'utilisateur(trice) identifié(e).

Valeur de retour :

User afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

GET /user/key/ssh

Obtenir une liste des clés SSH de l'utilisateur

Retourne une liste de clés SSH de l'utilisateur.

Paramètres :
  Nom Type Description
GET count entier Pagination : Nombre de résultats à retourner
GET max_id chaîne Pagination : Id maximum
GET since_id chaîne Pagination: Id minimum
Valeur de retour :

Une liste de valeurs de type SshKey afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
500 Erreur interne

POST /user/key/ssh

Ajouter une clé SSH pour l'utilisateur

Ajoute une clé SSH pour l'utilisateur, retourne son id avec le code HTTP 201.

Paramètres :
  Nom Type Description
POST description chaîne Description de la clé SSH
POST content chaîne Contenu de la clé SSH
Valeur de retour :

chaîne afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
400 Mauvaise requête (voir le message d'erreur)
409 Action déjà demandée
500 Erreur interne

GET /user/key/ssh/{key_id}

Obtenir des informations sur une clé SSH

Retourne des informations sur une clé SSH.

Paramètres :
  Nom Type Description
path key_id chaîne Id de la clé SSH
Valeur de retour :

SshKey afficher le schéma

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne

DELETE /user/key/ssh/{key_id}

Supprimer une clé SSH

Supprime une clé SSH. Ne retourne rien, avec un code HTTP 204.

Paramètres :
  Nom Type Description
path key_id chaîne Id de la clé SSH
Valeur de retour :

Aucune

Possibles codes d'erreur HTTP :
Code HTTP Raison
404 Ressource introuvable (voir le message d'erreur)
500 Erreur interne
{
  "code": "integer",
  "error": "string"
}
{
  "connector": "string",    // Disk connector (A, B, C..., AA, AB, etc...) (optionnel) 
  "type": "string",    // Partition type (Logical, Primary or Extendend) 
  "fstype": "string",    // File system type 
  "size": "integer",    // Size of the partition in megabytes 
  "mount": "string",    // Mount point, SWAP doesn't require a mount point 
  "raid": "integer"    // Raid level 
}
{
  "expiration_date": "Date",
  "service": {
    "$ref": "string",    // URI d'API pour les infos d'un service (e.g. '/api/v1/service/4242') 
    "id": "integer",
    "name": "string",    // Nom et description du service 
    "parent_service": {    // (optionnel) 
      "$ref": "string",    // URI d'API pour les infos d'un service (e.g. '/api/v1/service/4242') 
      "id": "integer",
      "name": "integer",    // Nom et description du service 
      "status": "string"
    },
    "status": "string",
    "contacts": {
      "owner": "string",    // Login du contact propriétaire 
      "tech": "string"    // Login du contact technique 
    },
    "subscription_date": "Date",
    "delivery_date": "Date",
    "termination_date": "Date",    // Date de la résiliation 
    "expiration_date": "Date",    // Date à laquelle le service expire (ou a expiré) 
    "auto_renew": "boolean",    // La souscription du service est renouvelée automatiquement 
    "terminable_by_api": "boolean"    // Le service peut être résilié avec l'API 
  }
}
{
  "id": "integer",
  "date": "Date",    // Date de l'alerte de sécurité 
  "type": "string",    // Type d'alerte (exemple : 'SPAM') 
  "status": "string",    // Statut de l'alerte de sécurité 
  "service": "string",    // Nom du service 
  "sent_date": "Date",    // Date d'expédition de l'alerte 
  "sender": "string",    // Adresse e-mail de l'expéditeur 
  "description": "string",    // Rapport complet 
  "resolved_date": "Date",    // Date de résolution du problème (optionnel) 
  "resolver": "string",    // Login de l'utilisateur qui a résolu l'alerte (optionnel) 
  "answer": "string",    // Réponse envoyée à l'expéditeur de l'alerte de sécurité (optionnel) 
  "solution": "string",    // Solution pour cette situation (optionnel) 
  "details": {    // (optionnel) 
    "ip": {    // (optionnel) 
      "address": "string",    // IPv4 
      "type": "string",    // Type d'IP (public, private, failover) 
      "reverse": "string",
      "mac": "string",    // Adresse MAC (optionnel) 
      "destination": "string",    // IP de destination (si le type est failover) (optionnel) 
      "status": "string",    // État de l'assignation de l'IP failover (active, en cours de mise à jour) (optionnel) 
      "switch_port_state": "string",    // État du port sur le switch (up ou down) (optionnel) 
      "server": {    // (optionnel) 
        "$ref": "string"    // URI d'API pour les infos d'un serveur (par exemple '/api/v1/server/4242') 
      }
    }
  }
}
{
  "ip": {    // (optionnel) 
    "address": "string",    // IPv4 
    "type": "string",    // Type d'IP (public, private, failover) 
    "reverse": "string",
    "mac": "string",    // Adresse MAC (optionnel) 
    "destination": "string",    // IP de destination (si le type est failover) (optionnel) 
    "status": "string",    // État de l'assignation de l'IP failover (active, en cours de mise à jour) (optionnel) 
    "switch_port_state": "string",    // État du port sur le switch (up ou down) (optionnel) 
    "server": {    // (optionnel) 
      "$ref": "string"    // URI d'API pour les infos d'un serveur (par exemple '/api/v1/server/4242') 
    }
  }
}
{
  "uuid_ref": "string",    // Id de la clé SSH 
  "description": "string",
  "fingerprint": "string"
}
{
  "$ref": "string",    // URI d'API pour les infos d'un service (e.g. '/api/v1/service/4242') 
  "id": "integer",
  "name": "string",    // Nom et description du service 
  "parent_service": {    // (optionnel) 
    "$ref": "string",    // URI d'API pour les infos d'un service (e.g. '/api/v1/service/4242') 
    "id": "integer",
    "name": "integer",    // Nom et description du service 
    "status": "string"
  },
  "status": "string",
  "contacts": {
    "owner": "string",    // Login du contact propriétaire 
    "tech": "string"    // Login du contact technique 
  },
  "subscription_date": "Date",
  "delivery_date": "Date",
  "termination_date": "Date",    // Date de la résiliation 
  "expiration_date": "Date",    // Date à laquelle le service expire (ou a expiré) 
  "auto_renew": "boolean",    // La souscription du service est renouvelée automatiquement 
  "terminable_by_api": "boolean"    // Le service peut être résilié avec l'API 
}
{
  "$ref": "string",    // URI d'API pour les infos d'un service (e.g. '/api/v1/service/4242') 
  "id": "integer",
  "name": "integer",    // Nom et description du service 
  "status": "string"
}
{
  "owner": "string",    // Login du contact propriétaire 
  "tech": "string"    // Login du contact technique 
}
{
  "address": "string",    // IPv4 
  "type": "string",    // Type d'IP (public, private, failover) 
  "reverse": "string",
  "mac": "string",    // Adresse MAC (optionnel) 
  "destination": "string",    // IP de destination (si le type est failover) (optionnel) 
  "status": "string",    // État de l'assignation de l'IP failover (active, en cours de mise à jour) (optionnel) 
  "switch_port_state": "string",    // État du port sur le switch (up ou down) (optionnel) 
  "server": {    // (optionnel) 
    "$ref": "string"    // URI d'API pour les infos d'un serveur (par exemple '/api/v1/server/4242') 
  }
}
{
  "ip": {
    "address": "string",    // IPv4 
    "type": "string",    // Type d'IP (public, private, failover) 
    "reverse": "string",
    "mac": "string",    // Adresse MAC (optionnel) 
    "destination": "string",    // IP de destination (si le type est failover) (optionnel) 
    "status": "string",    // État de l'assignation de l'IP failover (active, en cours de mise à jour) (optionnel) 
    "switch_port_state": "string",    // État du port sur le switch (up ou down) (optionnel) 
    "server": {    // (optionnel) 
      "$ref": "string"    // URI d'API pour les infos d'un serveur (par exemple '/api/v1/server/4242') 
    }
  }
}
{
  "id": "integer",    // Unique identifier of the operating system 
  "name": "string",    // Nom générique du système d'exploitation (exemple : 'ubuntu', 'windows') 
  "version": "string",    // Nom complet et version du système d'exploitation (exemple : 'Ubuntu 14.04 LTS') 
  "type": "string",
  "arch": "string",    // (optionnel) 
  "release": "Date",    // (optionnel) 
  "end_of_life": "Date"    // (optionnel) 
}
{
  "id": "string",
  "database_name": "string",
  "date": "Date",
  "url": "string",
  "status": "string",
  "database": {    // (optionnel) 
    "id": "string",
    "name": "string",
    "status": "string"
  }
}
{
  "id": "string",
  "database_name": "string",
  "date": "Date",
  "url": "string",
  "status": "string"
}
{
  "id": "string",
  "name": "string",
  "status": "string"
}
{
  "id": "string",
  "access": "string",
  "status": "string"
}
{
  "id": "string",
  "access": "string",
  "database": {
    "id": "string",
    "name": "string",
    "status": "string"
  },
  "status": "string"
}
{
  "id": "string",
  "access": "string",
  "user": {
    "id": "string",
    "username": "string",
    "status": "string"
  },
  "status": "string"
}
{
  "status": "string",
  "size": "integer",    // (optionnel) 
  "memory_size": "integer",
  "port": "integer",
  "ips": {
    "type": "string",
    "ip": "string"
  }
}
{
  "type": "string",
  "ip": "string"
}
{
  "id": "string",
  "name": "string",    // Name of the ODS 
  "status": "string",
  "disk": "integer",    // Disk space in MB (optionnel) 
  "memory": "integer",    // Ram spec in MB (optionnel) 
  "core": "integer",    // Number of core (optionnel) 
  "server": {    // (optionnel) 
    "status": "string",
    "size": "integer",    // (optionnel) 
    "memory_size": "integer",
    "port": "integer",
    "ips": {
      "type": "string",
      "ip": "string"
    }
  }
}
{
  "id": "string",
  "username": "string",
  "status": "string"
}
{
  "$ref": "string"    // URI d'API pour les infos d'un serveur (par exemple '/api/v1/server/4242') 
}
{
  "id": "integer",
  "name": "string",
  "type": "string",
  "aux": "integer",
  "ttl": "integer",
  "data": "string",
  "domain": {
    "id": "integer",    // ID du domaine 
    "name": "string",    // Nom du domaine 
    "dnssec": "boolean",    // Détermine si DNSSEC est activé pour ce domaine 
    "external": "boolean",    // Que ce domaine soit externe ou non (optionnel) 
    "versions": {    // (optionnel) 
      "$ref": "string"    // Le chemin permettant d'afficher cette relation 
    },
    "zone": {    // (optionnel) 
      "$ref": "string"    // Le chemin permettant d'afficher cette relation 
    }
  }
}
{
  "$ref": "string"    // Le chemin permettant d'afficher cette relation 
}
{
  "id": "integer",    // ID du domaine 
  "name": "string",    // Nom du domaine 
  "dnssec": "boolean",    // Détermine si DNSSEC est activé pour ce domaine 
  "external": "boolean",    // Que ce domaine soit externe ou non (optionnel) 
  "versions": {    // (optionnel) 
    "$ref": "string"    // Le chemin permettant d'afficher cette relation 
  },
  "zone": {    // (optionnel) 
    "$ref": "string"    // Le chemin permettant d'afficher cette relation 
  }
}
{
  "uuid_ref": "string",
  "name": "string",
  "creation_date": "Date",
  "active": "boolean",
  "zone": {    // (optionnel) 
    "$ref": "string"    // Le chemin permettant d'afficher cette relation 
  },
  "domain": {    // (optionnel) 
    "$ref": "string"    // Le chemin permettant d'afficher cette relation 
  }
}
{
  "$ref": "string",    // URI d'API pour les infos d'un site d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/location/4242') 
  "uuid_ref": "string",    // Id du site de l'archive 
  "archive": {
    "$ref": "string",    // URI d'API pour les infos d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242') 
    "uuid_ref": "string",    // Id de l'archive 
    "name": "string",
    "status": "string"
  },
  "platform": {
    "$ref": "string",    // URI d'API pour les infos d'une plateforme (e.g. '/api/v1/storage/c14/platform/4242') 
    "id": "integer"
  },
  "status": "string"
}
{
  "$ref": "string",    // URI d'API pour les infos d'un site d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/location/4242') 
  "uuid_ref": "string",    // Id du site de l'archive 
  "platform": {
    "$ref": "string",    // URI d'API pour les infos d'une plateforme (e.g. '/api/v1/storage/c14/platform/4242') 
    "id": "integer"
  }
}
{
  "archive_location": {
    "$ref": "string",    // URI d'API pour les infos d'un site d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/location/4242') 
    "uuid_ref": "string",    // Id du site de l'archive 
    "archive": {
      "$ref": "string",    // URI d'API pour les infos d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242') 
      "uuid_ref": "string",    // Id de l'archive 
      "name": "string",
      "status": "string"
    },
    "platform": {
      "$ref": "string",    // URI d'API pour les infos d'une plateforme (e.g. '/api/v1/storage/c14/platform/4242') 
      "id": "integer"
    },
    "status": "string"
  }
}
{
  "$ref": "string",    // URI d'API pour les infos d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242') 
  "uuid_ref": "string",    // Id de l'archive 
  "name": "string",
  "description": "string",
  "parity": "string",
  "status": "string",
  "creation_date": "Date",
  "safe": {    // (optionnel) 
    "$ref": "string"    // URI d'API pour les infos d'un coffre-fort (e.g. '/api/v1/storage/c14/safe/4242') 
  },
  "bucket": {    // (optionnel) 
    "$ref": "string",    // URI d'API pour les infos d'un espace de stockage temporaire (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/bucket') 
    "uuid_ref": "string",    // Id de l'espace de stockage temporaire 
    "status": "string",
    "archival_date": "Date",
    "credentials": [    // Liste des identifiants 
      {
        "protocol": "string",
        "uri": "string",
        "login": "string",
        "password": "string",    // (optionnel) 
        "ssh_keys": [    // Liste des clés SSH (optionnel) 
          {
            "uuid_ref": "string",    // Id de la clé SSH 
            "description": "string",
            "fingerprint": "string"
          }
        ]
      }
    ]
  },
  "current_jobs": [    // (optionnel) 
    {
      "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
      "uuid_ref": "string",    // Id de l'action 
      "type": "string",
      "archive_location": {
        "$ref": "string",    // URI d'API pour les infos d'un site d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/location/4242') 
        "uuid_ref": "string",    // Id du site de l'archive 
        "platform": {
          "$ref": "string",    // URI d'API pour les infos d'une plateforme (e.g. '/api/v1/storage/c14/platform/4242') 
          "id": "integer"
        }
      },
      "status": "string",
      "progress": "integer",    // Pourcentage de progression (de 0 à 100) 
      "start": "Date",
      "end": "Date",
      "parent_job": {    // (optionnel) 
        "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
        "uuid_ref": "string",    // Id de l'action 
        "parent_job": {    // (optionnel) 
          "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
          "uuid_ref": "string"    // Id de l'action 
        }
      }
    }
  ],
  "current_jobs_progress": "integer",    // Pourcentage global de progression (de 0 à 100) (optionnel) 
  "size": "integer"    // Taille en octets (optionnel) 
}
{
  "$ref": "string",    // URI d'API pour les infos d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242') 
  "uuid_ref": "string",    // Id de l'archive 
  "name": "string",
  "status": "string"
}
{
  "$ref": "string"    // URI d'API pour les infos d'un coffre-fort (e.g. '/api/v1/storage/c14/safe/4242') 
}
{
  "archive": {
    "$ref": "string",    // URI d'API pour les infos d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242') 
    "uuid_ref": "string",    // Id de l'archive 
    "name": "string",
    "description": "string",
    "parity": "string",
    "status": "string",
    "creation_date": "Date",
    "safe": {    // (optionnel) 
      "$ref": "string"    // URI d'API pour les infos d'un coffre-fort (e.g. '/api/v1/storage/c14/safe/4242') 
    },
    "bucket": {    // (optionnel) 
      "$ref": "string",    // URI d'API pour les infos d'un espace de stockage temporaire (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/bucket') 
      "uuid_ref": "string",    // Id de l'espace de stockage temporaire 
      "status": "string",
      "archival_date": "Date",
      "credentials": [    // Liste des identifiants 
        {
          "protocol": "string",
          "uri": "string",
          "login": "string",
          "password": "string",    // (optionnel) 
          "ssh_keys": [    // Liste des clés SSH (optionnel) 
            {
              "uuid_ref": "string",    // Id de la clé SSH 
              "description": "string",
              "fingerprint": "string"
            }
          ]
        }
      ]
    },
    "current_jobs": [    // (optionnel) 
      {
        "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
        "uuid_ref": "string",    // Id de l'action 
        "type": "string",
        "archive_location": {
          "$ref": "string",    // URI d'API pour les infos d'un site d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/location/4242') 
          "uuid_ref": "string",    // Id du site de l'archive 
          "platform": {
            "$ref": "string",    // URI d'API pour les infos d'une plateforme (e.g. '/api/v1/storage/c14/platform/4242') 
            "id": "integer"
          }
        },
        "status": "string",
        "progress": "integer",    // Pourcentage de progression (de 0 à 100) 
        "start": "Date",
        "end": "Date",
        "parent_job": {    // (optionnel) 
          "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
          "uuid_ref": "string",    // Id de l'action 
          "parent_job": {    // (optionnel) 
            "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
            "uuid_ref": "string"    // Id de l'action 
          }
        }
      }
    ],
    "current_jobs_progress": "integer",    // Pourcentage global de progression (de 0 à 100) (optionnel) 
    "size": "integer"    // Taille en octets (optionnel) 
  }
}
{
  "$ref": "string",    // URI d'API pour les infos d'un espace de stockage temporaire (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/bucket') 
  "uuid_ref": "string",    // Id de l'espace de stockage temporaire 
  "status": "string",
  "archival_date": "Date",
  "credentials": [    // Liste des identifiants 
    {
      "protocol": "string",
      "uri": "string",
      "login": "string",
      "password": "string",    // (optionnel) 
      "ssh_keys": [    // Liste des clés SSH (optionnel) 
        {
          "uuid_ref": "string",    // Id de la clé SSH 
          "description": "string",
          "fingerprint": "string"
        }
      ]
    }
  ]
}
{
  "protocol": "string",
  "uri": "string",
  "login": "string",
  "password": "string",    // (optionnel) 
  "ssh_keys": [    // Liste des clés SSH (optionnel) 
    {
      "uuid_ref": "string",    // Id de la clé SSH 
      "description": "string",
      "fingerprint": "string"
    }
  ]
}
{
  "name": "string",
  "description": "string"
}
{
  "$ref": "string",    // URI d'API pour les infos d'un coffre-fort (e.g. '/api/v1/storage/c14/safe/4242') 
  "uuid_ref": "string",    // Id du coffre-fort 
  "name": "string",
  "description": "string",
  "status": "string"
}
{
  "$ref": "string",    // URI d'API pour les infos d'un coffre-fort (e.g. '/api/v1/storage/c14/safe/4242') 
  "uuid_ref": "string",    // Id du coffre-fort 
  "name": "string",
  "status": "string"
}
{
  "safe": {
    "$ref": "string",    // URI d'API pour les infos d'un coffre-fort (e.g. '/api/v1/storage/c14/safe/4242') 
    "uuid_ref": "string",    // Id du coffre-fort 
    "name": "string",
    "description": "string",
    "status": "string"
  }
}
{
  "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
  "uuid_ref": "string",    // Id de l'action 
  "type": "string",
  "archive_location": {
    "$ref": "string",    // URI d'API pour les infos d'un site d'une archive (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/location/4242') 
    "uuid_ref": "string",    // Id du site de l'archive 
    "platform": {
      "$ref": "string",    // URI d'API pour les infos d'une plateforme (e.g. '/api/v1/storage/c14/platform/4242') 
      "id": "integer"
    }
  },
  "status": "string",
  "progress": "integer",    // Pourcentage de progression (de 0 à 100) 
  "start": "Date",
  "end": "Date",
  "parent_job": {    // (optionnel) 
    "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
    "uuid_ref": "string",    // Id de l'action 
    "parent_job": {    // (optionnel) 
      "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
      "uuid_ref": "string"    // Id de l'action 
    }
  }
}
{
  "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
  "uuid_ref": "string",    // Id de l'action 
  "parent_job": {    // (optionnel) 
    "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
    "uuid_ref": "string"    // Id de l'action 
  }
}
{
  "$ref": "string",    // URI d'API pour les infos d'une action (e.g. '/api/v1/storage/c14/safe/4242/archive/4242/job/4242') 
  "uuid_ref": "string"    // Id de l'action 
}
{
  "$ref": "string",    // URI d'API pour les infos d'une plateforme (e.g. '/api/v1/storage/c14/platform/4242') 
  "id": "integer",
  "name": "string"
}
{
  "$ref": "string",    // URI d'API pour les infos d'une plateforme (e.g. '/api/v1/storage/c14/platform/4242') 
  "id": "integer"
}
{
  "id": "integer",
  "description": "string",    // description of group (optionnel) 
  "status": "string",
  "linked": {
    "type": "string",
    "id": "integer",    // Id of server or rpn v1 group 
    "$ref": "string"    // Path of object detail 
  }
}
{
  "type": "string",
  "id": "integer",    // Id of server or rpn v1 group 
  "$ref": "string"    // Path of object detail 
}
{
  "id": "integer",
  "description": "string",    // description of group 
  "status": "string",
  "compatibility_rpn_v1": "boolean",    // boolean status of compatibility 
  "type": "string",    // Les types STANDARD, QINQ and DEMO sont disponibles (optionnel) 
  "member": {
    "id": "integer",
    "description": "string",    // description of group (optionnel) 
    "status": "string",
    "linked": {
      "type": "string",
      "id": "integer",    // Id of server or rpn v1 group 
      "$ref": "string"    // Path of object detail 
    }
  }
}

Voici quelques exemples d'appels, en utilisant cURL:

Obtenir les infos du compte identifié :

Afficher/masquer l'exemple

curl -X GET -H "Authorization: Bearer your_api_token" "https://api.online.net/api/v1/user"
HTTP/1.1 200 OK
Content-Type: application/json
etag: b6fa8159e3fb79b2a86aa8302889c58b4d055561
date: Fri, 12 Jul 2013 12:34:56 GMT

{"id":99999,"login":"SuperDupont1789","email":"superdupont1789@free.fr","first_name":"Super","last_name":"Dupont","company":"L'anti-AntiFrance"}

Obtenir une liste des images de rescue disponibles pour un serveur :

Afficher/masquer l'exemple

curl -X GET -H "Authorization: Bearer your_api_token" "https://api.online.net/api/v1/server/rescue_images/88888"
HTTP/1.1 200 OK
Content-Type: application/json
etag: 3de059c70fd2df09dc89b6867cc994a548dc4d1b
date: Fri, 12 Jul 2013 12:45:43 GMT

["ubuntu-12.04_amd64","ubuntu-10.04_i386","winpe-3.0_amd64","winpe-3.0_i386"]

Voici quelques exemples de code avec différents usages de l'API :

<?php
 
// note: error handling is left as an exercise for the reader
function call_online_api($token, $http_method, $endpoint, $get = array(), $post = array())
{
    if (!empty($get)) {
        $endpoint .= '?' . http_build_query($get);
    }
 
    $call = curl_init();
    curl_setopt($call, CURLOPT_URL, 'https://api.online.net/api/v1' . $endpoint);
    curl_setopt($call, CURLOPT_HTTPHEADER, array('Authorization: Bearer ' . $token, 'X-Pretty-JSON: 1'));
    curl_setopt($call, CURLOPT_RETURNTRANSFER, true);
 
    if ($http_method == 'POST') {
        curl_setopt($call, CURLOPT_POST, true);
        curl_setopt($call, CURLOPT_POSTFIELDS, http_build_query($post));
    }
 
    return curl_exec($call);
}
 
$token = YOUR_API_TOKEN;
 
$user_info = call_online_api($token, 'GET', '/user/info');
echo $user_info;
 
$failovers = call_online_api($token, 'GET', '/server/failover');
echo $failovers;
 
// edit a failover IP
$post = array(
    'source' => '10.0.0.42',
    'destination' => '10.0.0.1',
);
$move_failover = call_online_api($token, 'POST', '/server/failover/edit', null, $post);
var_export($move_failover);

En utilisant slumber :

import slumber, requests
 
api_session = requests.session()
api_session.headers['Authorization'] = 'Bearer YOUR_API_TOKEN'
 
api = slumber.API('https://api.online.net/api/v1', session=api_session)
 
user_info = api.user.info.get()
print user_info
 
failovers = api.server.failover.get()
print failovers
 
# edit a failover IP
move_failover = api.server.failover.edit.post({
    'source': '10.0.0.42',
    'destination': '10.0.0.1'
})
print move_failover

Les appels nécessitant l'authentification attendent un en-tête HTTP Authorization comportant un token, selon le format suivant :

Authorization: Bearer your_api_token

Ce token peut être votre token d'API privé, ou un token obtenu via l'authentification OAuth2.

D'abord, vous devez créer une appli.

Une fois que vous avez créé une appli, vous obtenez un client_id et un client_secret à utiliser pour le processus d'authentification.

Quel processus d'authentification devriez-vous utiliser ?

Workflow pour les sites web ou les applications clientes

Ce processus d'authentification utilise la version three-legged d'OAuth2.

Les URL suivantes sont utilisées dans ce processus :

  • URI autorisation : /oauth/v2/auth
  • URI token : /oauth/v2/token

Note : si votre application n'est pas un site web, vous devrez faire effectuer ces étapes à l'utilisateur(trice) dans une vue web (par exemple UIWebView pour iOS, WebView pour Android…).

Workflow complet

  1. Votre application redirige l'utilisateur(trice) vers l'URI autorisation d'Online.net, avec les paramètres GET suivants :

    • client_id: le client_id de votre appli
    • redirect_uri: une des URL de redirection de votre application
    • response_type: utilisez la valeur "code"
    • state: une chaîne arbitraire qui sera retournée à votre application, pour vous aider à éviter les CSRF
    Exemple d'URL pour l'autorisation :
    https://console.online.net/oauth/v2/auth?client_id=42_424242&redirect_uri=https://your-app.tld/online_api&response_type=code&state=yeahponies
  2. L'utilisateur(trice) choisit d'autoriser votre application.

  3. L'utilisateur(trice) est redirigé(e) vers l'URL que vous avez spécifiée avec le paramètre redirect_uri, avec les paramètres suivants :

    • code: le code que vous allez échanger contre un token
    • state: la valeur que vous avez envoyée précédemment
  4. En utilisant la valeur de code, votre application fait une requête POST directe (pas dans la navigateur de l'utilisateur(trice)) vers l'URI token, avec les paramètres suivants :

    • client_id
    • client_secret
    • code: la valeur reçue précédemment
    • redirect_uri: une des URL de redirection de votre application
    • grant_type: utilisez la valeur "authorization_code"
    Exemple d'appel cURL pour obtenir un token :
    curl -X POST "https://console.online.net/oauth/v2/token" -d "client_id=42_424242&client_secret=123456&code=986a9e6d90e&redirect_uri=https://your-app.tld/online_api&grant_type=authorization_code"
  5. Si tout est correct, le token est retourné dans un objet JSON avec les propriétés suivantes :

    • access_token
    • expires_in: période de validité du token, en secondes
    • token_type: "Bearer"
  6. Votre application stocke le token d'accès et l'utilise pour les visites suivantes de l'utilisateur(trice).

Workflow pour les applis mobiles

Ce processus d'authentification utilise une variante d'OAuth2, adaptée pour les mobiles.

Les URL suivantes sont utilisées dans ce processus :

  • URI device : /oauth/v2/device/code
  • URI vérification : /oauth/v2/device/usercode
  • URI token : /oauth/v2/token

Note : vous aurez à faire faire certaines étapes dans une vue navigateur (exemple : UIWebView pour iOS, WebView pour Android…) si vous voulez effectuer toutes les étapes sans sortir de l'appli mobile.

Workflow complet

  1. Votre application fait une requête directe sur l'URI device, avec le paramètre GET client_id, et obtient un objet JSON avec les données d'authentification qui seront utilisés pour le reste du process.

    Exemple d'URL pour obtenir les données d'authentification :
    https://console.online.net/oauth/v2/device/code?client_id=42_424242
    Exemple de données d'authentification :
    {
        "device_code": "5b7a15a9ae1bc30f903210dcafb6dff4d893a880",
        "user_code": "fu5rohd4h",
        "interval": 5,
        "expires_in": 1800,
        "verification_url": "https:\/\/console.online.net\/oauth\/v2\/device\/code"
    }
  2. Votre application demande à l'utilisateur(trice) d'aller sur l'URI de vérification (fournie par verification_url) et d'y taper le code fourni par user_code.

  3. En utilisant la valeur de device_code, toutes les 5 secondes votre application commence à faire des requêtes POST directes à l'URI token, avec les paramètres suivants :

    • client_id
    • client_secret
    • code: la valeur de device_code
    • grant_type: utilisez la valeur "http://oauth.net/grant_type/device/1.0"
    Exemple d'appel cURL pour obtenir un token :
    curl -X POST "https://console.online.net/oauth/v2/token" -d "client_id=123_987654&client_secret=4815162342&code=986a9e6d90e&grant_type=http://oauth.net/grant_type/device/1.0"

    Votre application recevra un message d'erreur tant que l'utilisateur(trice) n'aura pas entré le code et autorisé l'application.

  4. L'utilisateur(trice) entre le code, et se connecte s'il(elle) n'est pas déjà connecté(e).

  5. L'utilisateur(trice) choisit d'autoriser votre application, et peut alors fermer la fenêtre de navigateur.

  6. L'appel de votre application à l'URI token retourne maintenant le token dans un objet JSON avec les propriétés suivantes :

    • access_token
    • expires_in: période de validité du token, en secondes
    • token_type: "Bearer"
  7. Votre application stocke le token d'accès et l'utilise pour les visites suivantes de l'utilisateur(trice).

Workflow pour les applis opensources

Ce processus d'authentification est similaire à OAuth2 pour mobiles, avec pour différence que les applis opensource ou les scripts ne peuvent pas être distribués avec un client_secret (puisqu'il est censé rester secret).

Le principe ici est d'obtenir un client_id et un client_secret liés à l'utilisateur(trice). Vous pourrez alors réutiliser ces identifiants avec le workflow OAuth2 pour mobiles.

Avertissement : Vous ne devez pas redistribuer les identifiants. L'usage des identifiants avec un autre compte affichera le login de l'utilisateur(trice) qui a obtenu les identifiants. Exemple : au lieu d'afficher simplement "L'appli la plus fabuleuse", on affichera "L'appli la plus fabuleuse (jeanpatrickranu1979)".

Les URL suivantes sont utilisées dans ce processus :

  • URI device : /oauth/v2/device/code
  • URI vérification : /oauth/v2/device/usercode
  • URI identifiants : /oauth/v2/device/credentials
  • URI token : /oauth/v2/token

Workflow complet

  1. Votre application fait une requête directe sur l'URI device, avec les paramètres GET client_id et new_credentials=yes, et obtient un objet JSON avec les données d'authentification qui seront utilisés pour le reste du process.

    Exemple d'URL pour obtenir les données d'authentification :
    https://console.online.net/oauth/v2/device/code?client_id=42_424242&new_credentials=yes
    Exemple de données d'authentification :
    {
        "device_code": "5b7a15a9ae1bc30f903210dcafb6dff4d893a880",
        "user_code": "fu5rohd4h",
        "interval": 5,
        "expires_in": 1800,
        "verification_url": "https:\/\/console.online.net\/oauth\/v2\/device\/code"
    }
  2. Votre application demande à l'utilisateur(trice) d'aller sur l'URI de vérification (fournie par verification_url) et d'y taper le code fourni par user_code.

  3. En utilisant la valeur de device_code, toutes les 5 secondes votre application commence à faire des requêtes directes à l'URI identifiants, avec les paramètres GET suivants :

    • client_id
    • code: la valeur de device_code

    Votre application recevra un message d'erreur tant que l'utilisateur(trice) n'aura pas entré le code et autorisé l'application.

  4. L'utilisateur(trice) entre le code, et se connecte s'il(elle) n'est pas déjà connecté(e).

  5. L'utilisateur(trice) choisit d'autoriser votre application, et peut alors fermer la fenêtre de navigateur.

  6. L'appel de votre application à l'URI identifiants retourne maintenant un objet JSON avec les propriétés suivantes :

    • client_id: a new client_id that is bound to the user
    • client_secret

    Votre application stocke ces valeurs et les utilisera pour les requêtes futures.

  7. En utilisant la valeur de device_code, votre application fait une requête POST directe à l'URI token, avec les paramètres suivants :

    • client_id: the value of client_id provided by the call to the credentials endpoint
    • client_secret: the value of client_secret provided by the call to the credentials endpoint
    • code: la valeur de device_code
    • grant_type: utilisez la valeur "http://oauth.net/grant_type/device/1.0"
    Exemple d'appel cURL pour obtenir un token :
    curl -X POST "https://console.online.net/oauth/v2/token" -d "client_id=123_987654&client_secret=4815162342&code=986a9e6d90e&grant_type=http://oauth.net/grant_type/device/1.0"
  8. Votre application stocke le token d'accès et l'utilise pour les visites suivantes de l'utilisateur(trice).

En plus du code d'erreur HTTP, les erreurs sont retournées avec un message et un code numérique. Le message d'erreur est une indication lisible, tandis votre application ne doit se soucier que des codes numériques.

-1 Erreur interne
1 Paramètre manquant
2 Mauvaise valeur de paramètre
3 Méthode inconnue
4 Méthode non autorisée
5 Mauvaise requête
6 Pas encore implémenté
7 Ressource introuvable
8 Ressource non atteignable
9 Permission refusée
10 Action déjà effectuée
11 L'utilisateur a des factures impayées
12 Trop de requêtes
13 Ressource en cours de création
16 Ressource occupée
17 Conflit