# `KapsoEx.Platform.Customers`
[🔗](https://github.com/rocket4ce/kapso_ex/blob/v0.1.0/lib/kapso_ex/platform/customers.ex#L1)

Customers are the businesses you onboard to WhatsApp. See
[Onboard customers](https://docs.kapso.ai/docs/platform/customer-guide).

# `result`

```elixir
@type result() :: {:ok, map() | nil} | {:error, KapsoEx.Error.t()}
```

# `create`

```elixir
@spec create(KapsoEx.Client.t(), map() | keyword()) :: result()
```

Creates a customer. Attributes: `name` (required), `external_customer_id`.

    Customers.create(client, name: "Acme", external_customer_id: "acme-1")

# `delete`

```elixir
@spec delete(KapsoEx.Client.t(), String.t()) :: result()
```

Deletes a customer.

# `get`

```elixir
@spec get(KapsoEx.Client.t(), String.t()) :: result()
```

Gets a customer.

# `list`

```elixir
@spec list(KapsoEx.Client.t(), map() | keyword()) :: result()
```

Lists customers, most recent first.

Params: `name_contains`, `external_customer_id`, `created_after`,
`created_before`, `page`, `per_page`.

# `update`

```elixir
@spec update(KapsoEx.Client.t(), String.t(), map() | keyword()) :: result()
```

Updates a customer's `name` or `external_customer_id`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
