Upsert VAS costs for one or more tags
POST/api/v1/pms/vas-costs
Sets the (vasId, variantId?, tagName) row for every tag in tagName. 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. tagName is an array, so one configuration can cover several tags — "tagName": ["GOA", "purple"] writes two rows. A bare string is still accepted and read as a one-element array. Blank entries and an empty array are rejected; repeated tags are collapsed. The response data is always an array, one persisted row per tag, in the order supplied. Updates propagate to listing_channel_value_added_service via FK.
Request
Responses
- 200
- 400
Updated and propagated — one row per tag, each carrying its surrogate id.
Blank/empty tagName, unknown vasId, or a failed pricing validation.