CRMCRM Opportunities

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"
{
  "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"
  }'
{
  "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

MethodPathDescription
GET/api/crm/opportunitiesList opportunities with pagination and filters
POST/api/crm/opportunitiesCreate 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

query
pageinteger

Page number to return. The response includes the current page in the page field.

query
limitinteger

Maximum number of opportunities to return per page.

query
contactIdstring

Return only opportunities associated with the specified contact.

query
companyIdstring

Return only opportunities associated with the specified company.

Response fields

successboolean
Required

Returns true when the request succeeds.

opportunitiesarray
Required

Array of opportunity records for the current page.

opportunities[].idstring
Required

Unique identifier for the opportunity.

opportunities[].titlestring
Required

Opportunity title.

opportunities[].valuenumber

Monetary value associated with the opportunity.

opportunities[].stagestring

Current pipeline stage for the opportunity.

opportunities[].contact_idstring

ID of the related contact, if one is associated.

opportunities[].company_idstring

ID of the related company, if one is associated.

totalinteger
Required

Total number of matching opportunities across all pages.

pageinteger
Required

Current page number returned by the API.

Create opportunity

Create a new sales opportunity with a required title and optional deal metadata.

Request body

body
titlestring
Required

Name of the opportunity.

body
valuenumber

Monetary value of the opportunity.

body
stagestring

Pipeline stage to assign when the opportunity is created.

body
contact_idstring

Related contact ID.

body
company_idstring

Related company ID.

body
expected_close_datestring

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

successboolean
Required

Returns true when the opportunity is created successfully.

opportunityobject
Required

The newly created opportunity record.

opportunity.idstring
Required

Unique identifier for the new opportunity.

opportunity.titlestring
Required

Opportunity title.

opportunity.valuenumber

Monetary value stored for the opportunity.

opportunity.stagestring

Current pipeline stage.

opportunity.contact_idstring

Related contact ID, if provided.

opportunity.company_idstring

Related company ID, if provided.

opportunity.expected_close_datestring

Expected close date, if provided.

Get opportunity

Retrieve a single opportunity by its ID.

Path parameter

path
idstring
Required

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"
  }
}
successboolean
Required

Returns true when the opportunity is found.

opportunityobject
Required

The requested opportunity record.

Update opportunity

Update one or more fields on an existing opportunity.

Path parameter

path
idstring
Required

Unique opportunity identifier.

Request body

body
titlestring

Updated title for the opportunity.

body
valuenumber

Updated monetary value.

body
stagestring

Updated pipeline stage.

body
contact_idstring

Updated related contact ID.

body
company_idstring

Updated related company ID.

body
expected_close_datestring

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"
  }
}
successboolean
Required

Returns true when the update succeeds.

opportunityobject
Required

The updated opportunity record.

Delete opportunity

Delete an opportunity by ID.

Path parameter

path
idstring
Required

Unique opportunity identifier.

Response shape

A successful delete returns a confirmation message.

{
  "success": true,
  "message": "Opportunity deleted successfully"
}
successboolean
Required

Returns true when the delete succeeds.

messagestring
Required

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.

idstring
Required

Unique identifier for the opportunity.

titlestring
Required

Opportunity title.

valuenumber

Monetary value associated with the deal.

stagestring

Current stage in your sales pipeline.

contact_idstring

Associated contact ID.

company_idstring

Associated company ID.

expected_close_datestring

Expected date the opportunity will close.