creating a appointment with custom UID with EWS 1.2 RRS feed

  • Question

  • I'm working on a powershell script to create meetings.  I have it working and creating meetings just fine.  My issue is I'm trying to figure out how to update meetings and delete meetings.  My issue is the meeting info comes from a separate application that will be sending info to exchange.

    We are trying to get around having to store info sent back from exchange otherwise I would query the UID and send it back went I create the appointment.

    What I'm trying to find out is, is it possible to supply your own UID with EWS or do you have to let exchange assign one when the appointment is created?  we can calculate a UID on the external application and send it to exchange but I dont know if its possible or how to then take that and set the UID of the meeting with that data. 

    I am able to set an extended property with a custom string and then search the calender based on that extended property and get the UID and bind to the appointment. But I'm trying to avoid having to search the calendar and update.  Ideally I'd like to supply the script with the UID set by the external application and then just bind to the UID using:

    $appointment = [Microsoft.Exchange.WebServices.Data.Appointment]::Bind($service,$itemID)

    Thanks for the help

    Monday, February 4, 2013 7:42 PM

All replies

  • To clarify is it possible to set the uniqueID? or is it read only?

    I know you can get the uniqueId of an item with:

    $itemUID = $appointment.Id.UniqueId

    But is there a way to set it similar to:

    $appointment.body = "text here"


    $appointment.Id.UniqueId = "MyCustomID123"
    Its very impractical to have to pass data back to the application.

    • Edited by DaneB_85 Monday, February 4, 2013 11:05 PM
    Monday, February 4, 2013 11:05 PM
  • No you can't set that ID its assigned by the Exchange Store and is always read only. You can store you own ID in a custom property see http://msdn.microsoft.com/en-us/library/exchange/dd633691(v=exchg.80).aspx . Then you can search for the appointments based on that property but you won't be able to bind directly to an item unless you store the EWSid.


    Tuesday, February 5, 2013 5:08 AM