meta { name: Get Access Token type: http seq: 4 } post { url: https://idp.docapost.io/auth/realms/GETWAY/protocol/openid-connect/token body: formUrlEncoded auth: none } params:query { ~grant_type: client_credentials } headers { content-type: application/x-www-form-urlencoded ~Authorization: eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI2VmN5TnhaS25PN2Nhc2ZBTGk2WlZZOU9WMVdMbXpNd2pXLUsyU0VjNllzIn0.eyJleHAiOjE3Njk0MTQ5NDUsImlhdCI6MTc2OTQxNDY0NSwianRpIjoiNTcwYmZhZmUtZTQwNS00ZmRmLWEwYzEtZTI5Y2FiYjg2MDA2IiwiaXNzIjoiaHR0cHM6Ly9pZHAuZG9jYXBvc3QuaW8vYXV0aC9yZWFsbXMvR0VUV0FZIiwic3ViIjoiODZkY2EzMWItYTZhNy00MGRjLWEyYzUtY2QyNDUyODMzYjY0IiwidHlwIjoiQmVhcmVyIiwiYXpwIjoic2F2ZWZhbWlseV9yZXN0X3dzIiwic2lkIjoiMDJmOTc1ZjQtNDIzMC00ODc5LThkZTAtZGNmYmYxM2IwOGUzIiwiYWNyIjoiMSIsImFsbG93ZWQtb3JpZ2lucyI6WyIvKiJdLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsic2F2ZV9mYW1pbHlfcGFja2FnZV8xIiwiZG9jdW1lbnRzIiwiYWxhcm1zIiwiZGV2a2l0Iiwib3JkZXJzIiwibGluZXMiLCJhY3Rpb25zIiwic3RhbmRhcmRfcGFja2FnZSJdfSwic2NvcGUiOiJwcm9maWxlIGVtYWlsIiwiY2xpZW50SG9zdCI6IjU0Ljg2LjUwLjEzOSIsImVtYWlsX3ZlcmlmaWVkIjpmYWxzZSwic2NvcGUiOlsic2F2ZV9mYW1pbHlfcGFja2FnZV8xIiwiZG9jdW1lbnRzIiwiYWxhcm1zIiwiZGV2a2l0Iiwib3JkZXJzIiwibGluZXMiLCJhY3Rpb25zIiwic3RhbmRhcmRfcGFja2FnZSJdLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJzZXJ2aWNlLWFjY291bnQtc2F2ZWZhbWlseV9yZXN0X3dzIiwiY2xpZW50QWRkcmVzcyI6IjU0Ljg2LjUwLjEzOSIsImNsaWVudF9pZCI6InNhdmVmYW1pbHlfcmVzdF93cyJ9.XOc7FtwXD8hUX2SFVX94XSty8wkOmChkwDNF09O_aIxPubMDdFUdCDCB4zpzSIxi8nOcTg7r_LM_nmd5qm7uLbksf_XArjI8iAyhjKz_2BAXPhmvKs4Fc9f3vv5LDfCVrPB9lP8P7rJ66_qnWs4jvhLQxSfn29m96hgXeCf8oySdIDUjN2q9Js3KAS5LL52Ri6ryvUeO1PvMhaPQMWRqoHIqTV1wPfPtiqQwcjUPmu5GeW164Kq1JLgV3KaGzfCZ9Qv9lbv30EJrukXxWuLCAhBS0kzrBXZoWvf2pb9uh3Am_93_dDxiIGQfIap9ZU_m8ZD1HPgvZOMCY6ZkxQconQ } body:form-urlencoded { grant_type: client_credentials client_id: savefamily_rest_ws client_assertion_type: urn:ietf:params:oauth:client-assertion-type:jwt-bearer client_assertion: {{client_assertion}} } script:pre-request { var rs = require('jsrsasign'); var rsu = require('jsrsasign-util'); var navigator = {}; var window = {}; function addIAT(data = {}) { const currentTime = Math.floor(Date.now() / 1000); // temps actuel en secondes data.iat = currentTime; data.exp = currentTime + 5 * 60; // expire dans 5 minutes return data; } var header = { "alg" : "RS256", "typ" : "JWT", "kid": "xNfbMiyL1ORXGP8lElhcv8nVaG3EJKye4Lc1YoN3I1E" }; var data = { "sub" : "savefamily_rest_ws", "iss" : "savefamily_rest_ws", "aud" : "https://idp.docapost.io/auth/realms/GETWAY", "jti": ""+new Date().getTime(), "content-type": "application/x-www-form-urlencoded" }; data = addIAT(data); var privateKey = `-----BEGIN PRIVATE KEY----- MIIEuwIBADANBgkqhkiG9w0BAQEFAASCBKUwggShAgEAAoIBAQDhon4PurD48jQ9 r/QErPjVjqKE/sUsEFqD3co96jVISOKdfJVN8WbF5PE4SFS+yiYgDUTlCi6coPqL cfzdtf/4oybQaClP706NuQRYXxrv6QwZeiSKUT/0CH27AEHNcLMmXhhTITZWENBQ bqdgKPbRcfxtJu10RvlxR4UDplMybfBh12Z8mMpO1m/PjKLIs7weNbb7UffatDRK vR3uY8NyHTObiQGMbiRVeBJSd+TrxOBRU1PCKTERB8nl9v4AwTQc4D2aCIZ3IqB0 0ix3gg/bOB6dameIA9sZ+2Hqw7vz6+sRPD9SXjZ2DGnF6Mt+AOGqCtM9uLvMWiaH rVYVUk7NAgMBAAECgf984rNjgVxH/DjDXcPHmdkgk6A10c2z8llDlT7UMNTpbW4A rsJKMATV5z5jYWyi9E6l0nlzE1M5T/zrBwjZWQaUrUc5IRigLM0qQJoRwXWufvKP 7oPnfK2a66ZyxTjDEk+kc/BJ2dgj9Y4CEzz0g3780cwlnhf6g9xiFqy6e/hl6QYr KhRPVyDt1A4aVZFzf0Vy/DSQWZYKQwSwYyhv4yRYE3ddMg1QVtyg2oiHuNo7nZpU RpdhNDacQ5WX/krQJqCtC+Q9Q0shxGhG4szYzZ6VIbnj33aerFeFPT3CWhePH4jS 2zvfxYlOT5WOXZuxkVdoYs58n7+DUX+atsDzWnkCgYEA9W77YsoHkG4bGq5EvhY4 XN9pb9MCHLx6R86ii0enp/Q3Soz6KF9dEI3qoLi55w46KIf8m2FQn4UyCIq1SpqG kSbHTaRSVEuoh7dfoekggUm+N/MX8LVg4geMUSJreC3QcJIFlMgFDRmF2qoO/1NJ sQnPGJPCp50y0FHlO7HiG3UCgYEA61lM4xKeSP/GQG1P6k3kHD5Iz+BlQ/R+xi5i nZupi9ejgWFGFFQoTBjEGwnZNDK3IOAxLIeO4KyMFNKCZWiKPRhPnmSLh1ND7Mws l8lDdK2HMdrfwI89naJSY1eCI1BIYHIpXPzdAxRu3nFO4uT9fNpW8b9QvhFseQdG 4QeN8vkCgYEA8Yj2/JG2P/0bz3YRUMCtVzjGmrYeLgmOjXxdmpQ5+p/sigGTbofr Ho+LiABDc5AczCaIAqISpep/Asj/ARxxsgdnvJEqNKsAgA+GneC/jHz2JjmmJc1a OxcSkAY/nVX4+8+4jmMKFYo4oKkbeUqOCxyMIrPHrQyXJUxzO/wjeMECgYBOuFr4 ZQTew/brG+UsKQuQyuCN76/PkBtLbL59m1CVvvYo04GeURv9gBcwOBYX2JLag0LP czQ+QFjGqjcFdncuwk/3Wgg1potEzHJp/t76SwS6j0xiW0cvz9ig8+dKqpLa97SQ LuA6JH6FFv9c8106gsmsKOL4AFn5DY8Ou/kl+QKBgGEp61blJEZOS+tOMhgY96Pr A15xeSFbu39oixu5WQ3XVZQAZZ8dpvqaX8D9uFm1xc34l8z9uUvhaefEKfCDY4JQ Iy7tXuV3C1lL/hPz8JTYsSJeIUH45bvSf/DcV2TFObpo645u8wyUjmDfVkxNUzKX T027qS3OzNe13y6VvR8u -----END PRIVATE KEY-----`; var sHeader = JSON.stringify(header); var sPayload = JSON.stringify(data); var sJWT = rs.jws.JWS.sign(header.alg, sHeader, sPayload, privateKey); bru.setVar('client_assertion', sJWT); req.setHeaders(data) const headers = req.getHeaders() console.log("headers",headers) console.log('sJWT >>>>>>> ', sJWT); } script:post-response { var rlt = res.getBody(); bru.setEnvVar("ws-access-token-partenaire", rlt.access_token); bru.setEnvVar("ws-refresh-token-partenaire", rlt.refresh_token); } settings { encodeUrl: true timeout: 0 }