MENU navbar-image

Introduction

Bienvenue sur l'API KifDom.

Ce guide d'utilisation décrit les différentes méthodes accessibles via l'API.

L'API a été conçue pour faciliter l'accès à notre base et vous permettre d'interagir avec certains de ses aspects.

Cette documentation vise à fournir toutes les informations dont vous aurez besoin pour travailler avec notre API.

Authentification des requêtes

Authentification

Obtenir un token d'autentification

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/auth/login"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "myemail@provider.com",
    "password": "%z*b_MgZv<8f2Uy7R"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://www.kifdom.com/api/v1/auth/login',
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'email' => 'myemail@provider.com',
            'password' => '%z*b_MgZv<8f2Uy7R',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/auth/login'
payload = {
    "email": "myemail@provider.com",
    "password": "%z*b_MgZv<8f2Uy7R"
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()
curl --request POST \
    "https://www.kifdom.com/api/v1/auth/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"myemail@provider.com\",
    \"password\": \"%z*b_MgZv<8f2Uy7R\"
}"

Réponse d'exemple (200):


{
    "access_token": "{YOUR_API_TOKEN}",
    "token_type": "bearer",
    "expires_in": 3600
}
 

Réponse d'exemple (401):


{
    "error": {
        "code": 401,
        "message": "Unauthorized."
    }
}
 

Requête   

POST api/v1/auth/login

En-têtes

Content-Type      

Exemple :

Accept      

Exemple :

Paramètres du corps de la requête (au format JSON)

email   string   

L'email de l'utilisateur.
Exemple :

password   string   

Le mot de passe de l'utilisateur.
Exemple :

Réponse

Données de la réponse

access_token   string   

Le token d'autorisation, obligatoire pour interroger les endpoints marqués du tag requires authentication.
Dans les exemples, il est représenté par la chaine {YOUR_AUTH_KEY}.

token_type   string   

Le type d'autorisation par le biais de laquelle le token d'authorisation peut être utilisé.
Le token d'autorisation doit être envoyé dans l'en-tête Authorization sous la forme :
Authorization: Bearer {YOUR_AUTH_KEY}.

expires_in   integer   

La durée de vie du token d'autorisation en secondes (3600 secondes = 1 heure).

Rafraichir le token d'autentification

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/auth/refresh"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://www.kifdom.com/api/v1/auth/refresh',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/auth/refresh'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()
curl --request POST \
    "https://www.kifdom.com/api/v1/auth/refresh" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Réponse d'exemple (200):


{
    "access_token": "{YOUR_API_TOKEN}",
    "token_type": "bearer",
    "expires_in": 3600
}
 

Réponse d'exemple (401):


{
    "message": "Unauthenticated."
}
 

Requête   

POST api/v1/auth/refresh

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Réponse

Données de la réponse

access_token   string   

Le token d'autorisation, obligatoire pour interroger les endpoints marqués du tag requires authentication.
Dans les exemples, il est représenté par la chaine {YOUR_AUTH_KEY}.

token_type   string   

Le type d'autorisation par le biais de laquelle le token d'authorisation peut être utilisé.
Le token d'autorisation doit être envoyé dans l'en-tête Authorization sous la forme :
Authorization: Bearer {YOUR_AUTH_KEY}.

expires_in   integer   

La durée de vie du token d'autorisation en secondes (3600 secondes = 1 heure).

Afficher le compte utilisateur

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/auth/me"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://www.kifdom.com/api/v1/auth/me',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/auth/me'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()
curl --request POST \
    "https://www.kifdom.com/api/v1/auth/me" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Réponse d'exemple (200):


{
    "code": 200,
    "message": "User successfully retrieved.",
    "data": {
        "email": "{YOUR_EMAIL}",
        "first_name": "{YOUR_FIRST_NAME}",
        "last_name": "{YOUR_LAST_NAME}",
        "address": "{YOUR_ADDRESS}",
        "postcode": "{YOUR_POSTCODE}",
        "city": "{YOUR_CITY}",
        "country": "{YOUR_COUNTRY_CODE}",
        "phone": "{YOUR_PHONE_NUMBER}"
    }
}
 

Réponse d'exemple (401):


{
    "message": "Unauthenticated."
}
 

Requête   

POST api/v1/auth/me

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Réponse

Données de la réponse

code   string   

Code HTTP de la réponse.

message   string   

Message de la réponse.

data   object   

Données de la réponse.

email      

L'adresse email de l'utilisateur.

first_name      

Le prénom de l'utilisateur.

last_name      

Le nom de famille de l'utilisateur.

address      

L'adresse de résidence de l'utilisateur.

postcode      

Le code postal de résidence de l'utilisateur.

city      

La ville de résidence de l'utilisateur.

country      

Le pays de résidence de l'utilisateur.

phone      

Le numéro de téléphone de l'utilisateur.

Détruire le token d'autentification (déconnexion)

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/auth/logout"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://www.kifdom.com/api/v1/auth/logout',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/auth/logout'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()
curl --request POST \
    "https://www.kifdom.com/api/v1/auth/logout" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Réponse d'exemple (200):


{
    "message": "Successfully logged out."
}
 

Réponse d'exemple (401):


{
    "message": "Unauthenticated."
}
 

Requête   

POST api/v1/auth/logout

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Réponse

Données de la réponse

message   string   

Message de la réponse.

Noms de domaine

Afficher la liste de vos domaines

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/domains"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
    'https://www.kifdom.com/api/v1/domains',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/domains'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()
curl --request GET \
    --get "https://www.kifdom.com/api/v1/domains" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Réponse d'exemple (200):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "data": [
        {
            "name": "mydomain1.fr",
            "punycode_name": "mydomain1.fr",
            "status": "active",
            "renew": false,
            "kifdns": true,
            "dns": [
                {
                    "id": 54321,
                    "type": "A",
                    "name": "@",
                    "data": "111.33.444.22",
                    "ttl": 1800
                },
                {
                    "id": 54322,
                    "type": "CNAME",
                    "name": "www",
                    "data": "myblog.fr",
                    "ttl": 1800
                },
                {
                    "id": 54323,
                    "type": "MX",
                    "name": "@",
                    "data": "mailhost1.example.com",
                    "priority": 10,
                    "ttl": 1800
                },
                {
                    "id": 54324,
                    "type": "MX",
                    "name": "@",
                    "data": "mailhost2.example.com",
                    "priority": 20,
                    "ttl": 1800
                }
            ],
            "registry_ends_at": "2023-03-01T00:00:00Z",
            "label": "MyDomain1"
        },
        {
            "name": "mydomain2.fr",
            "punycode_name": "mydomain2.fr",
            "status": "outgoing_transfer",
            "renew": false,
            "kifdns": false,
            "ns": [
                {
                    "id": 65432,
                    "type": "NS",
                    "name": null,
                    "data": "ns1.myhostingcompany.net",
                    "priority": null,
                    "ttl": 1800
                },
                {
                    "id": 65433,
                    "type": "NS",
                    "name": null,
                    "data": "ns2.myhostingcompany.net",
                    "priority": null,
                    "ttl": 1800
                }
            ],
            "registry_ends_at": "2023-03-01T00:00:00Z",
            "label": "MyDomain2"
        }
        ...ETC...
    ]
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

GET api/v1/domains

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

data   object   

Liste des noms de domaine dans le portefeuille de l'utilisateur.

name   string   

Le nom de domaine.

punycode_name   string   

Le nom de domaine au format punycode (pour les noms de domaine accentués).

status   string   

Le statut du nom de domaine.

renew   boolean   

Le status de l'auto-renouvellement du nom de domaine (true = Oui| false = Non).

kifdns   boolean   

L'utilisation des serveurs de noms (NS) de KifDom (true = Oui| false = Non).

ns   object   

Liste des enregistrements de type NS personnalisés du nom de domaine, absent si les serveurs de noms de KifDom sont utilisés.

id   integer   

L'identifiant de l'enregistrement DNS de type NS.

type   string   

Le type de l'enregistrement DNS de type NS (toujours égal à "NS").

name   string   

Le nom de l'enregistrement DNS de type NS.

data   string   

La valeur de l'enregistrement DNS de type NS.

ttl   integer   

Le TTL (Time To Live) de l'enregistrement DNS de type NS.

dns   object   

Liste des enregistrements DNS du nom de domaine.

id   integer   

L'identifiant de l'enregistrement DNS de type non-NS.

type   string   

Le type de l'enregistrement DNS de type non-NS (peut être A, AAAA, CNAME, MX ou TXT).

name   string   

Le nom de l'enregistrement DNS de type non-NS.

data   string   

La valeur de l'enregistrement DNS de type non-NS.

priority   integer   

Le niveau de priorité, présent uniquement si l'enregistrement DNS est de type MX (plus la valeur est faible, plus la priorité est élevée).

ttl   integer   

Le TTL (Time To Live) de l'enregistrement DNS de type non-NS.

registry_ends_at   boolean   

La date d'expiration du nom de domaine.

label   string|null   

Le label associé au nom de domaine (peut être null).

Créer un nom de domaine

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/domains"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "mydomain.fr",
    "renewable": 0,
    "label": "MyDomain."
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://www.kifdom.com/api/v1/domains',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'mydomain.fr',
            'renewable' => 0,
            'label' => 'MyDomain.',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/domains'
payload = {
    "name": "mydomain.fr",
    "renewable": 0,
    "label": "MyDomain."
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()
curl --request POST \
    "https://www.kifdom.com/api/v1/domains" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"mydomain.fr\",
    \"renewable\": 0,
    \"label\": \"MyDomain.\"
}"

Réponse d'exemple (200):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "data": {
        "code": 200,
        "message": "Domain name successfully created."
    }
}
 

Réponse d'exemple (400):


{
    "meta": {
        "on-hold": 20,
        "total-domains": 14,
        "credits-balance": 1350,
        "error": true
    },
    "error": {
        "code": 400,
        "message": "The `price` parameter should be an integer."
    }
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

POST api/v1/domains

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Paramètres du corps de la requête (au format JSON)

name   string   

Le nom de domaine.
Exemple :

renewable   integer  optional  

Le renouvellement automatique du nom de domaine (0 = Non | 1 = Oui). Valeur par défaut : 1.
Exemple :

label   string  optional  

Un libellé pour le nom de domaine. Valeur par défaut : null.
Exemple :

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

data   object   

Liste des informations de la réponse.

code   string   

Code HTTP de la réponse.

message   string   

Message de la réponse.

Affiche un domaine

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/domains/mydomain.fr"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
    'https://www.kifdom.com/api/v1/domains/mydomain.fr',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/domains/mydomain.fr'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()
curl --request GET \
    --get "https://www.kifdom.com/api/v1/domains/mydomain.fr" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Réponse d'exemple (200):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "domain": {
        "name": "mydomain1.fr",
        "punycode_name": "mydomain1.fr",
        "status": "active",
        "renew": false,
        "kifdns": true,
        "dns": [
            {
                "id": 54321,
                "type": "A",
                "name": "@",
                "data": "111.33.444.22",
                "ttl": 1800
            },
            {
                "id": 54322,
                "type": "CNAME",
                "name": "www",
                "data": "myblog.fr",
                "ttl": 1800
            },
            {
                "id": 54323,
                "type": "MX",
                "name": "@",
                "data": "mailhost1.example.com",
                "priority": 10,
                "ttl": 1800
            },
            {
                "id": 54324,
                "type": "MX",
                "name": "@",
                "data": "mailhost2.example.com",
                "priority": 20,
                "ttl": 1800
            }
        ],
        "registry_ends_at": "2023-03-01T00:00:00Z",
        "label": "MyDomain1"
    }
}
 

Réponse d'exemple (400):


{
    "meta": {
        "on-hold": 20,
        "total-domains": 14,
        "credits-balance": 1350,
        "error": true
    },
    "error": {
        "code": 400,
        "message": "The `price` parameter should be an integer."
    }
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

GET api/v1/domains/{domain_name}

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Segments d'URL

domain_name   string   

Le nom de domaine.
Exemple :

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

domain   object   
name   string   

Le nom de domaine.

punycode_name   string   

Le nom de domaine au format punycode (pour les noms de domaine accentués).

status   string   

Le statut du nom de domaine.

renew   boolean   

Le status de l'auto-renouvellement du nom de domaine (true = Oui| false = Non).

kifdns   boolean   

L'utilisation des serveurs de noms (NS) de KifDom (true = Oui| false = Non).

ns   object   

Liste des enregistrements de type NS personnalisés du nom de domaine, absent si les serveurs de noms de KifDom sont utilisés.

id   integer   

L'identifiant de l'enregistrement DNS de type NS.

type   string   

Le type de l'enregistrement DNS de type NS (toujours égal à "NS").

name   string   

Le nom de l'enregistrement DNS de type NS.

data   string   

La valeur de l'enregistrement DNS de type NS.

ttl   integer   

Le TTL (Time To Live) de l'enregistrement DNS de type NS.

dns   object   

Liste des enregistrements DNS du nom de domaine.

id   integer   

L'identifiant de l'enregistrement DNS de type non-NS.

type   string   

Le type de l'enregistrement DNS de type non-NS (peut être A, AAAA, CNAME, MX ou TXT).

name   string   

Le nom de l'enregistrement DNS de type non-NS.

data   string   

La valeur de l'enregistrement DNS de type non-NS.

priority   integer   

Le niveau de priorité, présent uniquement si l'enregistrement DNS est de type MX (plus la valeur est faible, plus la priorité est élevée).

ttl   integer   

Le TTL (Time To Live) de l'enregistrement DNS de type non-NS.

registry_ends_at   boolean   

La date d'expiration du nom de domaine.

label   string|null   

Le label associé au nom de domaine (peut être null).

Mettre à jour un nom de domaine

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/domains/mydomain.fr"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "renew": 0,
    "label": "MyDomain",
    "ns": [
        "ns1.example.com",
        "ns2.example.com",
        "ns3.example.com"
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->put(
    'https://www.kifdom.com/api/v1/domains/mydomain.fr',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'renew' => 0,
            'label' => 'MyDomain',
            'ns' => [
                'ns1.example.com',
                'ns2.example.com',
                'ns3.example.com',
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/domains/mydomain.fr'
payload = {
    "renew": 0,
    "label": "MyDomain",
    "ns": [
        "ns1.example.com",
        "ns2.example.com",
        "ns3.example.com"
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
curl --request PUT \
    "https://www.kifdom.com/api/v1/domains/mydomain.fr" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"renew\": 0,
    \"label\": \"MyDomain\",
    \"ns\": [
        \"ns1.example.com\",
        \"ns2.example.com\",
        \"ns3.example.com\"
    ]
}"

Réponse d'exemple (200):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "data": {
        "code": 200,
        "message": "Domain name successfully updated."
    }
}
 

Réponse d'exemple (400):


{
    "meta": {
        "on-hold": 20,
        "total-domains": 14,
        "credits-balance": 1350,
        "error": true
    },
    "error": {
        "code": 400,
        "message": "The `renew` parameter should be an integer."
    }
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

PUT api/v1/domains/{domain_name}

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Segments d'URL

domain_name   string   

Le nom de domaine.
Exemple :

Paramètres du corps de la requête (au format JSON)

renew   integer  optional  

optional Le renouvellement automatique du nom de domaine (1 = Oui | 0 = Non).
Exemple :

label   string  optional  

optional Le label associé au nom de domaine (peut être null).
Exemple :

ns   string[]|empty[]  optional  

optional Liste des enregistrements de type NS personnalisés du nom de domaine, si présent mais vide les serveurs de noms de KifDom seront utilisés.

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

data   object   

Liste des informations de la réponse.

code   string   

Code HTTP de la réponse.

message   string   

Message de la réponse.

Serveurs de noms

Afficher les serveurs de nom

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/name-servers/mydomain.fr"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
    'https://www.kifdom.com/api/v1/name-servers/mydomain.fr',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/name-servers/mydomain.fr'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()
curl --request GET \
    --get "https://www.kifdom.com/api/v1/name-servers/mydomain.fr" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Réponse d'exemple (200):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "data": [
        {
            "id": 12345,
            "type": "NS",
            "name": "@",
            "value": "ns1.kifdns.fr",
            "ttl": 1800
        },
        ...ETC...
    ]
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

GET api/v1/name-servers/{domain_name}

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Segments d'URL

domain_name   string   

Le nom de domaine.
Exemple :

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

data   object   

Liste des informations de la réponse.

code   string   

Code HTTP de la réponse.

message   string   

Message de la réponse.

Mettre à jour un serveur de nom

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/name-servers/mydomain.fr"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ns": [
        "ns1.example.com",
        "ns2.example.com",
        "ns3.example.com"
    ]
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->put(
    'https://www.kifdom.com/api/v1/name-servers/mydomain.fr',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'ns' => [
                'ns1.example.com',
                'ns2.example.com',
                'ns3.example.com',
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/name-servers/mydomain.fr'
payload = {
    "ns": [
        "ns1.example.com",
        "ns2.example.com",
        "ns3.example.com"
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
curl --request PUT \
    "https://www.kifdom.com/api/v1/name-servers/mydomain.fr" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ns\": [
        \"ns1.example.com\",
        \"ns2.example.com\",
        \"ns3.example.com\"
    ]
}"

Réponse d'exemple (200):


{
    "code": 200,
    "message": "Nameserver successfully updated."
}
 

Réponse d'exemple (400):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "error": {
        "code": 400,
        "message": "None of your nameservers matching this `id` has been found."
    }
}
 

Réponse d'exemple (400):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "error": {
        "code": 400,
        "message": "Provided `value` is not accurate for this `type` of NS record."
    }
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

PUT api/v1/name-servers/{domain_name}

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Segments d'URL

domain_name   string   

Le nom de domaine.
Exemple :

Paramètres du corps de la requête (au format JSON)

ns   string[]|empty[]   

Tableau de valeurs des serveurs de nom.

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

data   object   

Liste des informations de la réponse.

code   string   

Code HTTP de la réponse.

message   string   

Message de la réponse.

Zones DNS

Créer une zone DNS

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/dns-zones"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "domain_name": "mydomain.fr",
    "type": "CNAME",
    "name": "blog",
    "value": "myblog.fr",
    "priority": "10",
    "ttl": 3600
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://www.kifdom.com/api/v1/dns-zones',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'domain_name' => 'mydomain.fr',
            'type' => 'CNAME',
            'name' => 'blog',
            'value' => 'myblog.fr',
            'priority' => '10',
            'ttl' => 3600,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/dns-zones'
payload = {
    "domain_name": "mydomain.fr",
    "type": "CNAME",
    "name": "blog",
    "value": "myblog.fr",
    "priority": "10",
    "ttl": 3600
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()
curl --request POST \
    "https://www.kifdom.com/api/v1/dns-zones" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"domain_name\": \"mydomain.fr\",
    \"type\": \"CNAME\",
    \"name\": \"blog\",
    \"value\": \"myblog.fr\",
    \"priority\": \"10\",
    \"ttl\": 3600
}"

Réponse d'exemple (200):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "data": {
        "code": 200,
        "message": "DNS zone successfully created."
    }
}
 

Réponse d'exemple (400):


{
    "meta": {
        "on-hold": 20,
        "total-domains": 14,
        "credits-balance": 1350,
        "error": true
    },
    "error": {
        "code": 400,
        "message": "Provided `value` is not accurate for this `type` of DNS record."
    }
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

POST api/v1/dns-zones

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Paramètres du corps de la requête (au format JSON)

domain_name   string   

Le nom de domaine.
Exemple :

type   string   

Le type de la zone DNS. (A, AAAA, CNAME, MX ou TXT).
Exemple :

name   string   

Le nom de zone DNS.
Exemple :

value   string   

La valeur de la zone DNS.
Exemple :

priority   string  optional  

La priorité de la zone DNS de type MX, facultatif pour toutes les zones DNS de type non-MX.
Exemple :

ttl   integer   

Le TTL (Time To Live) ou durée de vie en secondes de la zone DNS.
Exemple :

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

data   object   

Liste des informations de la réponse.

code   string   

Code HTTP de la réponse.

message   string   

Message de la réponse.

Afficher les zones DNS

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/dns-zones/mydomain.fr"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
    'https://www.kifdom.com/api/v1/dns-zones/mydomain.fr',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/dns-zones/mydomain.fr'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()
curl --request GET \
    --get "https://www.kifdom.com/api/v1/dns-zones/mydomain.fr" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Réponse d'exemple (200):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "data": [
        {
            "id": 12345,
            "type": "NS",
            "name": "@",
            "value": "ns1.kifdns.fr",
            "ttl": 1800
        },
        ...ETC...
    ]
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

GET api/v1/dns-zones/{domain_name}

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Segments d'URL

domain_name   string   

Le nom de domaine.
Exemple :

Mettre à jour une zone DNS

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/dns-zones"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "dns_zone_id": 12345,
    "type": "CNAME",
    "name": "blog",
    "value": "myblog.fr",
    "priority": "10",
    "ttl": 3600
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->put(
    'https://www.kifdom.com/api/v1/dns-zones',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'dns_zone_id' => 12345,
            'type' => 'CNAME',
            'name' => 'blog',
            'value' => 'myblog.fr',
            'priority' => '10',
            'ttl' => 3600,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/dns-zones'
payload = {
    "dns_zone_id": 12345,
    "type": "CNAME",
    "name": "blog",
    "value": "myblog.fr",
    "priority": "10",
    "ttl": 3600
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
curl --request PUT \
    "https://www.kifdom.com/api/v1/dns-zones" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"dns_zone_id\": 12345,
    \"type\": \"CNAME\",
    \"name\": \"blog\",
    \"value\": \"myblog.fr\",
    \"priority\": \"10\",
    \"ttl\": 3600
}"

Réponse d'exemple (200):


{
    "code": 200,
    "message": "DNS zone successfully updated."
}
 

Réponse d'exemple (400):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "error": {
        "code": 400,
        "message": "Provided `value` is not accurate for this `type` of DNS record."
    }
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

PUT api/v1/dns-zones

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Paramètres du corps de la requête (au format JSON)

dns_zone_id   integer   

L'identifiant de la zone DNS.
Exemple :

type   string   

Le type de la zone DNS. (A, AAAA, CNAME, MX ou TXT).
Exemple :

name   string   

Le nom de zone DNS.
Exemple :

value   string   

La valeur de la zone DNS.
Exemple :

priority   string  optional  

La priorité de la zone DNS de type MX, facultatif pour toutes les zones DNS de type non-MX.
Exemple :

ttl   integer   

Le TTL (Time To Live) ou durée de vie en secondes de la zone DNS.
Exemple :

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

data   object   

Liste des informations de la réponse.

code   string   

Code HTTP de la réponse.

message   string   

Message de la réponse.

Supprimer une zone DNS

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/dns-zones"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "dns_zone_id": 12345
};

fetch(url, {
    method: "DELETE",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->delete(
    'https://www.kifdom.com/api/v1/dns-zones',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'dns_zone_id' => 12345,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/dns-zones'
payload = {
    "dns_zone_id": 12345
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers, json=payload)
response.json()
curl --request DELETE \
    "https://www.kifdom.com/api/v1/dns-zones" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"dns_zone_id\": 12345
}"

Réponse d'exemple (200):


{
    "code": 200,
    "message": "DNS zone successfully deleted."
}
 

Réponse d'exemple (400):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "error": {
        "code": 400,
        "message": "This DNS record doesn't exists."
    }
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

DELETE api/v1/dns-zones

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Paramètres du corps de la requête (au format JSON)

dns_zone_id   integer   

L'identifiant de la zone DNS.
Exemple :

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

data   object   

Liste des informations de la réponse.

code   string   

Code HTTP de la réponse.

message   string   

Message de la réponse.

Précommandes

Afficher la liste des précommandes

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/preorders"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
    'https://www.kifdom.com/api/v1/preorders',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/preorders'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()
curl --request GET \
    --get "https://www.kifdom.com/api/v1/preorders" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Réponse d'exemple (200):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "data": [
        {
            "name": "mydomain.fr",
            "punycode_name": "mydomain.fr",
            "status": "Précommande en cours",
            "last_update": "2023-05-17T09:27:27.000000Z"
        },
        ...ETC...
    ]
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

GET api/v1/preorders

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

data   object   

Liste des précommandes de l'utilisateur.

name   string   

Le nom de domaine précommandé.

punycode_name   string   

Le nom de domaine précommandé au format punycode (pour les noms de domaine accentués).

status   string   

Le statut de la précommande.

last_update   string   

La date de dernière mise à jour de la précommande.

Créer une précommande

requires authentication

Requête d'exemple:
const url = new URL(
    "https://www.kifdom.com/api/v1/preorders"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "domain_name": "mydomain.fr"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://www.kifdom.com/api/v1/preorders',
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'domain_name' => 'mydomain.fr',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://www.kifdom.com/api/v1/preorders'
payload = {
    "domain_name": "mydomain.fr"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()
curl --request POST \
    "https://www.kifdom.com/api/v1/preorders" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"domain_name\": \"mydomain.fr\"
}"

Réponse d'exemple (200):


{
    "meta": {
        "balance": "1350.00",
        "on-hold": "90.00",
        "total": 14,
        "error": false
    },
    "data": {
        "code": 200,
        "message": "Preorder successfully created."
    }
}
 

Réponse d'exemple (400):


{
    "meta": {
        "on-hold": 20,
        "total-domains": 14,
        "credits-balance": 1350,
        "error": true
    },
    "error": {
        "code": 400,
        "message": "You already have preordered this domain name."
    }
}
 

Réponse d'exemple (401):


{
    "message": "Token not provided"
}
 

Requête   

POST api/v1/preorders

En-têtes

Authorization      

Exemple :

Content-Type      

Exemple :

Accept      

Exemple :

Paramètres du corps de la requête (au format JSON)

domain_name   string   

Le nom de domaine.
Exemple :

Réponse

Données de la réponse

meta   object   

Méta-données liées au compte utilisateur.

balance   string   

Les crédits déposés par l'utilisateur (en euros).

on-hold   string   

Le montant de crédits engagés par l'utilisateur dans des précommandes (en euros).

total   integer   

Le nombre de domaines détenus par l'utilisateur (en euros).

error   boolean   

Le status de la requête (true = Succès | false = Erreur).

data   object   

Liste des informations de la réponse.

code   string   

Code HTTP de la réponse.

message   string   

Message de la réponse.