PwsSaveProjectEstimate
Overview
Save changes to a project estimate or create a new project estimate.
Estimates must have at least one line item, and as of now, may only have a single line item. Estimates that are managed by a CRM integration may not be modified by this service. Caller must have permission to update the project in order to add or update estimates.
Rate Limiting
In order to protect our servers from inadvertent service overuse or intentional attack, and to fairly distribute services to all our customers, we have implemented a rate limiting algorithm. When fully deployed, this new algorithm will cause services to either succeed with new warnings or fail with new errors when services are consumed at too high a rate. Programs that consume Projector services should be enhanced to handle rate limiting errors so that they can continue functioning properly. For more information please visit: Projector Rate Limiting Behavior.
Request Format
- PwsSaveProjectEstimate
- serviceRequest: PwsSaveProjectEstimateRq
- RequestId: Int32
- SessionTicket: String
- FullDetailFlag: Boolean
- LocksToSteal: PwsEntityLockSummary
- ProjectEstimate: PwsProjectEstimateDetail
- ProjectTimestamp: String
- ProjectorLockSetId: Int32
- SetActiveEstimateFlag: Boolean
- serviceRequest: PwsSaveProjectEstimateRq
Request Elements
Element | Data Type | Required? | Default | Description | Sample Data |
---|---|---|---|---|---|
Int32 | No | Click here for more information. | 1 | ||
String | Yes | Click here for more information. | AaonOqOoU2Gb8IbysO8KXQ== | ||
FullDetailFlag | Boolean | No | false | If set to true, include full detailed project estimate element PwsProjectEstimateElement in response. | true |
LocksToSteal | No | The detailed information of the locks that are to be stolen. If not specified, the request will fail if any requested locks are already held. If specified, the information supplied must exactly match the current state of existing locks or the attempt to steal the existing locks will fail. Typically, this service is invoked with LocksToSteal empty or null. If there are existing locks, they will be returned in the LockHolders member of PwsFault. This data can then be sent, as is, back to the server in a second invocation of this service, as LocksToSteal, if the caller desires to steal the locks. | |||
ProjectEstimate | Yes | This structure contains the complete set of information about a project estimate. | |||
ProjectTimestamp | String | No | This is an optimistic locking timestamp that, if provided on update request, will cause the request to fail if the timestamp stored in the database does not match the provided value. | ||
ProjectorLockSetId | Int32 | No | If stealing existing locks, specify lock holders from PwsFault response. | ||
SetActiveEstimateFlag | Boolean | No | false | If set to true the estimate will be set to the active estimate for the project. A project may only have one active estimate, so this may result in removing this designation from another estimate. If a project has any estimates at all, one must be designated active. Therefore, if saving the first estimate on a project, it will become the active estimate, regardless of this setting. | true |
Request Usage Example(s)
Response Format
- PwsSaveProjectEstimateResponse
- PwsSaveProjectEstimateResult: PwsSaveProjectEstimateRs
- Messages: PwsMessage[]
- ResponseId: Int32
- Status: RequestStatus
- ServerTimestampUtc: DateTime
- ProjectEstimate: PwsProjectEstimateElement
- ProjectEstimateIdentity: PwsProjectEstimateRef
- ProjectTimestamp: String
- StolenLocks: PwsEntityLockSummary
- PwsSaveProjectEstimateResult: PwsSaveProjectEstimateRs
Response Elements
Element | Data Type | Description | Sample Data |
---|---|---|---|
Messages | The web service response status and message. Click here for more information. | ||
Int32 | Click here for more information. | 1 | |
Status | Click here for more information. | Ok | |
ServerTimestampUtc | DateTime | Click here for more information. | 2022-07-25T20:17:05.545186Z |
ProjectEstimate | This structure contains a project estimate detail structure (PwsProjectEstimateDetail). It is also where additional related information about the project estimate, that is not directly an attribute of the project estimate itself would be found. This will only be populated if FullDetailFlag was specified on input. | ||
ProjectEstimateIdentity | This structure represents the unique key fields associated with identifying a project estimate. | ||
ProjectTimestamp | String | This is an optimistic locking timestamp that, if provided on update request, will cause the request to fail when the timestamp stored in the database does not match the provided value. This will reflect that the estimate was updated as part of this request (it should differ from the timestamp provided on input (if any), or from the timestamp returned by a prior web service request. | AAAAABxnQ9o= |
StolenLocks | This structure contains information about the locks that were stolen in order to complete this request, Will be included only when LocksToSteal is specified in the request. |
Response Usage Example(s)
PwsSaveProjectEstimate - Common Errors and Warnings
- For all errors and warnings please refer to the Complete List of Errors and Warnings