Fix SharePoint Person Column Error: Cannot Get Value for Projected Field Email
Question details
The user needs to resolve a PnPjs or REST API error that occurs when querying a SharePoint multi-select Person or Group column where at least one selected user lacks an email address.

- Product
- Microsoft SharePoint / PnPjs
- Device & OS
- not provided
- Scenario
- Querying a SharePoint list with a multi-select Person or Group column using REST projection.
- Observed behavior
- The system throws a 'Cannot get value for projected field TeamMember_EMail' error when attempting to retrieve the email property for a user who does not have one.
Ensure you have access to the application source code making the PnPjs or REST API queries, and verify which specific Person column is triggering the projection error.
Exclude the Nullable Email Property from Your Initial Query Projection
Prevent the error entirely by removing the email field from your REST query's select clause, querying only guaranteed fields like ID and Title.
The SharePoint REST API fails the entire projection if it attempts to expand a nullable property (like EMail) for a user account that does not have that data populated. Modifying the query is the most robust way to prevent this crash.
Open the source code file where your PnPjs or SharePoint REST API call is defined for fetching list items.
Find the `$select` string or `.select()` method in your query. Remove the `[ColumnName]/EMail` reference (e.g., `TeamMember/EMail`).
Replace the removed email field with guaranteed non-null properties by adding `[ColumnName]/Id` and `[ColumnName]/Title` to your `$select` and `$expand` clauses.
Run the application or execute the query again to confirm that the 'Cannot get value for projected field' error is resolved.

Fetch User Details in a Separate Request
If you require the user's email address for your application, retrieve the user IDs first and make a secondary request to handle missing emails gracefully.
A Simpler Alternative for Document Management and Collaboration
While resolving complex SharePoint and REST API errors requires deep technical troubleshooting, your team's everyday document collaboration shouldn't be complicated. WPS Office provides a free, lightweight suite that is fully compatible with Microsoft Office formats, offering seamless editing without the heavy overhead.
- 1. Download the Installer: Visit the official WPS Office website and download the free version for Windows, Mac, or Linux.
- 2. Install and Launch: Run the installer and open WPS Office. You will immediately see a clean, familiar interface.
- 3. Open Existing Files: Drag and drop your existing Microsoft Office files directly into the workspace to edit them with perfect format retention.

Frequently Asked Questions
Why does the projected field error occur only sometimes in SharePoint?
The error triggers only when a queried multi-select Person column contains at least one user account that lacks a populated email address. If all selected users in the specific list item have valid email addresses, the REST projection succeeds normally.
Can I use PnPjs to filter out users without emails directly in the query?
No, standard REST projection in SharePoint does not allow conditional filtering inside the `$expand` clause to skip users without emails. You must retrieve the non-nullable properties first and handle the data filtering in your application logic.
Is it safe to use the User Principal Name (UPN) instead of the email address?
Yes, using UPN as a fallback is a common practice in SharePoint development. However, be aware that a UPN is primarily used for login purposes and may not always route to a valid inbox if the user doesn't have an active Exchange mailbox.




