PhantomBuster
API actions for the PhantomBuster integration.
PhantomBuster
Launch PhantomBuster Phantoms and pull their extracted data (LinkedIn, social, and web scraping results) into your workflows.
Describe Phantom
Look up a Phantom's saved settings, including its saved inputs — useful for finding the exact input field names the Phantom expects.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
agent_id | string | Yes | The ID of the Phantom to describe. |
Response
{
"argument": {
"columnName": "profileUrl",
"sessionCookie": "<li_at cookie>",
"spreadsheetUrl": "https://docs.google.com/spreadsheets/d/..."
},
"id": "1234567890123456",
"name": "LinkedIn Followers Export",
"script": "LinkedIn Profile Scraper"
}Fetch result data
Bring a Phantom's results (the rows it collected) into the workflow. For large results, use the Limit and Rows to skip fields to fetch a portion at a time; a link to the full results file is always included.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
agent_id | string | Yes | The ID of the Phantom whose results to fetch. |
container_id | string | No | Optional run ID to note which run these results relate to. The latest results file is read either way. |
format | string | No | Result file format: 'auto', 'json', or 'csv'. |
limit | number | No | Maximum number of rows to return. |
offset | number | No | Skip this many rows before returning results, so you can fetch large results in batches. |
Response
{
"format": "json",
"result_url": "https://phantombuster.s3.amazonaws.com/orgFolder/agentFolder/result.json",
"row_count": 1,
"rows": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"profileUrl": "https://www.linkedin.com/in/jane-doe"
}
],
"total_rows": 1,
"truncated": false
}Get run status
Check the status of a Phantom run. Keep checking until the status is 'finished' or 'error'.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
container_id | string | Yes | The run ID returned by the Launch Phantom action. |
Response
{
"container_id": "9876543210987654",
"ended_at": 1716969600000,
"progress": 100,
"raw_status": "finished",
"status": "finished"
}Launch Phantom
Launch a Phantom. Any run inputs you provide (for example, a spreadsheet URL, a column name, or a profile URL) apply to this run only. The run continues in the background, so use Get run status with the returned run ID to see when it finishes.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
agent_id | string | Yes | The ID of the Phantom to launch. |
arguments | object | No | Inputs for this run only, such as a spreadsheet URL or profile URL. They override the Phantom's saved settings for this launch. |
max_instance_count | number | No | Only launch if fewer than this many runs of this Phantom are already in progress. Helps you stay within your PhantomBuster limits. |
metadata | object | No | Your own labels and values to save with this run, so you can identify it later. |
Response
{
"container_id": "9876543210987654",
"status": "launched"
}List Phantoms
List all Phantoms in the connected PhantomBuster workspace, so you can pick which one to launch.
Response
{
"agent_count": 1,
"agents": [
{
"id": "1234567890123456",
"name": "LinkedIn Followers Export",
"script": "LinkedIn Profile Scraper"
}
]
}