Watt Data Logo

Search for traits using natural language descriptions. Converts your query into a vector embedding and finds traits with similar semantic meaning.

Quick Example

{
  "entity_type": "person",
  "query": "people interested in outdoor activities and camping",
  "domains": ["affinity", "interest"],
  "limit": 20
}

Input Parameters

ParameterTypeRequiredDefaultConstraintsDescription
entity_typestringYes-"person" or "business"Type of entity to search traits for
querystringYes-Min 1 characterNatural language description of desired traits
limitnumberNo101-100Maximum results to return
domainsarrayNo-See available domainsFilter results by domains
workflow_idstringNo-Valid UUIDWorkflow session identifier

Request Schema:

interface TraitSearchParams {
  entity_type: "person" | "business";
  query: string;
  limit?: number;
  domains?: Array<"purchase" | "demographic" | "intent" | "interest" | "financial" | "firmographic" | "affinity" | "content" | "employment" | "household" | "lifestyle" | "political">;
  workflow_id?: string;
}

Output Format

{
  results: Array<{
    trait_id: string;
    trait_hash: string;
    name: string;
    value: string;
    domain: string;
    size: number;
    prevalence: number;
    similarity_score: number;
  }>,
  tool_trace_id: string,
  workflow_id: string
}

Response Fields:

FieldTypeDescription
resultsarrayArray of matching traits ranked by similarity
results[].trait_idstringNumeric trait identifier
results[].trait_hashstringStable hash identifier
results[].namestringTrait name
results[].valuestringTrait value
results[].domainstringDomain category
results[].sizenumberNumber of entities with this trait
results[].prevalencenumberPopulation proportion (0-1)
results[].similarity_scorenumberSemantic similarity to query (0-1)
tool_trace_idstringOpenTelemetry trace ID
workflow_idstringWorkflow session identifier

Example Response:

{
  "results": [
    {
      "trait_id": "1000000001",
      "trait_hash": "abc123def456",
      "name": "golf_affinity",
      "value": "high",
      "domain": "affinity",
      "size": 1500000,
      "prevalence": 0.05,
      "similarity_score": 0.92
    },
    {
      "trait_id": "1000000002",
      "trait_hash": "ghi789jkl012",
      "name": "outdoor_recreation",
      "value": "active",
      "domain": "interest",
      "size": 3200000,
      "prevalence": 0.11,
      "similarity_score": 0.78
    }
  ],
  "tool_trace_id": "a1b2c3d4e5f6",
  "workflow_id": "550e8400-e29b-41d4-a716-446655440000"
}

Usage Examples

Example 1: Simple semantic search

{
  "entity_type": "person",
  "query": "people interested in golf and country clubs"
}

Example 2: Filtered by domain

{
  "entity_type": "person",
  "query": "high income professionals",
  "domains": ["demographic", "employment"]
}

Example 3: Broad discovery

{
  "entity_type": "person",
  "query": "technology early adopters",
  "limit": 25
}

Example 4: Intent-based search

{
  "entity_type": "person",
  "query": "people looking to buy a new car",
  "domains": ["intent"]
}

Example 5: Business trait search

{
  "entity_type": "business",
  "query": "SaaS companies with over 100 employees",
  "domains": ["firmographic"]
}

On this page