sales · basic

Buying Intent

Distinguish concrete purchasing behavior from casual interest, praise, or vague future intent.

noulscore

When to use it

Example state

{
  "message": "Can you send annual pricing for 20 seats and tell me whether SSO is included?",
  "channel": "website_chat"
}

Decision questions

noulbuying_intent

Does the message show concrete intent to evaluate or purchase the product, rather than general interest?

scorereadiness

Score purchase readiness from 0 to 4.

  1. 0 — no purchasing signal
  2. 1 — casual interest
  3. 2 — active evaluation
  4. 3 — asks about concrete purchase constraints
  5. 4 — asks for a near-term commercial next step

Expected structured output

A buying-intent probability and an expected readiness score.

TypeScript example

import { noul, score, TypeSafeClient } from "@typesafe-ai/sdk";

const client = new TypeSafeClient();

const result = await client.systemOne({
  state: {
    message:
      "Can you send annual pricing for 20 seats and tell me whether SSO is included?",
    channel: "website_chat",
  },
  questions: {
    buying_intent: noul(
      "Does the message show concrete intent to evaluate or purchase the product, rather than general interest?"
    ),
    readiness: score("Score purchase readiness.", [
      "No purchasing signal",
      "Casual interest",
      "Active evaluation",
      "Concrete purchase constraints",
      "Near-term commercial next step",
    ]),
  },
});

Why this design works

Limits and boundaries

Sources and inspiration

Continue

Browse all templates, learn the official SDK shape, or estimate production volume with the cost calculator.