# Apollo

**Turn a name, email, or domain into a full profile — enrich any Person or Company with Apollo.io in one click.**

## ✨ What you get

- **Rich Person fields** — headline, seniority, departments, verified email status, personal emails, photo, employment history, and async phone reveal
- **Rich Company fields** — industry, employees, annual revenue, founded year, keywords, technologies, funding, LinkedIn, location, headcount growth, and NAICS codes
- **Run it anywhere** — from the command menu, as a workflow step, or straight from AI chat
- **Smart matching** — finds the right profile from a LinkedIn, email, or domain and only writes confident matches

## 🔑 Setup

This app is **free** and consumes **your own Apollo.io API credits**. Set the `APOLLO_API_KEY` server variable in Settings → Apps to your Apollo.io API key.

### Phone reveal (optional)

Apollo reveals phone numbers asynchronously via a webhook. To enable it, set the `APOLLO_PHONE_WEBHOOK_URL` server variable (Settings → Apps) to the public URL that resolves to this app's phone webhook route (`<public-app-base>/webhook/apollo-phone`). When unset, enrichment still runs fully and only the async phone reveal is skipped.

Phone reveal is only requested on **single Person enrichment** (Enrich Person), where Apollo's batch-level `request_id` maps to exactly one record. Bulk **Enrich People** never requests phone reveal, so it cannot cross-assign numbers.

To harden the public webhook, set the `APOLLO_WEBHOOK_SECRET` server variable. When set, incoming webhook calls must present the matching secret via a `?secret=<value>` query param or an `x-apollo-webhook-secret` header — so append `?secret=<value>` to your `APOLLO_PHONE_WEBHOOK_URL`. When unset, the webhook stays open (backward compatible).
