> For the complete documentation index, see [llms.txt](https://api.senderwiz.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://api.senderwiz.com/admin/customer/update-a-customer.md).

# Update a Customer

Update an existing customer profile using SenderWiz Admin API by passing updated personal or company information.

### 👤 Update a Customer

Use this endpoint to update an existing customer in SenderWiz. You may also update the associated company details if needed.

#### 🔹 HTTP Request

```html
PUT ADMIN-API-URL/customers/CUSTOMER-UID
```

#### 🔸 URL Segments

| Segment        | Type   | Required | Description                                 |
| -------------- | ------ | -------- | ------------------------------------------- |
| `CUSTOMER-UID` | string | Yes      | Unique identifier of the customer to update |

#### 🔐 Authorization Header

`X-ADMIN-API-KEY: your-admin-api-key-here`

#### 📝 PUT Parameters

Below are the available parameters for updating a customer profile. You can include only the fields you want to update:

| Parameter  | Type  | Required | Description                          |
| ---------- | ----- | -------- | ------------------------------------ |
| `customer` | array | Yes      | Main customer details to be updated  |
| `company`  | array | No       | Optional company-related information |

#### 🧍 Customer Block

Include only the fields you wish to update in the customer profile. You must specify the `customer_uid` in the URL path.

| Field        | Type   | Required | Description                                                                                        |
| ------------ | ------ | -------- | -------------------------------------------------------------------------------------------------- |
| `first_name` | string | No       | First name of the customer                                                                         |
| `last_name`  | string | No       | Last name of the customer                                                                          |
| `email`      | string | No       | Email address (if changing email)                                                                  |
| `password`   | string | No       | New password                                                                                       |
| `timezone`   | string | No       | Timezone (e.g., Asia/Kolkata)                                                                      |
| `group`      | string | No       | Group name from Admin Panel                                                                        |
| `birthDate`  | string | No       | Date of birth in YYYY-MM-DD format                                                                 |
| `status`     | string | No       | Customer status: Active or Inactive                                                                |
| `parent_uid` | string | No       | UID of an existing customer to set as parent. Leave blank to make it a normal (non-child) account. |

{% hint style="info" %}
**Customer Groups** must be created first in the **SenderWiz Admin Panel**. Each group controls what a customer can or cannot do — such as whether they can create/upload lists, how many contacts they can manage, or how many emails they’re allowed to send, and many other settings.

\
👉 Use the **Group Name** (e.g., `"Pro-Group"`) in the `group` parameter when updating the customer.

🧩 To make a customer a **child account**, provide the `parent_uid` of an existing (non-child) customer account. 🚫 A customer that is already assigned as a child **cannot be set as a parent**.
{% endhint %}

{% hint style="info" %}
You can also update the `status` of a customer:

* **Active** – For active customers.
* **Inactive** – Customer data remains, but login and any activity including sending are disabled.
  {% endhint %}

#### 🏢 Company Block (Optional)

Use this block to update any company-related information associated with the customer.

Include only the fields you wish to update in the customer profile. You must specify the `customer_uid` in the URL path.

| Field       | Type   | Required | Description            |
| ----------- | ------ | -------- | ---------------------- |
| `name`      | string | No       | Company name           |
| `country`   | string | No       | Country name           |
| `zone`      | string | No       | State or zone          |
| `city`      | string | No       | City name              |
| `zip_code`  | string | No       | Postal or ZIP code     |
| `address_1` | string | No       | Primary address line   |
| `address_2` | string | No       | Secondary address line |

#### 💻 PHP Example

```php
// UPDATE CUSTOMER
$response = $endpoint->update('ab382plq98zr7', [
    'customer' => [
        'first_name' => 'Emma Updated',
        'timezone'   => 'Asia/Kolkata',
        'group'      => 'Pro-Group'
    ],
    'company' => [
        'city'     => 'Vancouver',
        'address_1'=> '456 King St E'
    ],
]);

// DISPLAY RESPONSE
echo '<hr /><pre>';
print_r($response->body);
echo '</pre>';
```

#### 📦 Sample JSON Response

```json
{
    "status": "success",
    "customer_uid": "hr359dca6g62b"
}
```
