Interface IIssueService
Reads and writes a team's issues on the Quilt4Net server.
public interface IIssueService
Remarks
Every call is scoped to the team owning the configured API key — there is no team argument,
because a team key cannot reach another team's issues. Reads need issue:read; writes need
issue:write, which is not granted by access level and must be added to the key explicitly.
Unlike IRemoteConfigurationService, these calls do not cache and do not fall back to a default on failure: a tracker read that silently returned stale or empty data would be indistinguishable from a team with no issues.
Methods
AddLinkAsync(int, AddIssueLinkRequest, CancellationToken)
Declares a dependency from one issue to another.
Task<IssueResponse> AddLinkAsync(int number, AddIssueLinkRequest request, CancellationToken cancellationToken = default)
Parameters
numberintThe issue the link leaves.
requestAddIssueLinkRequestWhat the link points at, what it asserts, and why.
cancellationTokenCancellationTokenCancellation token.
Returns
CreateAsync(CreateIssueRequest, CancellationToken)
Creates an issue and returns it, including its assigned number.
Task<IssueResponse> CreateAsync(CreateIssueRequest request, CancellationToken cancellationToken = default)
Parameters
requestCreateIssueRequestThe issue to create.
cancellationTokenCancellationTokenCancellation token.
Returns
DeleteAsync(int, CancellationToken)
Deletes an issue, and every link pointing at it. The number is not reused.
Task DeleteAsync(int number, CancellationToken cancellationToken = default)
Parameters
numberintThe issue to delete.
cancellationTokenCancellationTokenCancellation token.
Returns
GetAsync(int, CancellationToken)
Reads one issue by its per-team number, or null when no such issue exists.
Task<IssueResponse> GetAsync(int number, CancellationToken cancellationToken = default)
Parameters
numberintThe issue number.
cancellationTokenCancellationTokenCancellation token.
Returns
GetAsync(CancellationToken)
Lists every issue on the team.
Task<IssueResponse[]> GetAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
GetRoadmapAsync(CancellationToken)
Reads the roadmap projection — lanes, bands and edges, already laid out for drawing.
Task<RoadmapResponse> GetRoadmapAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
GetWorkflowAsync(CancellationToken)
Reads the team's workflow.
Task<IssueWorkflowResponse> GetWorkflowAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
RemoveLinkAsync(int, int, CancellationToken)
Removes a dependency.
Task<IssueResponse> RemoveLinkAsync(int number, int targetNumber, CancellationToken cancellationToken = default)
Parameters
numberintThe issue the link leaves.
targetNumberintThe issue the link points at.
cancellationTokenCancellationTokenCancellation token.
Returns
SetStateAsync(int, SetIssueStateRequest, CancellationToken)
Moves an issue to another state, if the team's workflow permits the transition.
Task<IssueResponse> SetStateAsync(int number, SetIssueStateRequest request, CancellationToken cancellationToken = default)
Parameters
numberintThe issue to move.
requestSetIssueStateRequestThe state to move to.
cancellationTokenCancellationTokenCancellation token.
Returns
SetWorkflowAsync(SetIssueWorkflowRequest, CancellationToken)
Replaces the team's workflow. Rejected when the replacement would orphan issues that are in a state it no longer defines.
Task<IssueWorkflowResponse> SetWorkflowAsync(SetIssueWorkflowRequest request, CancellationToken cancellationToken = default)
Parameters
requestSetIssueWorkflowRequestThe workflow to install.
cancellationTokenCancellationTokenCancellation token.
Returns
UpdateAsync(int, UpdateIssueRequest, CancellationToken)
Replaces an issue's editable fields. See UpdateIssueRequest — this is a replace, so send the whole issue back rather than only what changed.
Task<IssueResponse> UpdateAsync(int number, UpdateIssueRequest request, CancellationToken cancellationToken = default)
Parameters
numberintThe issue to update.
requestUpdateIssueRequestThe replacement values.
cancellationTokenCancellationTokenCancellation token.