# Twitter/X Spaces Scraper (`igview-owner/twitter-x-spaces-scraper`) Actor

Extract detailed data from any Twitter/X Space without login. Get full participant lists (speakers, hosts, listeners), live listener counts, and direct M3U8 audio playlist URLs for easy replay download. Supports bulk Space URLs!

- **URL**: https://apify.com/igview-owner/twitter-x-spaces-scraper.md
- **Developed by:** [Sachin Kumar Yadav](https://apify.com/igview-owner) (community)
- **Categories:** Social media, Developer tools, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.00 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## 🎙️ Twitter/X Spaces Scraper – Extract Data from X Spaces

**Extract complete data from any Twitter/X Space. Get participant lists (admins, speakers, listeners), creator details, live listener counts, replay status, playlist URLs, and more. Perfect for podcast monitoring, influencer tracking, community research, and audio content analysis!**

### 📋 Table of Contents

- [Features](#features)
- [Use Cases](#use-cases)
- [Quick Start](#quick-start)
- [Input Parameters](#input-parameters)
- [Output Format](#output-format)
- [Data Fields Explained](#data-fields-explained)
- [FAQ](#faq)

### 🚀 Features

#### **Complete Spaces Data Extraction**
- **Full Space Details** - Extract state, timing, content type, and lock status of any Twitter/X Space.
- **Participant Breakdown** - Get detailed lists of admins, speakers, and listeners with display names, usernames, user IDs, avatars, and verification status.
- **Creator Information** - Creator display name, username, rest ID, avatar, follower count, and pinned tweet IDs.
- **Listener Statistics** - Total live listener count and total replay watched count.
- **Replay & Playlist Access** - Replay availability status, playlist URLs, and media chunk base URLs for audio content access.

#### **Reliable Scraping Architecture**
- **Bulk Scraping** - Scrape up to 100 Spaces in a single run by providing multiple Space IDs or URLs.
- **No Account Required** - Pull data securely from public Spaces without logging into a personal Twitter/X account or using browser sessions.
- **Smart URL Parsing** - Accepts both direct Space IDs and full Space URLs (`https://x.com/i/spaces/...`).

### 🎯 Use Cases

| Use Case | Description | Benefits |
|----------|-------------|----------|
| **Podcast Monitoring** | Track live and recorded Spaces from specific creators | Discover audio content, monitor episode frequency |
| **Influencer Analysis** | Analyze which influencers participate as speakers/admins | Map influence networks, identify key voices |
| **Community Research** | Monitor Spaces hosted by communities or brands | Track engagement levels, audience size |
| **Content Discovery** | Find popular Spaces with high listener counts | Identify trending topics and viral audio content |
| **Competitive Intelligence** | Track competitor-hosted Spaces and their speakers | Monitor industry events, partnerships |
| **Audio Content Archival** | Extract replay URLs and playlist data | Archive audio content before replays expire |

### ⚡ Quick Start

#### 1️⃣ Single Space Scraping
```json
{
  "spaceIds": [
    "1BdxYZQbLqZKX"
  ]
}
````

#### 2️⃣ Multiple Spaces or Space URLs

```json
{
  "spaceIds": [
    "1BdxYZQbLqZKX",
    "https://x.com/i/spaces/1eaKbrPAqbwKX",
    "https://twitter.com/i/spaces/1YpKkZBkVbNJj"
  ]
}
```

### 📊 Input Parameters

#### Configuration Options

| Parameter | Type | Required | Description | Default |
|-----------|------|----------|-------------|---------|
| `spaceIds` | Array | Yes | List of Twitter/X Space IDs or Space URLs to scrape. Supports direct alphanumeric IDs and full Space URLs. | |

### 📤 Output Format

#### **Space Result Example**

```json
{
  "space_id": "1BdxYZQbLqZKX",
  "state": "Ended",
  "started": "2026-01-31T13:56:16.796Z",
  "ended": "2026-01-31T15:26:35.556Z",
  "total_live_listeners": 118179,
  "total_replay_watched": 45,
  "content_type": "visual_audio",
  "locked": false,
  "community": false,
  "replay_available": true,
  "is_space_available_for_replay": true,
  "replay_start_time": null,
  "media_key": "28_2006088241926266885",
  "creator_name": "LBank.com",
  "creator_username": "LBank_Exchange",
  "creator_rest_id": "913302048564637696",
  "creator_avatar": null,
  "creator_followers": 742777,
  "creator_blue_verified": false,
  "creator_pinned_tweets": ["2074086127091302710"],
  "admins": [
    {
      "display_name": "LBank.com",
      "screenname": "LBank_Exchange",
      "rest_id": "913302048564637696",
      "avatar": "https://pbs.twimg.com/profile_images/.../photo_normal.jpg",
      "is_verified": true,
      "is_blue_verified": false,
      "periscope_user_id": "1PmKqLrJOrxQo"
    }
  ],
  "admins_count": 1,
  "speakers": [
    {
      "display_name": "Trend Scalez",
      "screenname": "TrendScalezz",
      "rest_id": "815715074",
      "avatar": "https://pbs.twimg.com/profile_images/.../photo_normal.jpg",
      "is_verified": true,
      "is_blue_verified": false,
      "periscope_user_id": "1PXKdXDZlGPKe"
    }
  ],
  "speakers_count": 3,
  "listeners": [],
  "listeners_count": 0,
  "sharings": [],
  "playlist_url": "https://prod-fastly-eu-central-1.video.pscp.tv/.../playlist.m3u8?type=replay",
  "chunks_base_url": "https://prod-fastly-eu-central-1.video.pscp.tv/.../audio-space/",
  "scraped_at": "2026-07-10T10:45:00.000Z"
}
```

### 📈 Data Fields Explained

#### **Complete Field Reference**

| Field | Type | Description |
|-------|------|-------------|
| `space_id` | String | Unique alphanumeric ID of the Twitter/X Space. |
| `state` | String | Current state of the Space (e.g., "Ended", "Running", "NotStarted"). |
| `started` | String | ISO timestamp when the Space started. |
| `ended` | String | ISO timestamp when the Space ended. |
| `total_live_listeners` | Integer | Total number of live listeners during the Space. |
| `total_replay_watched` | Integer | Number of times the replay has been watched. |
| `content_type` | String | Type of content (e.g., "visual\_audio"). |
| `locked` | Boolean | Whether the Space is locked. |
| `community` | Boolean | Whether the Space is a community Space. |
| `replay_available` | Boolean | Whether a replay is available. |
| `is_space_available_for_replay` | Boolean | Whether the Space can be replayed. |
| `media_key` | String | Media key identifier for the Space. |
| `creator_name` | String | Display name of the Space creator. |
| `creator_username` | String | Username of the Space creator. |
| `creator_rest_id` | String | Unique user ID of the Space creator. |
| `creator_avatar` | String | URL of the creator's profile image. |
| `creator_followers` | Integer | Follower count of the Space creator. |
| `creator_blue_verified` | Boolean | Whether the creator is blue verified. |
| `admins` | Array | List of admin participants with profile details. |
| `admins_count` | Integer | Number of admins in the Space. |
| `speakers` | Array | List of speaker participants with profile details. |
| `speakers_count` | Integer | Number of speakers in the Space. |
| `listeners` | Array | List of listener participants (if available). |
| `listeners_count` | Integer | Number of listeners returned by the API. |
| `sharings` | Array | Shared content within the Space. |
| `playlist_url` | String | Direct URL to the Space replay playlist (M3U8). |
| `chunks_base_url` | String | Base URL for audio chunks. |
| `scraped_at` | String | Extraction timestamp in ISO format. |

### ❓ FAQ

#### **Q: Can I scrape live Spaces?**

**A:** Yes! The API returns real-time data for live Spaces including current participants and listener counts.

#### **Q: Can I access the audio replay?**

**A:** The actor returns the `playlist_url` (M3U8 format) when replay is available. You can use this URL with compatible media players.

#### **Q: Do I need a Twitter/X account?**

**A:** No. This actor works without any Twitter/X login or browser session.

#### **Q: Can I use the full Space URL instead of just the Space ID?**

**A:** Yes! The actor automatically parses full URLs like `https://x.com/i/spaces/1BdxYZQbLqZKX` and extracts the ID.

#### **Q: What happens if a Space is deleted or unavailable?**

**A:** The actor will return an error entry in the dataset with the Space ID and error details for traceability.

***

### Related Actors 🤝

- **[Twitter X Thread Reader Scraper](https://apify.com/igview-owner/twitter-x-thread-reader)**
- **[Twitter X Recent Replies Scraper](https://apify.com/igview-owner/twitter-x-recent-replies)**
- **[Twitter X Profile Scraper](https://apify.com/igview-owner/twitter-x-profile-scraper)**
- **[Twitter X Video Downloader](https://apify.com/igview-owner/twitter-x-video-downloader)**
- **[X Profile Viewer](https://apify.com/igview-owner/x-twitter-profile-viewer)**
- **[X Follower Scraper](https://apify.com/igview-owner/twitter-x-follower-scraper)**
- **[X Following Scraper](https://apify.com/igview-owner/twitter-x-following-scraper)**
- **[Twitter Affiliates X Scraper](https://apify.com/igview-owner/twitter-advanced-x-scraper)**
- **[Twitter X Lists Timeline Scraper](https://apify.com/igview-owner/twitter-x-lists-timeline)**

***

### 🏷️ **Keywords & Tags**

`twitter spaces scraper`, `x spaces scraper`, `twitter spaces data`, `extract twitter spaces`, `twitter audio scraper`, `x spaces participants`, `twitter spaces listeners`, `twitter spaces replay`, `apify twitter spaces`, `x.com spaces`

***

### 🚀 **Get Started Now**

1. Click ["Try for free"](https://apify.com?fpr=ykgg9c) to run this actor in the Apify Console.
2. Provide one or more Space IDs or Space URLs in the input array.
3. Export your data as JSON, CSV, or Excel!

**⭐ If this actor is useful to your workflow, please leave a star!**

***

*Built by Sachin Kumar Yadav using Apify Platform*

# Actor input Schema

## `spaceIds` (type: `array`):

Enter Twitter/X Space IDs or full Space URLs. Examples: '1BdxYZQbLqZKX', 'https://x.com/i/spaces/1BdxYZQbLqZKX'

## Actor input object example

```json
{
  "spaceIds": [
    "1BdxYZQbLqZKX"
  ]
}
```

# Actor output Schema

## `spaces_overview` (type: `string`):

Open the dataset view with an overview of all Spaces including state, creator, listeners, replay status, and participant counts.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "spaceIds": [
        "1BdxYZQbLqZKX"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("igview-owner/twitter-x-spaces-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "spaceIds": ["1BdxYZQbLqZKX"] }

# Run the Actor and wait for it to finish
run = client.actor("igview-owner/twitter-x-spaces-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "spaceIds": [
    "1BdxYZQbLqZKX"
  ]
}' |
apify call igview-owner/twitter-x-spaces-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=igview-owner/twitter-x-spaces-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Twitter/X Spaces Scraper",
        "description": "Extract detailed data from any Twitter/X Space without login. Get full participant lists (speakers, hosts, listeners), live listener counts, and direct M3U8 audio playlist URLs for easy replay download. Supports bulk Space URLs!",
        "version": "1.0",
        "x-build-id": "hnhg4ZXdyPqkAE3DT"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/igview-owner~twitter-x-spaces-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-igview-owner-twitter-x-spaces-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/igview-owner~twitter-x-spaces-scraper/runs": {
            "post": {
                "operationId": "runs-sync-igview-owner-twitter-x-spaces-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/igview-owner~twitter-x-spaces-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-igview-owner-twitter-x-spaces-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "spaceIds"
                ],
                "properties": {
                    "spaceIds": {
                        "title": "Space IDs or URLs",
                        "minItems": 1,
                        "maxItems": 100,
                        "type": "array",
                        "description": "Enter Twitter/X Space IDs or full Space URLs. Examples: '1BdxYZQbLqZKX', 'https://x.com/i/spaces/1BdxYZQbLqZKX'",
                        "items": {
                            "type": "string"
                        },
                        "default": [
                            "1BdxYZQbLqZKX"
                        ]
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
