Skip to content

Using Jira Cloud

Practical guide for working with Jira issues, boards, sprints, and projects through Fp Switchboard.

  • Use JQL for powerful searches: project = "PROJ" AND status = "In Progress" ORDER BY priority DESC
  • Issue keys are PROJECT-NUMBER format (e.g., DEV-123) — never guess, always search first
  • Descriptions and comments use ADF (Atlassian Document Format) — send markdown, Switchboard converts automatically
  • Transitions must use the transition name, not an ID
  • Board and sprint operations use the Agile REST API, not the standard API

JQL Syntax Matters Critical

Section titled “JQL Syntax Matters ”

Text values with spaces need quotes. Use = for exact match, ~ for contains.

Example
Wrongstatus = In Progress
Correctstatus = "In Progress"

Error: Error in the JQL Query: Expecting either...

Issue Keys vs Numeric IDs Critical

Section titled “Issue Keys vs Numeric IDs ”

Always use issue keys (PROJECT-123) not numeric IDs. Keys are human-readable and stable across moves.

Example
Wrongjira_get_issue({issue_id: "10042"})
Correctjira_get_issue({issue_key: "DEV-123"})

Transitions by Name, Not ID Critical

Section titled “Transitions by Name, Not ID ”

Use the human-readable transition name. The system resolves to the correct transition ID automatically.

Example
Wrongjira_transition_issue({transition: "31"})
Correctjira_transition_issue({transition: "In Progress"})

Available transitions are shown in the error message if the name doesn’t match.

ADF Handled Automatically Important

Section titled “ADF Handled Automatically ”

Jira v3 API requires Atlassian Document Format for rich text. Send plain text or markdown — Fp Switchboard converts automatically.

Example
WrongManually constructing ADF JSON
CorrectJust send markdown: "## Summary\n\nThis is **bold** text"

Board IDs Are Not Project Keys Important

Section titled “Board IDs Are Not Project Keys ”

Boards have numeric IDs separate from project keys. Use jira_list_boards to find the right board ID.

Sprint Scope Is Per-Board Important

Section titled “Sprint Scope Is Per-Board ”

Sprints belong to boards, not projects. A project may have multiple boards with different sprints.

Example
Wrongjira_list_sprints({project: "DEV"})
Correctjira_list_boards()jira_list_sprints({board_id: "42"})
  1. jira_list_boards to find the right board
  2. jira_create_sprint with name and dates
  3. jira_search to find backlog issues
  4. jira_move_to_sprint to add issues
  1. jira_list_projects to get project key
  2. jira_list_issue_types to get valid types
  3. jira_create_issue with project, type, summary
  4. jira_transition_issue to move through workflow
  1. jira_search with JQL to find unassigned issues
  2. jira_search_users to find assignees
  3. jira_assign_issue for each issue
  4. jira_add_labels to categorize
ID TypeFormatExample
Issue KeyPROJECT-NUMBERDEV-123
Project KeyUPPERCASE (2-10)PROJ
Board IDInteger42
Sprint IDInteger7
Account IDHex string (24)5b10ac8d82e05b22cc7d4ef5
QueryDescription
assignee = currentUser()My issues
status = "In Progress"Active work
project = "KEY" AND type = BugBugs in a project
sprint in openSprints()Current sprint issues
updated >= -7d ORDER BY updated DESCRecently updated
priority = Highest AND status != DoneUrgent open items
labels = "frontend" AND fixVersion = "2.0"Filtered by label and version
  • “Show my open Jira issues”
  • “Create a bug in the DEV project about the login error”
  • “Move DEV-123 to In Progress”
  • “List sprints on the main board”
  • “Search for unassigned high-priority issues”
  • “Add a comment to PROJ-456 about the fix”
LimitValue
Requests per minute~100
Best practiceUse JQL search instead of individual fetches