Update lead fields and merge sections.
Change any field from the create body; only keys you send are touched. Sections merge key by key into what is already stored, so you can add one section without resending the rest. Send expected_updated_at from your last read to refuse a stale write (409 STALE_VERSION). Use the status, tags, assign and score endpoints for those specific changes.
https://app.softsolz.uk/api/v1/services/my-leads/leads/{id}Recent Requests
Log in to see full request historyPath Params
idstringrequiredHeaders
AuthorizationstringrequiredBearer token: `Bearer sk_live_...` (or `sk_test_...` for sandbox). A login token will not work here.
Idempotency-KeystringOptional idempotency key for safe retries.
Body Params
namestringCompany name. Required unless website is given.
websitestringWebsite URL or bare domain.
external_idstringYour own stable id; matched first for dedupe.
industrystringPrimary industry.
citystringCity.
statestringState or region.
countrystringCountry.
employee_bandstringHeadcount band such as 11-50.
revenue_bandstringRevenue band such as 1M-10M.
fit_scoreintegerFit against the brief, 0-100.
lead_scoreintegerReadiness to buy, 0-100.
confidencenumberData confidence, 0-1.
verification_tierstringverified, probable or unverified.
lead_statusstringInitial status; defaults to new.
tagsarray of stringsLabels for segmentation; lower-cased and de-duplicated.
owner_user_idintegerMember id to own the lead.
sectionsobjectStructured research grouped by section. Every key is optional. Use the same keys on create and update; on update, sections merge key by key with what is already stored.
expected_updated_atstringThe updated_at you last read; the call fails with 409 STALE_VERSION if it changed.
Response
Response Body
idintegerLead id.run_idinteger | nullResearch run that produced this lead, or null when it was added directly.namestringCompany name.websitestring | nullWebsite URL.domainstring | nullBare domain, lower case.external_idstring | nullYour own stable id for this company.sourcestringHow the lead got here.viastring | nullChannel of the last write: research, api, connected_app, or null for the dashboard.via_labelstring | nullName of the app or key that last wrote the lead.fit_scoreinteger | nullFit against the brief, 0-100.lead_scoreinteger | nullReadiness to buy, 0-100.confidencenumber | nullData confidence, 0-1.verification_tierstring | nullverified, probable or unverified.verified_contact_countintegerHow many contact channels were verified on the official site.lead_statusstringWhere the lead is in your process.industrystring | nullPrimary industry.citystring | nullCity.statestring | nullState or region.countrystring | nullCountry.employee_bandstring | nullHeadcount band.revenue_bandstring | nullRevenue band.source_urlstring | nullPrimary source URL.owner_user_idinteger | nullMember who owns the lead, or null when unassigned.owner_namestring | nullOwner display name.owner_emailstring | nullOwner email.tagsarray of stringsLower-case labels for segmentation.last_contacted_atstring | nullSet whenever the status becomes called, contacted or follow_up.company_idstring | nullCRM company created by convert, if any.contact_idstring | nullCRM contact created by convert, if any.deal_idinteger | nullDeal created by convert, if any.resultobjectStructured research grouped by section. Every key is optional. Use the same keys on create and update; on update, sections merge key by key with what is already stored.created_atstringCreation timestamp.updated_atstringLast update. Round-trip as expected_updated_at on PATCH to refuse stale writes (409 STALE_VERSION).Request
import { SoftSolz } from '@softsolz/sdk';
const client = new SoftSolz({ apiKey: process.env.SOFTSOLZ_API_KEY });
const result = await client.myLeads.updateLead('<id>', {});console.log(result);Credentials
Sent as a Bearer token. Stored only in your browser.
Response · 200
{ "data": { "id": 0, "run_id": 0, "name": "string", "website": "string", "domain": "string", "external_id": "string", "source": "string", "via": "string", "via_label": "string", "fit_score": 0, "lead_score": 0, "confidence": "string", "verification_tier": "string", "verified_contact_count": 0, "lead_status": "string", "industry": "string", "city": "string", "state": "string", "country": "string", "employee_band": "string", "revenue_band": "string", "source_url": "string", "owner_user_id": 0, "owner_name": "string", "owner_email": "string", "tags": [], "last_contacted_at": "string", "company_id": "string", "contact_id": "string", "deal_id": 0, "result": {}, "created_at": "string", "updated_at": "string" }}