EQL - Advanced Search

Learn how to use EQL (Elixion Query Language) for powerful issue filtering and search

EQL - Elixion Query Language

EQL is a powerful query language for finding exactly the issues you need. Similar to Jira's JQL, it lets you create sophisticated filters using a simple, readable syntax.

Accessing EQL

There are several ways to access the EQL search:

  1. Navigation: Go to Board and click Advanced Search
  2. Direct URL: Navigate to /eql
  3. Keyboard: Press Ctrl/Cmd + K and type "Advanced Search"

Writing Your First Query

The basic structure is simple:

field = "value"

For example, to find all issues assigned to you:

assignee = currentUser()

To find high priority bugs:

type = "Bug" AND priority = "High"

Common Search Patterns

My Work

-- All my open issues
assignee = currentUser() AND status != "Done"

-- Issues I created
reporter = currentUser()

-- My overdue items
assignee = currentUser() AND duedate < now() AND status != "Done"

Sprint Work

-- Current sprint items
sprint = currentSprint()

-- Incomplete sprint work
sprint = currentSprint() AND status NOT IN ("Done", "Cancelled")

-- Items not in any sprint
sprint IS EMPTY

Bug Tracking

-- All open bugs
type = "Bug" AND status != "Done"

-- Critical unassigned bugs
type = "Bug" AND priority = "Critical" AND assignee IS EMPTY

-- Bugs created this week
type = "Bug" AND created >= startOfWeek()

Project Specific

-- All issues in a project
project = "PROJ"

-- Multiple projects
project IN ("PROJ1", "PROJ2", "PROJ3")

Text Search

-- Find by keyword
text ~ "authentication"

-- In title only
summary ~ "login error"

-- Exclude certain words
text ~ "error" AND text !~ "test"

Available Fields

| Field | What it searches | |-------|-----------------| | project | Project key (e.g., "PROJ") | | status | Issue status (Backlog, In Progress, Done, etc.) | | type | Issue type (Bug, Story, Task, Epic) | | priority | Priority level (Low, Medium, High, Critical) | | assignee | Who's working on it | | reporter | Who created it | | created | When it was created | | updated | When it was last modified | | duedate | When it's due | | sprint | Which sprint it's in | | labels | Applied labels | | text | Full-text search (title + description) | | summary | Issue title only | | storypoints | Story point estimate |

Operators

| Operator | Meaning | Example | |----------|---------|---------| | = | Equals | status = "Done" | | != | Not equals | status != "Done" | | > < >= <= | Comparison | created > -7d | | ~ | Contains | text ~ "bug" | | !~ | Not contains | text !~ "test" | | IN | In list | status IN ("Open", "In Progress") | | NOT IN | Not in list | type NOT IN ("Epic") | | IS EMPTY | Has no value | assignee IS EMPTY | | IS NOT EMPTY | Has a value | duedate IS NOT EMPTY |

Date Magic

Use relative dates for queries that stay current:

| Expression | Meaning | |------------|---------| | -7d | 7 days ago | | +3d | 3 days from now | | -2w | 2 weeks ago | | -1m | 1 month ago | | now() | Right now | | startOfWeek() | Monday of this week | | startOfMonth() | First of this month |

Examples

-- Created in the last week
created >= -7d

-- Due in the next 2 weeks
duedate <= +2w AND duedate >= now()

-- Updated today
updated >= startOfDay()

Combining Conditions

Use AND, OR, and parentheses:

-- Both must be true
status = "In Progress" AND assignee = currentUser()

-- Either can be true
priority = "Critical" OR priority = "Highest"

-- Group with parentheses
(status = "Open" OR status = "In Progress") AND assignee = currentUser()

Saving Queries

  1. Write your query
  2. Click Save Filter
  3. Give it a name
  4. Access it anytime from the Saved Filters tab

Tips

  • Quote text values: Always use "quotes" around text
  • Case matters for values: Use "In Progress" not "in progress"
  • Use functions: currentUser() and currentSprint() make queries dynamic
  • Start simple: Build complex queries step by step
  • Validate first: Click Validate before running large queries

Keyboard Shortcuts

| Shortcut | Action | |----------|--------| | Ctrl/Cmd + Enter | Run query | | Ctrl/Cmd + S | Save filter | | Escape | Clear query |

Troubleshooting

"Invalid field" - Check spelling and use the fields listed above

"Unexpected token" - Check for:

  • Missing quotes around text
  • Unmatched parentheses
  • Typos in AND/OR

No results - Try a simpler query first, then add conditions