I'm getting the user email from an external HR system.

I want to retrieve the user properties from SharePoint User Profile by email using the rest API (I'm using a SharePoint-hosted app) but it seems like it's not supported. The only that I found is getting the user by his account name like the following http://<domain>/en/_api/SP.UserProfiles.PeopleManager/GetPropertiesFor(accountName=@v)?@v=%27domain\user%27

When I change the accountName by email, it simply doesn't work : http://<domain>/en/_api/SP.UserProfiles.PeopleManager/GetPropertiesFor(Email=@v)?@v=%27Email%27

Anyone has faced the same requirement ? Anyone has another idea ?

  • can you add more description? – Atish Dipongkor - MVP Nov 4 '15 at 15:40
  • @AtishDipongkor: I've updated the question. – KhalilG Nov 4 '15 at 16:17
  • external HR system means? are they in different system/domain? You can execute rest query inside your sharepoint environment only – Atish Dipongkor - MVP Nov 4 '15 at 16:23
  • I'm retrieving user email from a WCF web service, and I want to retrieve user's user profile from SharePoint 2013 user profile service using rest api. – KhalilG Nov 4 '15 at 16:30
  • ohh.. do these emails/users exist in SharePoint Site? – Atish Dipongkor - MVP Nov 4 '15 at 16:37

You won't be able to use the method that you are trying. The SP.UserProfiles.PeopleManager.getPropertiesFor Method only takes one argument and that is the accountName. See more info Here.

One endpoint that you can use however is :

/_api/Web/SiteUsers?$filter=Email eq '#email#'

where #email# will be john.doe@yourdomain.com

Hope it helps someone.


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.