View as Markdown
Linear (API key) icon

Linear (API key) ACTION

Create Document

Create a new Linear document (a spec, brief, runbook or meeting notes) and attach it to exactly one project, initiative, team or issue so teammates can find it. Set exactly one of projectId, initiativeId, teamId or issueId. If the user did not say where the document belongs and the choice is ambiguous, ask them before calling this tool rather than guessing. Use List Projects, List Initiatives, Get Teams or Search Issues to look up the ID. To change an existing document, use Update Document instead; to check whether a document already exists, use Search Documents. content is markdown. The response does not echo the body back; use Get Document to read it. Example: title: "Dust Storm Shelter Spec", content: "# Overview\n\nShelter requirements...", projectId: "a1b2c3d4-0000-0000-0000-000000000001" → returns {success: true, document: {id: "29a25062-...", title: "Dust Storm Shelter Spec", slugId: "10b5bc2940c7", url: "https://linear.app/.../document/dust-storm-shelter-spec-10b5bc2940c7", project: {id: "a1b2c3d4-...", name: "Mars Colony"}}}. See the documentation
  • Action
  • Writes data
  • API key
  • SDK
  • MCP

IMPLEMENTATION

Call this tool

Connect a user's Linear (API key) account once, then configure and run Create Document from your backend or agent.

import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "linear_app-create-document",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    linear_app: { authProvisionId: "apn_xxxxxxx" },
    title: "Title",
    content: "Content",
  },
})

console.log(result)

SCHEMA

Inputs

Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.

Create Document inputs
Property Type Description
title Title string
The title of the document. Example: Q3 Hiring Plan.
Required
content Content string
The document body in markdown. Example: # Goals\n\n- Hire two engineers.
Optional
projectId Project string
The UUID or identifier of the project to attach the document to (e.g. a1b2c3d4-0000-0000-0000-000000000001 or P-LIN-123). Set exactly one of projectId, initiativeId, teamId or issueId. Use List Projects to find valid project IDs.
Optional
initiativeId Initiative string
The UUID or identifier of the initiative to attach the document to (e.g. b2c3d4e5-0000-0000-0000-000000000002 or I-12). Set exactly one of projectId, initiativeId, teamId or issueId. Use List Initiatives to find valid initiative IDs.
Optional
teamId Team string
The UUID of the team to attach the document to (e.g. 9d1c3f7e-2b48-4c6a-9f1e-5a7b8c9d0e1f). The short team key such as ENG is rejected. Set exactly one of projectId, initiativeId, teamId or issueId. Use Get Teams to find valid team IDs.
Optional
issueId Issue string
The UUID or identifier of the issue to attach the document to (e.g. 7df5e7f9-a357-4539-ae94-4a004fec635f or ENG-123). Set exactly one of projectId, initiativeId, teamId or issueId. Use Search Issues to find valid issues.
Optional
ownerId Owner string
The UUID of the user who owns the document (e.g. abc12345-0000-0000-0000-000000000001). Use List Users to find valid user IDs.
Optional
icon Icon string
The document icon, as an emoji shortcode. Raw emoji such as 📄 are rejected. Example: :page_facing_up:.
Optional
color Color string
The color of the document icon, as a hex code. Example: #5e6ad2.
Optional

REFERENCE

Tool details

Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.

Registry key
linear_app-create-document
Version
0.0.2
App
Linear (API key)
Authentication
API key
Read-only
No
Destructive
No
Open world
Yes