Enriching CRM data with CTD — CTD Guide

Enriching CRM data with CTD

CTD's API lets you pull relationship intelligence back into your CRM — relationship scores, company details, industry, headcount, and path stage — so your reps see CTD data without leaving Salesforce or HubSpot.

What data you can pull

For any company reachable through your network, CTD can return:

Field Description
ctd_score Raw relationship score (numeric)
ctd_score_scaled Score on a 1–3 scale
ctd_score_label Human-readable label: Strong, Familiar, or Weak
stage Current path stage (e.g., Approaching, Meeting Set)
num_employees Employee count
num_employees_range Bucketed range (e.g., "101–200")
industry Industry classification
ctd_url Deep link to the company's CTD profile
linkedin_url LinkedIn company page URL
domains All known domains for the company

Fetching a company record

GET https://api.ctd.ai/user/atc-paths-api/public/v1/company

Returns details for a single company reachable through your network. Provide exactly one of company_linkedin_url or company_domain as a query parameter — not both.

// Example request
GET /company?company_domain=example.com

// Response
{
  "name": "Example Corp",
  "domains": ["example.com", "example.net"],
  "ctd_url": "https://app.ctd.ai/companies/example-corp",
  "linkedin_url": "https://www.linkedin.com/company/example-corp",
  "num_employees": 101,
  "num_employees_range": "101-200",
  "industry": "Technology, Information & Internet",
  "ctd_score": 7500.7725404,
  "ctd_score_scaled": 2,
  "ctd_score_label": "medium",
  "stage": "Approaching"
}

Tip: The company_linkedin_url is the preferred identifier — CTD normalizes it to https://www.linkedin.com/company/<slug> format automatically. Use company_domain as a fallback when you don't have the LinkedIn URL.

Common enrichment patterns

Score your account list

Loop through your CRM accounts and call GET /company for each one. Write ctd_score_label back as a custom CRM field to let reps prioritize by relationship strength. Accounts without a CTD record (not reachable through your network) will return a 404 — treat those as no score.

Surface path stage in the CRM

The stage field reflects whatever pipeline stage has been set in CTD. Writing it back to a CRM field keeps both systems in sync without requiring reps to check CTD separately.

Add a CTD deep link

Store ctd_url as a URL field on the CRM account record. Reps can click straight through to the CTD company page to see connectors, paths, and relationship history without switching tabs manually.

Enriching contacts

GET https://api.ctd.ai/user/atc-paths-api/public/v1/reachable-person

Returns relationship intelligence for a single person reachable through your network. Provide exactly one of person_linkedin_url or person_email as a query parameter — not both.

// Example response
{
  "person": {
    "name": "Sarah Johnson",
    "linkedin_id": "sarah-johnson-42",
    "title": "VP of Sales",
    "company_name": "Acme Corp",
    "company_linkedin_url": "https://www.linkedin.com/company/acme-corp",
    "location": "New York, NY",
    "is_target_person": true,
    "ctd_score": 8500.25,
    "ctd_score_scaled": 3,
    "ctd_score_label": "strong",
    "person_ctd_url": "https://app.ctd.ai/people/sarah-johnson",
    "company_ctd_url": "https://app.ctd.ai/companies/acme-corp",
    "total_paths": 5,
    "total_2nd_degree_paths": 3,
    "total_strong_paths": 2,
    "current_roles": [...],
    "former_roles": [...]
  }
}

Key fields for CRM enrichment:

Field Description
ctd_score_label Strong, Familiar, or Weak — the relationship strength between your org and this person
total_paths Total number of people in your org who know this person
total_strong_paths Paths with a strong relationship score — your best intro routes
total_2nd_degree_paths Second-degree connections through shared contacts
is_target_person Whether this person is on your target account list
person_ctd_url Deep link to this person's CTD profile
current_roles Current job(s) with company, domain, start date, and industry
former_roles Employment history — useful for detecting job changes

Tip: Write total_strong_paths back to a CRM contact field so reps can instantly see how well-connected your org is to each contact — without needing to open CTD.

Executive alignment

CTD surfaces whether executives from your company are connected to executives at a target account — and how strong those relationships are. RevOps teams use this to identify where C-level alignment already exists and where it needs to be built.

When your CEO has a strong path to a prospect's CEO, that's a deal accelerator worth knowing about before the next QBR. When the connection doesn't exist yet, it becomes a deliberate relationship-building objective that leadership can act on.

How to use it

Call the global paths endpoint for a target account, filtering by degree=second and target_seniority=CXO to get all executive-level paths your org has into that company:

GET https://api.ctd.ai/enterprise/atc-paths-api/public/v2/global/paths
  ?company_domain=acme.com
  &degree[]=second
  &target_seniority[]=CXO

// Headers
ctd-api-key: ...
ctd-client-id: your@company.com

The response returns all paths from anyone in your org to CXO-level contacts at the target company — including the connector name, relationship score, and the target executive's details. Write the strongest result back to an "Executive alignment" field on the opportunity record so reps and managers can see it at a glance without opening CTD.

Tip: Run this query whenever a new opportunity is created. If a strong CXO path exists and no intro has been requested within 14 days, trigger an alert to the AE's manager.

Bulk enrichment

There is no batch endpoint for company lookups — you'll need to call GET /company once per account. For large lists, rate-limit your requests and process enrichment as a scheduled nightly job rather than on-demand. The API reference lists current rate limits.

For the reverse direction — pushing your target account list into CTD — see CRM sync via API.

Have a question or running into an issue? Email us at support@ctd.ai — we're happy to help.