Update opportunity in Odoo
CRM API · write, waits for approval · 100% field coverage
Your agent can update opportunity in Odoo through Apideck's CRM API, the same call it makes for every CRM app. It changes data in the customer's Odoo account, so it stops with the exact request until a person approves it. Apideck adds the customer's Odoo credentials, so no token ever reaches the agent.
The call
PATCH https://unify.apideck.com/crm/opportunities/{id}
Headers: x-apideck-service-id: odoo, plus your app id and the customer's consumer id. Apideck MCP tool: crm-opportunities-update. Agent operation id: unified.crm.opportunitiesUpdate.
| Parameter | In | Description |
|---|---|---|
| id · required | path | ID of the record you are acting upon. |
Body fields
| Field | Type | Description |
|---|---|---|
| title · required | string | The title or name of the opportunity. |
| primary_contact_id | string | The unique identifier of the primary contact associated with the opportunity. |
| description | string | A description of the opportunity. |
| type | string | The type of the opportunity |
| monetary_amount | number | The monetary value associated with the opportunity |
| currency | string | Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ |
| win_probability | number | The probability of winning the opportunity, expressed as a percentage. |
| close_date | string | The actual closing date for the opportunity. If close_date is null, the opportunity is not closed yet. |
| loss_reason_id | string | The unique identifier of the reason why the opportunity was lost. |
| loss_reason | string | The reason why the opportunity was lost. |
| won_reason_id | string | The unique identifier of the reason why the opportunity was won. |
| won_reason | string | The reason why the opportunity was won. |
| pipeline_id | string | The unique identifier of the pipeline associated with the opportunity |
| pipeline_stage_id | string | The unique identifier of the stage in the pipeline associated with the opportunity. |
| source_id | string | The unique identifier of the source of the opportunity. |
| lead_id | string | The unique identifier of the lead associated with the opportunity. |
| lead_source | string | The source of the lead associated with the opportunity. |
| contact_id | string | The unique identifier of the contact associated with the opportunity. |
| contact_ids | array | An array of unique identifiers of all contacts associated with the opportunity. |
| company_id | string | The unique identifier of the company associated with the opportunity. |
| company_name | string | The name of the company associated with the opportunity. |
| owner_id | string | The unique identifier of the user who owns the opportunity. |
| priority | string | The priority level of the opportunity. |
| status | string | The current status of the opportunity. |
| status_id | string | The unique identifier of the current status of the opportunity. |
| tags | array | |
| custom_fields | array | |
| stage_last_changed_at | string | The date and time when the stage of the opportunity was last changed. |
More for opportunities in Odoo
list_opportunitiescreate_opportunityget_opportunitydelete_opportunity
Update opportunity in other CRM apps
The same call works for each of these; only the service id changes.
ActActiveCampaignAttioCloseCopperFreshworks CRMHubSpotMicrosoft Dynamics CRMPipedrivePlanhatSalesflareSalesforceTeamleaderZendesk SellZoho CRM