Create Customer
POST /api/v1/customers
Required: first_name, last_name, email (must be unique). Optional: password (bcrypt-hashed automatically), phone, type.
Returns 409 Conflict if the email already exists.
curl -X POST -H "Authorization: Bearer KEY:SECRET"
-H "Content-Type: application/json"
-d '{"first_name": "Jane", "last_name": "Doe", "email": "[email protected]", "password": "securePass123"}'
https://example.com/api/v1/customers
Update Customer
PUT /api/v1/customers/{id}
Delete Customer (GDPR)
DELETE /api/v1/customers/{id}
Anonymizes the record rather than deleting — GDPR compliant. Personal data is replaced with placeholders, the account is disabled, and addresses are deleted.