VAS Costs
Per-VAS, per-tag pricing. Updates propagate to channel_value_added_service and listing_channel_value_added_service. Supports single, bulk, and CSV upload/export.
📄️ List VAS costs (paginated)
Returns a page of VAS cost rows. Default size is 20. When `vasId` is supplied, all matching rows are returned without pagination (cardinality is naturally small — one row per tag × optional variant).
📄️ Upsert one VAS cost
Sets the (vasId, variantId?, tagName) row. For simple strategies (FIXED / PER_PERSON / PER_ITEM / PER_QUANTITY / PER_HOUR / PER_KM) the `price` column alone is enough. Complex strategies (BASE_PLUS_OVERAGE, TIERED, ON_ACTUALS) carry their parameters in `pricingConfig`. Updates propagate to listing_channel_value_added_service via FK.
📄️ Export all VAS costs as CSV
Streams `vas_costs.csv`.
📄️ Download a CSV template
Streams `vas_costs_sample.csv`.
📄️ Get a VAS cost row by its numeric id
Get a VAS cost row by its numeric id
📄️ Delete a VAS cost row by id
Removes the row. Cascades to listing_channel_value_added_service rows that reference this vas_cost_id (their FK is ON DELETE CASCADE).
📄️ Upsert VAS costs in bulk
Upsert VAS costs in bulk
📄️ Bulk upsert from CSV upload
Multipart/form-data upload. Field name `file`. Use the `/sample` endpoint to download a template.