Hosted Exchange::CreateBusinessOrganization

Creates a business organization and Exchange enables the organization. The procedure also optionally creates a Public Folder for the organization.

Arguments

Input argument Required Description

<container>

Yes

A valid Lightweight Directory Access Protocol (LDAP) path of the OU where the new organization will be created. For example LDAP://OU=Reseller1,OU=Hosting,DC=fabrikam,DC=Com.

<name>

Yes

The common name (CN) of the new organization.

<SMTPDomain>

Yes

The SMTP domain of the new organization. For example alpineskihouse.com.

<preferredDomainController>

Yes

<mailStore><megabytes>

No

This is the amount of storage available for mail storage. This parameter is ignored if the <sourceMailStores> parameter is supplied.

<mailStore algorithm="minStoreCount">

No

Only used when <sourceMailStores> is not supplied. Possible values of the "algorithm" attribute are "tightPack" and "minStoreCount", with "tightPack" as default. TightPack attempts to use the smallest number of mail stores for the system as a whole, with the tradeoff that each individual org may span more mail stores. MinStoreCount attempts to minimize the number of stores allocated to each org, with the tradeoff that the system as a whole may require more stores. MinStoreCount uses stores with the largest available space first, and tightPack uses stores with the smallest available space first. If the <shared> parameter is 0, then this parameter has relatively little effect, since every share considered is completely empty.

<mailStore><shared>

No

If this parameter is 0, the organization is given one or more mail stores which will not be shared with other organizations. (Unshared mail stores are those which were added using AddExchangeResources with their <shared> parameter as 0.) If the <mailStore><shared> parameter is 1, mail storage will be allocated from one or more shared mail stores. Shared mail stores may or may not be shared with other organizations.

<publicStore><megabytes>

No

This is the amount of storage available for public folders.

<publicStore><sourcePublicStoreServer>

No

If this parameter is supplied, it specifies the public store to put the organization's public folder storage on.

<mailStore><sourceMailStores>

No

If this parameter is supplied, then the automatic allocation behavior is overridden, and the <mailStore><megabytes> parameter is ignored. The <sourceMailStores> parameter specifies a set of mail stores to be allocated to this org. If any of the specifed stores is unavailable or has insufficient storage, then the entire call will fail. The total mail storage allocation for the org will be the total of the <megabytes> parameters in all of the supplied <sourceMailStore> parameters.

<sourceMailStore><serverName>

No

The name of the explicitly allocated store's server.

<sourceMailStore><mailStoreName>

No

The name of the mail store on the server.

<sourceMailStore><megabytes>

No

The storage to allocate on this mail store.

Dd278986.note(en-us,TechNet.10).gifNote
The procedure uses the optional <mailStore> or <sourceMailStores> input to determine whether or not to Exchange Enable an organization. If this element is not present in the request, Exchange services will not be added to the organization and the <publicStore> element will be ignored.

<createSMTPDomain/>

No

Optional null element. If included the procedure will optionally execute Exchange Provider::CreateSMTPDomain to create an Exchange Recipient Policy.

<SMTPDomain>

No

The organization's primary SMTP domain.

<description>

No

Arbitrary description of the organization.

<properties>

No

Valid Active Directory attributes for an object of class OU.

<availablePlans>

No

Defines which specific Exchange Mailbox Plans are available to the users of this organization.

<planName>

No

The name of the desired service plan. Can occur multiple times in the node.

Output Arguments

Consists of the <org> tag containing the OU object created and the membership and security policies supplied. Each object created has its LDAP path in a "path" attribute.

Remarks

Policy Information

Customer organization.

Security

  • Impersonate caller.

  • Caller is tested for OrgCreator role.

Sample Code

Example XML Request

<request>   
        <procedure>     
                <execute  namespace="Hosted Exchange" procedure="CreateBusinessOrganization" impersonate="1">       
                        <executeData>         
                                <container>LDAP://OU=Reseller1,OU=Hosting,DC=fabrikam,DC=Com</container>         
                                <name>alpineskihouse</name>         
                                <mailStore>           
                                        <megabytes>1000</megabytes>          
                                        <shared>1</shared>         
                                </mailStore>         
                                <publicStore>           
                                        <megabytes>1000</megabytes>         
                                </publicStore>         
                                <SMTPDomain>alpineskihouse.com</SMTPDomain>         
                                <createSMTPDomain/>   
                                <description>Discount ski and sporting equipment</description>        
                                <properties>           
                                        <property name="postalAddress">             
                                                <value>1703 NE 91st</value>           
                                        </property>        
                                </properties>        
                                <preferredDomainController>AD01.fabrikam.com</preferredDomainController>        
                                <availablePlans>          
                                        <planName>BaseMail</planName>           
                                        <planName>GoldMail</planName>           
                                        <planName>PlatinumMailPlus</planName>              
                                </availablePlans>       
                        </executeData>       
                        <after source="executeData" destination="data" mode="merge"/>     
                </execute>   
        </procedure> 
</request>

Extended XML Usage

<request>   
        <procedure>     
                <execute namespace="Hosted Exchange" procedure="CreateBusinessOrganization" impersonate="1">       
                        <executeData>         
                                <container>LDAP://OU=Reseller1,OU=Hosting,DC=fabrikam,DC=Com</container>         
                                <name>alpineskihouse</name>         
                                <mailStore>           
                                        <sourceMailStores>             
                                                <sourceMailStore>               
                                                        <serverName>EXBE02</serverName>               
                                                        <mailStoreName>BusinessMailstore1</mailStoreName>               
                                                        <megabytes>200</megabytes>             
                                                </sourceMailStore>             
                                                <sourceMailStore>               
                                                        <serverName>EXBE01</serverName>               
                                                        <mailStoreName>BusinessMailstore3</mailStoreName>               
                                                        <megabytes>200</megabytes>             
                                                </sourceMailStore>             
                                                <sourceMailStore>               
                                                        <serverName>EXBE02</serverName>               
                                                        <mailStoreName>BusinessMailstore2</mailStoreName>               
                                                        <megabytes>200</megabytes>             
                                                </sourceMailStore>           
                                        </sourceMailStores>         
                                </mailStore>         
                                <publicStore> 
                                                   
                                        <megabytes>500</megabytes>           
                                        <sourcePublicStoreServer>EXBE02</sourcePublicStoreServer>         
                                </publicStore>         
                                <SMTPDomain>alpineskihouse.com</SMTPDomain>         
                                <createSMTPDomain />         
                                <description>Discount ski and sporting equipment</description>         
                                <properties>           
                                        <property name="postalAddress">             
                                                <value>1703 NE 91st</value>           
                                        </property>         
                                </properties>         
                                <preferredDomainController>AD01.fabrikam.com</preferredDomainController>         
                                <availablePlans>           
                                <planName>BaseMail</planName>           
                                <planName>GoldMail</planName>           
                                <planName>PlatinumMailPlus</planName>         
                                </availablePlans>       
                        </executeData>       
                        <after source="executeData" destination="data" mode="merge" />     
                </execute>   
        </procedure> 
</request>

Example XML Response

<response>   
        <data>     
                <container>LDAP://OU=WH,OU=Hosting,DC=fabrikam,DC=Com</container>     
                <name>MindsEyeGraphics</name>     
                <description>Freelance design</description>     
                <mailStore>       
                        <megabytes>1000</megabytes>       
                        <shared>1</shared>     
                </mailStore>     
                <publicStore>       
                        <megabytes>1000</megabytes>     
                </publicStore>     
                <SMTPDomain>MindsEyeGraphics.Com</SMTPDomain> 
                <createSMTPDomain/> 
                <properties>       
                        <property name="street">         
                                <value>1703 NE 91st</value>       
                        </property>     
                </properties>     
                <preferredDomainController>AD01.fabrikam.com</preferredDomainController>     
                <org path="LDAP://ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=Com"        name="MindsEyeGraphics">       
                <otherWellKnownObjects>         
                        <obj wkName="ThisOrganizationRoot"    name="LDAP://ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com"/>         
                        <obj wkName="ForeignOwnerOrg"         name="LDAP://OU=WH,OU=Hosting,DC=fabrikam,DC=com"/>         
                        <obj wkName="UserCreators"            name="LDAP://cn=Admins@MindsEyeGraphics,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com"/>         
                        <obj wkName="ChildOrgCreators"        name="LDAP://cn=CSRAdmins@MindsEyeGraphics,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com"/>         
                        <obj wkName="OrgType"                name="LDAP://cn=customer,cn=WatOrgTypes,cn=_Private,ou=Hosting,DC=fabrikam,DC=com"/> 
                        <obj wkName="MultiGroupPointer"      name="LDAP://cn=MultiGroup,cn=_Private,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com"/> 
      </otherWellKnownObjects> 
 
      <orgs> 
 
        <org path="LDAP://cn=_Private,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=Com" 
 
            name="_Private" 
 
            class="container"> 
 
          <otherWellKnownObjects> 
 
            <obj wkName="ThisOrganizationRoot" 
 
                name="LDAP://ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com"/> 
 
            <obj wkName="OrgType" 
 
                name="LDAP://cn=private,cn=WatOrgTypes,cn=_Private,ou=Hosting,DC=fabrikam,DC=com"/> 
 
          </otherWellKnownObjects> 
 
          <orgs> 
 
            <org path="LDAP://cn=MultiGroup,cn=_Private,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=Com" 
 
                name="MultiGroup" 
 
                class="container"> 
 
              <orgs> 
 
                <org path="LDAP://cn=UserN,cn=MultiGroup,cn=_Private,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=Com" 
 
                    name="UserN" 
 
                    class="container"> 
 
                  <orgs> 
 
                    <org path="LDAP://cn=AllUsers@MindsEyeGraphics,cn=UserN,cn=MultiGroup,cn=_Private,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=Com" 
 
                        name="AllUsers@MindsEyeGraphics" 
 
                        class="container"> 
 
                      <otherWellKnownObjects> 
 
                        <obj wkName="MultiGroupPointer" 
 
                            name="LDAP://cn=AllUsers@MindsEyeGraphics,cn=_Private,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com"/> 
 
                      </otherWellKnownObjects> 
 
                    </org> 
 
                  </orgs> 
 
                </org> 
 
                <org path="LDAP://cn=ChildOrgN,cn=MultiGroup,cn=_Private,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=Com" 
 
                    name="ChildOrgN" 
 
                    class="container"/> 
 
              </orgs> 
 
            </org> 
 
          </orgs> 
 
          <groups> 
 
            <group path="LDAP://cn=AllUsers@MindsEyeGraphics,cn=_Private,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=Com" 
 
                name="AllUsers@MindsEyeGraphics"> 
 
              <memberOfGroup name="LDAP://cn=AllCustomers@WH,cn=_Private,OU=WH,OU=Hosting,DC=fabrikam,DC=com"/> 
 
            </group> 
 
          </groups> 
 
        </org> 
 
      </orgs> 
 
      <groups> 
 
        <group path="LDAP://cn=Admins@MindsEyeGraphics,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=Com" 
 
            name="Admins@MindsEyeGraphics"> 
 
          <memberOfGroup name="LDAP://cn=AllCustomerAdminsGroups@WH,cn=_Private,OU=WH,OU=Hosting,DC=fabrikam,DC=com"/> 
 
        </group> 
 
        <group path="LDAP://cn=CSRAdmins@MindsEyeGraphics,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=Com" 
 
            name="CSRAdmins@MindsEyeGraphics"> 
 
          <memberOfGroup name="LDAP://cn=AllCustomerCSRAdminsGroups@WH,cn=_Private,OU=WH,OU=Hosting,DC=fabrikam,DC=com"/> 
 
          <dacl> 
 
            <ace> 
 
              <inheritance>NO_INHERITANCE</inheritance> 
 
              <permission>ADS_RIGHT_READ_CONTROL</permission> 
 
              <trusteeType>0</trusteeType> 
 
              <trusteeForm>0</trusteeForm> 
 
              <trustee>S-1-5-10</trustee> 
 
              <mode>GRANT_ACCESS</mode> 
 
            </ace> 
 
          </dacl> 
 
        </group> 
 
      </groups> 
 
      <dacl> 
 
        <ace> 
 
          <permission>ADS_RIGHT_DS_LIST_OBJECT</permission> 
 
          <trustee>LDAP://cn=AllUsers@MindsEyeGraphics,cn=_Private,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com</trustee> 
 
          <trusteeType>TRUSTEE_IS_GROUP</trusteeType> 
 
          <trusteeForm>TRUSTEE_IS_SID</trusteeForm> 
 
          <mode>GRANT_ACCESS</mode> 
 
        </ace> 
 
        <ace> 
 
          <permission>ADS_RIGHT_ACTRL_DS_LIST</permission> 
 
          <permission>ADS_RIGHT_DS_READ_PROP</permission> 
 
          <inheritance>SUB_CONTAINERS_AND_OBJECTS_INHERIT</inheritance> 
 
          <trustee>LDAP://cn=AllUsers@MindsEyeGraphics,cn=_Private,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com</trustee> 
 
          <trusteeType>TRUSTEE_IS_GROUP</trusteeType> 
 
          <trusteeForm>TRUSTEE_IS_SID</trusteeForm> 
 
          <mode>GRANT_ACCESS</mode> 
 
        </ace> 
 
        <ace> 
 
          <permission>ADS_RIGHT_READ_CONTROL</permission> 
 
          <inheritance>SUB_CONTAINERS_AND_OBJECTS_INHERIT</inheritance> 
 
          <trustee>LDAP://cn=Admins@MindsEyeGraphics,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com</trustee> 
 
          <trusteeType>TRUSTEE_IS_GROUP</trusteeType> 
 
          <trusteeForm>TRUSTEE_IS_SID</trusteeForm> 
 
          <mode>GRANT_ACCESS</mode> 
 
        </ace> 
 
        <ace> 
 
          <permission>ADS_RIGHT_READ_CONTROL</permission> 
 
          <permission>ADS_RIGHT_DS_WRITE_PROP</permission>       
 
          <permission>ADS_RIGHT_WRITE_DAC</permission> 
 
          <permission>ADS_RIGHT_DS_SELF</permission> 
 
          <permission>ADS_RIGHT_DS_CONTROL_ACCESS</permission> 
 
          <permission>ADS_RIGHT_DS_CREATE_CHILD</permission> 
 
          <permission>ADS_RIGHT_DS_DELETE_CHILD</permission> 
 
          <permission>ADS_RIGHT_DS_DELETE_TREE</permission> 
 
          <permission>ADS_RIGHT_DELETE</permission> 
 
          <inheritance>SUB_CONTAINERS_AND_OBJECTS_INHERIT</inheritance> 
 
          <trustee>LDAP://cn=CSRAdmins@WH,OU=WH,OU=Hosting,DC=fabrikam,DC=com</trustee> 
 
          <trusteeType>TRUSTEE_IS_GROUP</trusteeType> 
 
          <trusteeForm>TRUSTEE_IS_SID</trusteeForm> 
 
          <mode>GRANT_ACCESS</mode> 
 
        </ace> 
 
        <ace> 
 
          <permission>ADS_RIGHT_DS_WRITE_PROP</permission> 
 
          <permission>ADS_RIGHT_READ_CONTROL</permission> 
 
          <permission>ADS_RIGHT_WRITE_DAC</permission> 
 
          <permission>ADS_RIGHT_DS_SELF</permission> 
 
          <permission>ADS_RIGHT_DS_CONTROL_ACCESS</permission>          <permission>ADS_RIGHT_DS_CREATE_CHILD</permission>          <permission>ADS_RIGHT_DS_DELETE_CHILD</permission>           
                                <permission>ADS_RIGHT_DS_DELETE_TREE</permission>           
                                <inheritance>SUB_CONTAINERS_AND_OBJECTS_INHERIT</inheritance>          
                                <trustee>LDAP://cn=Admins@MindsEyeGraphics,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com</trustee>           
                                <trusteeType>TRUSTEE_IS_GROUP</trusteeType>           
                                <trusteeForm>TRUSTEE_IS_SID</trusteeForm>           
                                <mode>GRANT_ACCESS</mode>         
                        </ace>         
                        <ace>          
                                <permission>ADS_RIGHT_GENERIC_ALL</permission>          
                        <inheritance>11</inheritance>           
                                <inheritedObjectTypeName>{BF967ABA-0DE6-11D0-A285-00AA003049E2}</inheritedObjectTypeName>           
                                <trustee>LDAP://cn=CSRAdmins@MindsEyeGraphics,ou=MindsEyeGraphics,OU=WH,OU=Hosting,DC=fabrikam,DC=com</trustee>           
                                <trusteeType>TRUSTEE_IS_GROUP</trusteeType>           
                                <trusteeForm>TRUSTEE_IS_OBJECTS_AND_SID</trusteeForm>           
                                <mode>GRANT_ACCESS</mode>        
                         </ace>       
                        </dacl>     
                </org>   
        </data> 
</response>

Applies To

Hosted Exchange Namespace API for:

  • Hosted Messaging and Collaboration version 3.5

  • Hosted Messaging and Collaboration version 3.0

See also

Tasks

Hosted Exchange::DeleteBusinessOrganization