4 Replies Latest reply on May 7, 2019 8:51 AM by XMaskuli

    Get all values of a profile field in the Jive Instance

    satyam@spglobal.com Novice

      Hi Team Jens Goldhammer Gopi Gorantala

       

      Is there a way to get all the values of a profile field say City that is used for users in the jive instance. I was looking up for a rest API for this but did not find any. Although I did find it being used somewhere in the community reports below:

       

      Here in the screenshot of the community reports manager I see that there are profile fields which are being fetched and all the values of these profile fields are fetched corresponding to the profile field that you select in the first dropdown. I was tracking it down in the network tab and found the below API call being made for the fetch of those values.

       

      I tried using the below API call in a tile but it does not seem to fetch any values. Am I missing on how to use this API call and it would be great if you can point me on how to use it:

       

      https://xxxxxxxxxxxxxxxx/__services/v2/rest/users/current/browse?token=MTU1Njg3ODgyNDU2NnwyMHxbQkA3MjhkYjJkMg%3D%3D&filterID=all~profile%5BCity%5D

       

      Thanks,

      Satyam.

        • Re: Get all values of a profile field in the Jive Instance
          kranthi.chiluveru Advanced

          Matt Johnson Jonathan Block

           

          Hi Matt, Jonathan

           

          Appreciate if you could provide your thoughts on the requested query.

           

          Thanks!

            • Re: Get all values of a profile field in the Jive Instance
              Jonathan Block Intermediate

              I'm saying this without explicitly back-checking, so take it with the appropriate grains of salt:

               

              I didn't think they've exposed the list of possible values via the API.  It looks like you found a non-public-API endpoint.  If you're having trouble with it, it may be a mismatch on that token in the URL parameters.

               

              The only effective, API-compliant way to do this that I can think of would involve middleware.  Use the API to pull and cache all current values somewhere else, then query that cache to build your custom form.  Perhaps others can come up with a more elegant option.

               

              More generally, I'd shy away from using any unpublished endpoints like the one you discovered.  Aurea's not willing to support non-partners on any of this development stuff anyway, so complaining about bugs in the published API won't have a better outcome than complaining about the unpublished endpoints.  But they could make changes to unpublished endpoints without notice if they wish, as they control all the platform components that are authorized to consume those endpoints as well.

              1 person found this helpful
              • Re: Get all values of a profile field in the Jive Instance
                mattj18 Novice

                There are a lot of V2 service endpoints in Jive. If you monitor your network requests while using the Jive Platform, you will notice these popping-up in various spots. These are not easily reproducible by standard API calls. My guess is that they are slightly archaic. I found it is very difficult to mimic the proper authentication to call these endpoints.

                 

                Only the main V3 endpoints are supported with documentation. You will likely need to stick with them. As John mentioned, there is not a simple way to gather the profile information you are looking for. Performing a GET call on all users and then aggregating the results would be one way to find the information. However, it would not easily work as a dynamic view that gets updated when you add new users.