POST public-api/customers/updateExisting

This method updates the existing customers. Every customer will have a customer number. It requires the Edit Customer permission. It accepts a maximum of 500 records at a time. This will not work for customers with unknown customer numbers. To create/update addresses (instead of ignoring them), please use the API public-api/addresses/customer/save. Use “Save” to perform operations including both inserts and updates.



Request Information

URI Parameters

None.

Body Parameters

CustomerSaveRequest
NameDescriptionTypeAdditional information
ApplicableFields

By default this is a null or empty string array. However, if (during an update operation) it is sometimes desirable to update only certain properties/columns in the set ''Data''.

Collection of string

None.

Data

The payload member containing the actual values supplied by the consumer. This is a list that should contain at least one instance of data to be inserted or updated.

Collection of CustomerModelInfo

None.

Request Formats

application/json

Sample:
- UpdateField
{
  "Data": [
    {
      "ImportRowNumber": 0,
      "CustomerFirstName": "I.M. 1",
      "CustomerLastName": "DoeNewbe3f2f2632254b899fc573a1c252ddc7",
      "CustomerEmail": "cust.1.be3f2f2632254b899fc573a1c252ddc7@example.org",
      "CustomerNote": "Some newtext for customer be3f2f2632254b899fc573a1c252ddc7 1.",
      "HasAttachment": false,
      "IsAutogeneratedCustomerNumber": false
    }
  ]
}



Response Information

Resource Description

WaspResultOfResults
NameDescriptionTypeAdditional information
Data

Type specific result that always depends on the function called.

Results

None.

Messages

List of Messages. All APIs should return messages. If an API function returns an error you can find more information about the error or errors in this collection of messages.

Collection of WtResult

None.

BatchNumber

This is a global batch number generated by a mass group of transaction records to be returned to the consumer on each call to rolling transaction rules. This requests that each group of Move/Add/Remove transaction batches is tied together. In prior products (such as Mobile Asset Cloud), all are set to null and the only time when the batch number is generated is for multiple check-out transactions but the old is to generate for each responsible party.

integer

None.

HasError

True if an API function result has an error message in the results. If this is false, the function succeeded but other informative messages may be available.

boolean

None.

HasHttpError

True if an API function call could not be fully posted to the server or the results could not be fully returned.

boolean

None.

HasMessage

True if any message is available.

boolean

None.

HasSuccessWithMoreDataRemaining

True if the server sent part of the data and there is more data available. Use with paging APIs to fetch data one page at a time.

boolean

None.

TotalRecordsLongCount

This is the total number of records available in the database based on the query and filer conditions provided. It is possible that the value can change from call to call as users add and delete records so this should not be used to page through multiple recordsets of data. This is used, for example, to set relative scroll bar sizes. When paging through data using functions like the assetadvancedinfosearch, calculating TotalRecordsLongCount for every page full of data is an time-consuming operation. To avoid that extra calculation, and help prevent throttling, assign TotalRecordsLongCount to TotalCountFromPriorFetch in the AdvancedSearchParameters to skip recalculating this total page count and to page thru the records faster.

integer

None.

Response Formats

application/json

Sample:
- UpdateField
{
  "Data": {
    "ResultList": [
      {
        "ResultCode": -20100,
        "Message": "Customer Number is required. Customer Number cannot be blank.",
        "HttpStatusCode": 422,
        "FieldName": "CustomerNumber"
      }
    ],
    "SuccessfullResults": 0,
    "TotalResults": 1
  },
  "Messages": [
    {
      "ResultCode": -20100,
      "Message": "Customer Number is required. Customer Number cannot be blank.",
      "HttpStatusCode": 422,
      "FieldName": "CustomerNumber"
    }
  ],
  "HasSuccessWithMoreDataRemaining": false,
  "HasError": true,
  "HasMessage": true,
  "HasHttpError": true
}