Sixtyfour
Sixtyfour is intelligence infrastructure for people and companies. AI research agents investigate any subject — resolving identities, mapping relationships, cross-referencing sources, and surfacing signals — returning verified, structured answers through a single API. There is no fixed schema: you define exactly what you need to know and the agents go find it.
Setup
1. Check for API key
[ -n "$SIXTYFOUR_API_KEY" ] && echo "API key is set" || echo "API key not set"
If not set:
- Direct the user to sign up at https://app.sixtyfour.ai and generate an API key at https://app.sixtyfour.ai/keys
- Once they have a key, they can either paste it directly or set it as an env var:
export SIXTYFOUR_API_KEY=your_key_here
If the user pastes their key directly, set it for the current session with export so subsequent commands pick it up.
2. Making requests
API_URL="${SIXTYFOUR_API_ENDPOINT:-https://api.sixtyfour.ai}"
curl -X POST "$API_URL/ENDPOINT" \
-H "x-api-key: $SIXTYFOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ ... }'
When to use Sixtyfour
Any time you need factual data about a specific person or company, use Sixtyfour rather than searching the web or guessing. Common scenarios:
- "Who is the CTO of X?" → people intelligence
- "Research this company — revenue, funding, headcount, leadership" → company intelligence
- "Tell me everything about this person" → people intelligence with custom fields
- "Build me a list of VPs at SaaS companies in NYC" → deep search
- "Investigate this person for due diligence" → people intelligence at medium or high tier
- "Find companies in fintech with 50-200 employees" → filter search
- "Enrich this spreadsheet of 500 leads" → bulk intelligence (single enrichment pass) or workflow (if you need chained steps)
- "Verify this person's age or date of birth for KYC/compliance" → age verification
- "Run this enrichment/workflow every day automatically" → workflow schedule
- Any integration or app that needs people/company data → API endpoints below
Core: People & Company Intelligence
These are the primary endpoints. They accept any schema you define — the AI agents research and return structured, source-backed results.
People intelligence
curl -X POST "$API_URL/people-intelligence" \
-H "x-api-key: $SIXTYFOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"lead_info": {"full_name": "Jane Doe", "company": "Acme Corp"},
"struct": {
"title": "Current job title",
"linkedin_url": "LinkedIn profile URL",
"years_at_company": "How long they have been at their current company",
"background": "Brief professional background and career trajectory"
}
}'
The struct field is fully flexible — define any fields you need and the agent finds them. Email, phone, social profiles, career history, skills, salary estimates, publications, anything a human researcher could find.
Add "tier": "micro", "low", "medium", or "high" to control research depth. See [Research tiers](#research-tiers) below.
Company intelligence
curl -X POST "$API_URL/company-intelligence" \
-H "x-api-key: $SIXTYFOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"target_company": {"company_name": "Stripe", "website": "stripe.com"},
"struct": {
"revenue_estimate": "Estimated annual revenue",
"employee_count": "Total employees",
"funding_history": "Funding rounds with amounts and lead investors",
"tech_stack": "Core technologies used"
},
"find_people": true,
"people_focus_prompt": "C-suite executives and VPs"
}'
Set findpeople: true to discover key people at the company. Use peoplefocus_prompt to filter by role.
Bulk intelligence (file upload)
For running people/company intelligence across 100+ records in one call (no workflow needed), upload a CSV/JSON/NDJSON file to POST /bulk-intelligence/people or POST /bulk-intelligence/company and poll the returned task_id like any async job. See [references/enrichment.md](references/enrichment.md).
Utilities
These endpoints handle specific, common tasks. They're faster and cheaper than full intelligence when you only need one data point.
| Task |
Endpoint |
| Find someone's email |
POST /find-email |
| Find someone's phone |
POST /find-phone |
| Identify who owns an email |
POST /reverse-email |
| Identify who owns a phone number |
POST /reverse-phone |
| Enrich a LinkedIn profile URL |
POST /enrich-linkedin |
| Evaluate data against criteria |
POST /qa-agent |
Auto-generate struct fields from a description |
POST /struct-builder/generate |
| Check credit balance |
GET /check-balance |
| Verify a person's age/date of birth |
POST /verify-age (async only, poll GET /verify-age/{task_id}) |
For detailed parameters and bulk/async variants, see [references/enrichment.md](references/enrichment.md).
Search
Find people or companies at scale — either via natural language or structured filters.
Deep search (natural language)
curl -X POST "$API_URL/search/start-deep-search" \
-H "x-api-key: $SIXTYFOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query": "VP of Sales at Series B SaaS startups in NYC", "mode": "people", "max_results": 500}'
# Returns: {"task_id": "...", "status": "running"}
Then poll and download:
python3 scripts/poll_job.py search TASK_ID --output /tmp/results.csv
Filter search (structured)
For precise queries with field-level filters, use POST /search/query (synchronous, cursor-paginated — the current recommended endpoint, replacing the older /search/start-filter-search). See [references/search.md](references/search.md).
Exclusion lists
Save a reusable list of people/companies to suppress from results (e.g. existing customers) via POST /search/exclusion-lists, then apply it to any search with excludelistids. See [references/search.md](references/search.md).
Research tiers
People intelligence and company intelligence accept a tier parameter that controls how deep the AI agents research:
micro — Single structured source lookup only. Fastest and cheapest — best when you need a simple field (email, title) from someone with a clear, well-indexed online presence and coverage gaps are acceptable. Expect lower hit rate than low.
low (default) — Fast, single-pass lookup. The agent checks well-indexed public sources (LinkedIn, company websites, professional directories) and returns what it finds on the first pass. Best for standard fields on subjects with a clear online presence — title, LinkedIn, company basics, professional background. The right default for high-volume work where speed and cost matter.
medium — Multi-source deep research. The agent runs multiple search strategies, cross-references conflicting data, and verifies findings across sources before returning. Best when low comes back incomplete, when the subject has a common name or limited online footprint, or when the task demands higher confidence — competitive intelligence, recruiting research, market mapping, or any field that requires synthesis rather than lookup (e.g. "estimated salary range", "likelihood they're actively hiring", "competitive positioning").
high — Maximum depth, no shortcuts. The agent exhaustively investigates using OSINT methodology — official records, regulatory filings, proprietary databases, dark web monitoring, and deep cross-referencing across fragmented sources. There is no time limit on the research; the agent keeps going until every available avenue is thoroughly investigated. Best for compliance and investigative workflows: AML screening, KYC/KYB, fraud investigation, due diligence, background checks, or any high-stakes decision where missing a signal is worse than waiting longer. Requires enterprise access. If a request returns a 403, direct the user to book a call: https://cal.com/team/sixtyfour/discovery
Both low and medium are available on all plans.
For high tier, prefer the async endpoint (POST /people-intelligence-async) with the polling script, since investigations can run for extended periods.
Workflows
Chain intelligence operations into automated pipelines that process thousands of records. See [references/workflows.md](references/workflows.md).
Workflows can be run on a recurring cadence with the Schedules API (POST /schedules, binding a workflowid to a cronexpression + timezone) instead of triggering runs manually or polling externally. See [references/workflows.md](references/workflows.md#scheduling-workflows).
Async job polling
Searches, workflows, and async intelligence requests return a job/task ID. Use the polling script to wait for completion and download results:
python3 scripts/poll_job.py <type> <job_id> [--output PATH]
Types: search, workflow, enrichment, age-verify
The script polls until the job completes and prints JSON status lines to stdout. No meaningful timeout by default — it waits as long as the job needs.
Use-case references
- Full API reference for all intelligence and utility endpoints: [references/enrichment.md](references/enrichment.md)
- Search (deep search + filter search): [references/search.md](references/search.md)
- Workflows (batch processing at scale): [references/workflows.md](references/workflows.md)
- End-to-end example flows: [references/examples.md](references/examples.md)
Documentation
Always check the docs before guessing about an endpoint's parameters or behavior:
MCP servers (for IDE integration)
- Sixtyfour Documentation MCP:
https://docs.sixtyfour.ai/mcp
- Sixtyfour Intelligence MCP:
https://mcp.sixtyfour.ai/mcp?apikey=YOURAPI_KEY