---
schema: rendered-html/v1
title: "Operations with Specific Issue VCS Changes and Pull Requests | Developer Portal for YouTrack and Hub Documentation"
source_url: https://www.jetbrains.com/help/youtrack/devportal/operations-api-issues-issueID-vcsChanges.html
generated_at: 2026-06-11T15:07:36.110776+00:00
---

Feedback

Thanks for your feedback!

Was this page helpful?

YesNo

Developer Portal for YouTrack and Hub

- Developer Portal
- Apps
- MCP Tools
- YouTrack Workflows
- YouTrack Import Scripts
- YouTrack Form API
- YouTrack REST API
- Get Started with REST API
- REST API Reference
- Entities
- Resources
- Activity Items
- Issue Activities Page
- Build Bundles
- Enum Bundles
- Owned Bundles
- State Bundles
- User Bundles
- Version Bundles
- Custom Fields
- Field Types
- Backup Files
- Database Backup Settings
- Global Settings
- Organizations
- Projects
- Telemetry data
- Global Time Tracking Settings
- Agiles
- Articles
- Assigned Roles
- Commands
- Command Suggestions
- User Groups
- Issue Link Types
- Issue Tag
- Issues
- [Operations with Specific Issue](jetbrains__com__help__youtrack__devportal__operations-api-issues.md)
- Sub-resources
- Issue Activity Items
- Activity Cursor Page
- Issue Attachments
- Issue Comments
- Issue Custom Fields
- Issue Links
- Issue Project
- Issue Sprints
- Tags
- Issue Time Tracking
- Issue VCS Changes and Pull Requests
- [Operations with Specific Issue VCS Changes and Pull Requests](operations-api-issues-issueID-vcsChanges.html)
- Issue Count
- Permissions
- Roles
- Saved Queries
- Search Suggestions
- Tags
- Users
- My User Profile
- Issue Work Items
- REST API Use Cases
- REST API Troubleshooting
- Color Indices List
- Hub REST API

1. YouTrack REST API
2. REST API Reference
3. Resources
4. Issues
5. [Sub-resources](#0)
6. Issue VCS Changes and Pull Requests
7. [Operations with Specific Issue VCS Changes and Pull Requests](#0)

# Operations with Specific Issue VCS Changes and Pull Requests﻿

Last modified: 08 May 2026

This resource lets you work with VCS changes and pull requests linked to an issue.

Use the `$type` field in the response to distinguish VCS changes from pull requests. For pull request-specific attributes, see the PullRequest entity.

| Resource | ``` /api/issues/{issueID}/vcsChanges/{changeID} ``` |
| Returned entity | VcsChange. For the description of the entity attributes, see [Supported Fields](/help/youtrack/devportal/operations-api-issues-issueID-vcsChanges.html#VcsChange-supported-fields) section. |
| Supported methods | - `GET`: [Issue VCS Changes and Pull Requests](/help/youtrack/devportal/operations-api-issues-issueID-vcsChanges.html#get-VcsChange-method). - `POST`: [Issue VCS Changes and Pull Requests](/help/youtrack/devportal/operations-api-issues-issueID-vcsChanges.html#update-VcsChange-method). - `DELETE`: [Issue VCS Changes and Pull Requests](/help/youtrack/devportal/operations-api-issues-issueID-vcsChanges.html#delete-VcsChange-method). |

## VcsChange attributes﻿

Represents a VCS change linked to an issue.

### Related Resources﻿

Below you can find the list of resources that let you work with this entity.

- Issue VCS Changes

### Attributes﻿

This table describes attributes of the `VcsChange` entity.

- To receive an attribute in the response from the server, specify it explicitly in the `fields` request parameter.
- To update an attribute, provide it in the body of a POST request.

| Field | Type | Description |
| --- | --- | --- |
| id | String | The database ID of the VCS change. `Read-only`. |
| date | DateTime | The date when the VCS change was committed to the repository. `Read-only`. |
| fetched | Long | The date when the VCS change was fetched from the repository to YouTrack. `Read-only`. `Can be null`. |
| files | Int | The number of files included into the VCS change. Equals -1 if the number of files is unknown. `Read-only`. |
| author | User | The author of the VCS change. `Read-only`. |
| processors | Array of ChangesProcessors | The list of version control systems that contain the VCS change. `Read-only`. |
| text | String | The commit message of the VCS change. `Read-only`. `Can be null`. |
| urls | Array of Strings | The list of links to the VCS change in the corresponding version control systems. The order is the same as in the `processors` attribute. `Read-only`. |
| version | String | The commit hash of the VCS change. `Can be null`. |
| issue | Issue | The YouTrack issue the VCS change is linked to. `Can be null`. |
| state | Byte | The code of the state of the VCS change. Here is the list of available state codes:   - 0 = default - 1 = attached manually - 2 = detached - 3 = legacy   The list of state codes may be extended in the future API versions. |

## Read a Specific VCS Change or Pull Request﻿

Read a VCS change or pull request with a specific ID.

### Required permissions﻿

Requires:

1. Read access to the issue.
2. Group membership in one of the groups in the "VCS changes visibility" setting in the VCS integration settings.

### Request syntax﻿

```
GET /api/issues/{issueID}/vcsChanges/{changeID}?{fields}
```

| {changeID} | The database ID of the VCS change or pull request. |

### Request parameters﻿

| Parameter | Type | Description |
| --- | --- | --- |
| fields | String | A list of VcsChange attributes that should be returned in the response. If no field is specified, only the `entityID` is returned. |

### Sample 1﻿

#### Sample request﻿

```
https://example.youtrack.cloud/api/issues/NP-5/vcsChanges/127-26?fields=id,date,fetched,files,author(login),text,urls,version,state
```

#### Sample response body﻿

```
{
  "version": "608e511cac30d0d6ec85fac6ae246ac88a16f2a1",
  "date": 1642067804000,
  "state": 1,
  "files": -1,
  "author": {
    "login": "john.smith",
    "$type": "User"
  },
  "fetched": 1642067825847,
  "text": "fix the bug",
  "id": "127-26",
  "$type": "VcsChange"
}
```

### Sample 2﻿

#### Sample request﻿

```
https://example.youtrack.cloud/api/issues/NP-5/vcsChanges/127-28?fields=id,idReadable,title,url,author(login),date,fetched,text,state(id),$type
```

#### Sample response body﻿

```
{
  "idReadable": "PR-12",
  "date": 1642067804000,
  "state": {
    "id": "OPEN",
    "$type": "PullRequestState"
  },
  "author": {
    "login": "john.smith",
    "$type": "User"
  },
  "fetched": 1642067825847,
  "title": "Fix NP-5",
  "url": "https://example.com/repository/pull/12",
  "text": "Fixes NP-5",
  "id": "127-28",
  "$type": "PullRequest"
}
```

## Update a Specific VcsChange﻿

Update an existing VCS change in the specific issue. You can only update the state of the change.

### Required permissions﻿

Requires Update Issue Private Fields permission.

### Request syntax﻿

```
POST /api/issues/{issueID}/vcsChanges/{changeID}?{fields}&{muteUpdateNotifications}
```

| {changeID} | The database ID of the VCS change. |

### Request parameters﻿

| Parameter | Type | Description |
| --- | --- | --- |
| fields | String | A list of VcsChange attributes that should be returned in the response. If no field is specified, only the `entityID` is returned. |
| muteUpdateNotifications | Boolean | Set this parameter to `true` if no notifications should be sent on changes made by this request. This doesn't mute notifications sent by any workflow rules. Using this parameter requires Apply Commands Silently permission in all projects affected by the request. Available since 2021.3. |

### Sample﻿

#### Sample request﻿

```
https://example.youtrack.cloud/api/issues/NP-5/vcsChanges/127-27?fields=id,date,fetched,author(login),text,version,state
```

#### Sample request body﻿

```
{"state": 2}
```

#### Sample response body﻿

```
{
  "version": "03e876865ba4388205ac11788c6595f5ba8387a4",
  "date": 1642167090000,
  "state": 2,
  "author": {
    "login": "jane.doe",
    "$type": "User"
  },
  "fetched": 1642167188839,
  "text": "fix the bug",
  "id": "127-27",
  "$type": "VcsChange"
}
```

## Delete a Specific VcsChange﻿

Detach the specific VCS change from the specific issue.

### Required permissions﻿

Requires Update Issue Private Fields permission.

### Request syntax﻿

```
DELETE /api/issues/{issueID}/vcsChanges/{changeID}
```

| {changeID} | The database ID of the VCS change. |

### Request parameters﻿

| Parameter | Type | Description |
| --- | --- | --- |
| fields | String | A list of VcsChange attributes that should be returned in the response. If no field is specified, only the `entityID` is returned. |

### Sample﻿

#### Sample request﻿

```
https://example.youtrack.cloud/api/issues/NP-5/vcsChanges/127-27
```

- [Operations with Specific Issue VCS Changes and Pull Requests](/help/youtrack/devportal/operations-api-issues-issueID-vcsChanges.html)
- [VcsChange attributes](/help/youtrack/devportal/operations-api-issues-issueID-vcsChanges.html#VcsChange-supported-fields)
- [Read a Specific VCS Change or Pull Request](/help/youtrack/devportal/operations-api-issues-issueID-vcsChanges.html#get-VcsChange-method)
- [Update a Specific VcsChange](/help/youtrack/devportal/operations-api-issues-issueID-vcsChanges.html#update-VcsChange-method)
- [Delete a Specific VcsChange](/help/youtrack/devportal/operations-api-issues-issueID-vcsChanges.html#delete-VcsChange-method)

Issue VCS Changes and Pull RequestsIssue Count

- Privacy & Security
- Terms Of Use
- Trademarks
- Legal

Copyright © 2000–2026 JetBrains s.r.o.
