jsom – Loading _Sys_Nav_HoverText with REST

I build a SharePoint 2016 application with a custom site map menu that uses managed site navigation. How to retrieve the value "Navigation Rollover Text"?

I use the REST API to retrieve the site map in XML format, works fine.

http: /// _api / navigation / menustate? mapProviderName = & # 39; GlobalNavigationTaxonomyProvider & # 39;

I've tried adding it to the customProperties parameter, but it returns an HTTP 500 error:

http: /// _api / navigation / menustate? mapProviderName = & # 39; GlobalNavigationTaxonomyProvider & # 39; & customProperties = _Sys_Nav_HoverText & # 39;

I thought I had a workaround by using the JSOM functions in sp.taxonomy.js and SP.Taxonomy JavaScripts:

var context = SP.ClientContext.get_current ();
var taxonomySession = SP.Taxonomy.TaxonomySession.getTaxonomySession (context);
var term = taxonomySession.getTerm (data.guid);
context.load (term, ['LocalCustomProperties'])
context.executeQueryAsync (Function.createDelegate (this, function (sender, arguments)) {
data.hoverText (term.get_localCustomProperties ()['_Sys_Nav_HoverText'])
}), Function.createDelegate (this, function (sender, arguments) {
console.log (& # 39; The following error occurred while loading hover text: + args.get_message ());
}));

During quality control, we found this error for users in the Site Visitors group. This works if the option "Available for marking" is checked in the tab Planned use of the set of terms of the navigation on the site or if the user is a member of contributors / managers in the parent of the set of terms. None of these options is desirable.

I proposed a workaround to add a custom property to each term named _nav_hovertext that could later be retrieved with the REST API above, but the client said that it was tedious and that Microsoft n & # 39; would surely not have failed to extract the existing field from the API, right?