Skip to main content
POST
Push Material Tonnage

Authorizations

Authorization
string
header
required

API key generated in Settings > API Keys. Include as Authorization: Bearer <key>.

Body

application/json

One aggregate-tonnage row for POST /api/ppwr/tonnage. Upsert key: (zsvrCategory, periodYear, market). LUCID (Germany) only.

periodYear
required
Required range: 2000 <= x <= 2100
market
string
required

ISO alpha-2 market code.

Pattern: ^[A-Za-z]{2}$
zsvrCategory
enum<string>
required

VerpackG material category: 10000 glass, 20000 paper/board/carton, 30000 ferrous metals, 40000 aluminium, 50000 plastics, 60000 beverage cartons, 70000 other composites, 80000 other materials.

Available options:
10000,
20000,
30000,
40000,
50000,
60000,
70000,
80000
tonnageKg
number
required

Kilograms placed. A JSON number — unlike the intake row schemas, this field is not string-coerced.

Required range: x >= 0
note
string | null
Maximum string length: 500

Response

Tonnage result

Result of the synchronous tonnage intake. A category a human entered in the app is reported in skipped, never overwritten; delete the override in the app and the next push recreates it as ERP-owned.

written
object[]
required
skipped
object[]
required
failed
object[]
required

Rows that hit an unexpected database error (dbError). Reported per row — the categories that committed are kept.

invalid
object[]
required

Rows rejected by schema validation.