Skip to content

Lead routes: nurture, qualify

The Lead Verbs nurture, qualify as api.sb routes, with inputs, result, refusals and an example.

Reference for Lead, one group of Lead routes.

Lead.nurture

Nurture takes a Lead that is not ready to buy off its owner’s queue and onto a Sequence, until it raises a hand again. Verb page.

Text
POST /{namespace}/leads/{lead}/nurture

Path: lead. Body, as JSON: the other inputs. Emits Lead.nurtured.

Inputs

InputTypeRequiredDescription
leadLeadrequiredThe Lead to nurture.
sequenceSequenceThe Sequence to enroll it in.

Returns

OutputTypeRequiredDescription
leadLeadrequiredThe Lead, now in nurture.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/leads/lead_Kz1R9fhqzZ/nurture \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
JSON
{
  "api": "https://api.sb/leaseline.app",
  "lead": {
    "$id": "https://api.sb/leaseline.app/leads/lead_Kz1R9fhqzZ",
    "$type": "Lead",
    "status": "new"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Lead.nurture",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}

Lead.qualify

Qualify confirms a Lead matches an Offer’s ICP and opens a Deal for it. Verb page.

Text
POST /{namespace}/leads/{lead}/qualify

Path: lead. Body, as JSON: the other inputs. Emits Lead.qualified.

Inputs

InputTypeRequiredDescription
leadLeadrequiredThe Lead to qualify.
offerOfferrequiredThe Offer whose ICP the Lead matches.

Returns

OutputTypeRequiredDescription
dealDealrequiredThe open Deal.
leadLeadrequiredThe Lead, now qualified.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.
The record is not in a state that allows this Verb, so the call is refused.refusedRead the record, run the Verb that moves it to an allowed state, then retry.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/leads/lead_Kz1R9fhqzZ/qualify \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"offer":"offer_2hzYe1ERo0"}'
JSON
{
  "api": "https://api.sb/leaseline.app",
  "deal": {
    "$id": "https://api.sb/leaseline.app/deals/deal_NgACZ6DcII",
    "$type": "Deal",
    "status": "Open"
  },
  "lead": {
    "$id": "https://api.sb/leaseline.app/leads/lead_Kz1R9fhqzZ",
    "$type": "Lead",
    "status": "new"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Lead.qualify",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}