Hello everyone,
Because the new Exchange connector that is scheduled for the month November of this year will not give adequate possibilities for our client, we're trying our luck with Microsoft Graph. We created a call and made it fit our needs using Postman.
We configured and use all the right credentials (client ID, tenant ID and client secret) for token generation. Actually, we created a call for getting data, and one for patching data. The call types are, of course, get and patch respectively. All calls are successful, and perform as expected, using Postman.
Next, we went to our Software Factory, to make Thinkwise perform the same calls. Using a process flow, we make the proper call, the same as we did using Postman.
We get a correct token in Thinkwise. When we copy this token from the debugger, and check it with jwt.ms, we get a valid token. In fact, when we use this token in Postman to make calls, it works perfectly. So, token generation works properly.
However, the calls that work in Postman, do not work in our Thinkwise solution. The error we get is a 401; Authorization_RequestDenied.
We checked the call type, the headers, the URI the call is made against and the body. Everything is as it should be. Yet, no worky.
We had a simple call to get users earlier in our Thinkwise solution, which worked. We messed with it, and it started to give a wrong_header error, telling us it expected a Json content-type attribute in the header. We fixed that. But ever since, any and every call we do from our Thinkwise solution results in the same Authorization_RequestDenied error. Again, the token that gets issued and which is used in the call is completely valid.
We tried completely closing and restarting the Thinkwise solution, clearing browser cache. And we checked, and checked again, all API permissions within the Azure environment that we're working from. As Postman seems to work flawlessly, and as we've set up the call identically in the Thinkwise solution, we're trying to find out what we're missing.
Has anyone successfully debugged an issue similar to this?
Best regards,
- Alex.
Solved
Microsoft Graph issue
Best answer by Dick van den Brink
In that case, this Microsoft Article might help:
Question. I have description key in JSON text that contains long text. JSON_VALUE(@json, '$.description')
returns NULL instead of a value.
Answer. JSON_VALUE is designed to return small scalar values. Generally the function returns NULL instead of an overflow error. If you want to return longer values, use OPENJSON, which supports NVARCHAR(MAX) values, as shown in the following example.
SELECT myText FROM OPENJSON(@json) WITH (myText NVARCHAR(MAX) '$.description')
I am a bit curious about the size of the token in this case - I used a very long text in Azure SQL and it worked perfectly for me.
This topic has been closed for comments
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.