> ## Documentation Index
> Fetch the complete documentation index at: https://docs.parable.work/llms.txt
> Use this file to discover all available pages before exploring further.

# Linear

> Linear is a project management and issue tracking tool for software teams, offering a GraphQL API for accessing issues, teams, projects, cycles, users, roadmaps, initiatives, and customers.

Linear is a project management and issue tracking tool for software teams, offering a GraphQL API for accessing issues, teams, projects, cycles, users, roadmaps, initiatives, and customers.

<Tabs>
  <Tab title="Overview">
    Connect Parable to Linear for issues, projects, and teams using the GraphQL API.

    #### Issues & Projects

    Issues, projects, cycles, milestones

    #### Teams & Users

    Team structure, user assignments

    #### Query Issues with Details

    ```graphql theme={null}
    query {
      issues(first: 100) {
        nodes {
          id
          title
          description
          state { name }
          assignee { name email }
          project { name }
          labels { nodes { name } }
          createdAt
          updatedAt
        }
        pageInfo {
          hasNextPage
          endCursor
        }
      }
    }
    ```

    #### Query Team Members

    ```graphql theme={null}
    query {
      users {
        nodes {
          id
          name
          email
          active
          admin
        }
      }
    }
    ```

    ## Data streams

    This Provider Plugin defines 16 data streams.

    | Stream               | Description                                                                                                                                                                      | Sync        |
    | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------- |
    | `issues`             | Extracts all issues (tasks/tickets) from Linear, including title, description, priority, state, assignee, labels, and relationships.                                             | incremental |
    | `teams`              | Extracts all teams within the Linear organization, including name, key, and settings.                                                                                            | full        |
    | `projects`           | Extracts all projects from Linear, including name, status, progress, and milestone relationships.                                                                                | full        |
    | `active_cycles`      | Extracts all cycles (sprints) from Linear, including name, number, start/end dates, and team relationships.                                                                      | full        |
    | `users`              | Extracts all members of the Linear organization, including profile information and roles.                                                                                        | full        |
    | `roadmaps`           | Extracts all roadmaps from Linear providing a high-level view of projects and initiatives over time.                                                                             | full        |
    | `initiatives`        | Extracts all initiatives (strategic goals) from Linear that group related projects at a higher level.                                                                            | full        |
    | `customers`          | Extracts all customer records from Linear used for tracking customer-related issues and requests.                                                                                | full        |
    | `comments`           | Extracts all comments posted on Linear issues, including body text, author, and timestamps.                                                                                      | full        |
    | `labels`             | Extracts all issue labels from Linear used to categorize and filter issues.                                                                                                      | full        |
    | `workflow_states`    | Extracts all workflow states from Linear defining lifecycle stages for issues within teams.                                                                                      | full        |
    | `attachments`        | Extracts all file and link attachments associated with Linear issues.                                                                                                            | full        |
    | `project_milestones` | Extracts all project milestones from Linear marking significant progress points within projects.                                                                                 | full        |
    | `notifications`      | Extracts notifications for the authenticated user about issue updates, mentions, and other activity.                                                                             | full        |
    | `custom_views`       | Extracts custom saved views from Linear with filters and display settings created by users.                                                                                      | full        |
    | `project_updates`    | Extracts project status updates from Linear. These are periodic updates posted by team members on projects, including health status, body text, and associated project metadata. | incremental |
  </Tab>

  <Tab title="Setup Guide">
    ### API token

    #### What You'll Need

    | Credential  | What it is                            |
    | ----------- | ------------------------------------- |
    | **API Key** | Personal API key from Linear settings |

    > **Info:** **Setup access in Linear.** These steps require **Administrator**, or a colleague with equivalent permissions who can create credentials for you.
    >
    > If that is not you, ask your Linear administrator.

    * **Admin** role in Linear workspace (for full data access)
    * API keys are tied to your user account and its permissions

    #### Step 1: Access Linear Settings

    1. Go to <a href="https://linear.app" target="_blank" rel="noopener noreferrer">linear.app</a>
    2. Click your avatar → **Settings**
    3. Navigate to **Account** → **Security & Access**

    #### Step 2: Create API Key

    1. Scroll to **Personal API keys** and click **New API key**
    2. Enter label: `Parable Integration`
    3. Choose permissions (full access or restricted) and click **Create**

    > **Warning:** **Copy your API key now!**
    >
    > This is the only time it will be displayed. Store it in a secure password manager before closing this page.

    #### Step 3: Note Permissions

    The API key inherits your account's permissions:

    * **Admin users** have access to all workspace data
    * **Member users** have access based on team membership

    > **Tip:** For comprehensive data access, create the key with an admin account.

    #### Step 4: Enter values in the form

    1. **API Key**: Paste your Linear personal API key.
    2. Click **Save & test connection**.

    ```bash Test with GraphQL theme={null}
    curl -X POST "https://api.linear.app/graphql" \
      -H "Authorization: Bearer YOUR_LINEAR_API_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"query": "{ viewer { id email name } }"}'
    ```

    ```bash List Issues theme={null}
    curl -X POST "https://api.linear.app/graphql" \
      -H "Authorization: Bearer YOUR_LINEAR_API_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"query": "{ issues(first: 5) { nodes { id title } } }"}'
    ```

    > **Success:** **Success!** If you received a `200 OK` response with valid data, your credentials are configured correctly. You can now configure this Provider in Parable.

    > **Tip:** **Rate Limits:** Linear enforces rate limits of **1,500 requests/hour; complexity-based limits for GraphQL**.
    >
    > Parable handles rate limiting automatically with exponential backoff, but initial syncs of large datasets may take longer due to these limits.
  </Tab>

  <Tab title="Permissions">
    <AccordionGroup>
      <Accordion id="provider-permission-tap-linear-active-cycles-0733be4cf2c8" title="Active Cycles" icon="calendar-clock" iconType="sharp-duotone-solid">
        Developer identifier: `active_cycles`

        Active Cycles contain all cycles (sprints) from Linear, including name, number, start/end dates, and team relationships.

        * **Enables:** place issues in their current planning cycles and compare cycle dates and recorded scope.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-active-cycles-archivedat-b2ec5e53bdcc" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.archivedAt`

            Archived At captures the time at which the cycle was archived, if applicable. It preserves the provider's current classification of this record.

            * **Enables:** separate active cycle records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear active cycle record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-completedat-bc3428df7a3f" title="Completed At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.completedAt`

            Completed At captures the time at which the cycle was marked as completed. It preserves the provider's current classification of this record.

            * **Enables:** separate active cycle records by the exact provider-reported completed at value when describing their recorded state.
            * **Interpretation:** The provider supplies `completedAt` per linear active cycle record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, completed at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-completedissuecounthistory-6452ecbdf576" title="Completed Issue Count History" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.completedIssueCountHistory`

            Completed Issue Count History states historical snapshot of the completed issue count over the cycle's duration. It preserves the provider's current classification of this record.

            * **Enables:** separate active cycle records by the exact provider-reported completed issue count history value when describing their recorded state.
            * **Interpretation:** The provider supplies `completedIssueCountHistory` per linear active cycle record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, completed issue count history is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-completedscopehistory-60677a74fe0d" title="Completed Scope History" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.completedScopeHistory`

            Completed Scope History states historical snapshot of the completed scope (number of points or issues) over the cycle's duration. It preserves the provider's current classification of this record.

            * **Enables:** separate active cycle records by the exact provider-reported completed scope history value when describing their recorded state.
            * **Interpretation:** The provider supplies `completedScopeHistory` per linear active cycle record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, completed scope history is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-createdat-96d3875e38b1" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.createdAt`

            Created At captures the time at which the cycle was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place active cycle records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear active cycle record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-description-be48a719c0d8" title="Description" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.description`

            Description contains a description of the cycle, often in markdown. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact description value attached to each linear active cycle record.
            * **Interpretation:** The provider supplies `description` at linear active cycle granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-endsat-b1adb8e10245" title="Ends At" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.endsAt`

            Ends At records end date of the cycle. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place active cycle records on a timeline by ends at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `endsAt` per linear active cycle record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-id-58ae2b4a1504" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.id`

            ID is the unique identifier for the cycle. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear active cycle source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear active cycle record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-issuecounthistory-f6a99fe15717" title="Issue Count History" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.issueCountHistory`

            Issue Count History records the ordered series of issue-count snapshots captured during the cycle. It preserves how the number of in-scope issues changed over time.

            * **Enables:** analyze issues added or removed during a sprint and compare scope churn between cycles.
            * **Interpretation:** The provider supplies `issueCountHistory` as an array of issue-count samples, not an elapsed interval; an empty series and a missing series are distinct.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-name-f48aecbae048" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.name`

            Name captures the name of the cycle. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear active cycle record.
            * **Interpretation:** The provider supplies `name` at linear active cycle granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-number-9ef1b3dcb05d" title="Number" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.number`

            Number identifies the active cycle's auto-incrementing sequence within its team. It anchors sprint history to team-local chronology.

            * **Enables:** order cycles for velocity trends and compare consecutive sprints within the same team.
            * **Interpretation:** The provider scopes `number` to a team; it is a cycle sequence, not a cycle count or cross-team measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-progress-b814947bf004" title="Progress" icon="stopwatch" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.progress`

            Progress reports cycle completion as a decimal ratio from 0 to 1. It captures the provider's current sprint progress.

            * **Enables:** compare cycle advancement and support sprint progress or burndown analysis.
            * **Interpretation:** The provider supplies `progress` as a ratio where `0` means no reported completion and `1` means complete; missing remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-scopehistory-5ea52e1ca068" title="Scope History" icon="calendar-days" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.scopeHistory`

            Scope History records the ordered series of total-scope snapshots captured during the cycle. It preserves how planned points or issue scope changed over time.

            * **Enables:** analyze scope growth or reduction during a sprint and compare the shape of scope change between cycles.
            * **Interpretation:** The provider supplies `scopeHistory` as an array of scope samples, not an elapsed interval; interpret each value using the team's point or issue-count convention.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-startsat-d352cab678d6" title="Starts At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.startsAt`

            Starts At records start date of the cycle. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place active cycle records on a timeline by starts at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `startsAt` per linear active cycle record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-team-e8137ef28775" title="Team" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.team`

            Team captures the team that owns this cycle. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear active cycle record with the specific provider container named by team.
            * **Interpretation:** The provider returns `team` as a nested object or reference on `LinearActiveCycle`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-team-id-14ba4b2dde90" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.team.id`

            ID is the unique identifier for the team. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match active cycle records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearCycleTeam`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-team-key-4f45dfc6bf72" title="Key" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.team.key`

            Key captures the short key identifier for the team, used as a prefix for issue identifiers. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match active cycle records to provider records that carry the same key, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `key` as a record-level identifier on `LinearCycleTeam`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-team-name-5bdb6fb862dd" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.team.name`

            Name captures the name of the team. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear cycle team record.
            * **Interpretation:** The provider supplies `name` at linear cycle team granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-active-cycles-updatedat-7425417fe326" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `active_cycles.updatedAt`

            Updated At captures the last time at which the cycle was meaningfully updated. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place active cycle records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear active cycle record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-attachments-07ffa1e2a458" title="Attachments" icon="folder-open" iconType="sharp-duotone-solid">
        Developer identifier: `attachments`

        Attachments contain all file and link attachments associated with Linear issues.

        * **Enables:** trace files and external links attached to issues.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-attachments-archivedat-9cfcc40ee445" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.archivedAt`

            Archived At records the timestamp when the attachment was archived, or null if not archived. It preserves the provider's current classification of this record.

            * **Enables:** separate attachment records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear attachment record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-createdat-1f0410e2ae4b" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.createdAt`

            Created At records the timestamp when the attachment was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place attachment records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear attachment record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-creator-750b57244001" title="Creator" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.creator`

            Creator captures the user who created the attachment. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear attachment record to the provider-reported actor represented by creator.
            * **Interpretation:** The provider supplies `creator` as identity or attribution context on each linear attachment record. In Linear, creator is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-creator-email-9707e84295a0" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.creator.email`

            Email records email address of the creator. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the attachment creator record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each attachment creator record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-creator-id-1f519b8d5de0" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.creator.id`

            ID is the unique identifier of the creator user. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match attachment records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `AttachmentCreator`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-creator-name-59c74e1c7ad4" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.creator.name`

            Name records display name of the creator. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the attachment creator record to the provider-reported person or account represented by name.
            * **Interpretation:** The provider supplies `name` as identity or attribution context on each attachment creator record. In Linear, name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-groupbysource-874636a8f4d6" title="Group By Source" icon="code-merge" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.groupBySource`

            Group By Source indicates whether attachments from this source should be grouped together in the UI. It preserves the provider-reported yes-or-no condition for this record.

            * **Enables:** select attachment records for which the provider reports group by source as true or false.
            * **Interpretation:** The provider supplies `groupBySource` as a boolean per linear attachment record; false and missing are distinct when the field is optional. In Linear, group by source is a condition on the work record, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-id-6ef6468e6b41" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.id`

            ID is the unique identifier for the attachment. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear attachment source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear attachment record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-issue-30bd2a28de8b" title="Issue" icon="lock" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.issue`

            Issue captures the issue this attachment is linked to. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** enumerate the nested issue records contained by each linear attachment record.
            * **Interpretation:** The provider returns `issue` as a nested object or reference on `LinearAttachment`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-issue-id-931ae7b5cce8" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.issue.id`

            ID is the unique identifier of the linked issue. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match attachment records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `AttachmentIssue`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-issue-identifier-d793abab4dc2" title="Identifier" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.issue.identifier`

            Identifier identifies human-readable issue identifier (e.g., ENG-123). It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match attachment records to provider records that carry the same identifier, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `identifier` as a record-level identifier on `AttachmentIssue`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-metadata-09871e7f8987" title="Metadata" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.metadata`

            Metadata records arbitrary metadata associated with the attachment, typically populated by integrations. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret metadata according to the provider and Workspace configuration that produced each attachment record.
            * **Interpretation:** Keys and value shapes within `metadata` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-source-a852f824cd26" title="Source" icon="stopwatch" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.source`

            Source records source of the attachment as a JSON object (e.g. `{type, `imageUrl`}`) describing the integration that created it. It preserves the configuration or technical value needed to explain how the provider object is defined.

            * **Enables:** inspect the exact source when validating the configuration or technical definition of a linear attachment record.
            * **Interpretation:** The provider supplies `source` as configuration or technical metadata on `LinearAttachment`; consumers must preserve the exact syntax and documented vocabulary.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-sourcetype-5b32fd40d2ed" title="Source Type" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.sourceType`

            Source Type states type of the source resource within the source service (e.g., `pull_request`, commit, comment, file). It preserves the provider's current classification of this record.

            * **Enables:** separate attachment records by the exact provider-reported source type value when describing their recorded state.
            * **Interpretation:** The provider supplies `sourceType` per linear attachment record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, source type is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-subtitle-afde36170c64" title="Subtitle" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.subtitle`

            Subtitle records subtitle or secondary description of the attachment. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact subtitle value attached to each linear attachment record.
            * **Interpretation:** The provider supplies `subtitle` at linear attachment granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-title-5d5867126895" title="Title" icon="lock" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.title`

            Title records title of the attachment. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact title value attached to each linear attachment record.
            * **Interpretation:** The provider supplies `title` at linear attachment granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-updatedat-55640ef9430b" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.updatedAt`

            Updated At records the timestamp when the attachment was last meaningfully updated. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place attachment records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear attachment record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-attachments-url-3790fc356ac7" title="URL" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `attachments.url`

            URL records URL of the attachment resource (e.g., link to a GitHub PR, Figma file, or uploaded document). It retains the exact provider location for the referenced resource.

            * **Enables:** open or trace the exact provider resource referenced by URL on a linear attachment record.
            * **Interpretation:** The provider supplies `url` as a URL or resource locator on each linear attachment record. Availability still follows the provider's permissions and retention.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-comments-82ab6310215f" title="Comments" icon="comment-dots" iconType="sharp-duotone-solid">
        Developer identifier: `comments`

        Comments contain all comments posted on Linear issues, including body text, author, and timestamps.

        * **Enables:** inspect issue discussion text with its author and timestamps.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-comments-archivedat-69d0c1d380b7" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `comments.archivedAt`

            Archived At captures the time at which the comment was archived, if applicable. It preserves the provider's current classification of this record.

            * **Enables:** separate comment records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear comment record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-body-ddd76a3240bb" title="Body" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `comments.body`

            Body captures the text content of the comment in Markdown format. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact body value attached to each linear comment record.
            * **Interpretation:** The provider supplies `body` at linear comment granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-bodydata-0443be962269" title="Body Data" icon="arrow-trend-up" iconType="sharp-duotone-solid">
            Developer identifier: `comments.bodyData`

            Body Data captures the rich text body data of the comment as a JSON document (ProseMirror format). It preserves the configuration or technical value needed to explain how the provider object is defined.

            * **Enables:** inspect the exact body data when validating the configuration or technical definition of a linear comment record.
            * **Interpretation:** The provider supplies `bodyData` as configuration or technical metadata on `LinearComment`; consumers must preserve the exact syntax and documented vocabulary.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-createdat-89e142183e8b" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `comments.createdAt`

            Created At captures the time at which the comment was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place comment records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear comment record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-editedat-e7712881dc81" title="Edited At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `comments.editedAt`

            Edited At captures the time at which the comment was edited by the user, if applicable. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place comment records on a timeline by edited at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `editedAt` per linear comment record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-id-1706a89777a2" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `comments.id`

            ID is the unique identifier for the comment. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear comment source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear comment record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-issue-2f1ee19289ee" title="Issue" icon="lock" iconType="sharp-duotone-solid">
            Developer identifier: `comments.issue`

            Issue captures the issue this comment belongs to. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact issue value attached to each linear comment record.
            * **Interpretation:** The provider supplies `issue` at linear comment granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-issue-id-5d769373ecf6" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `comments.issue.id`

            ID is the unique identifier for the issue. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match comment records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearCommentIssue`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-issue-identifier-f057821d5805" title="Identifier" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `comments.issue.identifier`

            Identifier captures the human-readable identifier of the issue (e.g., ENG-123). It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match comment records to provider records that carry the same identifier, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `identifier` as a record-level identifier on `LinearCommentIssue`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-parent-fd1eac40782f" title="Parent" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `comments.parent`

            Parent captures the parent comment in a threaded discussion, if this is a reply. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact parent value attached to each linear comment record.
            * **Interpretation:** The provider supplies `parent` at linear comment granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-parent-id-e5db655e097d" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `comments.parent.id`

            ID is the unique identifier of the parent comment. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match comment records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearCommentParent`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-resolvedat-851bf9327219" title="Resolved At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `comments.resolvedAt`

            Resolved At captures the time at which the comment was resolved, if applicable. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place comment records on a timeline by resolved at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `resolvedAt` per linear comment record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-updatedat-a587d737a4bd" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `comments.updatedAt`

            Updated At captures the last time at which the comment was meaningfully updated. Used as incremental sync cursor. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place comment records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear comment record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-user-a957c139114c" title="User" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `comments.user`

            User captures the user who authored the comment. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear comment record to the provider-reported actor represented by user.
            * **Interpretation:** The provider supplies `user` as identity or attribution context on each linear comment record. In Linear, user is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-user-email-a0bd34d9f0cf" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `comments.user.email`

            Email captures the email address of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear comment user record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each linear comment user record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-user-id-39ac59a36c11" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `comments.user.id`

            ID is the unique identifier for the user. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match comment records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearCommentUser`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-comments-user-name-1b41dd2e6270" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `comments.user.name`

            Name captures the display name of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear comment user record to the provider-reported person or account represented by name.
            * **Interpretation:** The provider supplies `name` as identity or attribution context on each linear comment user record. In Linear, name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-custom-views-bdec845ce535" title="Custom Views" icon="people-group" iconType="sharp-duotone-solid">
        Developer identifier: `custom_views`

        Custom Views contain custom saved views from Linear with filters and display settings created by users.

        * **Enables:** reproduce the saved filters and display settings of Linear custom views.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-custom-views-archivedat-1735e83558d1" title="Archived At" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.archivedAt`

            Archived At records the timestamp when the custom view was archived, if applicable. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret archived at according to the provider and Workspace configuration that produced each custom view record.
            * **Interpretation:** Keys and value shapes within `archivedAt` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-color-2fbdf646ed77" title="Color" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.color`

            Color records color value associated with the custom view for display purposes. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret color according to the provider and Workspace configuration that produced each custom view record.
            * **Interpretation:** Keys and value shapes within `color` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-createdat-fb1429e2fddc" title="Created At" icon="calendar-clock" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.createdAt`

            Created At records the timestamp when the custom view was created. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret created at according to the provider and Workspace configuration that produced each custom view record.
            * **Interpretation:** Keys and value shapes within `createdAt` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-creator-84ed57e8b9a5" title="Creator" icon="stopwatch" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.creator`

            Creator captures the user who created this custom view. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret creator according to the provider and Workspace configuration that produced each custom view record.
            * **Interpretation:** Keys and value shapes within `creator` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-creator-email-230c55b76293" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.creator.email`

            Email records email address of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each linear user record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-creator-id-6a0732a83476" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.creator.id`

            ID is the unique identifier for the user. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match custom view records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearUser`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-creator-name-b5aeaf53fd53" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.creator.name`

            Name records display name of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by name.
            * **Interpretation:** The provider supplies `name` as identity or attribution context on each linear user record. In Linear, name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-description-e96035ff3be4" title="Description" icon="chart-line" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.description`

            Description records description of the custom view explaining its purpose or contents. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret description according to the provider and Workspace configuration that produced each custom view record.
            * **Interpretation:** Keys and value shapes within `description` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-filterdata-b9490ca62dc2" title="Filter Data" icon="chart-column" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.filterData`

            Filter Data records JSON object containing the filter configuration and criteria for this custom view. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret filter data according to the provider and Workspace configuration that produced each custom view record.
            * **Interpretation:** Keys and value shapes within `filterData` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-icon-0a696dccd366" title="Icon" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.icon`

            Icon records icon identifier associated with the custom view. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret icon according to the provider and Workspace configuration that produced each custom view record.
            * **Interpretation:** Keys and value shapes within `icon` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-id-3f576a62e900" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.id`

            ID is the unique identifier for the custom view. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear custom view source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear custom view record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-name-aa84f312f7c5" title="Name" icon="chart-pie" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.name`

            Name records name of the custom view. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret name according to the provider and Workspace configuration that produced each custom view record.
            * **Interpretation:** Keys and value shapes within `name` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-shared-f14f800b4add" title="Shared" icon="terminal" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.shared`

            Shared indicates whether the view is shared with the team or is a personal/private view. It preserves the provider-reported yes-or-no condition for this record.

            * **Enables:** select custom view records for which the provider reports shared as true or false.
            * **Interpretation:** The provider supplies `shared` as a boolean per linear custom view record; false and missing are distinct when the field is optional. In Linear, shared is a condition on the work record, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-team-908a1b1fd5d1" title="Team" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.team`

            Team captures the team this custom view is associated with, if any. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret team according to the provider and Workspace configuration that produced each custom view record.
            * **Interpretation:** Keys and value shapes within `team` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-team-id-bed8d5bb4564" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.team.id`

            ID is the unique identifier for the team. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match custom view records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearTeam`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-team-key-afa0229318e1" title="Key" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.team.key`

            Key identifies short unique key/prefix used for the team's issue identifiers. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match custom view records to provider records that carry the same key, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `key` as a record-level identifier on `LinearTeam`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-team-name-a239c9557617" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.team.name`

            Name records name of the team. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear team record.
            * **Interpretation:** The provider supplies `name` at linear team granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-custom-views-updatedat-4eea3e6e7241" title="Updated At" icon="stopwatch" iconType="sharp-duotone-solid">
            Developer identifier: `custom_views.updatedAt`

            Updated At records the timestamp when the custom view was last meaningfully updated. It retains configured attributes whose keys or shape are not fixed by this base schema.

            * **Enables:** interpret updated at according to the provider and Workspace configuration that produced each custom view record.
            * **Interpretation:** Keys and value shapes within `updatedAt` can vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-customers-723eeed1f31c" title="Customers" icon="user-tie" iconType="sharp-duotone-solid">
        Developer identifier: `customers`

        Customers contain all customer records from Linear used for tracking customer-related issues and requests.

        * **Enables:** associate customer-request records with the Linear issues that reference them.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-customers-archivedat-a37dddbff440" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `customers.archivedAt`

            Archived At captures the time at which the customer was archived, if applicable. It preserves the provider's current classification of this record.

            * **Enables:** separate customer records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear customer record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-customers-createdat-f66547d9688a" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `customers.createdAt`

            Created At captures the time at which the customer was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place customer records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear customer record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-customers-domains-6c05333c15af" title="Domains" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `customers.domains`

            Domains records domain names associated with the customer. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear customer record with the specific provider container named by domains.
            * **Interpretation:** The provider returns `domains` as a list on `LinearCustomer`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-customers-externalids-16bd9c5146fc" title="External IDs" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `customers.externalIds`

            External IDs identifies external identifiers associated with the customer from integrated systems. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match customer records to provider records that carry the same external ids, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `externalIds` as a record-level identifier on `LinearCustomer`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-customers-id-b1a6301715ac" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `customers.id`

            ID is the unique identifier for the customer. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear customer source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear customer record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-customers-logourl-b038e5466b51" title="Logo URL" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `customers.logoUrl`

            Logo URL records URL of the customer's logo image. It retains the exact provider location for the referenced resource.

            * **Enables:** open or trace the exact provider resource referenced by logo URL on a linear customer record.
            * **Interpretation:** The provider supplies `logoUrl` as a URL or resource locator on each linear customer record. Availability still follows the provider's permissions and retention.
          </Accordion>

          <Accordion id="provider-permission-field-linear-customers-name-1a52579d9cbf" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `customers.name`

            Name records name of the customer. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear customer record.
            * **Interpretation:** The provider supplies `name` at linear customer granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-customers-revenue-52f48090aef2" title="Revenue" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `customers.revenue`

            Revenue reports revenue associated with the customer. It preserves the source-domain financial amount at this record's granularity.

            * **Enables:** compare the revenue recorded in the source business process across customer records using the accompanying currency when one is supplied.
            * **Interpretation:** The source supplies `revenue` as a financial value in its actual business domain; no currency conversion is implied, and currency is unknown unless a companion field states it.
          </Accordion>

          <Accordion id="provider-permission-field-linear-customers-size-65501b3a40a4" title="Size" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `customers.size`

            Size records Linear's stated size for the customer organization. It preserves the organization-scale attribute without assuming a storage interpretation.

            * **Enables:** segment customer records by the provider-reported organization size.
            * **Interpretation:** The provider supplies `size` as an integer organization attribute whose unit is not declared by this schema; do not interpret it as bytes or headcount without provider context.
          </Accordion>

          <Accordion id="provider-permission-field-linear-customers-updatedat-b10f8281c046" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `customers.updatedAt`

            Updated At captures the last time at which the customer was meaningfully updated. Used as incremental sync cursor. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place customer records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear customer record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-initiatives-034da2a64ec2" title="Initiatives" icon="sitemap" iconType="sharp-duotone-solid">
        Developer identifier: `initiatives`

        Initiatives contain all initiatives (strategic goals) from Linear that group related projects at a higher level.

        * **Enables:** trace strategic initiative records to their related projects.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-initiatives-archivedat-e32fc1ebbba7" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.archivedAt`

            Archived At records the timestamp when the initiative was archived, if applicable. It preserves the provider's current classification of this record.

            * **Enables:** separate initiative records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear initiative record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-color-c7a71b037300" title="Color" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.color`

            Color records display color for the initiative in the UI. It preserves the provider's visual treatment for the represented object.

            * **Enables:** reproduce or compare the provider-supplied color for the represented design or board object.
            * **Interpretation:** The provider supplies `color` in its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-createdat-6acec736eb6b" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.createdAt`

            Created At records the timestamp when the initiative was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place initiative records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear initiative record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-creator-71f596b22d79" title="Creator" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.creator`

            Creator captures the user who created this initiative. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear initiative record to the provider-reported actor represented by creator.
            * **Interpretation:** The provider supplies `creator` as identity or attribution context on each linear initiative record. In Linear, creator is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-creator-displayname-b1ebf336c982" title="Display Name" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.creator.displayName`

            Display Name records preferred display name of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user summary record to the provider-reported person or account represented by display name.
            * **Interpretation:** The provider supplies `displayName` as identity or attribution context on each linear user summary record. In Linear, display name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-creator-email-6be55fba1955" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.creator.email`

            Email records email address of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user summary record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each linear user summary record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-creator-id-ff80fa4a3f2a" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.creator.id`

            ID is the unique identifier for the user. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match initiative records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearUserSummary`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-creator-name-c6840b772847" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.creator.name`

            Name records display name of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user summary record to the provider-reported person or account represented by name.
            * **Interpretation:** The provider supplies `name` as identity or attribution context on each linear user summary record. In Linear, name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-description-61b1dfb999dd" title="Description" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.description`

            Description records detailed description of the initiative, typically in markdown format. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact description value attached to each linear initiative record.
            * **Interpretation:** The provider supplies `description` at linear initiative granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-icon-73f7b1dc7950" title="Icon" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.icon`

            Icon records icon identifier associated with the initiative. It retains the exact provider location for the referenced resource.

            * **Enables:** open or trace the exact provider resource referenced by icon on a linear initiative record.
            * **Interpretation:** The provider supplies `icon` as a URL or resource locator on each linear initiative record. Availability still follows the provider's permissions and retention.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-id-274cf01d8fb5" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.id`

            ID is the unique identifier for the initiative. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear initiative source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear initiative record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-name-052f29a8f747" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.name`

            Name records name of the initiative. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear initiative record.
            * **Interpretation:** The provider supplies `name` at linear initiative granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-owner-7e13d23fd98c" title="Owner" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.owner`

            Owner captures the user who owns this initiative. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear initiative record to the provider-reported actor represented by owner.
            * **Interpretation:** The provider supplies `owner` as identity or attribution context on each linear initiative record. In Linear, owner is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-projects-8201a696e305" title="Projects" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.projects`

            Projects records projects associated with this initiative. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear initiative record with the specific provider container named by projects.
            * **Interpretation:** The provider returns `projects` as a nested object or reference on `LinearInitiative`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-projects-nodes-0fcb447ee84c" title="Nodes" icon="lock" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.projects.nodes`

            Nodes records project nodes in the connection. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear project connection record with the specific provider container named by nodes.
            * **Interpretation:** The provider returns `nodes` as a list on `LinearProjectConnection`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-projects-nodes-id-46b2a76e662f" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.projects.nodes.id`

            ID is the unique identifier for the project. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match initiative records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearProjectSummary`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-projects-nodes-name-7cc2ff49030c" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.projects.nodes.name`

            Name records name of the project. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear project summary record.
            * **Interpretation:** The provider supplies `name` at linear project summary granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-slugid-b2ff01ca1b51" title="Slug ID" icon="address-book" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.slugId`

            Slug ID identifies URL-friendly slug identifier for the initiative. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match initiative records to provider records that carry the same slug ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `slugId` as a record-level identifier on `LinearInitiative`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-sortorder-0031b5430e02" title="Sort Order" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.sortOrder`

            Sort Order reports sort order value used for ordering initiatives in the UI. It preserves the stated measure at this record's granularity.

            * **Enables:** order or classify initiative records using the provider-defined sort order value.
            * **Interpretation:** The provider supplies `sortOrder` at linear initiative granularity as a provider-defined ordinal or planning value rather than elapsed time or money; zero and missing are not interchangeable.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-status-cd2d5fff1fcd" title="Status" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.status`

            Status states current status of the initiative. It preserves the provider's current classification of this record.

            * **Enables:** separate initiative records by the exact provider-reported status value when describing their recorded state.
            * **Interpretation:** The provider supplies `status` per linear initiative record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, status is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-targetdate-f360287acb94" title="Target Date" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.targetDate`

            Target Date records target completion date for the initiative. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place initiative records on a timeline by target date and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `targetDate` per linear initiative record as a calendar date without a time of day; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-updatedat-0f4959d80647" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.updatedAt`

            Updated At records the timestamp when the initiative was last meaningfully updated. Used as incremental sync cursor. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place initiative records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear initiative record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-initiatives-url-200100f4e2b7" title="URL" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `initiatives.url`

            URL records URL to view the initiative in Linear. It retains the exact provider location for the referenced resource.

            * **Enables:** open or trace the exact provider resource referenced by URL on a linear initiative record.
            * **Interpretation:** The provider supplies `url` as a URL or resource locator on each linear initiative record. Availability still follows the provider's permissions and retention.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-issues-09695bf90a60" title="Issues" icon="route" iconType="sharp-duotone-solid">
        Developer identifier: `issues`

        Issues contain all issues (tasks/tickets) from Linear, including title, description, priority, state, assignee, labels, and relationships.

        * **Enables:** report issue scope, workflow state, assignment, and relationships as work-record context.
        * **Scope:** Reads provider changes through the declared GraphQL operation using the declared incremental request boundary. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-issues-addedtocycleat-d2d7044d5678" title="Added To Cycle At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `issues.addedToCycleAt`

            Added To Cycle At records when the issue was added to its cycle. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by added to cycle at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `addedToCycleAt` per linear issue record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-addedtoprojectat-4ff9ad425d5a" title="Added To Project At" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `issues.addedToProjectAt`

            Added To Project At records when the issue was added to its project. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by added to project at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `addedToProjectAt` per linear issue record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-addedtoteamat-9f09aeec860d" title="Added To Team At" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `issues.addedToTeamAt`

            Added To Team At records when the issue was added to its team. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by added to team at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `addedToTeamAt` per linear issue record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-archivedat-6fc4e694b266" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `issues.archivedAt`

            Archived At records when the issue was archived. It preserves the provider's current classification of this record.

            * **Enables:** separate issue records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear issue record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-assignee-244ed4ebdc78" title="Assignee" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `issues.assignee`

            Assignee records user currently assigned to this issue. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear issue record to the provider-reported actor represented by assignee.
            * **Interpretation:** The provider supplies `assignee` as identity or attribution context on each linear issue record. In Linear, assignee is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-assignee-email-f6ee9dc0b35f" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `issues.assignee.email`

            Email records email address of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user ref record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each linear user ref record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-assignee-id-80db6bb1f4a9" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.assignee.id`

            ID is the unique identifier for the user. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearUserRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-assignee-name-661d430aaa0a" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `issues.assignee.name`

            Name records display name of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user ref record to the provider-reported person or account represented by name.
            * **Interpretation:** The provider supplies `name` as identity or attribution context on each linear user ref record. In Linear, name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-autoarchivedat-eaadbba2c6d0" title="Auto Archived At" icon="headset" iconType="sharp-duotone-solid">
            Developer identifier: `issues.autoArchivedAt`

            Auto Archived At records when the issue was automatically archived. It preserves the provider's current classification of this record.

            * **Enables:** separate issue records by the exact provider-reported auto archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `autoArchivedAt` per linear issue record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, auto archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-autoclosedat-79db0d0852bd" title="Auto Closed At" icon="phone" iconType="sharp-duotone-solid">
            Developer identifier: `issues.autoClosedAt`

            Auto Closed At records when the issue was automatically closed by the system. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by auto closed at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `autoClosedAt` per linear issue record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-boardorder-726e514e05f8" title="Board Order" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `issues.boardOrder`

            Board Order reports position of the issue on the board view. It preserves the stated measure at this record's granularity.

            * **Enables:** order or classify issue records using the provider-defined board order value.
            * **Interpretation:** The provider supplies `boardOrder` at linear issue granularity as a provider-defined ordinal or planning value rather than elapsed time or money; zero and missing are not interchangeable.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-branchname-a328d5212c9d" title="Branch Name" icon="chart-line" iconType="sharp-duotone-solid">
            Developer identifier: `issues.branchName`

            Branch Name records suggested branch name for the issue. It preserves the configuration or technical value needed to explain how the provider object is defined.

            * **Enables:** inspect the exact branch name when validating the configuration or technical definition of a linear issue record.
            * **Interpretation:** The provider supplies `branchName` as configuration or technical metadata on `LinearIssue`; consumers must preserve the exact syntax and documented vocabulary.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-canceledat-5dcf45f390e0" title="Canceled At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `issues.canceledAt`

            Canceled At records when the issue was cancelled. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by canceled at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `canceledAt` per linear issue record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-completedat-afcf9ebe4203" title="Completed At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `issues.completedAt`

            Completed At records when the issue was marked as complete. It preserves the provider's current classification of this record.

            * **Enables:** separate issue records by the exact provider-reported completed at value when describing their recorded state.
            * **Interpretation:** The provider supplies `completedAt` per linear issue record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, completed at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-createdat-6a370b819e41" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `issues.createdAt`

            Created At records when the issue was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear issue record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-creator-4ee0f30fc822" title="Creator" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `issues.creator`

            Creator records user who created this issue. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear issue record to the provider-reported actor represented by creator.
            * **Interpretation:** The provider supplies `creator` as identity or attribution context on each linear issue record. In Linear, creator is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-cycle-dce01855c444" title="Cycle" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `issues.cycle`

            Cycle records cycle (sprint) this issue is assigned to. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear issue record with the specific provider container named by cycle.
            * **Interpretation:** The provider returns `cycle` as a nested object or reference on `LinearIssue`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-cycle-id-ade382c24cb1" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.cycle.id`

            ID is the unique identifier for the cycle. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearCycleRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-cycle-name-32f87dd8e7ea" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `issues.cycle.name`

            Name records optional name of the cycle. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear cycle ref record.
            * **Interpretation:** The provider supplies `name` at linear cycle ref granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-cycle-number-2ce479bc38cf" title="Number" icon="calendar-days" iconType="sharp-duotone-solid">
            Developer identifier: `issues.cycle.number`

            Number identifies the cycle's auto-incrementing sequence within its team. It keeps an issue's cycle reference tied to the team's sprint chronology.

            * **Enables:** resolve and order referenced cycles within the same team.
            * **Interpretation:** The provider scopes `number` to a team; it is a cycle sequence, not a cycle count or cross-team measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-description-43de36f2da72" title="Description" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `issues.description`

            Description records full description of the issue in markdown format. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact description value attached to each linear issue record.
            * **Interpretation:** The provider supplies `description` at linear issue granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-duedate-2a1819f7dbe9" title="Due Date" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `issues.dueDate`

            Due Date records due date for the issue in YYYY-MM-DD format. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by due date and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `dueDate` per linear issue record as a calendar date without a time of day; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-estimate-4bb29bb790f6" title="Estimate" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `issues.estimate`

            Estimate reports point estimate for the issue used in velocity calculations. It preserves the stated measure at this record's granularity.

            * **Enables:** order or classify issue records using the provider-defined estimate value.
            * **Interpretation:** The provider supplies `estimate` at linear issue granularity as a provider-defined ordinal or planning value rather than elapsed time or money; zero and missing are not interchangeable.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-id-674634db8116" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.id`

            ID is the unique identifier for the issue. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear issue source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear issue record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-identifier-e0f19e642895" title="Identifier" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.identifier`

            Identifier identifies human-readable issue identifier like TEAM-123. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same identifier, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `identifier` as a record-level identifier on `LinearIssue`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-labels-06881040eedf" title="Labels" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `issues.labels`

            Labels records labels applied to this issue. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** apply the provider-defined labels classifications to each linear issue record.
            * **Interpretation:** The provider returns `labels` as a nested object or reference on `LinearIssue`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-labels-nodes-3605e554a247" title="Nodes" icon="lock" iconType="sharp-duotone-solid">
            Developer identifier: `issues.labels.nodes`

            Nodes records list of labels applied to the issue. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** apply the provider-defined nodes classifications to each linear label connection record.
            * **Interpretation:** The provider returns `nodes` as a list on `LinearLabelConnection`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-labels-nodes-id-beecebe0c7c1" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.labels.nodes.id`

            ID is the unique identifier for the label. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearLabelRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-labels-nodes-name-0644b777f3ee" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `issues.labels.nodes.name`

            Name records name of the label. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear label ref record.
            * **Interpretation:** The provider supplies `name` at linear label ref granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-number-a3411b9ba087" title="Number" icon="chart-column" iconType="sharp-duotone-solid">
            Developer identifier: `issues.number`

            Number identifies the issue's auto-incrementing sequence within its team. It supplies the numeric portion used to reference the issue in team context.

            * **Enables:** locate issues by team and number and order issue creation within the same team sequence.
            * **Interpretation:** The provider scopes `number` to a team; it is a reference sequence, not a quantity comparable across teams.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-parent-3a8e9c8e5abb" title="Parent" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `issues.parent`

            Parent records parent issue if this is a sub-issue. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** reconstruct the parent-child structure expressed by parent on each linear issue record.
            * **Interpretation:** The provider returns `parent` as a nested object or reference on `LinearIssue`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-parent-id-50136a1b4fed" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.parent.id`

            ID is the unique identifier of the parent issue. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearIssueParentRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-parent-identifier-bc126958b5c3" title="Identifier" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.parent.identifier`

            Identifier identifies human-readable identifier of the parent issue. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same identifier, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `identifier` as a record-level identifier on `LinearIssueParentRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-priority-5a1496fd14e9" title="Priority" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `issues.priority`

            Priority reports the numeric priority level (0=none, 1=urgent, 2=high, 3=medium, 4=low). It preserves the provider's current classification of this record.

            * **Enables:** separate issue records by the exact provider-reported priority value when describing their recorded state.
            * **Interpretation:** The provider supplies `priority` per linear issue record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, priority is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-prioritylabel-f4c512056573" title="Priority Label" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `issues.priorityLabel`

            Priority Label states human-readable label for the priority level (e.g., Urgent, High, Medium, Low, No priority). It preserves the provider's current classification of this record.

            * **Enables:** separate issue records by the exact provider-reported priority label value when describing their recorded state.
            * **Interpretation:** The provider supplies `priorityLabel` per linear issue record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, priority label is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-project-df412e9429c7" title="Project" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `issues.project`

            Project records project this issue belongs to. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear issue record with the specific provider container named by project.
            * **Interpretation:** The provider returns `project` as a nested object or reference on `LinearIssue`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-project-id-4fac9f04484b" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.project.id`

            ID is the unique identifier for the project. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearProjectRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-project-name-0908d2be2e88" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `issues.project.name`

            Name records name of the project. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear project ref record.
            * **Interpretation:** The provider supplies `name` at linear project ref granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-project-status-5824e7baa5d7" title="Status" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `issues.project.status`

            Status states project status for this issue's project. It preserves the provider's current classification of this record.

            * **Enables:** separate issue records by the exact provider-reported status value when describing their recorded state.
            * **Interpretation:** The provider supplies `status` per linear project ref record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, status is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-project-status-id-556175ac1abf" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.project.status.id`

            ID is the unique identifier for the project status. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearProjectStatusRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-project-status-name-317a791c6133" title="Name" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `issues.project.status.name`

            Name states name of the project status. It preserves the provider's current classification of this record.

            * **Enables:** filter and group issue records by the Linear linear project status ref name exposed by the nested object.
            * **Interpretation:** The provider supplies `name` per linear project status ref record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, name is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-project-status-type-09857347c51d" title="Type" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `issues.project.status.type`

            Type states lifecycle type of the project status. It preserves the provider's current classification of this record.

            * **Enables:** filter and group issue records by the Linear linear project status ref type exposed by the nested object.
            * **Interpretation:** The provider supplies `type` per linear project status ref record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, type is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-snoozeduntilat-25dc516a9e50" title="Snoozed Until At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `issues.snoozedUntilAt`

            Snoozed Until At records when the issue snooze period ends and it becomes active again. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by snoozed until at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `snoozedUntilAt` per linear issue record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-sortorder-dfdd6fc962cb" title="Sort Order" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `issues.sortOrder`

            Sort Order reports position of the issue when ordered in a list. It preserves the stated measure at this record's granularity.

            * **Enables:** order or classify issue records using the provider-defined sort order value.
            * **Interpretation:** The provider supplies `sortOrder` at linear issue granularity as a provider-defined ordinal or planning value rather than elapsed time or money; zero and missing are not interchangeable.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-startedat-79242d7c5f0d" title="Started At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `issues.startedAt`

            Started At records when work on the issue was started (transitioned to a started state). It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by started at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `startedAt` per linear issue record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-state-b3ca63359574" title="State" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `issues.state`

            State states current workflow state of the issue. It preserves the provider's current classification of this record.

            * **Enables:** separate issue records by the exact provider-reported state value when describing their recorded state.
            * **Interpretation:** The provider supplies `state` per linear issue record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, state is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-state-id-e0254ba11513" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.state.id`

            ID is the unique identifier for the workflow state. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearWorkflowState`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-state-name-affeb62cd52f" title="Name" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `issues.state.name`

            Name states name of the workflow state (e.g., Todo, In Progress, Done). It preserves the provider's current classification of this record.

            * **Enables:** filter and group issue records by the Linear linear workflow state name exposed by the nested object.
            * **Interpretation:** The provider supplies `name` per linear workflow state record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, name is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-state-type-6d3a01fafe0e" title="Type" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `issues.state.type`

            Type states category type of the workflow state. It preserves the provider's current classification of this record.

            * **Enables:** filter and group issue records by the Linear linear workflow state type exposed by the nested object.
            * **Interpretation:** The provider supplies `type` per linear workflow state record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, type is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-team-89326b576bcd" title="Team" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `issues.team`

            Team records team that owns this issue. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear issue record with the specific provider container named by team.
            * **Interpretation:** The provider returns `team` as a nested object or reference on `LinearIssue`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-team-id-af5b03a8f845" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.team.id`

            ID is the unique identifier for the team. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearTeamRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-team-key-d31fd1d6fe2b" title="Key" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `issues.team.key`

            Key identifies short key/prefix used in issue identifiers (e.g., ENG, DES). It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match issue records to provider records that carry the same key, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `key` as a record-level identifier on `LinearTeamRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-team-name-712dd3eb4d16" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `issues.team.name`

            Name records name of the team. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear team ref record.
            * **Interpretation:** The provider supplies `name` at linear team ref granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-title-198a207de6e0" title="Title" icon="lock" iconType="sharp-duotone-solid">
            Developer identifier: `issues.title`

            Title records title of the issue. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact title value attached to each linear issue record.
            * **Interpretation:** The provider supplies `title` at linear issue granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-trashed-e0d79f5f6c9e" title="Trashed" icon="code-branch" iconType="sharp-duotone-solid">
            Developer identifier: `issues.trashed`

            Trashed indicates whether the issue has been trashed. It preserves the provider-reported yes-or-no condition for this record.

            * **Enables:** select issue records for which the provider reports trashed as true or false.
            * **Interpretation:** The provider supplies `trashed` as a boolean per linear issue record; false and missing are distinct when the field is optional. In Linear, trashed is a condition on the work record, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-triagedat-a0ae49394a2b" title="Triaged At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `issues.triagedAt`

            Triaged At records when the issue was triaged. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by triaged at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `triagedAt` per linear issue record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-updatedat-b2bfde501452" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `issues.updatedAt`

            Updated At records when the issue was last meaningfully updated. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place issue records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear issue record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-issues-url-377940a55882" title="URL" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `issues.url`

            URL records URL to view the issue in Linear. It retains the exact provider location for the referenced resource.

            * **Enables:** open or trace the exact provider resource referenced by URL on a linear issue record.
            * **Interpretation:** The provider supplies `url` as a URL or resource locator on each linear issue record. Availability still follows the provider's permissions and retention.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-labels-63c2af8966f3" title="Labels" icon="diagram-project" iconType="sharp-duotone-solid">
        Developer identifier: `labels`

        Labels contain all issue labels from Linear used to categorize and filter issues.

        * **Enables:** categorize issues using the labels defined in Linear.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-labels-archivedat-66c24da5578e" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `labels.archivedAt`

            Archived At captures the time at which the label was archived, or null if not archived. It preserves the provider's current classification of this record.

            * **Enables:** separate label records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear label record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-color-7418d639217a" title="Color" icon="video" iconType="sharp-duotone-solid">
            Developer identifier: `labels.color`

            Color records color of the label for visual identification, typically a hex color string. It preserves the provider's visual treatment for the represented object.

            * **Enables:** reproduce or compare the provider-supplied color for the represented design or board object.
            * **Interpretation:** The provider supplies `color` in its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-createdat-8e57cd7ffd57" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `labels.createdAt`

            Created At captures the time at which the label was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place label records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear label record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-creator-69e278303cfc" title="Creator" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `labels.creator`

            Creator records user who created the label. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear label record to the provider-reported actor represented by creator.
            * **Interpretation:** The provider supplies `creator` as identity or attribution context on each linear label record. In Linear, creator is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-creator-email-89e96a86452e" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `labels.creator.email`

            Email carries the source person or account value named Email for each linear label row. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear label record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each linear label record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-creator-id-3fc7f0d2bf94" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `labels.creator.id`

            ID carries the source identifier named ID for each linear label row. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match label records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearLabel`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-creator-name-eb2118afd84e" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `labels.creator.name`

            Name carries the source-authored value named Name for each linear label row. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear label record.
            * **Interpretation:** The provider supplies `name` at linear label granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-description-5e278459c157" title="Description" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `labels.description`

            Description records description of the label explaining its intended use. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact description value attached to each linear label record.
            * **Interpretation:** The provider supplies `description` at linear label granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-id-d19d38fe5799" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `labels.id`

            ID is the unique identifier for the label. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear label source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear label record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-isgroup-a9e0c7903719" title="Is Group" icon="brackets-curly" iconType="sharp-duotone-solid">
            Developer identifier: `labels.isGroup`

            Is Group indicates whether this label is a group (parent) label that can contain child labels. It preserves the provider-reported yes-or-no condition for this record.

            * **Enables:** select label records for which the provider reports is group as true or false.
            * **Interpretation:** The provider supplies `isGroup` as a boolean per linear label record; false and missing are distinct when the field is optional. In Linear, is group is a condition on the work record, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-name-62cae07127bd" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `labels.name`

            Name records name of the label. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear label record.
            * **Interpretation:** The provider supplies `name` at linear label granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-parent-01663ca2fff3" title="Parent" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `labels.parent`

            Parent captures the parent label if this label is part of a group hierarchy. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact parent value attached to each linear label record.
            * **Interpretation:** The provider supplies `parent` at linear label granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-parent-id-e5eccb012ec2" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `labels.parent.id`

            ID is the unique identifier for the parent label. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match label records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearLabelParent`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-parent-name-d5b55641e2d5" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `labels.parent.name`

            Name captures the name of the parent label. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear label parent record.
            * **Interpretation:** The provider supplies `name` at linear label parent granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-team-15b72cd52681" title="Team" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `labels.team`

            Team captures the team this label belongs to. Null for workspace-level labels. It preserves the provider's current classification of this record.

            * **Enables:** separate label records by the exact provider-reported team value when describing their recorded state.
            * **Interpretation:** The provider supplies `team` per linear label record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, team is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-team-id-36f2e9433159" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `labels.team.id`

            ID is the unique identifier for the team. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match label records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearLabelTeam`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-team-key-bc89aad0665a" title="Key" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `labels.team.key`

            Key captures the short key identifier for the team, used as a prefix for issue identifiers. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match label records to provider records that carry the same key, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `key` as a record-level identifier on `LinearLabelTeam`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-team-name-f0548e8a1fbf" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `labels.team.name`

            Name captures the name of the team. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear label team record.
            * **Interpretation:** The provider supplies `name` at linear label team granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-labels-updatedat-23165af88468" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `labels.updatedAt`

            Updated At captures the last time at which the label was meaningfully updated. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place label records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear label record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-notifications-777cef7ac1c3" title="Notifications" icon="calendar-days" iconType="sharp-duotone-solid">
        Developer identifier: `notifications`

        Notifications contain notifications for the authenticated user about issue updates, mentions, and other activity.

        * **Enables:** review notifications returned for the authenticated account and the records they reference.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-notifications-actor-6ec90514374d" title="Actor" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.actor`

            Actor captures the user who triggered the notification. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear notification record to the provider-reported actor represented by actor.
            * **Interpretation:** The provider supplies `actor` as identity or attribution context on each linear notification record. In Linear, actor is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-actor-email-73854f18e226" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.actor.email`

            Email captures the email address of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the notification user record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each notification user record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-actor-id-63e0cd543550" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.actor.id`

            ID is the unique identifier for the user. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match notification records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `NotificationUser`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-actor-name-75b0bd13bdbb" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.actor.name`

            Name captures the display name of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the notification user record to the provider-reported person or account represented by name.
            * **Interpretation:** The provider supplies `name` as identity or attribution context on each notification user record. In Linear, name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-archivedat-59e3b9a206a9" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.archivedAt`

            Archived At captures the time at which the notification was archived. It preserves the provider's current classification of this record.

            * **Enables:** separate notification records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear notification record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-createdat-b595ea39cf60" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.createdAt`

            Created At captures the time at which the notification was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place notification records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear notification record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-emailedat-c7429f66add5" title="Emailed At" icon="comments" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.emailedAt`

            Emailed At captures the time at which the notification was emailed to the user. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place notification records on a timeline by emailed at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `emailedAt` per linear notification record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-id-f8095fba2598" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.id`

            ID is the unique identifier for the notification. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear notification source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear notification record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-readat-8fa655797e98" title="Read At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.readAt`

            Read At captures the time at which the notification was read by the user. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place notification records on a timeline by read at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `readAt` per linear notification record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-snoozeduntilat-96cc6683e4bf" title="Snoozed Until At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.snoozedUntilAt`

            Snoozed Until At captures the time until which the notification is snoozed. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place notification records on a timeline by snoozed until at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `snoozedUntilAt` per linear notification record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-type-1e25bfbd0100" title="Type" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.type`

            Type states type of notification (e.g., `issueAssignment`, `issueMention`, `issueStatusChanged`). It preserves the provider's current classification of this record.

            * **Enables:** separate notification records by the exact provider-reported type value when describing their recorded state.
            * **Interpretation:** The provider supplies `type` per linear notification record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, type is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-unsnoozedat-97cba4746eaf" title="Unsnoozed At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.unsnoozedAt`

            Unsnoozed At captures the time at which the notification was unsnoozed. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place notification records on a timeline by unsnoozed at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `unsnoozedAt` per linear notification record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-updatedat-5407f5d872c4" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.updatedAt`

            Updated At captures the last time at which the notification was meaningfully updated. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place notification records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear notification record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-notifications-user-4d8f1f5c19bc" title="User" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `notifications.user`

            User captures the user who received the notification. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear notification record to the provider-reported actor represented by user.
            * **Interpretation:** The provider supplies `user` as identity or attribution context on each linear notification record. In Linear, user is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-project-milestones-524f9e8ccf86" title="Project Milestones" icon="calendar-check" iconType="sharp-duotone-solid">
        Developer identifier: `project_milestones`

        Project Milestones contain all project milestones from Linear marking significant progress points within projects.

        * **Enables:** place project work against named milestone records and target dates.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-project-milestones-archivedat-452f0f7a4df0" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.archivedAt`

            Archived At captures the time at which the milestone was archived, if applicable. It preserves the provider's current classification of this record.

            * **Enables:** separate project milestone records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear project milestone record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-milestones-createdat-926f7e42c295" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.createdAt`

            Created At captures the time at which the milestone was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project milestone records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear project milestone record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-milestones-description-68341c6a6ff3" title="Description" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.description`

            Description records description of the milestone providing additional context or details. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact description value attached to each linear project milestone record.
            * **Interpretation:** The provider supplies `description` at linear project milestone granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-milestones-id-d0b527068c4d" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.id`

            ID is the unique identifier for the milestone. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear project milestone source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear project milestone record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-milestones-name-8b263ccb94f9" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.name`

            Name records name of the milestone. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear project milestone record.
            * **Interpretation:** The provider supplies `name` at linear project milestone granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-milestones-project-0cd6a395e79e" title="Project" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.project`

            Project captures the project this milestone belongs to. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear project milestone record with the specific provider container named by project.
            * **Interpretation:** The provider returns `project` as a nested object or reference on `LinearProjectMilestone`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-milestones-project-id-a8e25d9a2d32" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.project.id`

            ID is the unique identifier of the parent project. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match project milestone records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearProjectMilestoneProject`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-milestones-project-name-eec35127fecb" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.project.name`

            Name records name of the parent project. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear project milestone project record.
            * **Interpretation:** The provider supplies `name` at linear project milestone project granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-milestones-sortorder-fa25f44e9612" title="Sort Order" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.sortOrder`

            Sort Order captures the sort order of the milestone within the project, used for display ordering. It preserves the stated measure at this record's granularity.

            * **Enables:** order or classify project milestone records using the provider-defined sort order value.
            * **Interpretation:** The provider supplies `sortOrder` at linear project milestone granularity as a provider-defined ordinal or planning value rather than elapsed time or money; zero and missing are not interchangeable.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-milestones-targetdate-1da8a169bf4b" title="Target Date" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.targetDate`

            Target Date records target date for the milestone completion in YYYY-MM-DD format. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project milestone records on a timeline by target date and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `targetDate` per linear project milestone record as a calendar date without a time of day; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-milestones-updatedat-3627b76c42e8" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `project_milestones.updatedAt`

            Updated At captures the last time at which the milestone was meaningfully updated. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project milestone records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear project milestone record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-project-updates-e9430be38202" title="Project Updates" icon="comments" iconType="sharp-duotone-solid">
        Developer identifier: `project_updates`

        Project Updates contain project status updates from Linear. These are periodic updates posted by team members on projects, including health status, body text, and associated project metadata.

        * **Enables:** review periodic project-update text, health state, author, and publication time.
        * **Scope:** Reads provider changes through the declared GraphQL operation using the declared incremental request boundary. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-project-updates-body-27890ec1400d" title="Body" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.body`

            Body records update content in markdown format. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact body value attached to each linear project update record.
            * **Interpretation:** The provider supplies `body` at linear project update granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-createdat-75fac9795eb1" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.createdAt`

            Created At records when the update was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project update records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear project update record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-editedat-2264ade008d9" title="Edited At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.editedAt`

            Edited At records when the update body was last edited. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project update records on a timeline by edited at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `editedAt` per linear project update record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-health-f53ad821fecd" title="Health" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.health`

            Health states project health status at time of update. It preserves the provider's current classification of this record.

            * **Enables:** separate project update records by the exact provider-reported health value when describing their recorded state.
            * **Interpretation:** The provider supplies `health` per linear project update record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, health is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-id-1193d1327a08" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.id`

            ID is the unique identifier for the project update. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear project update source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear project update record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-project-f43f638b98f5" title="Project" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.project`

            Project records project this update belongs to. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear project update record with the specific provider container named by project.
            * **Interpretation:** The provider returns `project` as a nested object or reference on `LinearProjectUpdate`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-project-id-4c1533da8ff0" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.project.id`

            ID carries the source identifier named ID for each linear project row. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match project update records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearProject`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-project-name-6ad61c14aa94" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.project.name`

            Name carries the source-authored value named Name for each linear project row. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear project record.
            * **Interpretation:** The provider supplies `name` at linear project granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-updatedat-434f34d1ed6f" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.updatedAt`

            Updated At records when the update was last modified. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project update records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear project update record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-user-bfadbde3f4cb" title="User" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.user`

            User records user who posted the update. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear project update record to the provider-reported actor represented by user.
            * **Interpretation:** The provider supplies `user` as identity or attribution context on each linear project update record. In Linear, user is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-user-email-e589e237dbbc" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.user.email`

            Email carries the source person or account value named Email for each linear user row. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each linear user record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-user-id-4b5674707283" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.user.id`

            ID carries the source identifier named ID for each linear user row. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match project update records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearUser`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-project-updates-user-name-79b87b7be556" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `project_updates.user.name`

            Name carries the source-authored value named Name for each linear user row. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear user record.
            * **Interpretation:** The provider supplies `name` at linear user granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-projects-9a9f9d166d74" title="Projects" icon="diagram-project" iconType="sharp-duotone-solid">
        Developer identifier: `projects`

        Projects contain all projects from Linear, including name, status, progress, and milestone relationships.

        * **Enables:** review project scope, milestones, health updates, and recorded progress.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-projects-archivedat-1523de9c1ff1" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `projects.archivedAt`

            Archived At records the timestamp when the project was archived, if applicable. It preserves the provider's current classification of this record.

            * **Enables:** separate project records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear project record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-canceledat-c9e27dd173e0" title="Canceled At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `projects.canceledAt`

            Canceled At records the timestamp when the project was canceled. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project records on a timeline by canceled at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `canceledAt` per linear project record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-color-e22a84a1ec7b" title="Color" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `projects.color`

            Color records color associated with the project for UI display. It preserves the provider's visual treatment for the represented object.

            * **Enables:** reproduce or compare the provider-supplied color for the represented design or board object.
            * **Interpretation:** The provider supplies `color` in its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-completedat-1cebb9ab4b0d" title="Completed At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `projects.completedAt`

            Completed At records the timestamp when the project was completed. It preserves the provider's current classification of this record.

            * **Enables:** separate project records by the exact provider-reported completed at value when describing their recorded state.
            * **Interpretation:** The provider supplies `completedAt` per linear project record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, completed at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-createdat-7f41647e8c23" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `projects.createdAt`

            Created At records the timestamp when the project was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear project record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-description-88ad21dacf39" title="Description" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `projects.description`

            Description records long-form description of the project, typically in markdown. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact description value attached to each linear project record.
            * **Interpretation:** The provider supplies `description` at linear project granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-health-2f2f9a2ed777" title="Health" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `projects.health`

            Health states current health status of the project. It preserves the provider's current classification of this record.

            * **Enables:** separate project records by the exact provider-reported health value when describing their recorded state.
            * **Interpretation:** The provider supplies `health` per linear project record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, health is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-icon-b2261c8cb01b" title="Icon" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `projects.icon`

            Icon records icon emoji or identifier associated with the project. It retains the exact provider location for the referenced resource.

            * **Enables:** open or trace the exact provider resource referenced by icon on a linear project record.
            * **Interpretation:** The provider supplies `icon` as a URL or resource locator on each linear project record. Availability still follows the provider's permissions and retention.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-id-e19ab4e5315f" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `projects.id`

            ID is the unique identifier for the project. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear project source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear project record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-lead-e14a3735af3a" title="Lead" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `projects.lead`

            Lead records user who is the lead of this project. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear project record to the provider-reported person or account represented by lead.
            * **Interpretation:** The provider supplies `lead` as identity or attribution context on each linear project record. In Linear, lead is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-lead-email-41fd34087edc" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `projects.lead.email`

            Email records email address of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each linear user record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-lead-id-74a7323d67c5" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `projects.lead.id`

            ID is the unique identifier for the user. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match project records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearUser`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-lead-name-ab2832aa5786" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `projects.lead.name`

            Name records display name of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by name.
            * **Interpretation:** The provider supplies `name` as identity or attribution context on each linear user record. In Linear, name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-name-fadc9c217edc" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `projects.name`

            Name records name of the project. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear project record.
            * **Interpretation:** The provider supplies `name` at linear project granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-priority-eb75aeb3a14d" title="Priority" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `projects.priority`

            Priority states priority level of the project (lower number is higher priority). It preserves the provider's current classification of this record.

            * **Enables:** separate project records by the exact provider-reported priority value when describing their recorded state.
            * **Interpretation:** The provider supplies `priority` per linear project record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, priority is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-progress-510ad47f7b2b" title="Progress" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `projects.progress`

            Progress reports project completion as a decimal ratio from 0 to 1. It captures the provider's current completion state.

            * **Enables:** compare project advancement and identify work that is not started, partial, or complete.
            * **Interpretation:** The provider supplies `progress` as a ratio where `0` means no reported completion and `1` means complete; missing remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-scope-8ff14795486c" title="Scope" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `projects.scope`

            Scope reports the total scope (points) of the project. It preserves the stated measure at this record's granularity.

            * **Enables:** measure the provider-reported scope for each linear project record.
            * **Interpretation:** The provider supplies `scope` at linear project granularity as a count at one value per record; zero and missing are not interchangeable.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-slugid-aac42a7e217e" title="Slug ID" icon="address-book" iconType="sharp-duotone-solid">
            Developer identifier: `projects.slugId`

            Slug ID identifies URL-friendly slug identifier for the project. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match project records to provider records that carry the same slug ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `slugId` as a record-level identifier on `LinearProject`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-sortorder-0b1cb88854ba" title="Sort Order" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `projects.sortOrder`

            Sort Order reports sort order value used for manual ordering of projects. It preserves the stated measure at this record's granularity.

            * **Enables:** order or classify project records using the provider-defined sort order value.
            * **Interpretation:** The provider supplies `sortOrder` at linear project granularity as a provider-defined ordinal or planning value rather than elapsed time or money; zero and missing are not interchangeable.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-startdate-98a746362b3b" title="Start Date" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `projects.startDate`

            Start Date records planned start date of the project. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project records on a timeline by start date and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `startDate` per linear project record as a calendar date without a time of day; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-startedat-0f53f82e992e" title="Started At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `projects.startedAt`

            Started At records the timestamp when the project was actually started. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project records on a timeline by started at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `startedAt` per linear project record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-state-c9b462d19125" title="State" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `projects.state`

            State states current lifecycle state of the project. It preserves the provider's current classification of this record.

            * **Enables:** separate project records by the exact provider-reported state value when describing their recorded state.
            * **Interpretation:** The provider supplies `state` per linear project record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, state is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-targetdate-0b8d8e9311e8" title="Target Date" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `projects.targetDate`

            Target Date records target completion date of the project. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project records on a timeline by target date and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `targetDate` per linear project record as a calendar date without a time of day; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-projects-updatedat-c2825d4ed9d5" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `projects.updatedAt`

            Updated At records the timestamp when the project was last meaningfully updated. Used as incremental sync cursor. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place project records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear project record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-roadmaps-45e09b2a4e80" title="Roadmaps" icon="sitemap" iconType="sharp-duotone-solid">
        Developer identifier: `roadmaps`

        Roadmaps contain all roadmaps from Linear providing a high-level view of projects and initiatives over time.

        * **Enables:** organize projects and initiatives using Linear's roadmap records.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-roadmaps-archivedat-8dfa83b0614b" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.archivedAt`

            Archived At records the timestamp when the roadmap was archived, if applicable. It preserves the provider's current classification of this record.

            * **Enables:** separate roadmap records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear roadmap record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-color-26ffe587c09c" title="Color" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.color`

            Color records color of the roadmap. It preserves the provider's visual treatment for the represented object.

            * **Enables:** reproduce or compare the provider-supplied color for the represented design or board object.
            * **Interpretation:** The provider supplies `color` in its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-createdat-e5c4f0f19739" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.createdAt`

            Created At records the timestamp when the roadmap was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place roadmap records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear roadmap record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-creator-dcfe9ee26c78" title="Creator" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.creator`

            Creator captures the user who created this roadmap. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear roadmap record to the provider-reported actor represented by creator.
            * **Interpretation:** The provider supplies `creator` as identity or attribution context on each linear roadmap record. In Linear, creator is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-creator-email-1583a9064c3e" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.creator.email`

            Email records email address of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each linear user record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-creator-id-0adb094f15ea" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.creator.id`

            ID is the unique identifier for the user. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match roadmap records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearUser`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-creator-name-0df001bb12e7" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.creator.name`

            Name records display name of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by name.
            * **Interpretation:** The provider supplies `name` as identity or attribution context on each linear user record. In Linear, name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-description-9f6095c96552" title="Description" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.description`

            Description records description of the roadmap, providing context about its strategic purpose. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact description value attached to each linear roadmap record.
            * **Interpretation:** The provider supplies `description` at linear roadmap granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-id-6861933f1a4b" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.id`

            ID is the unique identifier for the roadmap. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear roadmap source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear roadmap record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-name-585f39ddb18e" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.name`

            Name records name of the roadmap. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear roadmap record.
            * **Interpretation:** The provider supplies `name` at linear roadmap granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-slugid-29267f4eefe1" title="Slug ID" icon="address-book" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.slugId`

            Slug ID identifies URL-friendly slug identifier for the roadmap. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match roadmap records to provider records that carry the same slug ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `slugId` as a record-level identifier on `LinearRoadmap`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-sortorder-6f5489309f4e" title="Sort Order" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.sortOrder`

            Sort Order captures the sort order of the roadmap relative to other roadmaps. It preserves the stated measure at this record's granularity.

            * **Enables:** order or classify roadmap records using the provider-defined sort order value.
            * **Interpretation:** The provider supplies `sortOrder` at linear roadmap granularity as a provider-defined ordinal or planning value rather than elapsed time or money; zero and missing are not interchangeable.
          </Accordion>

          <Accordion id="provider-permission-field-linear-roadmaps-updatedat-5c85c1018225" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `roadmaps.updatedAt`

            Updated At records the timestamp when the roadmap was last meaningfully updated. Used as incremental sync cursor. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place roadmap records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear roadmap record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-teams-096a7fb47ff2" title="Teams" icon="address-book" iconType="sharp-duotone-solid">
        Developer identifier: `teams`

        Teams contain all teams within the Linear organization, including name, key, and settings.

        * **Enables:** map issues, cycles, and projects to the Linear teams that contain them.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-teams-activecycle-3e384e47308f" title="Active Cycle" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `teams.activeCycle`

            Active Cycle states current active cycle for the team. It preserves the provider's current classification of this record.

            * **Enables:** separate team records by the exact provider-reported active cycle value when describing their recorded state.
            * **Interpretation:** The provider supplies `activeCycle` per linear team record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, active cycle is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-activecycle-id-63ef3eb5df60" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `teams.activeCycle.id`

            ID is the unique identifier for the cycle. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match team records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearCycleRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-activecycle-name-a4c7900fe970" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `teams.activeCycle.name`

            Name records optional cycle name. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear cycle ref record.
            * **Interpretation:** The provider supplies `name` at linear cycle ref granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-activecycle-number-3ff030fd2ae5" title="Number" icon="calendar-days" iconType="sharp-duotone-solid">
            Developer identifier: `teams.activeCycle.number`

            Number identifies the cycle's sequence within its team. It preserves sprint chronology on the cycle reference.

            * **Enables:** resolve and order cycles within the same team when following team relationships.
            * **Interpretation:** The provider scopes `number` to a team; it is a cycle sequence, not a cycle count or cross-team measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-archivedat-2dc2453c7113" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `teams.archivedAt`

            Archived At records when the team was archived, if applicable. It preserves the provider's current classification of this record.

            * **Enables:** separate team records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear team record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-children-2d774720b533" title="Children" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `teams.children`

            Children records child teams nested under this team. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** reconstruct the parent-child structure expressed by children on each linear team record.
            * **Interpretation:** The provider returns `children` as a list on `LinearTeam`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-children-id-5d1736964822" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `teams.children.id`

            ID is the unique identifier for the team. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear team ref source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear team ref record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-children-key-043a9235a3f0" title="Key" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `teams.children.key`

            Key identifies short team key used in issue identifiers. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match team records to provider records that carry the same key, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `key` as a record-level identifier on `LinearTeamRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-children-name-ecf8fa983dc6" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `teams.children.name`

            Name records name of the team. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear team ref record.
            * **Interpretation:** The provider supplies `name` at linear team ref granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-color-3e55e536a339" title="Color" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `teams.color`

            Color records team color used in the Linear UI. It preserves the provider's visual treatment for the represented object.

            * **Enables:** reproduce or compare the provider-supplied color for the represented design or board object.
            * **Interpretation:** The provider supplies `color` in its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-createdat-cad9667ddedf" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `teams.createdAt`

            Created At records when the team was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place team records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear team record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-description-29e2e47c179f" title="Description" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `teams.description`

            Description records description of the team's purpose or scope. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact description value attached to each linear team record.
            * **Interpretation:** The provider supplies `description` at linear team granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-displayname-fb3a2a654f6a" title="Display Name" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `teams.displayName`

            Display Name records team name including parent team name when applicable. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact display name value attached to each linear team record.
            * **Interpretation:** The provider supplies `displayName` at linear team granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-icon-8d1ab80b5ec4" title="Icon" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `teams.icon`

            Icon records icon identifier or emoji for the team. It retains the exact provider location for the referenced resource.

            * **Enables:** open or trace the exact provider resource referenced by icon on a linear team record.
            * **Interpretation:** The provider supplies `icon` as a URL or resource locator on each linear team record. Availability still follows the provider's permissions and retention.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-id-aebd5563a327" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `teams.id`

            ID is the unique identifier for the team. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear team source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear team record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-issuecount-1ad4de8f02ec" title="Issue Count" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `teams.issueCount`

            Issue Count reports the number of issues in the team. It preserves the stated measure at this record's granularity.

            * **Enables:** measure the provider-reported issue count for each linear team record.
            * **Interpretation:** The provider supplies `issueCount` at linear team granularity as a count at one value per record; zero and missing are not interchangeable.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-key-29223c9ab860" title="Key" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `teams.key`

            Key identifies short key/prefix used in issue identifiers (e.g., ENG, DES). It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match team records to provider records that carry the same key, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `key` as a record-level identifier on `LinearTeam`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-name-fdd85c6c9681" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `teams.name`

            Name records display name of the team. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear team record.
            * **Interpretation:** The provider supplies `name` at linear team granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-organization-2adf0c01ed17" title="Organization" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `teams.organization`

            Organization records Linear organization associated with the team. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear team record with the specific provider container named by organization.
            * **Interpretation:** The provider returns `organization` as a nested object or reference on `LinearTeam`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-organization-id-080d02b02fb6" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `teams.organization.id`

            ID is the unique identifier for the organization. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match team records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearOrganizationRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-organization-name-02a3e0d934da" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `teams.organization.name`

            Name records name of the organization. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear organization ref record.
            * **Interpretation:** The provider supplies `name` at linear organization ref granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-parent-62e9009420d9" title="Parent" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `teams.parent`

            Parent records parent team, if this is a child team. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** reconstruct the parent-child structure expressed by parent on each linear team record.
            * **Interpretation:** The provider returns `parent` as a nested object or reference on `LinearTeam`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-private-54f70d48619f" title="Private" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `teams.private`

            Private indicates whether the team is private. It documents the access-related value reported for this object or membership.

            * **Enables:** describe the provider-reported private attached to each linear team record.
            * **Interpretation:** The provider supplies `private` at linear team granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-timezone-11b304b729a4" title="Timezone" icon="address-book" iconType="sharp-duotone-solid">
            Developer identifier: `teams.timezone`

            Timezone records IANA timezone identifier for the team. It preserves the geographic, locale, time-zone, or coordinate context represented by the field.

            * **Enables:** interpret dates, times, or localized text for teams using the recorded timezone.
            * **Interpretation:** The provider supplies `timezone` as location or localization context per linear team record; it does not establish a person's real-time physical location.
          </Accordion>

          <Accordion id="provider-permission-field-linear-teams-updatedat-76ad94888f38" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `teams.updatedAt`

            Updated At records when the team was last updated. Used as incremental sync cursor. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place team records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear team record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-users-bbf8b506a674" title="Users" icon="user-tie" iconType="sharp-duotone-solid">
        Developer identifier: `users`

        Users contain all members of the Linear organization, including profile information and roles.

        * **Enables:** resolve Linear member identities and organization roles for attribution and membership context.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-users-active-86901ea86798" title="Active" icon="circle-check" iconType="sharp-duotone-solid">
            Developer identifier: `users.active`

            Active indicates whether the user account is currently active in the workspace. It preserves the provider-reported yes-or-no condition for this record.

            * **Enables:** select user records for which the provider reports active as true or false.
            * **Interpretation:** The provider supplies `active` as a boolean per linear user record; false and missing are distinct when the field is optional. In Linear, active is a condition on the work record, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-admin-7907b0bd74fb" title="Admin" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `users.admin`

            Admin indicates whether the user has admin privileges in the workspace. It documents the access-related value reported for this object or membership.

            * **Enables:** describe the provider-reported admin attached to each linear user record.
            * **Interpretation:** The provider supplies `admin` at linear user granularity. It describes provider-reported context and does not prove effective access beyond the returned record. In Linear, admin is access or membership context, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-archivedat-3fa97b9cb829" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `users.archivedAt`

            Archived At states ISO8601 datetime when the user was archived, if applicable. It preserves the provider's current classification of this record.

            * **Enables:** separate user records by the exact provider-reported archived at value when describing their recorded state.
            * **Interpretation:** The provider supplies `archivedAt` per linear user record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-avatarurl-87742e7872bd" title="Avatar URL" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `users.avatarUrl`

            Avatar URL records URL of the user's avatar image. It retains the exact provider location for the referenced resource.

            * **Enables:** open or trace the exact provider resource referenced by avatar URL on a linear user record.
            * **Interpretation:** The provider supplies `avatarUrl` as a URL or resource locator on each linear user record. Availability still follows the provider's permissions and retention.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-createdat-55a714b699a9" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `users.createdAt`

            Created At records ISO8601 datetime when the user record was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place user records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear user record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-createdissuecount-66df87c84af6" title="Created Issue Count" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `users.createdIssueCount`

            Created Issue Count reports the number of issues created by the user. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place user records on a timeline by created issue count and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdIssueCount` per linear user record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-description-65bc4d8cf6d9" title="Description" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `users.description`

            Description records user-provided bio or description text. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact description value attached to each linear user record.
            * **Interpretation:** The provider supplies `description` at linear user granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-disablereason-6a566d643159" title="Disable Reason" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `users.disableReason`

            Disable Reason records reason the user account was disabled, if applicable. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by disable reason.
            * **Interpretation:** The provider supplies `disableReason` as identity or attribution context on each linear user record. In Linear, disable reason is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-displayname-4368389141f9" title="Display Name" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `users.displayName`

            Display Name records display name of the user, typically their preferred name shown in the UI. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by display name.
            * **Interpretation:** The provider supplies `displayName` as identity or attribution context on each linear user record. In Linear, display name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-email-cf213825833a" title="Email" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `users.email`

            Email records email address of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by email.
            * **Interpretation:** The provider supplies `email` as identity or attribution context on each linear user record. In Linear, email is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-guest-108580d43fdf" title="Guest" icon="shield-check" iconType="sharp-duotone-solid">
            Developer identifier: `users.guest`

            Guest indicates whether the user is a guest (external collaborator) rather than a full member. It documents the access-related value reported for this object or membership.

            * **Enables:** describe the provider-reported guest attached to each linear user record.
            * **Interpretation:** The provider supplies `guest` at linear user granularity. It describes provider-reported context and does not prove effective access beyond the returned record. In Linear, guest is access or membership context, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-id-f8c0a236817e" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `users.id`

            ID is the unique identifier for the user. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear user source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear user record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-initials-0fb29f8cec20" title="Initials" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `users.initials`

            Initials records initials displayed for the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by initials.
            * **Interpretation:** The provider supplies `initials` as identity or attribution context on each linear user record. In Linear, initials is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-lastseen-f563d679162b" title="Last Seen" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `users.lastSeen`

            Last Seen records ISO8601 datetime of when the user was last seen active in Linear. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place user records on a timeline by last seen and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `lastSeen` per linear user record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-name-459a87e963f9" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `users.name`

            Name records full name of the user. It keeps the provider-reported person or account context attached to the record.

            * **Enables:** attribute the linear user record to the provider-reported person or account represented by name.
            * **Interpretation:** The provider supplies `name` as identity or attribution context on each linear user record. In Linear, name is attribution or membership context for the work record, not a measure of an individual's performance.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-organization-e9d04cc27444" title="Organization" icon="user-shield" iconType="sharp-duotone-solid">
            Developer identifier: `users.organization`

            Organization records organization the user belongs to. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear user record with the specific provider container named by organization.
            * **Interpretation:** The provider returns `organization` as a nested object or reference on `LinearUser`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-organization-id-7b95e487c0c8" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `users.organization.id`

            ID is the unique identifier for the organization. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match user records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearOrganizationRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-organization-name-36ff3eabab3d" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `users.organization.name`

            Name records name of the organization. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear organization ref record.
            * **Interpretation:** The provider supplies `name` at linear organization ref granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-statusemoji-821560172f0a" title="Status Emoji" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `users.statusEmoji`

            Status Emoji states emoji representing the user's current status. It preserves the provider's current classification of this record.

            * **Enables:** separate user records by the exact provider-reported status emoji value when describing their recorded state.
            * **Interpretation:** The provider supplies `statusEmoji` per linear user record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, status emoji is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-statuslabel-f14d5a731422" title="Status Label" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `users.statusLabel`

            Status Label states text label for the user's current status. It preserves the provider's current classification of this record.

            * **Enables:** separate user records by the exact provider-reported status label value when describing their recorded state.
            * **Interpretation:** The provider supplies `statusLabel` per linear user record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, status label is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-statusuntilat-29c2aed796a8" title="Status Until At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `users.statusUntilAt`

            Status Until At states ISO8601 datetime indicating when the user's current status expires. It preserves the provider's current classification of this record.

            * **Enables:** separate user records by the exact provider-reported status until at value when describing their recorded state.
            * **Interpretation:** The provider supplies `statusUntilAt` per linear user record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, status until at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-teams-5272b20b535c" title="Teams" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `users.teams`

            Teams records teams the user belongs to. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear user record with the specific provider container named by teams.
            * **Interpretation:** The provider returns `teams` as a nested object or reference on `LinearUser`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-teams-nodes-398c88364c9c" title="Nodes" icon="lock" iconType="sharp-duotone-solid">
            Developer identifier: `users.teams.nodes`

            Nodes records team nodes in the connection. It preserves the containing or referenced object needed to reconstruct the provider relationship.

            * **Enables:** associate each linear team connection record with the specific provider container named by nodes.
            * **Interpretation:** The provider returns `nodes` as a list on `LinearTeamConnection`; an absent value does not prove that no related object exists outside the credential's visibility.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-teams-nodes-id-69b5bc515d2e" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `users.teams.nodes.id`

            ID is the unique identifier for the team. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match user records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearTeamRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-teams-nodes-key-61010edd1655" title="Key" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `users.teams.nodes.key`

            Key identifies short team key used in issue identifiers. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match user records to provider records that carry the same key, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `key` as a record-level identifier on `LinearTeamRef`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-teams-nodes-name-6e336c19a1ed" title="Name" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `users.teams.nodes.name`

            Name records name of the team. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact name value attached to each linear team ref record.
            * **Interpretation:** The provider supplies `name` at linear team ref granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-timezone-af271bf18f59" title="Timezone" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `users.timezone`

            Timezone records user's configured timezone (IANA timezone identifier). It preserves the geographic, locale, time-zone, or coordinate context represented by the field.

            * **Enables:** interpret dates, times, or localized text for users using the recorded timezone.
            * **Interpretation:** The provider supplies `timezone` as location or localization context per linear user record; it does not establish a person's real-time physical location.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-updatedat-96bac838f94c" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `users.updatedAt`

            Updated At records ISO8601 datetime when the user record was last meaningfully updated. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place user records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear user record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-users-url-c2eb2b2c010b" title="URL" icon="passport" iconType="sharp-duotone-solid">
            Developer identifier: `users.url`

            URL records URL to the user's profile page in Linear. It retains the exact provider location for the referenced resource.

            * **Enables:** open or trace the exact provider resource referenced by URL on a linear user record.
            * **Interpretation:** The provider supplies `url` as a URL or resource locator on each linear user record. Availability still follows the provider's permissions and retention.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-linear-workflow-states-ec4a3017d569" title="Workflow States" icon="chart-pie" iconType="sharp-duotone-solid">
        Developer identifier: `workflow_states`

        Workflow States contain all workflow states from Linear defining lifecycle stages for issues within teams.

        * **Enables:** interpret issue state using each team's configured workflow stages.
        * **Scope:** Reads the declared collection through the declared GraphQL operation as a full snapshot. Results are limited to objects visible to the configured API key or OAuth grant; private or restricted records not returned by Linear are absent.

        <AccordionGroup>
          <Accordion id="provider-permission-field-linear-workflow-states-archivedat-7e276594cb0d" title="Archived At" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.archivedAt`

            Archived At records the timestamp when the workflow state was archived, null if not archived. It preserves the provider's current classification of this record.

            * **Enables:** filter and group workflow state records by the Linear linear workflow state archived at exposed by the nested object.
            * **Interpretation:** The provider supplies `archivedAt` per linear workflow state record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, archived at is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-color-f9fae3b7f48b" title="Color" icon="video" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.color`

            Color records color of the workflow state displayed in the UI, typically a hex color code. It preserves the provider's visual treatment for the represented object.

            * **Enables:** reproduce or compare the provider-supplied color for the represented design or board object.
            * **Interpretation:** The provider supplies `color` in its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-createdat-af923c36221c" title="Created At" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.createdAt`

            Created At records the timestamp when the workflow state was created. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place workflow state records on a timeline by created at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `createdAt` per linear workflow state record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-description-4492ad15a1dc" title="Description" icon="unlock" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.description`

            Description records description of the workflow state explaining its purpose or usage. It keeps the exact text, label, or authored value needed to interpret the record.

            * **Enables:** inspect the exact description value attached to each linear workflow state record.
            * **Interpretation:** The provider supplies `description` at linear workflow state granularity in the format stated by its description; omitted or redacted content remains unknown.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-id-5877313aee92" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.id`

            ID is the unique identifier for the workflow state. It supplies the declared record identity used when repeated ingestions represent the same source row.

            * **Enables:** recognize repeated ingestions of the same linear workflow state source row before constructing its represented state.
            * **Interpretation:** The provider supplies `id` at one value per linear workflow state record, and `x-transformDedupKey` explicitly marks it as the record key.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-name-86a4c518e762" title="Name" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.name`

            Name states name of the workflow state (e.g., Todo, In Progress, Done). It preserves the provider's current classification of this record.

            * **Enables:** filter and group workflow state records by the Linear linear workflow state name exposed by the nested object.
            * **Interpretation:** The provider supplies `name` per linear workflow state record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, name is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-position-5e9e8f2d95dd" title="Position" icon="earth-americas" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.position`

            Position reports sort position of the state within the team's workflow, used for ordering. It preserves the stated measure at this record's granularity.

            * **Enables:** order or classify workflow state records using the provider-defined position value.
            * **Interpretation:** The provider supplies `position` at linear workflow state granularity as a provider-defined ordinal or planning value rather than elapsed time or money; zero and missing are not interchangeable.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-team-ecdb924fed3b" title="Team" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.team`

            Team captures the team this workflow state belongs to. It preserves the provider's current classification of this record.

            * **Enables:** filter and group workflow state records by the Linear linear workflow state team exposed by the nested object.
            * **Interpretation:** The provider supplies `team` per linear workflow state record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, team is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-team-id-8e41e66fc969" title="ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.team.id`

            ID is the unique identifier of the team. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match workflow state records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `id` as a record-level identifier on `LinearWorkflowStateTeam`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-team-key-3bc7bd84cbff" title="Key" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.team.key`

            Key identifies short key or abbreviation for the team, used as a prefix in issue identifiers. It is needed to resolve references that repeat the same provider identifier.

            * **Enables:** match workflow state records to provider records that carry the same key, without assuming that this field alone makes every row unique.
            * **Interpretation:** The provider supplies `key` as a record-level identifier on `LinearWorkflowStateTeam`. It is not a uniqueness guarantee unless a connector directive says so.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-team-name-f11c13df6b8a" title="Name" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.team.name`

            Name states name of the team. It preserves the provider's current classification of this record.

            * **Enables:** filter and group workflow state records by the Linear linear workflow state team name exposed by the nested object.
            * **Interpretation:** The provider supplies `name` per linear workflow state team record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, name is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-type-a163527ae32f" title="Type" icon="location-crosshairs" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.type`

            Type states category type classifying the workflow state into a standardized lifecycle stage. It preserves the provider's current classification of this record.

            * **Enables:** filter and group workflow state records by the Linear linear workflow state type exposed by the nested object.
            * **Interpretation:** The provider supplies `type` per linear workflow state record using its own state vocabulary; unknown and missing values must remain distinct. In Linear, type is the work record's classification, not an individual-performance measure.
          </Accordion>

          <Accordion id="provider-permission-field-linear-workflow-states-updatedat-dbf38286bb84" title="Updated At" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `workflow_states.updatedAt`

            Updated At records the timestamp when the workflow state was last meaningfully updated. It anchors the named event or boundary on the record's timeline.

            * **Enables:** place workflow state records on a timeline by updated at and select the records within an explicit reporting window.
            * **Interpretation:** The provider supplies `updatedAt` per linear workflow state record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
          </Accordion>
        </AccordionGroup>
      </Accordion>
    </AccordionGroup>
  </Tab>

  <Tab title="Troubleshooting">
    | Error                     | Meaning                  | Solution                               |
    | ------------------------- | ------------------------ | -------------------------------------- |
    | `Authentication required` | Missing or invalid token | Verify API key in header               |
    | `Forbidden`               | Insufficient permissions | Use admin account or check team access |
    | `Rate limit exceeded`     | Too many requests        | Implement backoff                      |

    #### Common Issues

    #### Can't see certain teams

    API keys inherit user permissions. If you can't see certain teams, verify the user account has access.

    #### GraphQL errors

    Check your query syntax. Use [Linear's API explorer](https://developers.linear.app/docs/graphql/working-with-the-graphql-api#using-the-api-explorer) to test queries.

    **[Linear API](https://developers.linear.app/docs)** — Official API documentation

    **[GraphQL Schema](https://developers.linear.app/docs/graphql/working-with-the-graphql-api)** — GraphQL reference
  </Tab>
</Tabs>
