Documentation Index
Fetch the complete documentation index at: https://docs.pipeshub.com/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Linear is a modern issue tracking and project management platform designed for high-performance software teams. It provides streamlined workflows, keyboard-first design, and powerful integrations to help teams build products faster.Linear Data Structure
The connector understands Linear’s hierarchical data model:- Teams
- Issues (with comments, attachments, documents, and embedded files)
- Projects (with milestones, updates, external links, and documents)
- Users (team members with profiles and emails)
What Gets Synced
The connector indexes the following content for AI-powered search:| Content Type | Details |
|---|---|
| Issues | Title, description, status, priority, labels, identifiers (e.g., ENG-123), assignee, creator, type, and parent issue (sub-issues) |
| Comments | Full comment threads organized by thread ID with author info and timestamps |
| Attachments | External links attached to issues |
| Documents | Linear documents linked to issues and projects |
| Files | Files from descriptions/comments (images as base64, others as FileRecord) |
| Projects | Description, content, milestones, updates, comments, external links, and documents |
| Users | Profiles with IDs, emails, and display names |
| Permissions | Team-level access controls (public vs. private teams) |
Configuration Guide
The Linear connector uses OAuth 2.0 for authentication. Linear’s OAuth apps return refresh tokens that auto-refresh, so a single authorization keeps syncing indefinitely.Step 1: Access Linear API settings
- Go to linear.app/settings/api and sign in with your Linear account (must have admin access to your workspace).
- You’ll see the API page where you create and manage OAuth 2.0 applications.

It is recommended to create a dedicated Linear workspace for managing OAuth apps, since any admin on the workspace can see the application credentials.
Step 2: Get the Redirect URL from PipesHub
Before creating the OAuth application in Linear, copy the Redirect URL from PipesHub.- In PipesHub, go to Workspace Settings → Connectors, find Linear, and click + Setup for a new instance.
- The connector panel opens as a right-side drawer. On the Authenticate Instance tab, copy the Redirect URL.

Step 3: Create a new OAuth 2.0 application
- Back on the Linear API page, find the OAuth Applications section.
- Click the + button to create a new application.
- Fill in the application details:
- Application name: a meaningful name (e.g.,
PipesHub Linear Connector) - Developer name: your name or organization name
- Developer URL: your website URL (e.g.,
https://your-domain.com) - Description: optional description of the application
- Callback URLs: paste the Redirect URL you copied from PipesHub (Step 2)
- Application name: a meaningful name (e.g.,


-
Configure the additional settings (leave all toggles OFF):
- Public — keep OFF; the connector is only for your organization
- Client credentials — keep OFF; not needed for standard OAuth flow
- Webhooks — keep OFF; the connector uses scheduled polling
- Click Create to create the application.
OAuth 2.0 applications created from October 1, 2025 onwards have refresh tokens enabled by default. Access tokens last 24 hours and are automatically refreshed.
Step 4: Copy Client ID and Client Secret
After creating the application, you’ll see the application settings page.- Copy the Client ID — used as Client ID in PipesHub.
- Click to reveal and copy the Client Secret — used as Client Secret in PipesHub.

Step 5: Authenticate Instance tab — enter credentials
The connector drawer in PipesHub has three tabs: Authenticate Instance, Authorize, and Configure Records. Return to the Authenticate Instance tab.- Confirm the Redirect URL matches the Callback URL you saved in Linear in Step 3.
- If your admin has pre-registered an OAuth app, pick it from the OAuth app dropdown. Otherwise leave it blank and enter credentials manually.
- Enter:
- Client ID — from Step 4
- Client Secret — from Step 4
- Click Next to move to the Authorize tab.

Step 6: Authorize tab — complete the OAuth flow
On the Authorize tab, all the OAuth authorization work happens. The tab shows an Authenticate button to kick off the OAuth handshake.
- Click Authenticate to start the OAuth flow. A popup opens to Linear’s authorization page showing your application name and the workspace it will authenticate with. Permissions requested: Read access to your workspace.

- Click Authorize to grant access.
- The popup closes and returns you to PipesHub. The connector tile shows an Authenticated badge with a Reauthenticate option.
- Click Next to move to the Configure Records tab.
The connector requests only read access to your workspace. It does not create, modify, or delete any Linear data.
Step 7: Configure Records tab — sync settings, filters, and indexing
On the Configure Records tab, control how the connector syncs and what gets synced. Sync settings — configure your synchronization preferences first:- Sync Strategy —
ScheduledorManual. - Sync Interval — how often to sync (default: 60 minutes).

Scheduled sync runs automatically at the specified intervals. Manual sync requires you to trigger synchronization on-demand.

-
Enable Manual Indexing — control indexing trigger method.
- Enabled: records are indexed only when you manually trigger it.
- Disabled (default): records are indexed automatically after sync.
-
Teams — filter issues and projects by team.
- Operator:
In(include only) orNot In(exclude) - Selection: searchable dropdown of all your Linear teams (e.g., “Engineering”, “Design”, “Product”)
- Leave empty to sync all teams.
- Operator:
The team list is dynamically fetched from your Linear workspace. Type to search and filter; select multiple teams as needed.
-
Modified Date — filter by last modification date. Operators:
Is After,Is Before,Is Between. - Created Date — filter by creation date. Same operators.
- Index Issues (default: enabled) — include issue content and comments in search
- Index Issue Attachments (default: enabled) — include external link attachments in search
- Index Issue Documents (default: enabled) — include Linear documents in search
- Index Issue and Comment Files (default: enabled) — include files extracted from issue descriptions and comments
- Index Projects (default: enabled) — include project content, milestones, and updates in search
- Sync only Engineering team: Teams → Operator
In→ select “Engineering” - Exclude archived teams: Teams → Operator
Not In→ select archived teams - Recent issues only: Modified Date → Operator
Is After→ Date2024-06-01 - Index issues but not attachments: disable Index Issue Attachments
- Index everything except files: disable Index Issue and Comment Files

Supported Features
The Linear connector provides:- Full content sync — Teams, issues, projects, comments, attachments, documents, and files
- Incremental sync — only fetches changes since last sync using
updatedAttimestamps - Batch processing — fetches data in optimized batches (50 issues, 10 projects per request)
- Permission preservation — respects team-level public/private access controls
- Dual group tracking — UserGroups (membership) and RecordGroups (content organization)
- Fault tolerance — per-team checkpoints enable sync resumption on failures
- File handling — images embedded as base64, other files synced as separate FileRecords
Permission Model
Linear uses a team-based permission model:| Team Type | Permission Behavior |
|---|---|
| Public Teams | All organization members can view team content |
| Private Teams | Only team members can view team content |
- For public teams, content is visible to all organization users in PipesHub.
- For private teams, content is only visible to team members in PipesHub.
Useful Links
- Linear API settings: linear.app/settings/api
- OAuth 2.0 documentation: linear.app/developers/oauth-2-0-authentication
- Linear GraphQL API: linear.app/developers/graphql
- Linear API Reference: Linear API on Apollo Studio
Troubleshooting
Troubleshooting
Troubleshooting
Common Issues
Invalid client credentials error:- Verify Client ID and Client Secret are correct
- Ensure you copied the full values without extra spaces
- Check that the OAuth app is active in Linear API settings
- Regenerate the secret if necessary and update PipesHub
- Ensure the Redirect URI in PipesHub exactly matches the callback URL in Linear
- Check for trailing slashes or protocol differences (http vs https)
- Update both configurations to use the same URL
- Verify you’re signing in with an account that has Linear access
- Ensure you have the necessary permissions in your Linear workspace
- Check that the OAuth application is properly configured
- Verify the connector status shows “Active”
- Check that the authenticating user has access to Linear teams
- Ensure teams are not archived or restricted
- Review sync logs for specific error messages
- Verify the authenticating user has access to the team containing the issues
- Check team privacy settings (public vs. private) in Linear
- Ensure the user is a member of private teams
- Comments are synced as part of issues - ensure “Index Issues” filter is enabled
- Attachments require “Index Issue Attachments” filter to be enabled
- Check that the authenticating user has permission to view comments/attachments
- Ensure the content exists on the issues in Linear
- Only files from Linear’s upload service (uploads.linear.app) are extracted
- External file URLs from other services are not indexed
- Check that “Index Issue and Comment Files” filter is enabled
Connector Workflow
Synchronization Process
Synchronization Process
The Linear connector follows a structured synchronization process to ensure all data is accurately synced and permissions are properly maintained.
Sync Order
The connector syncs data in the following order:- Users → Sync all Linear users with their profiles
- Teams → Sync teams with membership and permission settings
- Issues → Sync issues with comments and embedded files per team
- Attachments → Sync external links attached to issues
- Documents → Sync Linear documents linked to issues
- Projects → Sync projects with milestones, updates, and related content
- Deletions → Detect and remove deleted/archived issues and projects
Full Sync vs Incremental Sync
Full Sync occurs when:- First-time synchronization
- Manual full sync is triggered
- Previous sync completed successfully
- Only fetches content modified since last sync
- Resumes from last checkpoint if interrupted
What Gets Processed
Issues: Title, description, comments (organized by threads), status, priority, assignee, labels, and embedded filesProjects: Description, content, milestones, updates, comments, external links, and documentsAttachments & Documents: Synced separately to capture additions even when parent issue wasn’t modifiedDeletions: Automatically detects trashed/archived content and removes from index along with related recordsFAQ
How long does the initial sync take?
How long does the initial sync take?
The initial sync duration depends on several factors:
- Workspace size: Number of issues, projects, and teams
- Network latency: Connection speed to Linear’s API
- Content complexity: Issues with many comments and attachments take longer
- Use team filters to sync only the teams you need
- Use date filters to exclude old/archived content
- Disable indexing filters for content types you don’t need (e.g., attachments, files)
What OAuth scopes does the connector require?
What OAuth scopes does the connector require?
The Linear connector requests the following OAuth scopes:
| Scope | Description |
|---|---|
read | Read access for your account data (required) |
The connector only requires the
read scope for team synchronization, providing read-only access to your Linear data. It does not create, modify, or delete any Linear data.Does the connector support real-time sync?
Does the connector support real-time sync?
Not currently. The connector uses scheduled polling-based synchronization rather than real-time webhooks. Incremental syncs occur at the configured interval (default: 60 minutes) to capture changes.
Can I sync specific projects only?
Can I sync specific projects only?
Currently, the connector does not support filtering by specific projects. You can filter by:
- Teams: Sync only specific teams
- Modified Date: Sync only recently modified content
- Created Date: Sync only recently created content
Queries not returning results. What could be wrong?
Queries not returning results. What could be wrong?
There are three common causes:
-
Email mismatch - The email used during connector authentication doesn’t match your PipesHub account email. This causes permission issues preventing you from accessing synced data.
- Fix: Reconfigure the connector and authenticate using the same email as your PipesHub account.
-
Records show in “All Records” but not in search - Documents display in the All Records section but don’t appear in search query results.
- Fix: Verify sync filters in the connector settings and ensure indexing has completed. Check that the data matches your search query criteria.
-
Data not yet indexed - The connector is still syncing or hasn’t completed the initial indexing process.
- Fix: Go to Workspace Settings → Connectors, check the sync status, and wait for indexing to complete.
Ready to Get Started?
Connect your Linear workspace to PipesHub in just a few minutes. Follow the step-by-step guide above to enable organization-wide issue tracking search across all your Linear content.



















