---
title: "Update a client"
method: PUT
path: "/clients/{id}"
tags: ["Clients"]
---

# Update a client

`PUT /clients/{id}`

## Request

- Base URL: `https://api.stoneproject.app/api/v1/public`
- URL: `https://api.stoneproject.app/api/v1/public/clients/{id}`
- Auth: HTTP bearer

## Path parameters

- `id` string, required

## Request body

- ClientInput
  - `name` string, required
  - `email` string, email, nullable
  - `phone` string, nullable
  - `phone2` string, nullable
  - `cell` string, nullable
  - `account_name` string, nullable
  - `address` string, nullable
  - `address_line_2` string, nullable
  - `city` string, nullable
  - `state` string, nullable
  - `zip_code` string, nullable
  - `country` string, nullable
  - `notes` string, nullable
  - `source` string, nullable
  - `tags` string[]
  - `contact_type` string, nullable
  - `external_id` string, nullable

## Response `200`

OK

- object
  - `success` boolean
  - `message` string, nullable
  - `data` Client
    - `id` string
    - `name` string
    - `email` string, nullable
    - `phone` string, nullable
    - `account_name` string, nullable
    - `address` string, nullable
    - `address_line_2` string, nullable
    - `city` string, nullable
    - `state` string, nullable
    - `zip_code` string, nullable
    - `country` string, nullable
    - `source` string, nullable
    - `external_id` string, nullable
    - `created_at` string, date-time, nullable
    - `updated_at` string, date-time, nullable

## Other responses

- `401`: Missing, invalid, revoked or expired token
- `403`: The token lacks the required scope
- `404`: Not found in this company
- `422`: Invalid input
- `429`: Rate limit reached; retry after the Retry-After header

---

[API](https://skmtc.dev/stoneproject/apis/stone-project-public-api.md) · [All operations](https://skmtc.dev/stoneproject/apis/stone-project-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/stoneproject/apis/stone-project-public-api/revisions/7cebff773929?raw)
