PV modules
The PV modules in your catalog. Their electrical data is needed to plan the strings, so it is required.
List PV modules
Returns the PV modules in your catalog, most recently changed first. Filter with `name`, `manufacturerId`, `archived` or one of the article numbers, sort with `sort` and page with `limit` and `offset`. The technical data is in `specs`. Requires the `read:materials` scope.
Create a PV module
Adds a PV module to your catalog. Send `purchasePrice` with what you pay for it; the selling prices (`sellingPrices`) follow from it and the margins of your company sites. Requires the `write:materials` scope.
Update a PV module by manufacturer article number
Same as updating by id, but the product is found by its `manufacturerArticleNumber` (add `manufacturerId` when two manufacturers use the same number). Handy for syncing a price list, which carries these numbers but not our ids. Only active products are considered.
Delete a PV module by manufacturer article number
Same as deleting by id, but the product is found by its `manufacturerArticleNumber` (add `manufacturerId` when two manufacturers use the same number). Only active products are considered.
Get a PV module
Returns one PV module. To find it by manufacturer article number, use the list with `?manufacturerArticleNumber=`. Requires the `read:materials` scope.
Update a PV module
Changes a PV module. Send only the fields to change; the others keep their value. For a new purchase price send `purchasePrice` with `pricePerPiece` and `vendorName`: the price this vendor already has for the product is updated (a new vendor gets one) and becomes the current price. To take the product off new offers without deleting it, send `archived: true`. Requires the `write:materials` scope. To find the product by its manufacturer article number instead of the id, call the same method on `/v1/materials/pv-modules?manufacturerArticleNumber=…`.
Delete a PV module
Deletes a PV module from your catalog. A product that is on an offer cannot be deleted; archive it instead with `archived: true`: it stays on existing offers but can no longer be added to new ones. Requires the `write:materials` scope. To find the product by its manufacturer article number instead of the id, call the same method on `/v1/materials/pv-modules?manufacturerArticleNumber=…`.