Introduction

Cette documentation vous fournira les éléments nécessaires à l'utilisation de notre API et à la collecte des données de vos unités.

				
					URL de base : api.gsmcloud.com
				
			

Demandes d'authentification

To authenticate requests, include an Authorization header in the form “Basic {credentials}”. The value of {credentials} should be your username/id and your password, joined with a colon (:), and then base64-encoded.

Tous les points d'accès authentifiés sont marqués d'un badge d'authentification requise dans la documentation ci-dessous.

Exemple : Exemple

				
					const url = new URL(
    "api.gsmcloud.dk/devices"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
				
			

Dispositifs

Liste de tous les appareils

NÉCESSITE UNE AUTHENTIFICATION

GET / DEVICES

En-têtes :

				
					Autorisation :
Exemple : Basic {YOUR_AUTH_KEY}

Content-Type :
Exemple : application/json

Accept :
Exemple : application/json
				
			

Réponse :

				
					id : Entier
Appareil

name : string
Nom donné à l'appareil.

imei : chaîne
Numéro IMEI de l'appareil.

last_package_at : string
Dernière fois que l'appareil a été enregistré comme étant en ligne.

ports : objet
  name - nom du port.
  label - nom alternatif donné lors de la création du port.
  direction - entrée/sortie.
  value - valeur actuelle du port.
  type - type de données
				
			

Exemple :

				
					[
    {
        "id" : 1,
        "name" : "Log test",
        "imei" : "868333033900099",
        "last_package_at": "2023-07-10T22:44:04.000000Z",
        "ports" : {
            "power" : {
                "name" : "Power",
                "label" : null,
                "direction" : "input",
                "value" : true,
                "type" : "boolean"
            },
            "IN 1" : {
                "name" : "IN 1",
                "label" : null,
                "direction" : "input",
                "valeur" : 300,
                "type" : "temperature"
            },
            "IN 2" : {
                "name" : "IN 2",
                "label" : null,
                "direction" : "input",
                "valeur" : 160,
                "type" : "analogique"
            },
            "IN 3" : {
                "name" : "IN 3",
                "label" : null,
                "direction" : "input",
                "value" : true,
                "type" : "boolean"
            },
            "Signal" : {
                "name" : "Signal",
                "label" : null,
                "direction" : "input",
                "value" : 15,
                "type" : "integer"
            },
            "Relais" : {
                "name" : "Relay",
                "label" : null,
                "direction" : "output",
                "value" : null,
                "type" : "boolean"
            },
            "Intervalle" : {
                "name" : "Interval",
                "label" : null,
                "direction" : "output",
                "value" : null,
                "type" : "integer"
            },
            "status" : {
                "name" : "status",
                "label" : null,
                "direction" : "input",
                "value" : true,
                "type" : "boolean"
            }
        }
    }
]
				
			

Mise à jour d'un appareil

Liste de tous les appareils

NÉCESSITE UNE AUTHENTIFICATION
PATCH / DEVICES

En-têtes :

				
					Autorisation :
Exemple : Basic {YOUR_AUTH_KEY}

Content-Type :
Exemple : application/json

Accept :
Exemple : application/json
				
			

Réponse :

				
					<Paramètres de l'URL :
L'ID de l'appareil

Body parameters :
Name : Nom (facultatif)
Nom de l'appareil.
				
			

Exemple de demande :

				
					const url = new URL(
    "api.gsmcloud.dk/devices/7"
);

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

let body = {
    "name": "ex"
};

fetch(url, {
    method: "PATCH",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
				
			

Codes de réponse

200

Réponse positive

401

Non autorisé

422

Erreur de validation

Contenu