---
title: "Patch Opportunity"
method: PATCH
path: "/crm/opportunities/{opportunity_id}"
tags: ["CRM Service Calls"]
---

# Patch Opportunity

`PATCH /crm/opportunities/{opportunity_id}`

## Request

- Base URL: `https://fapi.ambivo.com` (the document declares no server; this is the origin it was published from)
- URL: `https://fapi.ambivo.com/crm/opportunities/{opportunity_id}`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/ambivo/apis/ambivo-api/docs/crm/opportunities/:opportunity_id/patch.ts> (a function with typed inputs; its response is checked against the schema)

Update an existing opportunity/deal by ID.

Send only the fields you want to change. Returns 400 if no fields are provided.

**Path Parameters:**

- **opportunity_id**: The opportunity's CRM record ID.

**Request Body (OpportunityUpdateRequest):** Fields: name, stage, value_of_sale,
probability_pcnt, expected_close_date, marketing_source, business_need_description,
product_dict_list. All optional — only included fields are updated.

**Response:** The updated deal object.

## Path parameters

- `opportunity_id` string, required

## Request body

- OpportunityUpdateRequest: Request to update an existing opportunity/deal.
  - `name` string, nullable: Opportunity name
  - `stage` string, nullable: Possible values: draft, prospecting, discovery, developing, negotiation_review, contract_pending, closed_won, closed_lost
  - `value_of_sale` number, nullable: Deal amount
  - `probability_pcnt` number, nullable: Win probability 0-1 (e.g. 0.75 = 75%)
  - `expected_close_date` integer, nullable: Expected close date (epoch timestamp)
  - `marketing_source` string, nullable: Marketing source name
  - `business_need_description` string, nullable: Business need / pain points
  - `product_dict_list` unknown[], nullable: Array of product objects, e.g. [{"product_id":"...","unit_amount":50000,"unit_count":1}]
    - unknown

## Response `200`

Successful Response

- DealResponse
  - `id` string, required
  - `name` string, required
  - `stage` string, required
  - `marketing_source` string, nullable
  - `agent_name` string, nullable
  - `agent_email` string, nullable
  - `agent_phone` string, nullable
  - `contact_name` string, nullable
  - `contact_email` string, nullable
  - `contact_phone` string, nullable
  - `account_name` string, nullable
  - `account_email` string, nullable
  - `product_dict_list` unknown[], nullable
    - unknown
  - `value_of_sale` string, nullable
  - `estimated_value_of_sale` string, nullable
  - `created_date` string, nullable
  - `updated_date` string, nullable
  - `expected_close_date` string, nullable
  - `close_date` string, nullable
  - `renewal_date` string, nullable

## Other responses

- `422`: Validation Error

## Changes

- **2026-08-06** `165a6d16a9a0`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ambivo/apis/ambivo-api/changes/crm/opportunities/:opportunity_id/patch.md)

---

[API](https://skmtc.dev/ambivo/apis/ambivo-api.md) - [All operations](https://skmtc.dev/ambivo/apis/ambivo-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ambivo/apis/ambivo-api/revisions/165a6d16a9a0?raw)
