Customer tools
Create, read, update, and delete customer records.
The five customer tools cover the full lifecycle. All accept the same identifiers and field shapes as the REST /v1/customers endpoints.
Tools
create_customer
Create a new customer with name, email, phone, address, and optional metadata.
| readOnly | destructive | idempotent | openWorld |
|---|---|---|---|
false | false | true | false |
Pass an idempotency_key if a retry is possible — emails and phones are unique per merchant, and a duplicate without a key would return email_already_exists.
list_customers
List customers with optional filters (email, phone, created date range), cursor pagination.
| readOnly | destructive | idempotent | openWorld |
|---|---|---|---|
true | false | true | false |
get_customer
Get a single customer by id, including the array of attached payment methods.
| readOnly | destructive | idempotent | openWorld |
|---|---|---|---|
true | false | true | false |
update_customer
Patch one or more fields. Only the fields you send change.
| readOnly | destructive | idempotent | openWorld |
|---|---|---|---|
false | false | true | false |
delete_customer
Soft-delete a customer. Returns an error if the customer has active subscriptions (customer_has_active_subscriptions).
| readOnly | destructive | idempotent | openWorld |
|---|---|---|---|
false | true | true | false |
A well-built agent should require human confirmation before calling delete_customer in live mode.