Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/Overview/SupportedDataSources.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ more plugins. Detailed plugin docs can be found [here](/docs/Plugins).
| GitHub | Source Code Management, Code Review, Issue Tracking, CI/CD (GitHub Actions) | Cloud | Available | `github`, `gitextractor` | Incremental Sync |
| GitLab | Source Code Management, Code Review, Issue Tracking, CI/CD (GitLab CI) | Cloud, Community Edition 11+ | Available | `gitlab`, `gitextractor` | Full Refresh, Incremental Sync(for `issues`,`MRs`) |
| Jira | Issue Tracking | Cloud, Server/Data Center 7.x and above | Available | `jira` | Full Refresh, Incremental Sync(for `issues` and related) |
| YouTrack | Issue Tracking | Cloud, self-hosted (configurable endpoint) | Available | `youtrack` | Full Refresh, Incremental Sync(for `issues`, `comments`, `changelogs`) |
| Jenkins | CI/CD | 2.263.x+ | Available | `jenkins` | Incremental Sync |
| BitBucket (Beta) | Source Code Management, Code Review | Cloud | Advanced Mode Available | `bitbucket`, `gitextractor` | Full Refresh |
| TAPD (Beta) | Issue Tracking | Cloud | Advanced Mode Available | `tapd` | Full Refresh, Incremental Sync(for `stories`, `bugs`, `tasks`) |
Expand Down
48 changes: 48 additions & 0 deletions docs/Plugins/youtrack.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: "YouTrack"
description: >
YouTrack Plugin
---

## Summary

This plugin collects `YouTrack` projects, issues, comments, issue changelogs, labels and accounts, and converts them into DevLake's TICKET domain layer so they can be used by the issue-tracking metrics and dashboards.

Issues, comments and changelogs are collected incrementally, so a scheduled pipeline only pulls what changed since the last run.

## Supported Versions

Available for YouTrack Cloud, and for self-hosted YouTrack instances through the configurable endpoint. Check [this doc](https://devlake.apache.org/docs/Overview/SupportedDataSources#data-sources-and-data-plugins) for more details.

## Configuration

The connection needs three things:

| Field | Description |
|---|---|
| Endpoint | Base URL of the instance, for example `https://example.youtrack.cloud` |
| Token | A permanent token. It starts with `perm:` — create one under **Profile → Account Security → New Token** |
| Rate Limit Per Hour | Optional throttle for the API |

The token must be able to read the project and its custom fields. A token that silently authenticates as a guest returns empty results rather than an error, which is why the Config UI **Test connection** button warns when that happens.

After the connection is saved, pick the projects to collect as scopes, then map the project's custom fields to DevLake's Type, State, Priority, Assignee, Story Points and Due Date in the scope config. Type, State, Priority and Assignee fall back to YouTrack's default field names when left empty.

## Configuration via API

A connection can also be created directly:

```
curl 'http://localhost:8080/plugins/youtrack/connections' \
--header 'Content-Type: application/json' \
--data-raw '
{
"name": "youtrack",
"endpoint": "https://example.youtrack.cloud",
"token": "perm:<YOUR_TOKEN>",
"rateLimitPerHour": 10000
}
'
```

See [Advanced mode](/Configuration/AdvancedMode.md) for collecting scopes and scope configs the same way.
Loading