• Share
    • Twitter
    • LinkedIn
    • Facebook
    • Email
  • Feedback
  • Edit
Show / Hide Table of Contents

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"
  }
}
© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top