cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Retrieving name of current user in JavaScript (Notebook, Dashboard)

andreas_grabner
Dynatrace Guru
Dynatrace Guru

Hi

I am trying to get the username of the user that executes some JavaScript in either a notebook or dashboard. I assume that functionality exists in one of the SDKs but I couldnt find anything

Any help is appreciated. 

Contact our DevRel team through devrel@dynatrace.com
6 REPLIES 6

stefan_eggersto
Dynatrace Mentor
Dynatrace Mentor

Hi @andreas_grabner,

There is currently no SDK available to get the user info, but you can directly call a platform API with the following snippet:

export default async function() {
const response = await fetch("/platform/metadata/v1/user");
const json = await response.json();
return json.userName;
}

An SDK should be available in the near future.

Thanks!!

FYI - the returned user object has three properties in case anyone is interested: userName, userId, emailAddress

Contact our DevRel team through devrel@dynatrace.com

gilgi
DynaMight Champion
DynaMight Champion

@stefan_eggersto I would guess it is but to make sure - would the same also apply to indetify the current user running an application?

and @andreas_grabner thanks for asking this just a few hours before I stumbled upon this issue 🙂

Yes, you can use the same call to identify the app user.

Hello, @stefan_eggersto ! 

I'm developing a custom APP, and when I call the API via App Function, I get Error: Authentication required. How can I implicitly authenticate?

Here's my snippet;

export default async function() {
  return fetch("https://{environmentid}.apps.dynatrace.com/platform/metadata/v1/user")
  .then((response) => response.json())
  .then((data)=> {return data})
  .catch((error) => console.log(error));
}

Hi @MaximilianoML 

This is expected when you use an absolute URL. If you would use a relative URL, you should be fine

fetch("/platform/metadata/v1/user");

 

Best,
Sini

Featured Posts