Woocommerce Rest Api Customer Structure
A WooCommerce customer account.
Customer is a JSON Structure definition published by WooCommerce, describing 15 properties. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
Properties
Meta-schema: https://json-structure.org/meta/core/v0/#
JSON Structure
{
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/woocommerce/refs/heads/main/json-structure/woocommerce-rest-api-customer-structure.json",
"name": "Customer",
"description": "A WooCommerce customer account.",
"type": "object",
"properties": {
"id": {
"type": "int32",
"description": "Customer unique identifier.",
"example": 1
},
"date_created": {
"type": "datetime",
"description": "Date the customer was created.",
"example": "2026-05-03T14:30:00Z"
},
"date_modified": {
"type": "datetime",
"description": "Date the customer was last modified.",
"example": "2026-05-03T14:30:00Z"
},
"email": {
"type": "string",
"format": "email",
"description": "Customer email address.",
"example": "user@example.com"
},
"first_name": {
"type": "string",
"description": "Customer first name.",
"example": "Example Name"
},
"last_name": {
"type": "string",
"description": "Customer last name.",
"example": "Example Name"
},
"role": {
"type": "string",
"description": "Customer WordPress user role.",
"example": "string-value"
},
"username": {
"type": "string",
"description": "Customer login username.",
"example": "Example Name"
},
"billing": {
"type": "object",
"description": "Billing or shipping address associated with a customer or order.",
"properties": {
"first_name": {
"type": "string",
"description": "First name.",
"example": "Example Name"
},
"last_name": {
"type": "string",
"description": "Last name.",
"example": "Example Name"
},
"company": {
"type": "string",
"description": "Company name.",
"example": "string-value"
},
"address_1": {
"type": "string",
"description": "Address line 1.",
"example": "string-value"
},
"address_2": {
"type": "string",
"description": "Address line 2.",
"example": "string-value"
},
"city": {
"type": "string",
"description": "City name.",
"example": "string-value"
},
"state": {
"type": "string",
"description": "ISO code or name of the state, province, or district.",
"example": "string-value"
},
"postcode": {
"type": "string",
"description": "Postal code.",
"example": "string-value"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code.",
"example": "string-value"
},
"email": {
"type": "string",
"format": "email",
"description": "Email address (billing only).",
"example": "user@example.com"
},
"phone": {
"type": "string",
"description": "Phone number (billing only).",
"example": "string-value"
}
}
},
"shipping": {
"type": "object",
"description": "Billing or shipping address associated with a customer or order.",
"properties": {
"first_name": {
"type": "string",
"description": "First name.",
"example": "Example Name"
},
"last_name": {
"type": "string",
"description": "Last name.",
"example": "Example Name"
},
"company": {
"type": "string",
"description": "Company name.",
"example": "string-value"
},
"address_1": {
"type": "string",
"description": "Address line 1.",
"example": "string-value"
},
"address_2": {
"type": "string",
"description": "Address line 2.",
"example": "string-value"
},
"city": {
"type": "string",
"description": "City name.",
"example": "string-value"
},
"state": {
"type": "string",
"description": "ISO code or name of the state, province, or district.",
"example": "string-value"
},
"postcode": {
"type": "string",
"description": "Postal code.",
"example": "string-value"
},
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 country code.",
"example": "string-value"
},
"email": {
"type": "string",
"format": "email",
"description": "Email address (billing only).",
"example": "user@example.com"
},
"phone": {
"type": "string",
"description": "Phone number (billing only).",
"example": "string-value"
}
}
},
"is_paying_customer": {
"type": "boolean",
"description": "Whether the customer has placed at least one order.",
"example": true
},
"orders_count": {
"type": "int32",
"description": "Total number of orders placed by the customer.",
"example": 1
},
"total_spent": {
"type": "string",
"description": "Total amount spent by the customer as a decimal string.",
"example": "string-value"
},
"avatar_url": {
"type": "uri",
"description": "URL of the customer's Gravatar image.",
"example": "https://example.com/path"
},
"meta_data": {
"type": "array",
"description": "Custom metadata attached to the customer.",
"items": {
"type": "object",
"description": "Custom metadata key-value entry.",
"properties": {
"id": {
"type": "int32",
"description": "Metadata unique identifier.",
"example": 1
},
"key": {
"type": "string",
"description": "Metadata key.",
"example": "string-value"
},
"value": {
"type": "string",
"description": "Metadata value.",
"example": "string-value"
}
}
},
"example": [
"string-value"
]
}
}
}
Work with this as data
Every JSON Structure here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for json structure
4 MCP tools reach this
find_json_structuresBrowse and filter every JSON Structure in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-structures/woocommerce-rest-api-customer-structure"
curl "https://apis.io/api/v1/json-structures?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.