Skip to content

Utilisation

En présentant votre licence (représentée sous forme de license bearer),

Le serveur de licence octroie un license ticket (dont la durée de validité est paramétrable),

Ce license ticket permet d'utiliser le composant local Smart DMP, agissant comme Client Carte sur le poste client.

Lorsque le Client Carte se connecte, celui-ci donne en réponse, les informations qui vont permettre d'interagir avec lui (adresse de services REST et bearer d'authentification)

graph A(Obtenir un licenseTicket<br/>POST https://license-ext.app.smartdmp.fr/v1/license/ticket) --> B(Vérifier carte CPS disponible localement<br/>POST https://localhost.self.smartdmp.fr:48367/direct/ready) B --> C(Etablir connection<br/>POST https://localhost.self.smartdmp.fr:48367/direct/login) C --> D(Utiliser les paramètres REST fournis)

La page login, permet de directement tester l'interaction avec le serveur de licence et le client-carte (lecture carte CPS et carte Vitale), afin de pouvoir accéder à l'ensemble des services sous forme de service REST.

Les appels au serveur de licence (https://license-ext.app.smartdmp.fr) inclue votre licence bearer, il est donc préférable pour ne pas exposer ce secret, que ceux-ci soient réalisés par votre application directement (que votre application soit déployée sur le poste client ou en SAAS).

Les appels au serveur au client-carte (https://localhost.self.smartdmp.fr:48367) doivent bénéficier d'une résolution réseau local, et donc soit être réalisés d'une application déployée sur le poste client (autorisée à accéder à 127.0.0.1:48367), ou depuis le navigateur de l'utilisateur (le contenu html accédant au service local).

Une fois la connection établie, Sont accessible:

  • une url de service (permettant de piloter à distance les interactions avec le client carte)
  • un bearer (permettant d'interagir avec la session en cours)

Exemple avec curl

Obtention d'un ticket de licence

curl 'https://license-ext.app.smartdmp.fr/v1/license/ticket' \
  -H 'content-type: application/json' \
  -H 'authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfY29tcGFueSI6Inl1...'
{
    "licenseTicket":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfY29tcGFueSI6Inl1bm9oaXQiLC..."
}

Vérifier carte CPS disponible localement

curl 'https://localhost.self.smartdmp.fr:48367/direct/ready' \
  -H 'content-type: application/json' \
  --data-raw '{"licenseTicket":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfY29tcGFueSI6Inl..."}'
{
    "messageType":1,
    "operation":5,
    "response":null,
    "timestamp":"2026-01-22T11:38:43.9219609Z",
    "status":{"code":0,"message":"Successful Execution"},
    "data":{
        "data":{
            "CPS3v3-3000514228":
            [
                {
                    "model":"IAS%20ECC%00%00%00%00%00%00%00%00%00",
                    "manufacturer":"ASIP%20SANTE",
                    "serial":"99261269",
                    "token":"CPS3v3-3000514228",
                    "categoryCard":"test",
                    "cardType":"CPS",
                    "idNat":"899900123987",
                    "civTitle":"M",
                    "firstName":"API",
                    "lastName":"PR14DURAND",
                    "profCode":10,
                    "trainCode":0,
                    "specCode":"SM20",
                    "pinAttempt":0
                }
            ]
        }
    }
}

Etablir la connection

curl 'https://localhost.self.smartdmp.fr:48367/direct/login' \
  -H 'content-type: application/json' \
  --data-raw '{"token":"CPS3v3-3000514228","pinCode":"1234","licenseTicket":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfY29tcGFu..."}'
{
    "connectionId":"819e235f54f94202ac81e7599c5cbfc0",
    "connectedTo":"wss://connection-tier.back.int.yunohit.com/ws/01KFJR4YMJHMGDBD8JZDCENP6E",
    "bearer":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZE5hdCI6Ijg5OTkwMDEyMzk4NyIsInNlc3Npb25faWQiOiIwMUtGSlI0WU1...",
    "serviceUrl":"https://resource.back.int.yunohit.com"
}

Paramètres REST

  • serviceUrl: https://resource.back.int.yunohit.com
  • bearer: eyJhbGciOiJIUz....