Catalog products
The Catalog context is the source of truth for products.
Create a product
Use POST /v1/catalog/products to create a product.
The endpoint requires:
- An authenticated insurer user.
- The
catalog:product:writepermission. - The
X-Quarzo-Life-Idempotency-Keyheader.
The request body accepts only name and productKind.
http
POST /v1/catalog/products
X-Quarzo-Life-Idempotency-Key: create-quarzo-life
Content-Type: application/jsonjson
{
"name": "Quarzo Life",
"productKind": "life-insurance"
}The server generates the product ID and sets instrumentIds to an empty array. The endpoint returns the product with 201 Created.
Initial products
Create these products manually in each environment:
json
{ "name": "Quarzo Life", "productKind": "life-insurance" }
{ "name": "Quarzo PER", "productKind": "per" }
{ "name": "Quarzo Capi", "productKind": "capitalization" }
{ "name": "Quarzo PEA", "productKind": "pea" }Do not add these products through a database migration.
Known obstruction
The death-settlement subscriber currently rejects ProductCreated events with productKind: "pea". The subscriber is intentionally unchanged in this ticket; PEA behavior is deferred to a post-MVP change.