Skip to content

Deal.advance

Moves a deal to its next stage once every field that stage requires is filled.

Action class
None
Approval
Runs on its own
Emits
Deal.advanced
Venues
1 Venues
Price
Free
More factsFewer facts
POST https://api.sb/{your-domain}/deals/{deal}/advance

Its Inputs, Outputs, Effects and guards quote the hub’s Deal.advance; this page adds what each Venue honors, its limits and a worked call. It is one of the Verbs of CRM.

Inputs

NameTypeMeaning
dealDealRequired. The deal.
stagestringThe target stage; omitted, the next one. Optional.

Outputs

FieldTypeWhat null means
dealDealNever null: the deal in its new stage.

Effects

Action class

None: no approval rule names it, so it runs within its seat’s Permissions and Limits

Modes
  • try: Runs every check and returns the record as it would be; nothing is stored.
  • send: Returns a pending Action at once; Deal.advanced fires when it is done.
  • do: Waits for the Action to finish and returns the record.
Idempotency

Only with a key: the same Idempotency-Key and input return the first Action, and the same key with other input returns 409.

Saved or shared

The deal is saved as the call leaves it, with the Action that changed it.

Emits

Deal.advanced with { deal }

Performed by

Sales lead

Price

Free on your own account: the platform charges nothing for the call.

On each Venue

VenueFormats
The CRM you already useNone.

Each Venue’s caps, review and rate limits are on its integration page, linked from its row. A field marked Not sent is one that Venue has no place for; the call never fails on it.

What try does

AccountWhat try does
The CRM you already useReads your CRM and returns what one sync would change on each side, record by record; nothing is written to either.

Refuses when

GuardRefusesError
stage-fieldsRefuses when a field the target stage requires is empty, and names each one.refused

Through a connected account it can also meet the shared account refusals.

When it waits

Returns in one response; nothing waits.

Example

In send mode the call returns its pending Action at once, and Deal.advanced delivers the result.

You, to your agent
Move the Harborview deal to proposed now that the quote is attached.
Response, in send mode
{
  "mode": "send",
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/action_Sd3kQ9vT2w",
    "operation": "Deal.advance",
    "status": "pending",
    "reason": "running"
  }
}

To retry, send the same Idempotency-Key: the retry returns the first answer for $0. A new key reads again.

Used by