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/v1/ppwr/tonnage. Upsert key: (zsvrCategory, periodYear, market). LUCID (Germany) only.

periodYear
integer
required

Calendar reporting year (2000–2100).

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

ISO alpha-2 market code.

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

The VerpackG material category (see ZsvrCategory).

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

Optional note (at most 500 characters).

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

The categories written (created or updated) by this request.

skipped
object[]
required

The categories not written because a figure entered in the app takes precedence.

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.