Overview #
List customers #
GET
/api/admin/26.0/customers
Parameters
| Field | Type | Description |
|---|---|---|
| limit | integer | [Optional] Number of results to return (default 20, max 10000) |
| page | integer | [Optional] Page number to fetch (default 1) |
| sort_by | string | [Optional] Field to sort by (e.g. created_at, title) |
| sort_order | string | [Optional] Sort direction: asc or desc |
| search | string | [Optional] Search by name or email |
| string | [Optional] Filter by email address | |
| phone | string | [Optional] Filter by phone number |
Headers
| Header | Value |
|---|---|
| X-Joonweb-Access-Token | jw_at_xxxxxxxxxxxx |
| Content-Type | application/json |
Request Example
Response
200 OK
{
"customers": [
{
"id": 84920,
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"phone": "+15550198273",
"accepts_marketing": true,
"orders_count": 4,
"total_spent": 549.9600000000000363797880709171295166015625,
"currency": "USD",
"state": "enabled",
"created_at": "2026-08-27T11:31:04+02:00",
"updated_at": "2026-08-27T11:31:04+02:00",
"default_address": {
"id": 10293,
"first_name": "Jane",
"last_name": "Doe",
"company": "Doe Tech",
"address1": "123 Developer Way",
"address2": "Suite 100",
"city": "San Francisco",
"province": "California",
"country": "United States",
"zip": "94105",
"phone": "+15550198273",
"province_code": "CA",
"country_code": "US",
"country_name": "United States",
"default": true
}
}
],
"pagination": {
"current_page": 1,
"per_page": 20,
"total": 1,
"total_pages": 1
}
}
Get customer #
GET
/api/admin/26.0/customers/{id}
Parameters
| Field | Type | Description |
|---|---|---|
| id | integer/string | [Required] The resource ID or handle |
Headers
| Header | Value |
|---|---|
| X-Joonweb-Access-Token | jw_at_xxxxxxxxxxxx |
| Content-Type | application/json |
Request Example
Response
200 OK
{
"customer": {
"id": 84920,
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"phone": "+15550198273",
"accepts_marketing": true,
"orders_count": 4,
"total_spent": 549.9600000000000363797880709171295166015625,
"currency": "USD",
"state": "enabled",
"created_at": "2026-08-27T11:31:04+02:00",
"updated_at": "2026-08-27T11:31:04+02:00",
"default_address": {
"id": 10293,
"first_name": "Jane",
"last_name": "Doe",
"company": "Doe Tech",
"address1": "123 Developer Way",
"address2": "Suite 100",
"city": "San Francisco",
"province": "California",
"country": "United States",
"zip": "94105",
"phone": "+15550198273",
"province_code": "CA",
"country_code": "US",
"country_name": "United States",
"default": true
}
}
}
Create customer #
POST
/api/admin/26.0/customers
Parameters
| Field | Type | Description |
|---|---|---|
| first_name | string | [Optional] Customer first name |
| last_name | string | [Optional] Customer last name |
| string | [Required for POST] Customer email address | |
| phone | string | [Optional] Customer phone number |
| accepts_marketing | boolean | [Optional] Marketing opt-in |
| default_address | object | [Optional] Address object (address1, city, country, etc.) |
Headers
| Header | Value |
|---|---|
| X-Joonweb-Access-Token | jw_at_xxxxxxxxxxxx |
| Content-Type | application/json |
Request Example
Request Body
{
"customer": {
"email": "[email protected]",
"username": "example_username",
"name": "example_name",
"mobile": "example_mobile",
"password": "example_password",
"avatar": "example_avatar",
"data": {},
"status": "active",
"type": "example_type"
}
}
Response
200 OK
{
"customer": {
"id": 84920,
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"phone": "+15550198273",
"accepts_marketing": true,
"orders_count": 4,
"total_spent": 549.9600000000000363797880709171295166015625,
"currency": "USD",
"state": "enabled",
"created_at": "2026-08-27T11:31:04+02:00",
"updated_at": "2026-08-27T11:31:04+02:00",
"default_address": {
"id": 10293,
"first_name": "Jane",
"last_name": "Doe",
"company": "Doe Tech",
"address1": "123 Developer Way",
"address2": "Suite 100",
"city": "San Francisco",
"province": "California",
"country": "United States",
"zip": "94105",
"phone": "+15550198273",
"province_code": "CA",
"country_code": "US",
"country_name": "United States",
"default": true
}
}
}
Update customer #
PUT
/api/admin/26.0/customers/{id}
Parameters
| Field | Type | Description |
|---|---|---|
| id | integer/string | [Required] The resource ID or handle |
| first_name | string | [Optional] Customer first name |
| last_name | string | [Optional] Customer last name |
| string | [Required for POST] Customer email address | |
| phone | string | [Optional] Customer phone number |
| accepts_marketing | boolean | [Optional] Marketing opt-in |
| default_address | object | [Optional] Address object (address1, city, country, etc.) |
Headers
| Header | Value |
|---|---|
| X-Joonweb-Access-Token | jw_at_xxxxxxxxxxxx |
| Content-Type | application/json |
Request Example
Request Body
{
"customer": []
}
Response
200 OK
{
"customer": {
"id": 84920,
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"phone": "+15550198273",
"accepts_marketing": true,
"orders_count": 4,
"total_spent": 549.9600000000000363797880709171295166015625,
"currency": "USD",
"state": "enabled",
"created_at": "2026-08-27T11:31:04+02:00",
"updated_at": "2026-08-27T11:31:04+02:00",
"default_address": {
"id": 10293,
"first_name": "Jane",
"last_name": "Doe",
"company": "Doe Tech",
"address1": "123 Developer Way",
"address2": "Suite 100",
"city": "San Francisco",
"province": "California",
"country": "United States",
"zip": "94105",
"phone": "+15550198273",
"province_code": "CA",
"country_code": "US",
"country_name": "United States",
"default": true
}
}
}
Delete customer #
DELETE
/api/admin/26.0/customers/{id}
Parameters
| Field | Type | Description |
|---|---|---|
| id | integer/string | [Required] The resource ID or handle |
Headers
| Header | Value |
|---|---|
| X-Joonweb-Access-Token | jw_at_xxxxxxxxxxxx |
| Content-Type | application/json |
Request Example
Response
200 OK
{
"success": true,
"message": "Deleted successfully"
}
List customer orders #
GET
/api/admin/26.0/customers/{id}/orders
Parameters
| Field | Type | Description |
|---|---|---|
| id | integer/string | [Required] The resource ID or handle |
Headers
| Header | Value |
|---|---|
| X-Joonweb-Access-Token | jw_at_xxxxxxxxxxxx |
| Content-Type | application/json |
Request Example
Response
200 OK
{
"orders": [
{
"id": 104938,
"email": "[email protected]",
"created_at": "2026-08-27T11:31:04+02:00",
"updated_at": "2026-08-27T11:31:04+02:00",
"number": 1004,
"order_number": "#1004",
"total_price": 149.990000000000009094947017729282379150390625,
"subtotal_price": 149.990000000000009094947017729282379150390625,
"total_weight": 0.450000000000000011102230246251565404236316680908203125,
"total_tax": 0,
"taxes_included": false,
"currency": "USD",
"financial_status": "paid",
"fulfillment_status": "unfulfilled",
"total_discounts": 0,
"total_line_items_price": 149.990000000000009094947017729282379150390625,
"customer": {
"id": 84920,
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"phone": "+15550198273",
"accepts_marketing": true,
"orders_count": 4,
"total_spent": 549.9600000000000363797880709171295166015625,
"currency": "USD",
"state": "enabled",
"created_at": "2026-08-27T11:31:04+02:00",
"updated_at": "2026-08-27T11:31:04+02:00",
"default_address": {
"id": 10293,
"first_name": "Jane",
"last_name": "Doe",
"company": "Doe Tech",
"address1": "123 Developer Way",
"address2": "Suite 100",
"city": "San Francisco",
"province": "California",
"country": "United States",
"zip": "94105",
"phone": "+15550198273",
"province_code": "CA",
"country_code": "US",
"country_name": "United States",
"default": true
}
},
"line_items": [
{
"id": 48291,
"variant_id": 4920,
"product_id": 104593,
"title": "Premium Wireless Headphones",
"quantity": 1,
"sku": "ATH-BLK-01",
"price": 149.990000000000009094947017729282379150390625,
"vendor": "AudioTech",
"fulfillment_status": "unfulfilled",
"taxable": true
}
],
"billing_address": {
"id": 10293,
"first_name": "Jane",
"last_name": "Doe",
"company": "Doe Tech",
"address1": "123 Developer Way",
"address2": "Suite 100",
"city": "San Francisco",
"province": "California",
"country": "United States",
"zip": "94105",
"phone": "+15550198273",
"province_code": "CA",
"country_code": "US",
"country_name": "United States",
"default": true
},
"shipping_address": {
"id": 10293,
"first_name": "Jane",
"last_name": "Doe",
"company": "Doe Tech",
"address1": "123 Developer Way",
"address2": "Suite 100",
"city": "San Francisco",
"province": "California",
"country": "United States",
"zip": "94105",
"phone": "+15550198273",
"province_code": "CA",
"country_code": "US",
"country_name": "United States",
"default": true
}
}
],
"pagination": {
"current_page": 1,
"per_page": 20,
"total": 1,
"total_pages": 1
}
}
List customer addresses #
GET
/api/admin/26.0/customers/{id}/addresses
Parameters
| Field | Type | Description |
|---|---|---|
| id | integer/string | [Required] The resource ID or handle |
Headers
| Header | Value |
|---|---|
| X-Joonweb-Access-Token | jw_at_xxxxxxxxxxxx |
| Content-Type | application/json |
Request Example
Response
200 OK
{
"addresses": [
{
"id": 10293,
"first_name": "Jane",
"last_name": "Doe",
"company": "Doe Tech",
"address1": "123 Developer Way",
"address2": "Suite 100",
"city": "San Francisco",
"province": "California",
"country": "United States",
"zip": "94105",
"phone": "+15550198273",
"province_code": "CA",
"country_code": "US",
"country_name": "United States",
"default": true
}
]
}
List customer metafields #
GET
/api/admin/26.0/customers/{id}/metafields.json
Parameters
| Field | Type | Description |
|---|---|---|
| id | integer/string | [Required] The resource ID or handle |
Headers
| Header | Value |
|---|---|
| X-Joonweb-Access-Token | jw_at_xxxxxxxxxxxx |
| Content-Type | application/json |
Request Example
Response
200 OK
{
"customer": {
"id": 84920,
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"phone": "+15550198273",
"accepts_marketing": true,
"orders_count": 4,
"total_spent": 549.9600000000000363797880709171295166015625,
"currency": "USD",
"state": "enabled",
"created_at": "2026-08-27T11:31:04+02:00",
"updated_at": "2026-08-27T11:31:04+02:00",
"default_address": {
"id": 10293,
"first_name": "Jane",
"last_name": "Doe",
"company": "Doe Tech",
"address1": "123 Developer Way",
"address2": "Suite 100",
"city": "San Francisco",
"province": "California",
"country": "United States",
"zip": "94105",
"phone": "+15550198273",
"province_code": "CA",
"country_code": "US",
"country_name": "United States",
"default": true
}
}
}
Create customer metafield #
POST
/api/admin/26.0/customers/{id}/metafields.json
Parameters
| Field | Type | Description |
|---|---|---|
| id | integer/string | [Required] The resource ID or handle |
| namespace | string | [Required] Grouping namespace |
| key | string | [Required] Metafield key |
| value | string | [Required] Metafield value |
| value_type | string | [Required] string, integer, json, etc. |
| description | string | [Optional] Description of the metafield |
Headers
| Header | Value |
|---|---|
| X-Joonweb-Access-Token | jw_at_xxxxxxxxxxxx |
| Content-Type | application/json |
Request Example
Response
200 OK
{
"customer": {
"id": 84920,
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"phone": "+15550198273",
"accepts_marketing": true,
"orders_count": 4,
"total_spent": 549.9600000000000363797880709171295166015625,
"currency": "USD",
"state": "enabled",
"created_at": "2026-08-27T11:31:04+02:00",
"updated_at": "2026-08-27T11:31:04+02:00",
"default_address": {
"id": 10293,
"first_name": "Jane",
"last_name": "Doe",
"company": "Doe Tech",
"address1": "123 Developer Way",
"address2": "Suite 100",
"city": "San Francisco",
"province": "California",
"country": "United States",
"zip": "94105",
"phone": "+15550198273",
"province_code": "CA",
"country_code": "US",
"country_name": "United States",
"default": true
}
}
}