Axial M&A Advisor Directory Scraper
Pricing
Pay per event
Axial M&A Advisor Directory Scraper
Extract firm records, profile links, descriptions, deal counts, and public contact metadata from Axial's M&A advisor directory.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Extract firm records from Axial's public company directory: investment banks, M&A advisory firms, business brokers, private equity funds, family offices, holding companies, and independent sponsors. The actor crawls category pages, follows pagination, optionally enriches records from public firm profile pages, and saves clean rows for CRM, market mapping, outreach, and research workflows.
What does Axial M&A Advisor Directory Scraper do?
Axial M&A Advisor Directory Scraper turns public Axial directory pages into a structured dataset.
It collects firm names, Axial profile URLs, firm types, descriptions, deal-count signals, logo URLs, recent transaction summaries, profile metadata, and public location hints when available.
Use it when you need a repeatable extractor instead of manually copying firms from pages such as:
https://www.axial.net/forum/companies/investment-banks/https://www.axial.net/forum/companies/m-a-advisory-firms/https://www.axial.net/forum/companies/business-brokers/https://www.axial.net/forum/companies/private-equity-funds/https://www.axial.net/forum/companies/family-offices/
Who is it for?
This actor is built for buyers who work with lower-middle-market M&A and private-company deal networks.
- ๐งญ M&A platform operators building reference lists of advisors and intermediaries.
- ๐ผ Private equity and independent sponsor researchers mapping advisor coverage by category.
- ๐ Broker CRM teams refreshing firm names, profile links, and short descriptions.
- ๐ฃ B2B outreach teams creating seed lists for enrichment and compliant outbound workflows.
- ๐ Market intelligence analysts tracking which firms appear in public Axial categories.
Why use this actor?
Axial pages are useful but not convenient to export. This actor gives you:
- structured dataset rows instead of copied page snippets;
- predictable pagination limits;
- profile URL deduplication across sources;
- optional profile-page enrichment;
- conservative HTTP crawling without a browser;
- pay-per-result pricing that scales with the number of saved firms.
Data extracted
Typical output fields include:
| Field | Description |
|---|---|
firmName | Firm or company name shown by Axial |
profileUrl | Public Axial profile URL |
category | Directory category inferred from the source page |
sourceUrl | Category page where the record was found |
firmType | Firm type, such as Investment Bank or Business Broker |
location | Location parsed from public profile metadata when available |
firmDescription | Directory card description |
website | External website link when publicly exposed on the profile page |
logoUrl | Logo image URL from the directory card |
closedDealsViaAxial | Closed-deal count shown on Axial, when present |
totalClosedDeals | Total closed-deal count shown on Axial, when present |
recentTransactions | Recent public transaction snippets from the card |
metaDescription | Public SEO/profile description from the firm profile |
scrapedAt | ISO timestamp for the extraction run |
How much does it cost to scrape Axial advisor directory records?
The actor uses pay-per-event pricing.
- Start event: a small one-time run charge.
- Item event: charged per saved firm record.
Final tiered prices are set after cloud cost validation. The default input is intentionally small enough for an inexpensive first run.
Input options
You can use full directory URLs or category slugs.
Axial directory URLs
Provide one or more public Axial directory URLs in startUrls.
Example:
{"startUrls": [{ "url": "https://www.axial.net/forum/companies/investment-banks/" },{ "url": "https://www.axial.net/forum/companies/business-brokers/" }],"maxItems": 100,"maxPagesPerCategory": 5,"includeProfiles": true}
Category slugs
Use categories for Axial category slugs.
{"categories": ["m-a-advisory-firms", "business-brokers"],"maxItems": 250,"maxPagesPerCategory": 10,"includeProfiles": true}
Default categories
If you do not provide startUrls or categories, the actor starts with:
- investment banks;
- M&A advisory firms;
- business brokers.
These defaults match common lead-research workflows for lower-middle-market M&A.
Output example
{"firmName": "FOCUS Investment Banking","profileUrl": "https://www.axial.net/company/focus-investment-banking1","category": "Investment Banks","firmType": "Investment Bank","location": "Vienna, Virginia","closedDealsViaAxial": 4,"totalClosedDeals": 187,"recentTransactions": ["Advisor Sep 2025 Anonymous was acquired by Confidential Company"],"scrapedAt": "2026-06-29T03:36:14.202Z"}
How to run it
- Open the actor on Apify.
- Keep the default directory URLs or add your own Axial category pages.
- Set
maxItemsto the number of firm records you need. - Keep
includeProfilesenabled if you want profile metadata and location hints. - Run the actor and export the dataset as JSON, CSV, Excel, or through the API.
Tips for best results
- Use a low
maxItemsfor the first run. - Increase
maxPagesPerCategorywhen you want deeper pagination. - Use category slugs when you already know the Axial directory segment.
- Disable
includeProfilesfor faster category-only extraction. - Deduplicate downstream by
profileUrlif you merge multiple runs.
Integrations
You can connect the dataset to common sales and research workflows:
- CRM imports for advisor and broker account creation;
- spreadsheet-based market maps;
- enrichment tools that append websites, emails, and LinkedIn pages;
- data warehouses for recurring M&A ecosystem monitoring;
- lead-scoring systems that combine category and deal-count signals.
API usage: Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/axial-ma-advisor-directory-scraper').call({categories: ['investment-banks'],maxItems: 100,includeProfiles: true,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items.slice(0, 3));
API usage: Python
from apify_client import ApifyClientimport osclient = ApifyClient(os.environ['APIFY_TOKEN'])run = client.actor('automation-lab/axial-ma-advisor-directory-scraper').call(run_input={'categories': ['business-brokers'],'maxItems': 100,'includeProfiles': True,})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items[:3])
API usage: cURL
curl -X POST "https://api.apify.com/v2/acts/automation-lab~axial-ma-advisor-directory-scraper/runs?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"categories":["m-a-advisory-firms"],"maxItems":100,"includeProfiles":true}'
MCP: use with Claude and other clients
Use the Apify MCP server with this actor enabled:
$npx -y @apify/actors-mcp-server --actors automation-lab/axial-ma-advisor-directory-scraper
MCP URL format:
https://mcp.apify.com/?tools=automation-lab/axial-ma-advisor-directory-scraper
JSON configuration example:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com/?tools=automation-lab/axial-ma-advisor-directory-scraper"}}}
Example prompts:
- "Scrape 100 Axial investment banks and summarize the most common locations."
- "Create a CSV of Axial business brokers with profile URLs and deal counts."
- "Find M&A advisory firms from Axial and prepare a CRM import table."
Profile enrichment
When includeProfiles is enabled, the actor opens each public Axial profile URL and tries to collect public metadata such as SEO descriptions and location hints.
Profile enrichment is slower because it adds one HTTP request per firm. Disable it for quick directory-card exports.
Pagination behavior
The actor follows Axial pagination links inside each category until it reaches:
maxItems,maxPagesPerCategory, or- no new page links.
This keeps runs bounded and avoids unexpectedly large crawls.
Limits and caveats
- The actor extracts only public information visible from Axial pages.
- Some profiles do not expose websites or locations publicly.
- Axial page structure can change; report broken fields if output suddenly becomes sparse.
- Transaction snippets may include anonymized or confidential parties exactly as Axial displays them.
- The actor does not log in to Axial or access private network data.
Legality
Axial M&A Advisor Directory Scraper is designed for public business-directory research. It does not bypass login walls, scrape private Axial network data, or access non-public account resources.
Legal and ethical use
Use this actor only for lawful purposes and respect applicable privacy, marketing, and platform terms. Public business directory data may still require compliant handling when used for outreach, enrichment, or CRM workflows.
Troubleshooting
The run returned fewer records than expected
Increase maxPagesPerCategory, check that the category URL is public, and confirm maxItems is high enough.
Website is blank for many records
Many Axial public profile pages do not expose external websites. Use profileUrl as the stable source link and enrich externally if needed.
The actor is slower with profiles enabled
That is expected. Profile enrichment adds one request per firm. Set includeProfiles to false for faster category-listing exports.
Related scrapers
Other Automation Lab actors can complement this workflow:
- LinkedIn and company-profile enrichment actors for appending professional signals.
- Website/contact discovery actors for finding public company domains and contact pages.
- Directory and lead-list scrapers for adjacent B2B market mapping.
FAQ
Can I scrape only one category?
Yes. Provide one startUrls entry or one category slug.
Can I scrape city-filtered Axial pages?
Yes. Put the city-filtered Axial directory URL in startUrls.
Does this actor need proxies?
The implementation is HTTP-first and normally does not require a browser. Conservative usage is recommended.
Does it access private Axial account data?
No. It only extracts public directory/profile pages.
What is the best unique key?
Use profileUrl as the stable deduplication key.
Support
If a category stops working, include the run ID, input JSON, and a sample URL. That makes it easier to distinguish target HTML changes from input or limit settings.