...
Info |
---|
The document explains how to receive access token for service, using Postman as an example. Created: November 2023 Permalink: https://wildix.atlassian.net/wiki/x/c4D9Eg |
Table of Contents | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
Introduction
The document provides an example of receiving access token via Postman (pre-request script).
Instructions
Download Postman - https://www.postman.com/
Run it
Create a new request
...
:
...
Choose method POST and put enter the URL:
Expand | ||
---|---|---|
| ||
Code Block | ||
https://{{authService}}/api/v2/OpenId/service/ |
...
Copy the Pre-request Script and configure user, pass password and pbxHost
...
title | Pre-request Script |
---|
:
Code Block |
---|
const user = 'extension';
const pass = 'password';
const pbxHost = 'https://<domain>.wildixin.com';
const authService = 'auth.wildix.com';
pm.variables.set('authService', authService);
pm.sendRequest({
url: `${pbxHost}/api/v1/personal/token/?service=${authService}`,
method: 'GET',
header: {
'Authorization': 'Basic ' + btoa(`${user}:${pass}`)
},
body: {}
}, function(err, response) {
if (err || response.code !== 200) {
throw new Error('Personal token not received');
}
const personalToken = response.json().result.token;
console.log('PERSONAL TOKEN', personalToken);
pm.sendRequest({
url: `https://${authService}/api/v2/Token/`,
method: 'GET',
header: {
'Authorization': `Bearer ${personalToken}`
},
body: {}
}, function(err, response) {
if (err || response.code !== 200) {
throw new Error('Access token for auth not received');
}
const authAccessUserToken = response.json().result.accessToken;
console.log('AUTH ACCESS USER TOKEN', authAccessUserToken);
pm.variables.set('authAccessUserToken', authAccessUserToken);
});
}); |
Insert script to Postman
...
title | Example |
---|
:
Go to the Authorization tab and choose the type and set dynamic variable:
...
Example |
Code Block |
---|
{{authAccessUserToken}} |
...
Configure payload, see aud and scope in the documentation for services
Code Block { "aud": "https://api.x-bees.com", "scope": "xbees" }
Insert payload to request
...
:
Make a request and receive a token.
...
: