Introduction
The Network Mapper API builds an entire relationship graph for a company. It analyzes data points to (1) identify relationships and (2) calculate Connection Strength scores for every relationship. As part of the process, we map the “overlaps” of a company’s “connectors”: Overlaps are:- Work history overlap: people who work or worked at the same company
- Education overlap: People who graduated the same university in the same year
- Employees of the company
- Company’s VCs (when applicable)
- Execs of the portfolio companies of the company’s VCs (when applicable)
- Any other stakeholders added manually
The Swarm API Reference
The Swarm API is designed using the REST architectural style, employing standard HTTP methods for communication. Responses from the API are formatted in JSON (JavaScript Object Notation), a lightweight data-interchange format widely supported across various programming languages and platforms. This design choice ensures simplicity, flexibility, and ease of integration for developers utilizing the API.Authentication
Access to the API is authenticated using an API key mechanism. Each company can bring an individual API key provided by The Swarm. The API key should be included in the request headers (as x-api-key header) for each API call to authorize access to the endpoints. When using a Partner-managed API key, Swarm API expects additional body parameters in the request (see below)Endpoint
Production URL: [https://bee.theswarm.com/v2/profiles/network-mapper\\\\](https://bee.theswarm.com/v2/profiles/network-mapper\) Method: POSTDescription: This endpoint allows to query the relationship database using OpenSearch DSL to retrieve all connections in the network meeting the query criteria.
Headers:
| Key | Value |
|---|---|
| Content-Type | application/json |
| x-Api-Key | YOUR_API_KEY |
Body Parameters
The request body must contain an OpenSearch DSL query to search for a subset of the network. In the example below, we query for connections working in a company identified by website domain.profile_info.current_company_website- A valid website domain of the target company. This is the key field that is used to filter connections.
mapping_company_website- website domain of the company to be mapped (customer’s company).callback_url- URL for async response. Data will be sent to this URL when company mapping is finished.
Success Response (200 OK)
When the query is successful, the API returns a list of connections in the following format.profile: Basic information about the connectionconnections: Team members who are connected to the profile.connections.sources: Describes the ways the profile is connected to the team member. There can be multiple ways connecting two people. The type of connection is defined by connection.sources.origin and the schema of the elements depends on it. Below is the list of all values origin can currently take:linkedin_connectioncalendar_eventsemail_contactmanual_importwork_overlapeducation_overlapshared_investor
count: number of returned items (max 50)total_count: number of all available connections
Success Async Response (202 Accepted)
When the query is successful, but the company with the givenmapping_company_website is not yet mapped, the request will be processed asynchronously and a task_id is returned.
Task status can be checked at a separate endpoint: https://bee.theswarm.com/v2/profiles/network-mapper-task-status
The response to the asynchronous request will be sent to the callback.
Unsuccessful Response Bad Request (400)
- Wrong query:
- Wrong mapping_company_website
- Missing mapping_company_website (when using Partner API Key)
Unsuccessful Response- Company with domain not found (404 Not Found)
In this case, we don’t have a company with a given domain in our database at the moment, so we can’t perform requests for ‘My Company Domain’Callback requests body:
Successful: the body has the same format as 200 network mapper response Failed:Async Request Status Endpoint
This endpoint allows looking up the status of the company mapping process. URL: [https://bee.theswarm.com/v2/profiles/network-mapper-task-status\\\\](https://bee.theswarm.com/v2/profiles/network-mapper-task-status\) Method: POSTDescription: This endpoint allows to check the status of the mapping task with a given ID. Works only with the partner-managed API key.
| Key | Value |
|---|---|
| Content-Type | application/json |
| x-Api-Key | PARTNER_API_KEY |
Body Parameters
Responses:
Success Response (200 OK)
Successfully checked task status.in_progressdonefailed
Task Not Found (404)
Failed To Check Task Status (500)
Filtering & Query Customization
As mentioned above, the endpoint accepts an OpenSearch query of any type, so it can be used to narrow the results down even further. E.g. you can refine the query to return only people with certain job titles at the company. For more information on The Swarm API search capabilities refer to our main documentation.Example OpenSearch DSL queries are below.
When looking for the best software engineers on earth:
When looking for profiles in specific function:
- “IT & Engineering”
- “Human Resources”
- “Operations & Supply Chain”
- “Marketing & Product Management”
- “Sales & Business Development”
- “Customer Service & Support”
- “Finance & Accounting”
- “Legal & Compliance”
- “Healthcare & Medical Services”
- “Education & Training”
- “Consulting & Strategy”
- “Real Estate & Property Management”
- “Media, Publishing & Journalism”
- “Design & Creative Services”
- “Trades & Skilled Labor”
- “Public Relations & Communications”
- “Quality Assurance & Control”
- “Program & Project Management”
- “Banking & Financial Services”
- “Administration & Office Support”
When looking for profiles with specific seniority:
- c-level
- director
- vp
- manager
- senior
- junior

