{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/Customer", "title": "Customer", "type": "object", "description": "A customer account with authentication credentials, addresses, and commerce profile data.", "required": [ "id", "version", "email", "isEmailVerified", "addresses" ], "properties": { "id": { "type": "string", "description": "System-generated unique identifier." }, "version": { "type": "integer", "description": "Current version for optimistic concurrency control." }, "key": { "type": "string", "description": "User-defined unique identifier." }, "email": { "type": "string", "format": "email", "description": "Customer email address, unique within the project or store." }, "firstName": { "type": "string", "description": "Customer first name." }, "lastName": { "type": "string", "description": "Customer last name." }, "isEmailVerified": { "type": "boolean", "description": "Whether the customer email has been verified." }, "customerGroup": { "$ref": "#/components/schemas/Reference" }, "addresses": { "type": "array", "items": { "$ref": "#/components/schemas/Address" }, "description": "Saved addresses for the customer." }, "stores": { "type": "array", "items": { "$ref": "#/components/schemas/Reference" }, "description": "Stores the customer is assigned to." }, "createdAt": { "type": "string", "format": "date-time", "description": "ISO 8601 timestamp when the customer was created." }, "lastModifiedAt": { "type": "string", "format": "date-time", "description": "ISO 8601 timestamp when the customer was last modified." } } }