# Upsert a Portfolio Property Value **PUT /portfolio_property_values** Create or update a single portfolio property value for a portfolio company profile. Pass the portfolio property and portfolio company profile identifiers along with the value, and the API will either create a new record or update the existing one if it already exists for that `(portfolio_property_id, portfolio_company_profile_id)` pair. For properties with `data_type` of `select` or `multiselect`, you must send option IDs instead of option labels: - For `select` properties, use `portfolio_property_option_id` with the UUID of a single option. - For `multiselect` properties, use `portfolio_property_option_ids` with an array of option UUIDs. For all other data types (string, text, url, number, date, rich_text) use the generic `value` field. ## Servers - Production server: https://api.visible.vc (Production server) ## Authentication methods - Bearer auth ## Parameters ### Body: application/json (object) - **portfolio_property_value** (object) ## Responses ### 201 Portfolio property value successfully created #### Body: application/json (object) - **portfolio_property_value** (object) ### 200 Portfolio property value successfully updated #### Body: application/json (object) - **portfolio_property_value** (object) ### 400 Bad Request - The request is invalid or malformed #### Body: application/json (object) - **errors** (array[object]) ### 401 Unauthorized - Invalid or missing authentication token #### Body: application/json (object) - **errors** (array[object]) ### 403 Forbidden - The authenticated user does not have access to the requested resource #### Body: application/json (object) - **errors** (array[object]) ### 422 Unprocessable Entity - The request is valid but contains semantic errors #### Body: application/json (object) - **errors** (array[object]) ### 429 Too Many Requests - Rate limit exceeded #### Body: application/json (object) - **errors** (array[object]) [Powered by Bump.sh](https://bump.sh)