--- title: 'PUT /customers/{id}' description: 'Create or update a person' --- # PUT /customers/{id} Create or update a person | Detail | Value | |---|---| | Operation ID | `customers.identify` | | Method | `PUT` | | Path | `/customers/{id}` | | Connector | [Customer.io Track API](./) | ## Parameters | Name | Location | Type | Required | |---|---|---|---| | `id` | path | string | **Yes** | ## Request Body | Field | Type | |---|---| | `email` | string | | `created_at` | integer | | `anonymous_id` | string | ## Using this endpoint in a workflow 1. Add an **API Call** node to your workflow. 2. Pick your Customer.io Track API connection from the Connection dropdown. 3. In the Operation dropdown, select `customers.identify`. 4. Fill in the parameter fields that appear. Use `{{...}}` to reference upstream values. **Required fields are marked — fill them or the call will fail at runtime.** ## What it returns The `API Call` node writes the response to the workflow context: ``` { status: 200, success: true, data: { ...response body from the API... }, latencyMs: 142 } ``` Reference response fields downstream as {{nodeId.data.path}}. The exact response shape is documented on the upstream Customer.io Track API API reference.