Skip to main content

Method

PATCH /v1/products/:id/transport/configs/:configId/addons

Path Parameters

id
uuid
Product ID that owns the config.
configId
uuid
Transport config ID.

Body Parameters

Headers

Authorization
string
Bearer token (requires products:write).
content-type
string
application/json

Request Example

curl -X PATCH "https://api.voyantcloud.com/v1/products/prod_123/transport/configs/cfg_001/addons" \
  -H "Authorization: Bearer $VOYANT_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "rows": [
      {
        "name": "Extra checked bag (23kg)",
        "pricing": { "type": "per_pax", "price": 40, "currency": "EUR" },
        "required": false,
        "selectable": true
      },
      {
        "id": "addon_002",
        "name": "Priority boarding",
        "pricing": { "type": "per_pax", "price": 25, "currency": "EUR" },
        "required": false,
        "selectable": true
      }
    ]
  }'

Response

{
  "items": [
    {
      "id": "addon_001",
      "name": "Extra checked bag (23kg)",
      "pricing": { "type": "per_pax", "price": 40, "currency": "EUR" },
      "required": false,
      "selectable": true
    },
    {
      "id": "addon_003",
      "name": "Priority boarding",
      "pricing": { "type": "per_pax", "price": 25, "currency": "EUR" },
      "required": false,
      "selectable": true
    }
  ]
}
Rows with an id are replaced; rows without an id create new addons. The endpoint returns the full set of addons after upsert.