DealSleek API · Leads
PreviewCreate Readiness Policy
Create readiness policy; deterministic advisory readiness, with engine-verified persisted inputs.
/api/v1/leads/dispatchHeaders
AuthorizationstringRequiredAccess token of the signed-in user, as a Bearer token. It identifies the user, their role and the workspace.
X-CQRS-ActionstringRequiredNames the command to run. Must be
CREATE_READINESS_POLICYfor this endpoint.Content-TypestringRequiredAlways
application/json.X-Idempotency-KeystringOptionalA key you choose that is unique to this attempt. A command repeated with the same key is not applied a second time.
X-Correlation-IdstringOptionalYour own identifier for the request. Returned in the
x-correlation-idresponse header; generated when you leave it out.
Request body
definitionobjectRequiredNo description yet.
9 child fields
engagement_rulesarray of objectRequiredNo description yet.
3 child fields
contributionnumberRequiredSigned unitless contribution per occurrence, bounded to [-1, 1].
max_occurrencesintegerRequiredNo description yet.
- at least 0
signal_typeenumRequiredNo description yet.
- Allowed values
- FUNDING_TRIGGER
- DEMO_REQUEST
- MEETING_BOOKED
- AD_CONVERSION
- CHAMPION_JOB_CHANGE
- SEARCH_QUERY
- EXEC_HIRE
- REVIEW_SITE_COMPARISON
- HIRING_TRIGGER
- LINKEDIN_INTENT_TOPIC
- PRICING_PAGE_VISIT
- JOB_POSTING
- COMPANY_NEWS
- CONTENT_ENGAGEMENT
- AD_CLICK
- PAGE_VISIT
- EMAIL_OPEN
- UNSUBSCRIBED
- CHAMPION_DEPARTURE
- DEMO_REQUEST
- Explicit demand — they asked for a demo/quote.
- MEETING_BOOKED
- A meeting is on the calendar with someone outside the tenant.
- AD_CONVERSION
- Bought / converted on a platform (pixel/CAPI/conversion API).
- CHAMPION_JOB_CHANGE
- A known champion moved to a new company. Published benchmarks put a past champion at ~3x purchase likelihood in a new role, and a new executive commits the majority of their budget inside 100 days — which is why this outranks every inferred signal below it.
- SEARCH_QUERY
- Searched a high-intent keyword (Google) — the strongest paid signal.
- EXEC_HIRE
- A new C-suite / VP appointment at a target account.
- REVIEW_SITE_COMPARISON
- Compared you against a competitor on a review site.
- HIRING_TRIGGER
- Time-sensitive account trigger.
- LINKEDIN_INTENT_TOPIC
- LinkedIn's buyer-intent topic on the account.
- PRICING_PAGE_VISIT
- Viewed a high-intent page (pricing, demo).
- JOB_POSTING
- Posted a role that implies the problem you solve.
- COMPANY_NEWS
- M&A, product launch, expansion, earnings language.
- CONTENT_ENGAGEMENT
- Engaged with content (post like/comment, doc download, video view).
- AD_CLICK
- Generic ad click.
- PAGE_VISIT
- Generic page visit.
- EMAIL_OPEN
- Email open — weak.
- UNSUBSCRIBED
- They asked not to be contacted. Persists — this is a stated preference, not a mood.
- CHAMPION_DEPARTURE
- The champion left the account. The relationship that carried the deal is gone, and nothing else about the account changed to say so.
fit_rulesarray of objectRequiredNo description yet.
3 child fields
accepted_valuesarray of stringRequiredNo description yet.
fieldenumRequiredNo description yet.
- Allowed values
- LEAD_SOURCE
- ACCOUNT_INDUSTRY
- ACCOUNT_EMPLOYEE_COUNT
- ACCOUNT_TIER
- LEAD_LIFECYCLE_STAGE
- ACCOUNT_STATUS
- ACCOUNT_HEADQUARTERS
- ACCOUNT_DOMAIN
weightintegerRequiredNo description yet.
- at least 0
lookback_daysintegerRequiredNo description yet.
- at least 0
minimum_engagementnumberRequiredNo description yet.
minimum_fitnumberRequiredNo description yet.
namestringRequiredNo description yet.
valid_hoursintegerRequiredNo description yet.
- at least 0
profile_keystring or nullOptionalOptional operator-named profile; omitted retains the tenant-wide policy.
segment_iduuid or nullOptionalOptional, persisted Marketing LEADS-segment membership restriction.
tenant_iduuidRequiredNo description yet.
Response
Status 202. The command was applied. The body reports the outcome and, where the command changes a record, that record's new state.
successbooleanRequiredtruewhen the command was applied.error_messagestringRequiredEmpty when the command was applied.
projected_stateobjectOptionalThe record as it stands after the command.
event_payloadobjectOptionalThe event the command recorded.
insightsarray of objectOptionalAdvisory notes about the result. Each has a
code, amessageand animpactnumber.
Errors
Every error carries an HTTP status. Where it also carries a code, branch on the code, not on the message.
- 400
X-CQRS-Actionis missing or names a command this route does not accept. SendCREATE_READINESS_POLICY. - 400
DOMAIN_ROUTINGThe body is not a valid command. Check the required fields and their types. - 401The access token is missing, expired or not valid.
- 401
L1_AUTHThe caller's role is belowmanageror the caller has no access to this record. - 403
L1_POLICYA business rule refused the command. The message names the rule. - 409
L1_IDEMPOTENCYA command with this idempotency key was already applied. - 409
CONFLICTThe command would duplicate a record that must be unique. - 500
L3_COMMITThe command was valid but could not be saved.