Update Client

Update an existing client record. Only include the fields you want to change.

PATCH /datatable-clients/{id}
Writable Fields

All fields that can be set during client creation (POST) can also be updated via PATCH. Only include the fields you want to modify.

Example Request - Update Status
PATCH /api/v1.0/datatable-clients/456
{
  "published": 1
}
Example Request - Update Contact Information
{
  "phone": "+1-555-0200",
  "mobile": "+1-555-0201",
  "email": "newemail@example.com"
}
Example Request - Update Categories and Tags
{
  "categories": ["10", "15", "20"],
  "tags": ["VIP", "Premium"],
  "interested_in": ["Stamps", "Coins"]
}
Example Request - Add Banking Details
{
  "bank_details": [
    {
      "name": "Chase Bank",
      "number": "987654321",
      "owner": "John Smith",
      "iban": "GB29 NWBK 6016 1331 9268 19",
      "bic": "NWBKGB2L"
    }
  ]
}
Example Request - Update Shipping Instructions
{
  "shipping_instructions": "Call before delivery",
  "temp_shipping_instructions": "Holiday delivery only after 2PM",
  "temp_si_dates_from": 1735689600000,
  "temp_si_dates_to": 1738368000000
}
Example Request - Update Tax Information
{
  "tax_type": "business",
  "tax_id": "12-3456789",
  "tax_state": "CA"
}
Example Request - Block Client Communications
{
  "block_emails": 1,
  "blocking_reason": "Payment disputes - do not contact",
  "warning": "Customer has outstanding balance"
}
Example Request - Update Responsible Users
{
  "responsible_user": [5, 12, 18],
  "agent": 5
}
Response
{
  "data": [{
    "id": "456",
    "uuid": "abc-def-456",
    "first_name": "Jane",
    "last_name": "Smith",
    "email": "newemail@example.com",
    "phone": "+1-555-0200",
    "mobile": "+1-555-0201",
    "published": 1,
    "status": {
      "id": "approved",
      "label": "Approved"
    },
    "categories": [
      { "id": "10", "label": "Stamps" },
      { "id": "15", "label": "Coins" },
      { "id": "20", "label": "Postcards" }
    ],
    "updated": "2025-12-31T10:00:00Z"
  }]
}
Updatable Field Categories

first_name, last_name, company, position_company, name_prefix, override_salutation, email, secondary_email, phone, primary_phone, office_phone, mobile, fax, birthdate, client_website, website_language

address (updates default address)

published, agent, responsible_user, categories, interested_in, tags, source

bank_details, default_payment_method, invoice_release_limit, consignor_commissions, additional_charges

tax_type, tax_id, tax_state

billing_instructions, client_billing_instruction, shipping_instructions, shipping_instructions_client, temp_shipping_instructions, temp_si_dates_from, temp_si_dates_to, blocking_reason, warning

block_emails, subscription_type, expiration_date, philaworksplace_id, external_ids
Read-Only Fields (Cannot be Updated)

The following fields are read-only and will be ignored if included in PATCH requests:

  • id, label, uuid (once set)
  • balance, customer_available_balance (calculated)
  • default_address_rendered, default_address_nid
  • country, city, state, street, postal_code (from default address)
  • status, last_name_company (computed)
  • created, updated timestamps
Notes
  • PATCH requests are partial updates - only send fields you want to change
  • Dates are in milliseconds (JavaScript timestamps)
  • Monetary values are in cents
  • Taxonomy terms can be sent as IDs (integers) or labels (strings)
  • Multifield arrays completely replace existing values (not merged)
  • Updating address modifies the default address, not client fields
  • Client access is restricted in token mode - only self-updates allowed
  • See Create Client for detailed field descriptions and structures
Back to Clients View Create Documentation Back to API Home