Want a guided walkthrough? Schedule a 15-min call.

Use Case: Deal Intelligence for Sales Teams

Sales teams often need comprehensive data about potential clients before outreach. Traditional data providers offer limited information, while manual research is time-consuming. With Extruct AI, you can enrich your company list with custom data points at scale.

Setting up Company Enrichment

Create a table with input columns for basic company information and agent columns for the enrichment:

curl -X POST "https://api.extruct.ai/v1/tables" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Enterprise Deal Intelligence",
    "kind": "company",
    "column_configs": [
      {
        "kind": "input",
        "name": "Company",
        "key": "company"
      },
      {
        "kind": "agent",
        "name": "Tech Stack",
        "key": "tech_stack",
        "value": {
          "agent_type": "research_pro",
          "prompt": "Identify the key technologies in this company tech stack, focusing on CRM, marketing automation, and data platforms.",
          "output_format": "json",
          "json_schema": {
            "type": "object",
            "properties": {
              "crm": { "type": "string" },
              "marketing": { "type": "array", "items": { "type": "string" } },
              "data_platforms": { "type": "array", "items": { "type": "string" } }
            }
          }
        }
      },
      {
        "kind": "agent",
        "name": "Decision Makers",
        "key": "decision_makers",
        "value": {
          "agent_type": "research_pro",
          "prompt": "Identify the key decision makers for purchasing enterprise software at this company. Include their name, title, and LinkedIn profile URL if available.",
          "output_format": "json",
          "json_schema": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": { "type": "string" },
                "title": { "type": "string" },
                "linkedin_url": { "type": "string" },
                "department": { "type": "string" }
              }
            }
          }
        }
      },
      {
        "kind": "agent",
        "name": "Recent Initiatives",
        "key": "initiatives",
        "value": {
          "agent_type": "research_pro",
          "prompt": "Identify 2-3 recent business initiatives, digital transformation efforts, or growth strategies this company has announced in the past 12 months.",
          "output_format": "text"
        }
      }
    ]
  }'

Adding Companies for Enrichment

Add companies to your table in batches:

curl -X POST "https://api.extruct.ai/v1/tables/{table_id}/rows" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "rows": [
      { "data": { "company": "Stripe" } },
      { "data": { "company": "Figma" } },
      { "data": { "company": "Canva" } },
      { "data": { "company": "Shopify" } }
    ],
    "run": true
  }'

The "run": true parameter instructs Extruct to begin enrichment immediately.

Retrieving Enriched Data

Retrieve the enriched data once processing is complete:

curl -X GET "https://api.extruct.ai/v1/tables/{table_id}/data" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

The response will contain structured enrichment data:

{
  "rows": [
    {
      "id": "row_1",
      "data": {
        "company": {"value": "Stripe", "status": "done"},
        "tech_stack": {
          "value": {
            "crm": "Salesforce",
            "marketing": ["Marketo", "Google Analytics", "Segment"],
            "data_platforms": ["AWS", "Snowflake", "Databricks"],
          },
          "status": "done"
        },
        "decision_makers": {
          "value": [
            {
              "name": "David Singleton",
              "title": "Chief Technology Officer",
              "linkedin_url": "https://www.linkedin.com/in/dsingleton/",
              "department": "Engineering"
            },
            {
              "name": "Will Gaybrick",
              "title": "Chief Product Officer",
              "linkedin_url": "https://www.linkedin.com/in/wgaybrick/",
              "department": "Product"
            }
          ],
          "status": "done"
        },
        "initiatives": {
          "value": "1. Global Expansion: Stripe has been aggressively expanding into new international markets, particularly in Latin America and Southeast Asia.\n2. AI Integration: Recently launched ML-powered fraud detection tools and revenue optimization features.\n3. Financial Services: Introduced Stripe Treasury to help businesses embed financial services in their platforms.",
          "status": "done"
        }
      }
    }
    // More rows...
  ]
}

Advanced Techniques

Custom JSON Extraction with Complex Schema

For more sophisticated data extraction, use detailed JSON schemas:

{
  "kind": "agent",
  "name": "Funding Analysis",
  "key": "funding",
  "value": {
    "agent_type": "research_pro",
    "prompt": "Research the funding history of this company. Include details about the latest funding round, total funding raised, key investors, and valuation if available.",
    "output_format": "json",
    "json_schema": {
      "type": "object",
      "properties": {
        "total_funding": {
          "type": "object",
          "properties": {
            "amount": { "type": "number" },
            "currency": { "type": "string" },
            "unit": { "type": "string", "enum": ["million", "billion"] }
          }
        },
        "latest_round": {
          "type": "object",
          "properties": {
            "date": { "type": "string", "format": "date" },
            "series": { "type": "string" },
            "amount": { "type": "number" },
            "currency": { "type": "string" },
            "unit": { "type": "string", "enum": ["million", "billion"] },
            "lead_investors": { "type": "array", "items": { "type": "string" } }
          }
        },
        "valuation": {
          "type": "object",
          "properties": {
            "amount": { "type": "number" },
            "currency": { "type": "string" },
            "unit": { "type": "string", "enum": ["million", "billion"] },
            "status": { "type": "string", "enum": ["private", "public", "estimated"] }
          }
        },
        "key_investors": {
          "type": "array",
          "items": { "type": "string" }
        }
      }
    }
  }
}

Competitor Analysis Format

Create a structured competitor analysis with clear formatting:

{
  "kind": "agent",
  "name": "Competitor Analysis",
  "key": "competitors",
  "value": {
    "agent_type": "research_pro",
    "prompt": "Identify the top 3-5 competitors of this company. For each competitor, provide their name, a brief description of their offering, and how they differentiate from the target company.",
    "output_format": "json",
    "json_schema": {
      "type": "object",
      "properties": {
        "primary_industry": { "type": "string" },
        "competitors": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": { "type": "string" },
              "website": { "type": "string" },
              "description": { "type": "string" },
              "differentiators": {
                "type": "array",
                "items": { "type": "string" }
              },
              "comparative_strengths": {
                "type": "array",
                "items": { "type": "string" }
              },
              "comparative_weaknesses": {
                "type": "array",
                "items": { "type": "string" }
              }
            }
          }
        }
      }
    }
  }
}

By leveraging these techniques, you can build comprehensive company profiles with highly structured data that integrates seamlessly with your CRM, sales enablement tools, or business intelligence platforms.