Blue Mind Forum

Forum about Blue Mind Software

You are not logged in.

Announcement

Bonjour, avant de poster, merci de vérifier que vous avez respecté les pré-requis de l'installation et consultez notre documentation : https://forge.bluemind.net/confluence/display/BM35/ !
Vous pouvez en particulier trouver des réponses aux problèmes les plus courants dans notre FAQ ou encore la base de connaissance.

Hi, before posting on the forum, please check that you followed installation prerequisites and get a look to our documentation space : https://forge.bluemind.net/confluence/display/BM35/ !

#1 2020-07-20 09:55:52

HHENOCH
Member
Registered: 2020-07-20
Posts: 7

API BM

Bonjour

1) Lorsqu'on teste les API BM on a cette commande curl qui est proposée pour tester par exemple :

curl -X GET --header 'Accept: application/json' --header 'X-BM-ApiKey: <ici une clef>' 'https://<server bm>/api/auth'

D'où sort la clef <ici une clef> qui est proposée automatiquement sans que j'ai créé aucune clef d'API ?

2) Comment s'authentifier avec un login et un mot de passe ? Je rentre le login (l'email), le password et le nom de l'appli et j'obtiens :

curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'X-BM-ApiKey: <clef>' -d '<mdp>' 'https://<server bm>/api/auth/login?login=<email avec domaine>'

{"errorCode":"UNKNOWN","errorType":"ServerFault","message":"Error during parsing parameter \"body\""}

Pourrriez-vous m'aiguiller ? Ma version d'API est la 3.1.42634 si je ne me trompe pas.

Merci

Offline

#2 2020-07-20 12:44:25

PascalS
Administrator
From: Bain de Bretagne
Registered: 2012-11-18
Posts: 232
Website

Re: API BM

Salut,

de mémoire, il y a une merdouille avec la commande curl.
Je t'invite plutöt à passer par un langage de script type Python.

Sinon, la séquence est la suivante :

1) Récupéronation d'un token de session via ' 'https://<server bm>/api/auth/login?login=<email avec domaine>'
2) A chaque appel suivant, on passe le token dans le header 'X-BM-ApiKey:'

Tu trouveras un exemple concret à cette URL : https://gitlab.bm-stats.org/Other/pytho … ilboxes.py
Il s'agit de la première fonction: "getToken"


Pascal

Offline

#3 2020-07-20 12:56:05

HHENOCH
Member
Registered: 2020-07-20
Posts: 7

Re: API BM

Merci

j'ai réussi avec curl maintenant j'aimerais avec java en REST :

J'ai fait ceci mais ça ne fonctionne pas :

URL QUERY = new URL( "https://<server bm>/api/auth/login?login=admin@<mon domain>&origin=A"; );

HttpURLConnection req = (HttpURLConnection) QUERY.openConnection();
req.setRequestMethod( "POST" );
req.setRequestProperty( "Content-Type", "application/json" );
req.setRequestProperty( "Accept", "text/html" );

avec soit ça dans le header :  req.setRequestProperty( "password", "<Key api>" );

soit ceci dans le body : "{\"password\":\"<Key api>\"}";

ca ne fonctionne pas toujours même pb : {"status":"Bad","message":null,"authKey":null,"latd":null,"authUser":null}

Offline

#4 2020-07-20 12:58:19

PascalS
Administrator
From: Bain de Bretagne
Registered: 2012-11-18
Posts: 232
Website

Re: API BM

Le body ne contient que le mot de passe

Offline

#5 2020-07-20 13:00:40

HHENOCH
Member
Registered: 2020-07-20
Posts: 7

Re: API BM

Super il fallait le savoir !!! j'ai écris pour que tout le monde en profite

body = "\"<key api>\"";

Offline

#6 2020-07-20 13:14:30

PascalS
Administrator
From: Bain de Bretagne
Registered: 2012-11-18
Posts: 232
Website

Re: API BM

Sinon, je ne sais si tu as connaissance de l'"API DOCS" qui te donne accès à un swagger sur ta plate-forme
Il suffit de 2 choses :
- installer le paquet qui va bien "bm-docs" (de mémoire)
- activer le rôle 'Intégration API Docs' sur un compte de type "admin"

Offline

#7 2020-07-20 13:21:57

HHENOCH
Member
Registered: 2020-07-20
Posts: 7

Re: API BM

Oui je l'ai fait mais même sur l'API quand on la teste si on ne sait pas qu'il faut mettre "<mot de passe>" et pas seulement <mot de passe> dans le champ password ça plante et on ne comprend pas pourquoi ...

Et du coup tu m'as donné la réponse à la question 1) : c'est une clef de session et non une clef d'API si j'ai bien compris.

Offline

#8 2020-07-20 13:30:55

PascalS
Administrator
From: Bain de Bretagne
Registered: 2012-11-18
Posts: 232
Website

Re: API BM

Effectivement, quant tu utilises le swagger, tu es déjà enregistré/authentifé ,et as donc une clé de session (API-key).

Offline

#9 2020-07-20 13:32:39

HHENOCH
Member
Registered: 2020-07-20
Posts: 7

Re: API BM

Merci pour tes réponses.

Je vais ouvrir une nouvelle discussion avec le pom maven ... qui n'est pas compatible avec ma version des API plus récente ...

Offline

Board footer

Powered by FluxBB