POST Agents/Sale/SaveSaleEntity
Some tooltip text!
• 15 minutes to read
• 15 minutes to read
POST /api/v1/Agents/Sale/SaveSaleEntity
Updates the existing SaleEntity or creates a new SaleEntity if the id parameter is 0.
NsApiSlow threshold: 2000 ms.
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: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded, application/json-patch+json, application/merge-patch+json |
| 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: saleEntity
The SaleEntity that is saved
| Property Name | Type | Description |
|---|---|---|
| Appointment | Appointment | Simple read-only appointment data. |
| Associate | Associate | The sale owner |
| 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. |
| 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. |
| 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. |
| Currency | Currency | The currency the sale object was sold in |
| Competitor | Competitor | List of all possible competitors. |
| Credited | Credited | List of who is to be credited for the sale. |
| Rating | Rating | The sale rating |
| Reason | Reason | The sale reason |
| Source | Source | The sale source |
| Status | String | The state of the Sale: Open / Sold / Lost / Stalled |
| Saledate | String | (expected / lost / won) sales date |
| Amount | Number | Total sale amount |
| SaleId | Integer | Primary key |
| Earning | Number | Earning on sale |
| EarningPercent | Number | Earning as percent of total |
| Heading | String | Sale heading (short description?) |
| Number | String | Alphanumeric user field |
| Probability | Integer | Actual probability, may differ from the one in the list |
| CreatedDate | String | Registered date in UTC. |
| UpdatedDate | String | 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 | Integer | Number of active links to sale, document, appointment. |
| Links | Array | List of all elements linked to the sale. |
| NextDueDate | String | 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 | |
| ReasonSold | ReasonSold | |
| ReasonStalled | ReasonStalled | |
| ReopenDate | String | Date the sale is to be reopened; valid only for status=stalled. Not necessarily the same as the nextDueDate. |
| SaleStakeholders | Array | |
| ActiveErpLinks | Integer | 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 |
| PublishEventDate | String | Publish event date |
| PublishTo | String | Publication valid to (inclusive) |
| PublishFrom | String | Publication valid from (inclusive) |
| IsPublished | Boolean | Publication is published |
| VisibleFor | Array | The set of users or groups the record is visible for |
Response:
OK
| Response | Description |
|---|---|
| 200 | OK |
Response body: SaleEntity
| 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. |
Sample request
POST /api/v1/Agents/Sale/SaveSaleEntity
Authorization: Basic dGplMDpUamUw
Accept: application/json; charset=utf-8
Accept-Language: fr,de,ru,zh
Content-Type: application/json; charset=utf-8
{
"Appointment": null,
"Associate": null,
"UpdatedBy": null,
"CreatedBy": null,
"Contact": null,
"Project": null,
"SaleText": "quis",
"Person": null,
"Currency": null,
"Competitor": null,
"Credited": null,
"Rating": null,
"Reason": null,
"Source": null,
"Status": "Lost",
"Saledate": "2023-06-25T10:11:01.0647141+02:00",
"Amount": 22163.648,
"SaleId": 70,
"Earning": 30177.286,
"EarningPercent": 22442.574,
"Heading": "repudiandae",
"Number": "1089981",
"Probability": 944,
"CreatedDate": "2013-05-03T10:11:01.0647141+02:00",
"UpdatedDate": "2000-10-27T10:11:01.0647141+02:00",
"Completed": "Completed",
"ActiveLinks": 874,
"Links": [
{
"EntityName": "Fisher-Sipes",
"Id": 473,
"Description": "Intuitive stable migration",
"ExtraInfo": "temporibus",
"LinkId": 715
},
{
"EntityName": "Fisher-Sipes",
"Id": 473,
"Description": "Intuitive stable migration",
"ExtraInfo": "temporibus",
"LinkId": 715
}
],
"NextDueDate": "2018-06-19T10:11:01.0647141+02:00",
"Postit": "ullam",
"SaleType": null,
"ReasonSold": null,
"ReasonStalled": null,
"ReopenDate": "2022-01-21T10:11:01.0647141+01:00",
"SaleStakeholders": [
{
"StakeholderRoleName": "Marks, Ferry and O'Reilly",
"Comment": "cumque",
"StakeholderRoleId": 726,
"CountryId": 389,
"PersonId": 774,
"EmailDescription": "cayla@trompschroeder.com",
"EmailId": 230,
"EmailAddress": "anissa.daniel@volkman.name",
"PhoneId": 79,
"ContactName": "Schaden Group",
"ContactId": 186,
"SaleId": 855,
"Mrmrs": "est",
"Firstname": "Elyssa",
"MiddleName": "Pacocha, Treutel and Weber",
"Lastname": "Prosacco",
"SaleStakeholderId": 145,
"Rank": 249,
"Phone": "1-168-920-1434"
}
],
"ActiveErpLinks": 599,
"UserDefinedFields": {
"SuperOffice:1": "229057978",
"SuperOffice:2": "False"
},
"ExtraFields": {
"ExtraFields1": "officia",
"ExtraFields2": "inventore"
},
"CustomFields": {
"CustomFields1": "perspiciatis",
"CustomFields2": "est"
},
"PublishEventDate": "2020-08-28T10:11:01.0656864+02:00",
"PublishTo": "2000-12-25T10:11:01.0656864+01:00",
"PublishFrom": "2005-06-02T10:11:01.0656864+02:00",
"IsPublished": true,
"VisibleFor": [
{
"VisibleId": 915,
"Visibility": "All",
"DisplayValue": "quia"
},
{
"VisibleId": 915,
"Visibility": "All",
"DisplayValue": "quia"
}
]
}
Sample response
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"Appointment": null,
"Associate": null,
"UpdatedBy": null,
"CreatedBy": null,
"Contact": null,
"Project": null,
"SaleText": "placeat",
"Person": null,
"Currency": null,
"Competitor": null,
"Credited": null,
"Rating": null,
"Reason": null,
"Source": null,
"Status": "Lost",
"Saledate": "2024-12-19T10:11:01.0684074+01:00",
"Amount": 10031.934,
"SaleId": 448,
"Earning": 7230.138,
"EarningPercent": 17713.368,
"Heading": "voluptatem",
"Number": "1528526",
"Probability": 125,
"CreatedDate": "2008-12-06T10:11:01.0684074+01:00",
"UpdatedDate": "2005-12-19T10:11:01.0684074+01:00",
"Completed": "Completed",
"ActiveLinks": 802,
"Links": [
{
"EntityName": "Gislason-Erdman",
"Id": 214,
"Description": "Object-based transitional migration",
"ExtraInfo": "est",
"LinkId": 949,
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 851
}
}
}
],
"NextDueDate": "2024-11-12T10:11:01.0684074+01:00",
"Postit": "sapiente",
"SaleType": null,
"ReasonSold": null,
"ReasonStalled": null,
"ReopenDate": "2020-03-19T10:11:01.0684074+01:00",
"SaleStakeholders": [
{
"StakeholderRoleName": "Heathcote-Schuppe",
"Comment": "enim",
"StakeholderRoleId": 756,
"CountryId": 622,
"PersonId": 612,
"EmailDescription": "darwin.lebsack@hartmann.biz",
"EmailId": 829,
"EmailAddress": "karine.barrows@wisokyhomenick.info",
"PhoneId": 361,
"ContactName": "Bernhard, Johnston and Doyle",
"ContactId": 704,
"SaleId": 935,
"Mrmrs": "veritatis",
"Firstname": "Ernesto",
"MiddleName": "Gorczany-Padberg",
"Lastname": "Lemke",
"SaleStakeholderId": 129,
"Rank": 769,
"Phone": "969.211.3355 x3118",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 515
}
}
}
],
"ActiveErpLinks": 490,
"UserDefinedFields": {
"SuperOffice:1": "618792718",
"SuperOffice:2": "Mrs. Peggie Era Thompson"
},
"ExtraFields": {
"ExtraFields1": "voluptas",
"ExtraFields2": "commodi"
},
"CustomFields": {
"CustomFields1": "amet",
"CustomFields2": "officia"
},
"PublishEventDate": "2009-12-30T10:11:01.0684074+01:00",
"PublishTo": "2012-09-11T10:11:01.0684074+02:00",
"PublishFrom": "2009-10-25T10:11:01.0684074+01:00",
"IsPublished": false,
"VisibleFor": [
{
"VisibleId": 363,
"Visibility": "All",
"DisplayValue": "porro",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 352
}
}
},
{
"VisibleId": 363,
"Visibility": "All",
"DisplayValue": "porro",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 352
}
}
}
],
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 367
}
}
}