CRM Opportunities
Create, list, update, and delete sales opportunities in the Talkturo CRM — track deal value, stage, associated contacts and companies, and expected close dates.
curl -X GET "https://app.talkturo.com/api/crm/opportunities?page=1&limit=25&search=renewal&companyId=cmp_7f3d21a9" \
-H "Cookie: sb-access-token=example_session_cookie"
const params = new URLSearchParams({
page: "1",
limit: "25",
search: "renewal",
companyId: "cmp_7f3d21a9"
});
const response = await fetch(`/api/crm/opportunities?${params}`, {
method: "GET",
credentials: "include"
});
const data = await response.json();
console.log(data);
{
"success": true,
"opportunities": [
{
"id": "opp_2d91c6f4",
"title": "Q3 Platform Renewal",
"value": 24000,
"stage": "proposal",
"contact_id": "cnt_91b4a2e7",
"company_id": "cmp_7f3d21a9",
"expected_close_date": "2026-09-30"
}
],
"total": 1,
"page": 1
}
curl -X POST "https://app.talkturo.com/api/crm/opportunities" \
-H "Content-Type: application/json" \
-H "Cookie: sb-access-token=example_session_cookie" \
-d '{
"title": "Enterprise Expansion - Northwind Health",
"value": 48000,
"stage": "qualified",
"contact_id": "cnt_91b4a2e7",
"company_id": "cmp_7f3d21a9",
"expected_close_date": "2026-10-15"
}'
const response = await fetch("/api/crm/opportunities", {
method: "POST",
credentials: "include",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
title: "Enterprise Expansion - Northwind Health",
value: 48000,
stage: "qualified",
contact_id: "cnt_91b4a2e7",
company_id: "cmp_7f3d21a9",
expected_close_date: "2026-10-15"
})
});
const data = await response.json();
console.log(data);
{
"success": true,
"opportunity": {
"id": "opp_6c52a1ef",
"title": "Enterprise Expansion - Northwind Health",
"value": 48000,
"stage": "qualified",
"contact_id": "cnt_91b4a2e7",
"company_id": "cmp_7f3d21a9",
"expected_close_date": "2026-10-15"
}
}
Manage CRM opportunities
Use the CRM Opportunities endpoints to track deals, pipeline stage, associated contacts or companies, and expected close dates from your Talkturo account.
All CRM Opportunities endpoints require an authenticated session cookie. These endpoints do not accept API key authentication.
Endpoints at a glance
| Method | Path | Description |
|---|---|---|
GET | /api/crm/opportunities | List opportunities with pagination and filters |
POST | /api/crm/opportunities | Create a new opportunity |
GET | /api/crm/opportunities/{id} | Retrieve one opportunity by ID |
PATCH | /api/crm/opportunities/{id} | Update an existing opportunity |
DELETE | /api/crm/opportunities/{id} | Delete an opportunity |
List opportunities
Retrieve a paginated list of opportunities and narrow the results by search term, contact, or company.
Query parameters
Page number to return. The response includes the current page in the page field.
Maximum number of opportunities to return per page.
Search term used to filter opportunities.
Return only opportunities associated with the specified contact.
Return only opportunities associated with the specified company.
Response fields
Returns true when the request succeeds.
Array of opportunity records for the current page.
Unique identifier for the opportunity.
Opportunity title.
Monetary value associated with the opportunity.
Current pipeline stage for the opportunity.
ID of the related contact, if one is associated.
ID of the related company, if one is associated.
Total number of matching opportunities across all pages.
Current page number returned by the API.
Create opportunity
Create a new sales opportunity with a required title and optional deal metadata.
Request body
Name of the opportunity.
Monetary value of the opportunity.
Pipeline stage to assign when the opportunity is created.
Related contact ID.
Related company ID.
Expected close date for the opportunity.
The create endpoint also accepts additional custom fields in the request body. Include those fields alongside the standard opportunity properties.
Response fields
Returns true when the opportunity is created successfully.
The newly created opportunity record.
Unique identifier for the new opportunity.
Opportunity title.
Monetary value stored for the opportunity.
Current pipeline stage.
Related contact ID, if provided.
Related company ID, if provided.
Expected close date, if provided.
Get opportunity
Retrieve a single opportunity by its ID.
Path parameter
Unique opportunity identifier. The endpoint expects an opportunity ID in the path.
Response shape
A successful response returns the standard envelope below:
{
"success": true,
"opportunity": {
"id": "opp_6c52a1ef",
"title": "Enterprise Expansion - Northwind Health",
"value": 48000,
"stage": "qualified",
"contact_id": "cnt_91b4a2e7",
"company_id": "cmp_7f3d21a9",
"expected_close_date": "2026-10-15"
}
}
Returns true when the opportunity is found.
The requested opportunity record.
Update opportunity
Update one or more fields on an existing opportunity.
Path parameter
Unique opportunity identifier.
Request body
Updated title for the opportunity.
Updated monetary value.
Updated pipeline stage.
Updated related contact ID.
Updated related company ID.
Updated expected close date.
Response shape
The update endpoint returns the same envelope as the create and get endpoints:
{
"success": true,
"opportunity": {
"id": "opp_6c52a1ef",
"title": "Enterprise Expansion - Northwind Health",
"value": 52000,
"stage": "proposal",
"contact_id": "cnt_91b4a2e7",
"company_id": "cmp_7f3d21a9",
"expected_close_date": "2026-10-31"
}
}
Returns true when the update succeeds.
The updated opportunity record.
Delete opportunity
Delete an opportunity by ID.
Path parameter
Unique opportunity identifier.
Response shape
A successful delete returns a confirmation message.
{
"success": true,
"message": "Opportunity deleted successfully"
}
Returns true when the delete succeeds.
Human-readable confirmation that the opportunity was deleted.
Common opportunity fields
The opportunity object returned by list, create, get, and update endpoints includes the same core CRM fields.
Unique identifier for the opportunity.
Opportunity title.
Monetary value associated with the deal.
Current stage in your sales pipeline.
Associated contact ID.
Associated company ID.
Expected date the opportunity will close.