export_subscribers
Export subscribers with complete engagement data—opens, views, comments, shares, and activity—using flexible filters. Waits for the generated file and returns parsed records, flagging unsupported columns.
Instructions
Export subscribers with their full column values, including the engagement metrics list_subscribers can filter on but not return: email opens over 7d/30d/6mo, unique emails seen, post views, unique posts seen, comments, shares, links clicked, days active and activity rating. Takes the same filters as list_subscribers and covers the whole matching set — there is no paging. Substack generates the file asynchronously, so this waits for it and returns the parsed records. Two columns cannot be exported and are reported in missing_columns rather than failing: tag_ids and group_membership.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| search | No | Free-text search over subscriber name and email. | |
| columns | No | Which columns to include. Defaults to every column. Available: user_name = Name; user_email_address = Email; country = Country; state = State/Province; group_membership = Group membership; subscription_type = Type; subscription_created_at = Start date; subscription_expires_at = Expiration date; first_payment_at = First paid date; last_subscribed_at = Paid upgrade date; unsubscribed_at = Cancel date; subscription_interval = Subscription interval; stripe_plan_name = Stripe plan; free_attribution = Subscription source (free); paid_attribution = Subscription source (paid); is_subscribed = Can see paid content; bestseller_tier = Bestseller; total_revenue_generated = Revenue; num_subs_gifted = Subscriptions gifted; bundle_id = Bundle; is_bundle_parent = Bundle origin; num_emails_received = Emails received (6mo); num_emails_dropped = Emails dropped (6mo); num_email_opens = Emails opened (6mo); num_email_opens_last_7d = Emails opened (7d); num_email_opens_last_30d = Emails opened (30d); num_unique_email_posts_seen = Unique emails seen (6mo); num_unique_email_posts_seen_last_7d = Unique emails seen (7d); num_unique_email_posts_seen_last_30d = Unique emails seen (30d); last_opened_at = Last email open; links_clicked = Links clicked; last_clicked_at = Last clicked at; emails_enabled = Sections; num_web_post_views = Post views; num_web_post_views_last_7d = Post views (7d); num_web_post_views_last_30d = Post views (30d); num_unique_web_posts_seen = Unique posts seen; num_unique_web_posts_seen_last_7d = Unique posts seen (7d); num_unique_web_posts_seen_last_30d = Unique posts seen (30d); num_comments = Comments; num_comments_last_7d = Comments (7d); num_comments_last_30d = Comments (30d); num_shares = Shares; num_shares_last_7d = Shares (7d); num_shares_last_30d = Shares (30d); days_active_last_30d = Days active (30d); activity_rating = Activity; tag_ids = Tags | |
| filters | No | Which subscribers to export, using the same conditions as list_subscribers, combined with AND. Omit to export everyone. | |
| max_wait_seconds | No | How long to wait for Substack to generate the file, 1-600, defaulting to 120. A small export is ready in a few seconds. |