List of Internal Names for SharePoint Fields

In order to reference a column or field using the the SharePoint object model, you often need to know its internal name. For example, when creating a CAML query, you can specify the field on which to search by providing its internal name. As opposed to the display name, which can be changed in the UI, the internal name is immutable. While the default display name and the internal name are often identical or similar, they can also be very different. The difference isn’t always consistent. For example, spaces in the display name can be removed, such as IsCheckedoutToLocal, or replaced with the hexadecimal equivalent, such as HTML_x0020_File_x0020_Type. Furthermore, the display name can be the same for more than one fields, so the internal name is the only way to distinguish between them.

You can quickly determine the internal name of a field using the UI:

  1. Open the List Settings page
  2. Under the Columns section, select a column to view the Edit Column page
  3. The URL of this page includes the internal name in the query string. For example, the URL for the Created By field includes the following query string List=%7BF641CEF1%2DCDE2%2D49E1%2D9800%2D861A408EF890%7D&Field=Author. The value for the Field parameter, Author, is the internal name for Created By.

However, this approach isn’t always convenient. If the column you want doesn’t already belong to the list, you’d have to first add it.

For reference purpose, below is the list of the display name and corresponding internal name for the default fields of a Document Library.

Title Internal name
Approval Status _ModerationStatus
Approver Comments _ModerationComments
Check In Comment _CheckinComment
Checked Out To CheckoutUser
Checked Out To CheckedOutTitle
Checked Out To LinkCheckedOutTitle
Content Type ContentType
Content Type ID ContentTypeId
Copy Source _CopySource
Created Created
Created Created_x0020_Date
Created By Author
Document Created By Created_x0020_By
Document Modified By Modified_x0020_By
Edit Edit
Edit Menu Table End _EditMenuTableEnd
Edit Menu Table Start _EditMenuTableStart
Effective Permissions Mask PermMask
Encoded Absolute URL EncodedAbsUrl
File Size File_x0020_Size
File Size FileSizeDisplay
File Type File_x0020_Type
GUID GUID
Has Copy Destinations _HasCopyDestinations
Html File Link xd_ProgID
HTML File Type HTML_x0020_File_x0020_Type
ID ID
ID of the User who has the item Checked Out CheckedOutUserId
Instance ID InstanceID
Is Checked out to local IsCheckedoutToLocal
Is Current Version _IsCurrentVersion
Is Signed xd_Signature
Item Type FSObjType
Level _Level
Merge Combine
Modified Modified
Modified Last_x0020_Modified
Modified By Editor
Name FileLeafRef
Name LinkFilenameNoMenu
Name LinkFilename
Name BaseName
Order Order
owshiddenversion owshiddenversion
Path FileDirRef
ProgId ProgId
Property Bag MetaInfo
Relink RepairDocument
ScopeId ScopeId
Select SelectTitle
Select SelectFilename
Server Relative URL ServerUrl
Shared File Index _SharedFileIndex
Source Name (Converted Document) ParentLeafName
Source Url _SourceUrl
Source Version (Converted Document) ParentVersionString
Template Link TemplateUrl
Title Title
Type DocIcon
UI Version _UIVersion
Unique Id UniqueId
URL Path FileRef
Version _UIVersionString
Virus Status VirusStatus
Workflow Instance ID WorkflowInstanceID
Workflow Version WorkflowVersion

In my case, I’m interested in the Name field. I wouldn’t have guessed that it would be mapped to FileLeafRef.

Related posts: