---
title: "Update Deal"
method: PATCH
path: "/opportunities/{opportunity_id}"
tags: ["Deals"]
---

# Update Deal

`PATCH /opportunities/{opportunity_id}`

This endpoint doesn't consume Apollo credits. Learn more about [API pricing and credits](https://docs.apollo.io/docs/api-pricing).

<a href="https://knowledge.apollo.io/hc/en-us/articles/4415062467725-Deals-Overview" target="_blank">Deals</a> on Apollo help you track sales opportunities.<br><br>Use the Update Deal endpoint to update the details of existing deals within your team's Apollo account.<br><br>To create new deals in your Apollo account, use the <a href="https://docs.apollo.io/reference/create-deal">Create Deal endpoint</a> instead.<br><br>This endpoint requires a master API key. If you call the endpoint without a master key, you receive a `403` response. Check out <a href="https://docs.apollo.io/docs/create-api-key">Create an API Key</a> to learn how to create a master key.

## Path parameters

- `opportunity_id` string, required

## Request body

- object
  - `owner_id` string — The ID for the deal owner within your team's Apollo account. Enter a different ID to update the owner of the deal. <br><br>Use the <a href="https://docs.apollo.io/reference/get-a-list-of-users" target="_blank">Get a List of Users endpoint</a> to retrieve IDs for all of the users within your Apollo account. <br><br>Example: `66302798d03b9601c7934ebf`
  - `name` string — Update the name of the deal. This should be a human-readable name. <br><br>Example: `Massive Q3 Deal`
  - `amount` string — The monetary value of the deal. Enter a different value to update the deal amount. <br><br>Do not enter commas or currency symbols for the value. The currency is automatically populated by the settings within your Apollo account. Commas are not accepted and result in the deal amount being left blank. <br><br>Example: `55123478` (results in a deal value of `$55,123,478` if the default currency is USD)
  - `opportunity_stage_id` string — The ID for the deal stage within your team's Apollo account. Enter a different ID to update the deal stage. <br><br>Each deal stage is assigned a unique ID. To find deal stage IDs, call the <a href="https://docs.apollo.io/reference/list-deal-stages" target="_blank">List Deal Stages endpoint</a> and identify the value for `id` for each stage. <br><br>Example: `6095a710bd01d100a506d4bd`
  - `closed_date` string, date — Update the estimated close date for the deal. This can be a future or past date. <br><br>The date should be formatted as `YYYY-MM-DD`. <br><br>Example: `2025-10-30`
  - `typed_custom_fields` object — Add information to <a href="https://knowledge.apollo.io/hc/en-us/articles/4415062486669-Create-a-Deal" target="_blank">custom fields</a> in Apollo. <br><br><b>Your custom fields are unique to your team's Apollo account. This means that the examples in this documentation may not work for your testing purposes.</b> <br><br>To utilize this parameter successfully, call the <a href="https://docs.apollo.io/reference/get-a-list-of-all-custom-fields">Get a List of All Custom Fields</a> endpoint and identify the `id` value for the custom field, as well as the appropriate data type. For example, if a custom field accepts picklist entries, you need to pass the accompanying `id` value for the picklist entry that you want to use as the input value. <br><br><b>Example</b>: When the <a href="https://docs.apollo.io/reference/get-a-list-of-all-custom-fields">Get a List of All Custom Fields</a> endpoint returns an `id` of field: * `"60c39ed82bd02f01154c470a"` (datetime) then the value passed should be: `{"60c39ed82bd02f01154c470a": "2025-08-07"}`

## Response `200`

200

- object
  - `opportunity` object
    - `id` string
    - `team_id` string
    - `owner_id` string
    - `salesforce_owner_id` unknown
    - `amount` integer
    - `closed_date` string
    - `account_id` string
    - `description` unknown
    - `is_closed` boolean
    - `is_won` boolean
    - `name` string
    - `stage_name` unknown
    - `opportunity_stage_id` string
    - `source` string
    - `salesforce_id` unknown
    - `created_at` string
    - `actual_close_date` unknown
    - `next_step` unknown
    - `next_step_date` unknown
    - `closed_lost_reason` unknown
    - `closed_won_reason` unknown
    - `forecast_category` string
    - `deal_probability` integer
    - `created_by_id` string
    - `current_solutions` unknown
    - `deal_source` unknown
    - `manually_updated_probability` unknown
    - `manually_updated_forecast` unknown
    - `crm_id` unknown
    - `crm_record_url` unknown
    - `crm_owner_id` unknown
    - `probability` unknown
    - `opportunity_pipeline_id` unknown
    - `stage_updated_at` string
    - `next_step_last_updated_at` unknown
    - `exchange_rate_code` string
    - `exchange_rate_value` integer
    - `amount_in_team_currency` integer
    - `forecasted_revenue` number
    - `last_activity_date` string
    - `existence_level` string
    - `typed_custom_fields` object
    - `opportunity_rule_config_statuses` unknown[]
      - unknown
    - `opportunity_contact_roles` unknown[]
      - unknown
    - `currency` object
      - `name` string
      - `iso_code` string
      - `symbol` string

## Other responses

- `401` — 401
- `403` — 403
- `422` — 422
- `429` — 429

---

[API](https://skmtc.dev/apollo/apis/apollo-rest-api.md) · [All operations](https://skmtc.dev/apollo/apis/apollo-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/apollo/apollo-rest-api/revisions/c715a05fa6e2/schema)
