Mailbox creation date
-
Wednesday, November 19, 2008 7:35 PMHello all, is there a way to find when an Exchange 2007 mailbox was created? More specifically, is there a way to get this information for a particular mailbox via powershell, hopefully via the get-mailbox cmdlet? I see a WhenCreated attribute in the full results of a get-mailbox command but that appears to be the date when the user account was created.
I realize a mailbox isn't truly created until mail is sent to the user but that date is fine enough for my purposes.
Thanks!
Answers
-
Friday, November 21, 2008 3:57 AMModerator
After spent more time on AD field, I found the method to accomplish the task by using AD tool
Repadmin /showmeta “cn=test d,ou=ex team,dc=sg,dc=com” > C:\dump.txt
Since we cannot know the create time from those attributes which specific shows time value, then I think that we need to based on the creation time of the attributes which must be added to user object when a mailbox is created, like “Proxyaddress” or “Mail” attributes
After run Repadmin, we can get all original creating time for the user’s attributes
I also tested it in the lab, “Proxyaddress” or “Mail” attributes all show the time <6:59:04 AM>
PS: I have to correct my mistake on my first post, to recreate mail profile will not change “PR_CREATION_TIME” attribute, I have not uncheck “Cache Mode” before using MFCMAPI, which causes the tool shows wrong value of the “PR_CREATION_TIME” attribute. If I used online mode, the “PR_CREATION_TIME” attribute will show <7:01:16 AM>, which is the time most near to the creating time of mailbox
-
Monday, November 24, 2008 3:11 AMModerator
Supplement:
Yes, “PR_CREATION_TIME” attribute will change to new time after moving mailbox. We need to see “0x3FD60040” property under root container in the MFCMAPI, which is original value of “PR_CREATION_TIME” attribute
Explanation: “0x3FD60040” is the time when users login their mailboxes via OWA or outlook, which cause the mailbox being truly generated on the database<7:01:16 AM>. However, it’s not the time when exchange administrator creates users’ mailboxes on the EMS or EMC<6:59:04 AM>
You can use the “Exchange: Query Mailbox Creation Timestamp” section in this article to query the “PR_CREATION_TIME” attribute by script
- Marked As Answer by Amit TankModerator Thursday, December 25, 2008 8:44 AM
All Replies
-
Wednesday, November 19, 2008 9:07 PM
Hi,
According to the help file the whencreated time stamp is when the object is created.
Have you tried to create a user account without mailbox, wait some time and then create a mailbox and look at the whencreated stamp?
Leif
-
Wednesday, November 19, 2008 9:18 PMHi Leif,
Thanks for your reply. I haven't tried the operation you specify but I do know that on the few mailbox-enabled users I've looked at so far, the WhenCreated value is years before we had an Exchange implementation so my general assumption is that WhenCreated refers to the date the user object was created.
When you refer to the "help file" which help file are you reading from? I haven't found a place to get specific help about specific attributes.
Thanks!
Jason -
Wednesday, November 19, 2008 10:50 PMAccording to this blog entry and other resources I've read, the prospect of reliably finding when a mailbox was created is pretty grim. Bummer.
This page references the MS Exchange Server MAPI editor as a tool to view the pr_creation time MAPI property but that's not really realistic for my hope of getting the MB creation date for hundreds of MBs using a Powershell script. -
Thursday, November 20, 2008 10:09 AMModerator
Yes, “WhenCreated” attribute is based on the creating time of user object not mailbox
Also, per my testing, “PR_CREATION_TIME” attribute is also not the create time of mailbox
Example:
a. When I create a user “Test”, “WhenCreated” attribute’s time: 6:55:48 AM
b. When I create Test’s mailbox, “WhenChanged” attribute’s time changed from <6:55:48 AM> to <6:59:04 AM>
c. When I create Test’s mailbox profile on a client PC, “WhenChanged” attribute’s time changed again from <6:59:04 AM> to <7:01:16 AM>
d. Now if I removes the profile and recreate it, “PR_CREATION_TIME” attribute changed again <7:28:54 AM>
Per my knowledge, there’s no method which can accomplish the task in the exchange 2007
-
Thursday, November 20, 2008 2:25 PMThanks for that confirmation, James. I'll stop searching.
-
Friday, November 21, 2008 1:19 AMModerator
-
Friday, November 21, 2008 3:57 AMModerator
After spent more time on AD field, I found the method to accomplish the task by using AD tool
Repadmin /showmeta “cn=test d,ou=ex team,dc=sg,dc=com” > C:\dump.txt
Since we cannot know the create time from those attributes which specific shows time value, then I think that we need to based on the creation time of the attributes which must be added to user object when a mailbox is created, like “Proxyaddress” or “Mail” attributes
After run Repadmin, we can get all original creating time for the user’s attributes
I also tested it in the lab, “Proxyaddress” or “Mail” attributes all show the time <6:59:04 AM>
PS: I have to correct my mistake on my first post, to recreate mail profile will not change “PR_CREATION_TIME” attribute, I have not uncheck “Cache Mode” before using MFCMAPI, which causes the tool shows wrong value of the “PR_CREATION_TIME” attribute. If I used online mode, the “PR_CREATION_TIME” attribute will show <7:01:16 AM>, which is the time most near to the creating time of mailbox
-
Friday, November 21, 2008 6:17 AMModerator
This is really a nice workaround, James
Just an additional thought on PR_CREATION_TIME, this gets change when you move the mailbox because essentially move mailbox creates a new mailbox on destination database, copy all the data and delete old one.
So it's better idea to get creation time from mailbox attributes of AD...
-
Friday, November 21, 2008 5:38 PMThanks for the further research and information, James and Amit. It's helpful information. We've decided to add a little bit to our powershell mailbox provisioning script to add the current date to the CustomAttribute1 for the user mailbox. We're also adding a 15 day "expiration date" to CustomAttribute2 that we'll be able to query on. This will help for new and future mailboxes but, obviously, not for the older ones.
$creationdate = Get-Date
$expirationdate = $creationdate.AddDays(15)
Set-Mailbox -Identity $user -CustomAttribute1 $creationdate -CustomAttribute2 $expirationdate -
Monday, November 24, 2008 3:11 AMModerator
Supplement:
Yes, “PR_CREATION_TIME” attribute will change to new time after moving mailbox. We need to see “0x3FD60040” property under root container in the MFCMAPI, which is original value of “PR_CREATION_TIME” attribute
Explanation: “0x3FD60040” is the time when users login their mailboxes via OWA or outlook, which cause the mailbox being truly generated on the database<7:01:16 AM>. However, it’s not the time when exchange administrator creates users’ mailboxes on the EMS or EMC<6:59:04 AM>
You can use the “Exchange: Query Mailbox Creation Timestamp” section in this article to query the “PR_CREATION_TIME” attribute by script
- Marked As Answer by Amit TankModerator Thursday, December 25, 2008 8:44 AM
-
Monday, April 30, 2012 6:10 PM
Please use below PS command to get the data you need
get-mailbox -identity | select WhenmailboxCreated
Best Regards,
Rohan
- Proposed As Answer by Rohan Kherdekar Monday, April 30, 2012 6:10 PM

