Working with the Global Address Book for developers
Outlook makes it easy to maintain your contacts. The contacts you create in Outlook are the basis for the address book you use when sending emails. Sounds simple enough. But did you know that Outlook, in true Microsoft fashion, is much more complex beneath the hood?
It’s true. There is more at-play than meets the eye because Outlook utilizes more than one type of contacts “repository” (or address book) as the following list summarizes:
- Global Address List – If you are utilizing Exchange, Outlook has access to the Global Address List (GAL). The GAL is a book/catalog/list/etc. of all user accounts in the Exchange Server’s domain. The GAL contains email and contact info for each account.
- Offline Address Book – Essentially, this is a cached copy of the Global Address List. Outlook uses this address book when Exchange is not available or if Outlook runs in cached mode. In cached mode, the Offline Address Book takes the place of the GAL.
- Outlook Address Book – This is Outlook’s address book. It is available in all installations of Outlook and does not require Exchange. The default Contacts folder is automatically included in this address book and you can include other contact folders you create in Outlook.
- LDAP – Lightweight Directory Access Protocol. These are directories available on the web and published by various providers. You can add an LDAP address book to Outlook to lookup names and email address not found in the GAL or offline address book. As it turns out, Exchange uses LDAP.
- 3rd Party Address Book providers – Outlook supports address books from 3rd parties as well. Installing them requires the vendor’s install package as Outlook does not have a function for performing this installation. An example of a 3rd Party address book provider is, ummm, well… I couldn’t find one and I spent a more than 10 minutes asking Mr. Google for one. That should tell you all you need to know about these 3rd Party address books.
Now let’s try to look under the hood:
- How to get the default address book in Outlook
- Outlook as an Exchange Client: Global Address List (GAL)
How to get the default address book in Outlook
I don’t know why, but figuring out what address book is the default address book is not obvious. Maybe it’s because I have what’s known as right-neglect. Anyway, you need to look on the far-right section of the Outlook Ribbon’s Home tab.
Click the Address Book icon and the Address Book dialog displays. In this window, you want to click the Tools > Options menu to view the Addressing dialog window.
In this window, you can change the default address book selecting a different option.
Outlook as an Exchange Client: Global Address List (GAL)
When you connect Outlook to an Exchange account, you have access to the GAL. It is worth stating that if you don’t connect to Exchange, you will not have a GAL. As I said previously, the GAL is your organizations address list. It contains all the accounts that have email addresses.
How to access the GAL
To access the Global Address List, configure an Exchange-based email account within Outlook. When you do this, you can use the GAL to find and select email accounts for an emails TO, CC, & BCC fields.
Reduce the address book clutter and filer results using the Address Book drop down.
When choosing email addressees, you can switch the Address book to the GAL only (see the image above).
How to edit the GAL
By design, the Global Address List is not something an Outlook user can edit. The Exchange administrator controls the GAL from its structure to each account’s creation. This is a good idea because the Global Address List is the central account directory for the organization. It makes sense to control it centrally and prevent updates from just anyone.
Due to this read-only restriction, you can’t use the Outlook object model to update the GAL either. Instead, you need to be an Exchange admin and utilize tools appropriate for the job:
As Outlook developers, it’s important to know how the GAL works and the limitations placed upon you. It’s read-only but it’s quite useful. We’ll get to that in a subsequent post.