Update

# update

<Table>
  <thead>
    <tr>
      <th>
        Parameter
      </th>

      <th>
        Type
      </th>

      <th>
        I/O
      </th>

      <th>
        Description
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        <General>
      </td>

      <td>

      </td>

      <td>
        IN
      </td>

      <td>
        Parameters described in Overview
      </td>
    </tr>

    <tr>
      <td>
        Company
      </td>

      <td>
        String
      </td>

      <td>
        IN
      </td>

      <td>
        The users default company number for the companies list
      </td>
    </tr>

    <tr>
      <td>
        Action
      </td>

      <td>
        String
      </td>

      <td>
        IN
      </td>

      <td>
        Identifier for the list requested
      </td>
    </tr>

    <tr>
      <td>
        Input
      </td>

      <td>
        String
      </td>

      <td>
        IN
      </td>

      <td>
        Data array containing optional parameters
      </td>
    </tr>

    <tr>
      <td>
        expenselines_ expenselineinternal 

        [OPTIONAL]
      </td>

      <td>
        String
      </td>

      <td>
        IN
      </td>

      <td>
        Expense line input data array parameter – required for update or delete if expenselines\_uuid not supplied
      </td>
    </tr>

    <tr>
      <td>
        expenselines_ uuid 

        [OPTIONAL]
      </td>

      <td>
        String
      </td>

      <td>
        IN
      </td>

      <td>
        Expense line unique identifier input data array parameter – required for update or delete if expenselines\_expenselineinternal not supplied
      </td>
    </tr>

    <tr>
      <td>
        expenselines_expensedate 

        [OPTIONAL]
      </td>

      <td>
        String
      </td>

      <td>
        IN
      </td>

      <td>
        Expense line date parameter
      </td>
    </tr>

    <tr>
      <td>
        expenselines_currencytotal 

        [OPTIONAL]
      </td>

      <td>
        String
      </td>

      <td>
        IN
      </td>

      <td>
        Expense line currency total parameter
      </td>
    </tr>

    <tr>
      <td>
        expenselines_statuscode 

        [OPTIONAL]
      </td>

      <td>
        String
      </td>

      <td>
        IN
      </td>

      <td>
        Status code for the expense line
      </td>
    </tr>
  </tbody>
</Table>

“Q”, “S”, “A”, “H”, “R” (queried, submitted, approved, held, rejected)\
expenselines\_linenumber [OPTIONAL]|String|IN|Line number order\
expenselines\_jobandphase [OPTIONAL]|String|IN|Jobphase for the line\
expenselines\_currencyrate [OPTIONAL]|String|IN|Currency rate for the line\
expenselines\_queryrejectreason [OPTIONAL]|String|IN|Rejection reason (approver level)\
expenselines\_description [OPTIONAL]|String|IN|Line description\
expenselines\_vatamount [OPTIONAL]|String|IN|VAT amount for the line\
expenselines\_supplytype [OPTIONAL]|String|IN|Expense supply type maps to Supplytypeslist\
expenselines\_quantity [OPTIONAL]|String|IN|Quantity\
expenselines\_rate [OPTIONAL]|String|IN|Charge rate for line item\
expenselines\_total [OPTIONAL]|String|IN|Line total\
expenselines\_vatcode [OPTIONAL]|String|IN|VAT code for line item\
expenselines\_workflowcode [OPTIONAL]|String|IN|Workflowcode\
expenselines\_resubmitreason [OPTIONAL]|String|IN|Resubmit reason for queried line\
see expenselineresubmit for sheet and line requirments\
Response|XML / JSON|OUT|An XML tree / JSON string containing the success or error response

## Description

Calling the expenses API with an action of **update** retrieves a response. Update can be used to Create, Update or Delete an expense line.

* Providing a expenselines\_uuid or expenselines\_expenselineinternal along with other optional parameters will assume the update operation to be an update.
* Providing expenselines\_uuid or expenselines\_expenselineinternal without any other optional parameters assumes the update operation to be a delete.
* Providing optional parameters without a expenselines\_uuid or expenselines\_expenselineinternal will assume the update operation to be a create. The response will contain the UUID for the created line. Create requires fields expenselines\_supplytype, expenselines\_jobandphase, expenselines\_expensesheetinternal, expenselines\_expensedate.

## Return Values

Response  – Success or error response.

The structure of the response is:

```xml
<Responses>
  <Success>
    <SuccessText>data processed successfully.</SuccessText>
    <Data>
      <expenselines_expenselineinternal>1210
      </expenselines_expenselineinternal>
    </Data>
    <Data>
      <expenselines_uuid>98D756620BAAE94BB5BA0A9C053E78C4
      </expenselines_uuid>
    </Data>
    <Data>
      <expenselines_total>990</expenselines_total>
    </Data>
    <Data>
      <expenselines_currencyrate>45
      </expenselines_currencyrate>
    </Data>
    <Data>
    	<expenselines_currencytotal>990</expenselines_currencytotal>
    </Data>
    <Data>
    	<expenselines_vatamount>0</expenselines_vatamount>
    </Data>
  </Success>
</Responses>
{   "responsecode": 1,
    "responsestatus": "OK",
    "errorcode": 0,
    "errormessage": "",
    "responsemessage": "data processed successfully.",
    "success": true,
    "data": [
        {
            "expenselines_expenselineinternal": 1143,
            "expenselines_uuid": "FD63456A09A9E64D9C9AA71FFCBFD1E7",
            "expenselines_total": 144,
            "expenselines_currencyrate": 12,
            "expenselines_currencytotal": 144,
            "expenselines_vatamount": 18.78
        }
    ]
}