PowerShell code for looking up document properties
If you want to use the SPWeb.Files.Add() method that allows you to pass in a HashTable of metadata for the document, you will need to use the internal name of the metadata field, not the display name. Here's a PowerShell script to get that for you quickly: $web = Get-SPWeb http://intranet.sharepointdev.com $list = $web.Lists["Shared Documents"] foreach($item in $list.Items) { $file = $item.File #output all the SPFile property names foreach($key in $file.Properties.Keys) { write-host("File Key: " + $key) } #output the associated item's fields foreach($field in $item.Fields) { write-host("Item Field: " + $field.InternalName) } break; }