How to Build a Team Research Hub with Perplexity Spaces: Complete Setup Guide
How to Build a Team Research Hub with Perplexity Spaces
Perplexity Spaces transforms how teams conduct collaborative research by providing shared environments where source collections, saved prompts, and AI-powered search coexist. This guide walks you through setting up a fully functional team research hub — from initial configuration to advanced collaboration workflows.
What Are Perplexity Spaces?
Perplexity Spaces are dedicated collaborative environments within Perplexity AI where teams can organize research around specific topics or projects. Each Space acts as a self-contained research hub with shared context, curated sources, reusable prompts, and conversation history accessible to all members.
Prerequisites
- A Perplexity Pro or Enterprise account (Spaces require a paid plan)- Team members with Perplexity accounts- Optionally, a Perplexity API key for automation workflows
Step 1: Create Your First Research Space
- Log in to perplexity.ai and navigate to the left sidebar.- Click Spaces → Create Space.- Enter a descriptive name (e.g.,
Q2 Competitive Intelligence).- Add an optional description explaining the Space’s purpose and research scope.- Set the default AI model. For deep research tasks, select Claude or GPT-4 as the preferred model.- Choose the visibility: Private (invite-only) or Shared (link access).- Click Create.
Step 2: Invite Team Members and Set Permissions
- Open your newly created Space and click the Members icon.- Enter team members’ email addresses or share the invite link.- Assign roles:
- Admin — can manage settings, members, and sources- Contributor — can add sources, run queries, and save threads- Viewer — read-only access to threads and sources - Click Send Invites.
Step 3: Build a Shared Source Collection
Source collections define the knowledge boundary for your research Space. This ensures all team queries draw from vetted, relevant materials.
- Inside your Space, navigate to the Sources tab.- Click Add Source and choose from:
- URLs — paste specific web pages, documentation links, or reports- Files — upload PDFs, research papers, or internal documents (up to 50MB each)- Domains — whitelist entire domains (e.g.,
arxiv.org,techcrunch.com) - Organize sources with descriptive labels.Example source structure for a competitive intelligence hub:
| Source Type | Example | Purpose |
|---|---|---|
| Domain | competitor-a.com | Track product updates |
| URL | Industry analyst report link | Market benchmarks |
| File | internal-swot-2026.pdf | Internal analysis baseline |
| Domain | news.ycombinator.com | Tech community sentiment |
You are a competitive intelligence analyst for our SaaS team.
Always structure responses with:
1. Executive Summary (2-3 sentences)
2. Key Findings (bullet points)
3. Data Sources (with links)
4. Recommended Actions
Prioritize information from the last 90 days.
Flag any conflicting data points between sources.- Save the instructions. Every query in this Space now follows these guidelines.
Step 5: Automate Research Workflows with the API
For teams that need programmatic access, the Perplexity API integrates Spaces into automated pipelines.
Install the Client
pip install openai
Run a Query Against Your Space Context
import requests
API_KEY = "YOUR_API_KEY"
BASE_URL = "https://api.perplexity.ai/chat/completions"
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
payload = {
"model": "sonar-pro",
"messages": [
{
"role": "system",
"content": "You are a competitive intelligence analyst. Cite all sources."
},
{
"role": "user",
"content": "What product launches did our top 3 competitors announce this quarter?"
}
],
"search_domain_filter": ["competitor-a.com", "competitor-b.com", "competitor-c.com"],
"return_citations": True,
"search_recency_filter": "quarter"
}
response = requests.post(BASE_URL, headers=headers, json=payload)
data = response.json()
print(data["choices"][0]["message"]["content"])
for citation in data.get("citations", []):
print(f" Source: {citation}")
Schedule Daily Research Digests
# cron job example (Linux/macOS)
# Run competitive scan every weekday at 8 AM
0 8 * * 1-5 python3 /scripts/perplexity_daily_scan.py >> /logs/research.log 2>&1
Send Results to Slack via Webhook
import requests
import json
def send_to_slack(webhook_url, research_summary):
payload = {
"blocks": [
{
"type": "header",
"text": {"type": "plain_text", "text": "Daily Research Digest"}
},
{
"type": "section",
"text": {"type": "mrkdwn", "text": research_summary}
}
]
}
requests.post(webhook_url, json=payload)
SLACK_WEBHOOK = "https://hooks.slack.com/services/YOUR/WEBHOOK/URL"
send_to_slack(SLACK_WEBHOOK, data["choices"][0]["message"]["content"])
Step 6: Establish a Collaboration Workflow
A structured workflow ensures consistent research quality across the team:
- **Thread Naming Convention** — Use prefixes like [COMP], [MARKET], [TECH] to categorize threads.- **Weekly Source Review** — Assign a rotating team member to audit and update the source collection every Monday.- **Pin Key Threads** — Pin breakthrough findings so new members find critical insights immediately.- **Fork Threads** — When a query leads to a new research direction, fork the thread rather than cluttering the original.- **Export and Archive** — Export completed research threads as markdown for long-term storage in your knowledge base.
## Pro Tips for Power Users
- **Focus Mode** — Use the search_recency_filter parameter (day, week, month, quarter) to constrain results to recent data only.- **Multi-Space Strategy** — Create separate Spaces per project phase: *Discovery*, *Deep Dive*, and *Decision*. Move threads between them as research matures.- **Source Stacking** — Combine uploaded internal documents with domain filters. The AI will cross-reference internal data against live web sources.- **Follow-Up Chains** — Use Perplexity's follow-up feature to progressively narrow research. Each follow-up inherits the full thread context.- **Keyboard Shortcuts** — Press / to start a new query, Ctrl+Shift+S to save a thread, and Ctrl+Shift+C to copy a response with citations.
## Troubleshooting Common Issues
| Issue | Cause | Solution |
|---|---|---|
| Team member cannot see the Space | Invite not accepted or wrong email | Resend invite; verify the email matches their Perplexity account |
| Uploaded files not appearing in results | File processing delay or unsupported format | Wait 2-3 minutes after upload; ensure files are PDF, TXT, or DOCX |
API returns 401 Unauthorized | Invalid or expired API key | Regenerate key at **Settings → API** and update your script |
| Responses ignore custom instructions | Instructions exceed character limit | Keep custom instructions under 1500 characters; prioritize key directives |
| Source domain filter not working | Domain format includes protocol | Use example.com not https://example.com |
How many members can join a single Perplexity Space?
Perplexity Pro plans support up to 10 members per Space. Enterprise plans offer unlimited members with additional admin controls, SSO integration, and audit logging. If you need more than 10 collaborators on a Pro plan, consider creating role-based Spaces (e.g., one for analysts, another for executives) with overlapping source collections.
Can I use Perplexity Spaces with sources in multiple languages?
Yes. Perplexity Spaces support multilingual source collections. You can upload documents and add URLs in any language. The AI will process and cross-reference sources regardless of language. When querying, specify your preferred output language in the custom instructions to ensure consistent response formatting across the team.
Is there a way to export all research from a Space for backup or compliance?
Individual threads can be exported as markdown or shared via link. For bulk export, use the Perplexity API to programmatically retrieve thread histories. Currently, there is no one-click full-Space export feature, so teams handling compliance requirements should implement a scheduled API script that archives threads to cloud storage (e.g., S3 or Google Drive) on a weekly basis.