Opportunities
Update Opportunity
Update an opportunity’s status or notes
PUT
/
opportunities
/
{id}
curl -X PUT "https://api.clustr-ai.com/api/public/opportunities/opp_abc123" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"status_id": "550e8400-e29b-41d4-a716-446655440001"}'
curl -X PUT "https://api.clustr-ai.com/api/public/opportunities/opp_abc123" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"notes": "Intro requested, waiting on Sam"}'
{
"success": true,
"data": {
"id": "...",
"status_id": "550e8400-e29b-41d4-a716-446655440001",
"owner_id": "9c8e77d1-4b2a-4c8f-9a30-6e21d4f0aa57",
"notes": "",
"updated_at": "2025-03-15T14:30:00Z"
}
}
{
"success": false,
"error": {
"message": "Owners are set on the connector, not on a single opportunity. Use PUT /network/connectors/{linkedinId}/owner (DELETE to clear). status_id and notes are unaffected.",
"code": "BAD_REQUEST"
}
}
{
"success": false,
"error": { "message": "Opportunity not found", "code": "NOT_FOUND" }
}
Update an opportunity using the opportunity ID from search results. Use List Opportunity Statuses to get available status IDs.
Owners are no longer set here. An owner owns a
connector, and everything that connector produces. Sending
owner_id, owner_email, unassign_owner, create_owner_if_missing or owner_name to this
endpoint returns 400. Use Set Connector Owner on the
opportunity’s connector instead, or DELETE on the same path to clear it.status_id and notes are unaffected and keep working exactly as before.Path Parameters
string
required
Opportunity ID (from search results)
Body
string
New status UUID. Use list opportunity statuses to get available IDs
string
Notes about the opportunity
boolean
Set true to remove the current status. Cannot be combined with
status_id.boolean
Set true to clear the notes.
curl -X PUT "https://api.clustr-ai.com/api/public/opportunities/opp_abc123" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"status_id": "550e8400-e29b-41d4-a716-446655440001"}'
curl -X PUT "https://api.clustr-ai.com/api/public/opportunities/opp_abc123" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"notes": "Intro requested, waiting on Sam"}'
{
"success": true,
"data": {
"id": "...",
"status_id": "550e8400-e29b-41d4-a716-446655440001",
"owner_id": "9c8e77d1-4b2a-4c8f-9a30-6e21d4f0aa57",
"notes": "",
"updated_at": "2025-03-15T14:30:00Z"
}
}
{
"success": false,
"error": {
"message": "Owners are set on the connector, not on a single opportunity. Use PUT /network/connectors/{linkedinId}/owner (DELETE to clear). status_id and notes are unaffected.",
"code": "BAD_REQUEST"
}
}
{
"success": false,
"error": { "message": "Opportunity not found", "code": "NOT_FOUND" }
}
⌘I
curl -X PUT "https://api.clustr-ai.com/api/public/opportunities/opp_abc123" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"status_id": "550e8400-e29b-41d4-a716-446655440001"}'
curl -X PUT "https://api.clustr-ai.com/api/public/opportunities/opp_abc123" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"notes": "Intro requested, waiting on Sam"}'
{
"success": true,
"data": {
"id": "...",
"status_id": "550e8400-e29b-41d4-a716-446655440001",
"owner_id": "9c8e77d1-4b2a-4c8f-9a30-6e21d4f0aa57",
"notes": "",
"updated_at": "2025-03-15T14:30:00Z"
}
}
{
"success": false,
"error": {
"message": "Owners are set on the connector, not on a single opportunity. Use PUT /network/connectors/{linkedinId}/owner (DELETE to clear). status_id and notes are unaffected.",
"code": "BAD_REQUEST"
}
}
{
"success": false,
"error": { "message": "Opportunity not found", "code": "NOT_FOUND" }
}