2

I need to call the Sharepoint Taxonomy API. As CSOM is not available for .NetCore 3.0 I want to use the Taxonomy Internal Service Rest API: https://docs.microsoft.com/en-us/previous-versions/office/sharepoint-server/ee588162(v=office.15)?redirectedfrom=MSDN

I tryed to use the /_vti_bin/TaxonomyInternalService.json/PickSsps API but can't find out what scope and resource I have to request the Access Token for. I always end up getting a 401 UNAUTHORIZED Error. Even if the Token is valid for other SharePoint Online APIs like /_api/search/query?querytext='*'

So my question is what Scope and Resource do I have to use for a valid AccessToken?

If there is a better way to call Taxonomy than using the internal API please also let me know. I know it's not optimal to use internal APIs but it seems to be the only possible way.

0

I assume you're using app-only authentication. I'm not sure if that will work against the TaxonomyInternalService but if it does here's the scope you need:

<AppPermissionRequest Scope="http://sharepoint/taxonomy" Right="Write" />

Also you need to add app@sharepoint into the term store admins group.

But I do not recommend using TaxonomyInternalService. Instead I think you should try client.svc which is the back end for managed CSOM. This is actually a supported endpoint and should be better suited to get you what you need. The API is not at all straightforward so what I suggest is creating a full framework test CSOM app and Fiddling the traffic, or if you speak Node you can use this, and likewise Fiddle the traffic. By the way the same scope and term store admin settings apply to this solution.

Good luck, this is a hard problem to solve.

| improve this answer | |
  • I tryed to add app@sharepoint to my term store admins group but I get a error that says that no exact match is found. – ElBiasto Dec 19 '19 at 15:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.