PATCH Contact/{id}
Some tooltip text!
• 12 minutes to read
• 12 minutes to read
PATCH /api/v1/Contact/{id}
Update a ContactEntity with changes, as described in a JSON Patch or a JSON Merge Patch document.
See RFC6902 and RFC 7396. NsApiSlow threshold: 2000 ms. 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.IContactAgent} service SaveContactEntity.
| Path Part | Type | Description |
|---|---|---|
| id | int32 | The ContactEntity 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/Contact/{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:
ContactEntity updated.
| Response | Description |
|---|---|
| 200 | ContactEntity updated. |
| 404 | ContactEntity 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 ContactEntity has changed since the requested If-Unmodified-Since timestamp. |
Response body: ContactEntityWithLinks
| Property Name | Type | Description |
|---|---|---|
| ContactId | int32 | Primary key |
| Name | string | Contact name |
| Department | string | Department |
| OrgNr | string | VAT number or similar |
| Number1 | string | Alphanumeric user field |
| Number2 | string | Alphanumeric user field |
| UpdatedDate | date-time | Date last updated in UTC. |
| CreatedDate | date-time | Date registered in UTC. |
| Emails | array | The contact's email |
| Interests | array | The contact's available and selected interests. Use MDO List name "contint" to get list items. |
| Urls | array | The contact's internet adresses |
| Phones | array | The contact's phone numbers |
| Faxes | array | The contact's fax numbers |
| Description | string | Description of the contact. Usually shown as a postit note. |
| UpdatedBy | Associate | The user that last updated the contact |
| CreatedBy | Associate | The user that created the contact |
| Associate | Associate | The user that owns this contact. Use MDO List name "associate" to get list items. |
| Business | Business | The business that the contact is associated with. The GUI forces the user to enter a business type. Use MDO List name "business" to get list items. |
| Category | Category | The category that is set on the company. The GUI forces the user to enter a category type Use MDO List name "category" to get list items. |
| Country | Country | The country this contact is located in. The country a contact is saved with, affects the phone number format, and the address layout. Use MDO List name "country" to get list items. |
| Persons | array | The persons belonging to the contact. |
| NoMailing | bool | Spam filter. Indicates if this contact should retrieve advertising. |
| Kananame | string | Contact kana name, used in Japanese versions only |
| Xstop | bool | STOP flag |
| ActiveInterests | int32 | The number of active interests. |
| GroupId | int32 | Group id of original owning associate, semantics like appnt.grp_id |
| ActiveStatusMonitorId | int32 | Active status monitor identity with the lowest rank for contact |
| SupportAssociate | Associate | Use MDO List name "associate" to get list items. |
| TicketPriority | TicketPriority | Use MDO List name "ticketpriority" to get list items. |
| CustomerLanguage | CustomerLanguage | customerlanguage |
| Deleted | int32 | If nonzero, then this contact is 'deleted' and should generally not be shown |
| DbiAgentId | int32 | Integration agent (eJournal) |
| DbiLastSyncronized | date-time | Last external syncronization. |
| DbiKey | string | The primary key for the integrated entry in the external datasource. |
| DbiLastModified | date-time | When the entry was last modified. |
| SupportPerson | Person | Carrier object for Person. Services for the Person Carrier is available from the Person Agent. |
| Address | Address | Street and/or Postal address, in both formatted and structured forms. You only need to modify one of the two for the change to be registered. Carrier object for Address. |
| Source | int32 | How did we get this contact? For future integration needs |
| ActiveErpLinks | int32 | The number of active erp links |
| BounceEmails | array | Email addresses with a positive bounce counter. |
| Domains | array | Web domains for this contact, ordered in array by rank |
| UtmParameters | SavedUtmParameters | Utm parameters when creating first person and contact, readonly field |
| UserDefinedFields | object | Deprecated: Use {SuperOffice.CRM.Services.ContactEntity.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.ContactEntity.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.ContactEntity.ExtraFields} and UserDefinedFields properties are deprecated in favor of this combined collection. |
| 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/Contact/{id}
Authorization: Basic dGplMDpUamUw
Accept: application/json; charset=utf-8
Accept-Language: *
Content-Type: application/json; charset=utf-8
[
{
"op": "add",
"path": "quia",
"value": {}
},
{
"op": "add",
"path": "quia",
"value": {}
}
]
Sample response
HTTP/1.1 200 ContactEntity updated.
Content-Type: application/json; charset=utf-8
{
"ContactId": 157,
"Name": "Global Industries Ltd",
"Department": "Sales",
"OrgNr": "1018343",
"Number1": "398739",
"Number2": "1343827",
"UpdatedDate": "2007-04-12T14:34:01.7844179+02:00",
"CreatedDate": "2010-06-13T14:34:01.7844179+02:00",
"Emails": [
{
"Value": "et",
"StrippedValue": "sed",
"Description": "Stand-alone scalable collaboration",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 571
}
}
},
{
"Value": "et",
"StrippedValue": "sed",
"Description": "Stand-alone scalable collaboration",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 571
}
}
}
],
"Interests": [
{
"Id": 921,
"Name": "TechCorp Solutions",
"ToolTip": "Contact interest",
"Deleted": true,
"Rank": 525,
"Type": "et",
"ColorBlock": 990,
"IconHint": "eos",
"Selected": false,
"LastChanged": "2003-05-10T14:34:01.7844179+02:00",
"ChildItems": [
{},
{}
],
"ExtraInfo": "doloribus",
"StyleHint": "sapiente",
"Hidden": false,
"FullName": "Johnathan Caterina Quigley II",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 373
}
}
}
],
"Urls": [
{
"Value": "sint",
"StrippedValue": "eum",
"Description": "Persevering uniform info-mediaries",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 9
}
}
},
{
"Value": "sint",
"StrippedValue": "eum",
"Description": "Persevering uniform info-mediaries",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 9
}
}
}
],
"Phones": [
{
"Value": "facilis",
"StrippedValue": "consequatur",
"Description": "Extended web-enabled open architecture",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 641
}
}
},
{
"Value": "facilis",
"StrippedValue": "consequatur",
"Description": "Extended web-enabled open architecture",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 641
}
}
}
],
"Faxes": [
{
"Value": "vero",
"StrippedValue": "iusto",
"Description": "Mandatory transitional info-mediaries",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 607
}
}
},
{
"Value": "vero",
"StrippedValue": "iusto",
"Description": "Mandatory transitional info-mediaries",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 607
}
}
}
],
"Description": "Mandatory attitude-oriented hardware",
"UpdatedBy": null,
"CreatedBy": null,
"Associate": null,
"Business": null,
"Category": null,
"Country": null,
"Persons": [
{
"Position": "temporibus",
"PersonId": 479,
"Mrmrs": "nam",
"Firstname": "Hettie",
"Lastname": "Powlowski",
"MiddleName": "Wintheiser Group",
"Title": "vel",
"Description": "Cross-platform context-sensitive toolset",
"Email": "candida@cartwright.co.uk",
"FullName": "Waino D'Amore",
"DirectPhone": "1-881-565-1098",
"FormalName": "Dickens LLC",
"CountryId": 849,
"ContactId": 398,
"ContactName": "Keebler Inc and Sons",
"Retired": 260,
"Rank": 82,
"ActiveInterests": 950,
"ContactDepartment": "",
"ContactCountryId": 971,
"ContactOrgNr": "1207999",
"FaxPhone": "452-762-5386 x46926",
"MobilePhone": "(165)436-4815",
"ContactPhone": "626.760.0650 x57608",
"AssociateName": "Sporer-Christiansen",
"AssociateId": 768,
"UsePersonAddress": false,
"ContactFax": "eligendi",
"Kanafname": "minus",
"Kanalname": "beatae",
"Post1": "debitis",
"Post2": "qui",
"Post3": "atque",
"EmailName": "haskell@williamson.info",
"ContactFullName": "Jessie Moen Sr.",
"ActiveErpLinks": 719,
"TicketPriorityId": 321,
"SupportLanguageId": 714,
"SupportAssociateId": 527,
"CategoryName": "VIP Customer",
"PersonNumber": "593835",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 161
}
}
}
],
"NoMailing": true,
"Kananame": "tempore",
"Xstop": true,
"ActiveInterests": 703,
"GroupId": 585,
"ActiveStatusMonitorId": 538,
"SupportAssociate": null,
"TicketPriority": null,
"CustomerLanguage": null,
"Deleted": 573,
"DbiAgentId": 73,
"DbiLastSyncronized": "2019-05-13T14:34:01.8006981+02:00",
"DbiKey": "eaque",
"DbiLastModified": "2006-01-23T14:34:01.8006981+01:00",
"SupportPerson": null,
"Address": null,
"Source": 1,
"ActiveErpLinks": 719,
"BounceEmails": [
"vivian_purdy@toy.uk",
"jack@torp.com"
],
"Domains": [
"facere",
"quo"
],
"UtmParameters": null,
"UserDefinedFields": {
"SuperOffice:1": "1073407021",
"SuperOffice:2": "1651104465"
},
"ExtraFields": {
"ExtraFields1": "tempore",
"ExtraFields2": "nesciunt"
},
"CustomFields": {
"CustomFields1": "porro",
"CustomFields2": "perferendis"
},
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 851
}
},
"_Links": {
"Self": "https://www.example.com/api/v1/project/321",
"Archive": "https://www.example.com/api/v1/project"
}
}