PwsSetUserPermissionsNotifications


Overview


This web service sets global and cost center-based permissions and global and cost center-based notifications for a single user based on a user identity (PwsUserRef). The service returns the identity (PwsUserRef) of the user that has been updated.

Request Format


PwsSaveUser Request

Request Elements


Element

Data Type

Required?

Description

Sample Data

RequestId

Int32

No

Click here for more information.

1

SessionTicket

String

Yes 

Click here for more information.

AebU24OSeu9cgUOSfIwEmg==
CostCenterNotificationSettingsPwsCostCenterNotificationSettingDetailNoA collection of cost center-based notification settings to apply for the user.
CostCenterPermissionSettingsPwsCostCenterPermissionSettingDetailNoA collection of cost center-based permission settings to apply for the user.
GlobalNotificationSettingsPwsGlobalNotificationSettingDetailNoA collection of global notification settings to apply for the user.
GlobalPermissionSettingsPwsGlobalPermissionSettingDetailNoA collection of global permission settings to apply for the user.
UserIdentityPwsUserRefYesThe user to apply the new permission and notification settings to.
UserTimestampStringNoTimestamp optionally used for user locking.


Request Usage Example(s)


Example 01
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pws="http://projectorpsa.com/PwsProjectorServices/" xmlns:req="http://projectorpsa.com/DataContracts/Requests/" xmlns:com="http://projectorpsa.com/DataContracts/Shared/Common/">
   <soapenv:Header/>
   <soapenv:Body>
      <pws:PwsSetUserPermissionsNotifications>
         <pws:serviceRequest>
            <req:RequestId>1	</req:RequestId>
            <req:SessionTicket>AbBxknXELlyF3kCHn5Fivg==</req:SessionTicket>
            <req:CostCenterNotificationSettings>
               <com:PwsCostCenterNotificationSettingDetail>
                  <com:CostCenterNotificationIdentity>
                     <com:CostCenterNotificationTag>ProjectStageChange</com:CostCenterNotificationTag>
                  </com:CostCenterNotificationIdentity>
                  <com:CostCenterNotificationSetting>
                     <com:CostCenters>
                        <com:PwsCostCenterRef>
                           <com:CostCenterName>IT Team (USA)</com:CostCenterName>
                           <com:CostCenterNumber>IT Team (USA)</com:CostCenterNumber>
                        </com:PwsCostCenterRef>
                     </com:CostCenters>
                     <com:EntireOrganizationFlag>false</com:EntireOrganizationFlag>
                  </com:CostCenterNotificationSetting>
                  <com:OverrideCostCenterNotificationSettingFlag>true</com:OverrideCostCenterNotificationSettingFlag>
               </com:PwsCostCenterNotificationSettingDetail>
            </req:CostCenterNotificationSettings>
            <req:CostCenterPermissionSettings>
               <com:PwsCostCenterPermissionSettingDetail>
                  <com:CostCenterPermissionIdentity>
                     <com:CostCenterPermissionTag>maintainProjectsAndEngagements</com:CostCenterPermissionTag>
                  </com:CostCenterPermissionIdentity>
                  <com:CostCenterPermissionSetting>
                     <com:CostCenters>
                        <com:PwsCostCenterRef>
                           <com:CostCenterName>Executive Team (USA)</com:CostCenterName>
                           <com:CostCenterNumber>Executive Team (USA)</com:CostCenterNumber>
                        </com:PwsCostCenterRef>
                     </com:CostCenters>
                     <com:EntireOrganizationFlag>false</com:EntireOrganizationFlag>
                  </com:CostCenterPermissionSetting>
                  <com:OverrideCostCenterPermissionSettingFlag>true</com:OverrideCostCenterPermissionSettingFlag>
               </com:PwsCostCenterPermissionSettingDetail>
            </req:CostCenterPermissionSettings>
            <req:GlobalNotificationSettings>
               <com:PwsGlobalNotificationSettingDetail>
                  <com:GlobalNotificationIdentity>
                     <com:GlobalNotificationTag>DowntimeNotification</com:GlobalNotificationTag>
                  </com:GlobalNotificationIdentity>
                  <com:GlobalNotificationSetting>true</com:GlobalNotificationSetting>
                  <com:OverrideGlobalNotificationSettingFlag>true</com:OverrideGlobalNotificationSettingFlag>
               </com:PwsGlobalNotificationSettingDetail>
            </req:GlobalNotificationSettings>
            <req:GlobalPermissionSettings>
               <com:PwsGlobalPermissionSettingDetail>
                  <com:GlobalPermissionIdentity>
                     <com:GlobalPermissionTag>maintainSystemSettings</com:GlobalPermissionTag>
                  </com:GlobalPermissionIdentity>
                  <com:GlobalPermissionSetting>U</com:GlobalPermissionSetting>
                  <com:OverrideGlobalPermissionSettingFlag>true</com:OverrideGlobalPermissionSettingFlag>
               </com:PwsGlobalPermissionSettingDetail>
            </req:GlobalPermissionSettings>
            <req:UserIdentity>
               <com:UserReferenceSystemId>NU001</com:UserReferenceSystemId>
            </req:UserIdentity>
         </pws:serviceRequest>
      </pws:PwsSetUserPermissionsNotifications>
   </soapenv:Body>
</soapenv:Envelope>


Response Format


PwsSetUserPermissionsNotifications Response

Response Elements


Element

Data Type

Description

Sample Data

Messages

PwsMessage[]

The web service response status and message. Click here for more information.


ResponseId

Int32

Click here for more information.

1

Status

RequestStatus

Click here for more information.

Ok

ServerTimestampUtc

DateTime

Click here for more information

2018-11-09T21:44:05.0179178Z

Timestamp

String

This is a Base64 encoded timestamp optionally utilized for user locking.

AAAAABCzYug=

UserIdentity

PwsUserRef

This structure represents all of the unique identifying fields associated with the user that was updated.


Response Usage Example(s)


Example 01
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <PwsSetUserPermissionsNotificationsResponse xmlns="http://projectorpsa.com/PwsProjectorServices/">
         <PwsSetUserPermissionsNotificationsResult xmlns:a="http://projectorpsa.com/DataContracts/Responses/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <Messages xmlns="http://projectorpsa.com/CommonServices/" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>       
            <ResponseId xmlns="http://projectorpsa.com/CommonServices/">1</ResponseId>
            <Status xmlns="http://projectorpsa.com/CommonServices/">Ok</Status>
            <ServerTimestampUtc xmlns="http://projectorpsa.com/CommonServices/">2018-12-21T16:57:38.8647068Z</ServerTimestampUtc>
            <a:Timestamp>AAAAABGHvDY=</a:Timestamp>
            <a:UserIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:UserDisplayName>Jane Jones</b:UserDisplayName>
               <b:UserId i:nil="true"/>
               <b:UserReferenceSystemId>NU001</b:UserReferenceSystemId>
               <b:UserUid>1152921504607135993</b:UserUid>
            </a:UserIdentity>
         </PwsSetUserPermissionsNotificationsResult>
      </PwsSetUserPermissionsNotificationsResponse>
   </s:Body>
</s:Envelope>

PwsSetUserPermissionsNotifications - Common Errors and Warnings

ErrorNumber

ErrorCode

ErrorText

10126InvalidEnumerationValueSpecifiedAn invalid value was specified for GlobalPermissionSetting. Valid values are N, V, U.
50021RefStructureMismatchRef structure PwsUserRef contains mismatched elements.
50024EntityNotFoundEntity PwsCostCenterListTypeRef was not found.