PATCH Sale/{id}
Some tooltip text!
• 10 minutes to read
• 10 minutes to read
PATCH /api/v1/Sale/{id}
Update a SaleEntity with changes, as described in a JSON Patch or a JSON Merge Patch document.
See RFC6902 and RFC 7396. Update the Department field to "foo" can be done either as a JSON PATCH:
[ { "op": "replace", "path": "/Department", "value": "foo" } ]
or as a JSON MERGE PATCH, which describes the change directly:
{ "Department": "foo" }
JSON PATCH supports operations 'add', 'replace', 'remove' and 'test'. The path is case insensitive, and the leading slash is optional, so the paths "/department", "Department" and "department" are all equivalent.
Calls the {SuperOffice.CRM.Services.ISaleAgent} service SaveSaleEntity.
Path Part | Type | Description |
---|---|---|
id | int32 | The SaleEntity id to update. Required |
Query String Parameters
Parameter Name | Type | Description |
---|---|---|
$select | string | Optional comma separated list of properties to include in the result. Other fields are then nulled out to reduce payload size: "Name,department,category" Default = show all fields. |
PATCH /api/v1/Sale/{id}?$select=name,department,category/id
Request Headers
Parameter Name | Description |
---|---|
Authorization | Supports 'Basic', 'SoTicket' and 'Bearer' schemes, depending on installation type. |
X-XSRF-TOKEN | If not using Authorization header, you must provide XSRF value from cookie or hidden input field |
Content-Type | Content-type of the request body: |
Accept | Content-type(s) you would like the response in: application/json , text/json , application/xml , text/xml , application/json-patch+json , application/merge-patch+json |
Accept-Language | Convert string references and multi-language values into a specified language (iso2) code. |
SO-Language | Convert string references and multi-language values into a specified language (iso2) code. Overrides Accept-Language value. |
SO-Culture | Number, date formatting in a specified culture (iso2 language) code. Partially overrides SO-Language/Accept-Language value. Ignored if no Language set. |
SO-TimeZone | Specify the timezone code that you would like date/time responses converted to. |
SO-AppToken | The application token that identifies the partner app. Used when calling Online WebAPI from a server. |
Request Body: changes
JSON-Patch array of operations+path+value, or a MERGE-PATCH object (which will be converted to a list of JSON-PATCH operations).
Property Name | Type | Description |
---|---|---|
op | String | "add", "replace", "remove", "test" "move" and "copy" not supported |
path | String | The property names to modify. "/users/0/email", "/users/-", |
value | Object | New/Replaced value - string or object. |
Response:
SaleEntity updated.
Response | Description |
---|---|
200 | SaleEntity updated. |
404 | SaleEntity with given id does not exist in the db. |
409 | Update blocked because a 'test' operation has detected a conflict with the entity value. |
412 | Update aborted because SaleEntity has changed since the requested If-Unmodified-Since timestamp. |
Response body: SaleEntityWithLinks
Property Name | Type | Description |
---|---|---|
Appointment | Appointment | Simple read-only appointment data. Carrier object for Appointment. Services for the Appointment Carrier is available from the Appointment Agent. |
Associate | Associate | The sale owner Use MDO List name "associate" to get list items. |
UpdatedBy | Associate | Who updated the sale |
CreatedBy | Associate | Who created to sale |
Contact | Contact | The contact associated with the sale. It may also be 0 if no contact is associated with the sale. Use MDO List name "contact" to get list items. |
Project | Project | A sale may also be connected to a project, so you see the sale both on the company card, and on the project card. This does not mean that a project is required. Use MDO List name "project" to get list items. |
SaleText | string | Text describing the sale |
Person | Person | A sale may also be connected to a person - this must be a contact person registered on the current contact. This does not mean that a person is required. Use MDO List name "person" to get list items. |
Currency | Currency | The currency the sale object was sold in Use MDO List name "currency" to get list items. |
Competitor | Competitor | List of all possible competitors. Use MDO List name "comptr" to get list items. |
Credited | Credited | List of who is to be credited for the sale. Use MDO List name "credited" to get list items. |
Rating | Rating | The sale rating Use MDO List name "prob" to get list items. |
Reason | Reason | The sale reason Use MDO List name "reason" to get list items. |
Source | Source | The sale source Use MDO List name "source" to get list items. |
Status | string | The state of the Sale: Open / Sold / Lost / Stalled |
Saledate | date-time | (expected / lost / won) sales date |
Amount | double | Total sale amount |
SaleId | int32 | Primary key |
Earning | double | Earning on sale |
EarningPercent | double | Earning as percent of total |
Heading | string | Sale heading (short description?) |
Number | string | Alphanumeric user field |
Probability | int32 | Actual probability, may differ from the one in the list |
CreatedDate | date-time | Registered date in UTC. |
UpdatedDate | date-time | Last updated in UTC. |
Completed | string | The Sale completed state. The completed state is either Started or Completed. NotStarted is treated as Started. The value maps to the Done database field. |
ActiveLinks | int32 | Number of active links to sale, document, appointment. |
Links | array | List of all elements linked to the sale. |
NextDueDate | date-time | Next due date, this is a denormalization of 'closest future activity date, or most recent if no future activities'. Maintained by the system, but very convenient for searching. |
Postit | string | The actual text, max 2047 significant characters even though it is stored as a larger data type on some databases |
SaleType | SaleType | Use MDO List name "saletype" to get list items. |
ReasonSold | ReasonSold | Use MDO List name "reasonsold" to get list items. |
ReasonStalled | ReasonStalled | Use MDO List name "reasonstalled" to get list items. |
ReopenDate | date-time | Date the sale is to be reopened; valid only for status=stalled. Not necessarily the same as the nextDueDate. |
SaleStakeholders | array | |
ActiveErpLinks | int32 | The number of active erp links |
UserDefinedFields | object | Deprecated: Use {SuperOffice.CRM.Services.SaleEntity.CustomFields} instead. Dictionary of user defined field data. The key string is the ProgId of the UdefField, or if the ProgId is empty it is a string of the format "SuperOffice:[UdefFieldIdentity]", e.g. "SuperOffice:1234" |
ExtraFields | object | Deprecated: Use {SuperOffice.CRM.Services.SaleEntity.CustomFields} instead. Extra fields added to the carrier. This could be data from Plug-ins, the foreign key system, external applications, etc. |
CustomFields | object | Udef + Extra fields added to the carrier. Extra fields as defined by changes to database schema + user-defined fields as defined by admin. Custom fields combines user defined fields and extra fields into one bucket. The individual {SuperOffice.CRM.Services.SaleEntity.ExtraFields} and UserDefinedFields properties are deprecated in favor of this combined collection. |
PublishEventDate | date-time | Publish event date |
PublishTo | date-time | Publication valid to (inclusive) |
PublishFrom | date-time | Publication valid from (inclusive) |
IsPublished | bool | Publication is published |
VisibleFor | array | The set of users or groups the record is visible for |
TableRight | TableRight | The carrier's table right |
FieldProperties | object | Field property dictionary mapping field names to field access rights. |
_Links | object |
Sample request
PATCH /api/v1/Sale/{id}
Authorization: Basic dGplMDpUamUw
Accept: application/json; charset=utf-8
Accept-Language: sv
Content-Type: application/json; charset=utf-8
[
{
"op": "add",
"path": "quasi",
"value": {}
},
{
"op": "add",
"path": "quasi",
"value": {}
}
]
Sample response
HTTP/1.1 200 SaleEntity updated.
Content-Type: application/json; charset=utf-8
{
"Appointment": null,
"Associate": null,
"UpdatedBy": null,
"CreatedBy": null,
"Contact": null,
"Project": null,
"SaleText": "voluptas",
"Person": null,
"Currency": null,
"Competitor": null,
"Credited": null,
"Rating": null,
"Reason": null,
"Source": null,
"Status": "Lost",
"Saledate": "1998-05-18T17:54:08.5076972+02:00",
"Amount": 16976.878,
"SaleId": 46,
"Earning": 2378.706,
"EarningPercent": 8236.152,
"Heading": "praesentium",
"Number": "1735966",
"Probability": 563,
"CreatedDate": "2024-07-08T17:54:08.5076972+02:00",
"UpdatedDate": "1999-02-02T17:54:08.5076972+01:00",
"Completed": "Completed",
"ActiveLinks": 412,
"Links": [
{
"EntityName": "Hagenes-Brown",
"Id": 400,
"Description": "Intuitive client-server superstructure",
"ExtraInfo": "aut",
"LinkId": 159,
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 281
}
}
}
],
"NextDueDate": "2021-07-27T17:54:08.5076972+02:00",
"Postit": "amet",
"SaleType": null,
"ReasonSold": null,
"ReasonStalled": null,
"ReopenDate": "2016-10-26T17:54:08.5076972+02:00",
"SaleStakeholders": [
{
"StakeholderRoleName": "Kunze, Wuckert and Watsica",
"Comment": "quaerat",
"StakeholderRoleId": 504,
"CountryId": 676,
"PersonId": 3,
"EmailDescription": "ricky_mills@runolfsson.co.uk",
"EmailId": 83,
"EmailAddress": "alba@thielmarks.ca",
"PhoneId": 424,
"ContactName": "Kilback, Zemlak and Hackett",
"ContactId": 920,
"SaleId": 306,
"Mrmrs": "officia",
"Firstname": "Gerda",
"MiddleName": "Mann, Schaden and Hahn",
"Lastname": "Lynch",
"SaleStakeholderId": 912,
"Rank": 171,
"Phone": "1-950-225-9645 x8477",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 462
}
}
}
],
"ActiveErpLinks": 952,
"UserDefinedFields": {
"SuperOffice:1": "Holly Sipes I",
"SuperOffice:2": "Horace Lueilwitz"
},
"ExtraFields": {
"ExtraFields1": "ad",
"ExtraFields2": "velit"
},
"CustomFields": {
"CustomFields1": "natus",
"CustomFields2": "corrupti"
},
"PublishEventDate": "2021-02-01T17:54:08.5230811+01:00",
"PublishTo": "2005-06-24T17:54:08.5230811+02:00",
"PublishFrom": "2010-02-24T17:54:08.5230811+01:00",
"IsPublished": false,
"VisibleFor": [
{
"VisibleId": 628,
"Visibility": "All",
"DisplayValue": "fugit",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 15
}
}
},
{
"VisibleId": 628,
"Visibility": "All",
"DisplayValue": "fugit",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 15
}
}
}
],
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 969
}
},
"_Links": {
"Self": "https://www.example.com/api/v1/project/321",
"Archive": "https://www.example.com/api/v1/project"
}
}