naftiko: 1.0.0-alpha2 info: label: GitLab API — issues description: 'GitLab API — issues. 15 operations. Lead operation: Add spent time for a issue. Self-contained Naftiko capability covering one Gitlab Ci business surface.' tags: - Gitlab Ci - issues created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: GITLAB_CI_API_KEY: GITLAB_CI_API_KEY capability: consumes: - type: http namespace: gitlab-ci-issues baseUri: https://gitlab.com description: GitLab API — issues business capability. Self-contained, no shared references. resources: - name: api-v4-issues path: /api/v4/issues operations: - name: getapiv4issues method: GET description: Get currently authenticated user's issues outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: with_labels_details in: query type: boolean description: Return titles of labels and other details - name: state in: query type: string description: Return opened, closed, or all issues - name: closed_by_id in: query type: integer description: Return issues which were closed by the user with the given ID. - name: order_by in: query type: string description: Return issues ordered by `created_at`, `due_date`, `label_priority`, `milestone_due`, `popularity`, `priority`, `relative_position`, `title`, or `updated_at` fi - name: sort in: query type: string description: Return issues sorted in `asc` or `desc` order. - name: due_date in: query type: string description: 'Return issues that have no due date (`0`), or whose due date is this week, this month, between two weeks ago and next month, or which are overdue. Accepts: `ove' - name: issue_type in: query type: string description: 'The type of the issue. Accepts: issue, incident, test_case, requirement, task, ticket' - name: labels in: query type: array description: Comma-separated list of label names - name: milestone in: query type: string description: Milestone title - name: milestone_id in: query type: string description: Return issues assigned to milestones with the specified timebox value ("Any", "None", "Upcoming" or "Started") - name: iids in: query type: array description: The IID array of issues - name: search in: query type: string description: Search issues for text present in the title, description, or any combination of these - name: in in: query type: string description: '`title`, `description`, or a string joining them with comma' - name: author_id in: query type: integer description: Return issues which are authored by the user with the given ID - name: author_username in: query type: string description: Return issues which are authored by the user with the given username - name: assignee_id in: query type: integer description: Return issues which are assigned to the user with the given ID - name: assignee_username in: query type: array description: Return issues which are assigned to the user with the given username - name: created_after in: query type: string description: Return issues created after the specified time - name: created_before in: query type: string description: Return issues created before the specified time - name: updated_after in: query type: string description: Return issues updated after the specified time - name: updated_before in: query type: string description: Return issues updated before the specified time - name: not[labels] in: query type: array description: Comma-separated list of label names - name: not[milestone] in: query type: string description: Milestone title - name: not[milestone_id] in: query type: string description: Return issues assigned to milestones without the specified timebox value ("Any", "None", "Upcoming" or "Started") - name: not[iids] in: query type: array description: The IID array of issues - name: not[author_id] in: query type: integer description: Return issues which are not authored by the user with the given ID - name: not[author_username] in: query type: string description: Return issues which are not authored by the user with the given username - name: not[assignee_id] in: query type: integer description: Return issues which are not assigned to the user with the given ID - name: not[assignee_username] in: query type: array description: Return issues which are not assigned to the user with the given username - name: not[weight] in: query type: integer description: Return issues without the specified weight - name: not[iteration_id] in: query type: integer description: Return issues which are not assigned to the iteration with the given ID - name: not[iteration_title] in: query type: string description: Return issues which are not assigned to the iteration with the given title - name: scope in: query type: string description: 'Return issues for the given scope: `created_by_me`, `assigned_to_me` or `all`' - name: my_reaction_emoji in: query type: string description: Return issues reacted by the authenticated user by the given emoji - name: confidential in: query type: boolean description: Filter confidential or public issues - name: weight in: query type: integer description: The weight of the issue - name: epic_id in: query type: integer description: The ID of an epic associated with the issues - name: health_status in: query type: string description: 'The health status of the issue. Must be one of: on_track, needs_attention, at_risk, none, any' - name: iteration_id in: query type: integer description: Return issues which are assigned to the iteration with the given ID - name: iteration_title in: query type: string description: Return issues which are assigned to the iteration with the given title - name: page in: query type: integer description: Current page number - name: per_page in: query type: integer description: Number of items per page - name: non_archived in: query type: boolean description: Return issues from non archived projects - name: api-v4-issues-id path: /api/v4/issues/{id} operations: - name: getapiv4issuesid method: GET description: Get specified issue (admin only) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID of the Issue required: true - name: api-v4-issues_statistics path: /api/v4/issues_statistics operations: - name: getapiv4issuesstatistics method: GET description: Get currently authenticated user's issues statistics outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: labels in: query type: array description: Comma-separated list of label names - name: milestone in: query type: string description: Milestone title - name: milestone_id in: query type: string description: Return issues assigned to milestones with the specified timebox value ("Any", "None", "Upcoming" or "Started") - name: iids in: query type: array description: The IID array of issues - name: search in: query type: string description: Search issues for text present in the title, description, or any combination of these - name: in in: query type: string description: '`title`, `description`, or a string joining them with comma' - name: author_id in: query type: integer description: Return issues which are authored by the user with the given ID - name: author_username in: query type: string description: Return issues which are authored by the user with the given username - name: assignee_id in: query type: integer description: Return issues which are assigned to the user with the given ID - name: assignee_username in: query type: array description: Return issues which are assigned to the user with the given username - name: created_after in: query type: string description: Return issues created after the specified time - name: created_before in: query type: string description: Return issues created before the specified time - name: updated_after in: query type: string description: Return issues updated after the specified time - name: updated_before in: query type: string description: Return issues updated before the specified time - name: not[labels] in: query type: array description: Comma-separated list of label names - name: not[milestone] in: query type: string description: Milestone title - name: not[milestone_id] in: query type: string description: Return issues assigned to milestones without the specified timebox value ("Any", "None", "Upcoming" or "Started") - name: not[iids] in: query type: array description: The IID array of issues - name: not[author_id] in: query type: integer description: Return issues which are not authored by the user with the given ID - name: not[author_username] in: query type: string description: Return issues which are not authored by the user with the given username - name: not[assignee_id] in: query type: integer description: Return issues which are not assigned to the user with the given ID - name: not[assignee_username] in: query type: array description: Return issues which are not assigned to the user with the given username - name: not[weight] in: query type: integer description: Return issues without the specified weight - name: not[iteration_id] in: query type: integer description: Return issues which are not assigned to the iteration with the given ID - name: not[iteration_title] in: query type: string description: Return issues which are not assigned to the iteration with the given title - name: scope in: query type: string description: 'Return issues for the given scope: `created_by_me`, `assigned_to_me` or `all`' - name: my_reaction_emoji in: query type: string description: Return issues reacted by the authenticated user by the given emoji - name: confidential in: query type: boolean description: Filter confidential or public issues - name: weight in: query type: integer description: The weight of the issue - name: epic_id in: query type: integer description: The ID of an epic associated with the issues - name: health_status in: query type: string description: 'The health status of the issue. Must be one of: on_track, needs_attention, at_risk, none, any' - name: iteration_id in: query type: integer description: Return issues which are assigned to the iteration with the given ID - name: iteration_title in: query type: string description: Return issues which are assigned to the iteration with the given title - name: api-v4-projects-id-issues-issue_iid-add_spent_time path: /api/v4/projects/{id}/issues/{issue_iid}/add_spent_time operations: - name: postapiv4projectsidissuesissueiidaddspenttime method: POST description: Add spent time for a issue outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project required: true - name: issue_iid in: path type: integer description: The internal ID of the issue. required: true - name: postApiV4ProjectsIdIssuesIssueIidAddSpentTime in: body type: string required: true - name: api-v4-projects-id-issues-issue_iid-links path: /api/v4/projects/{id}/issues/{issue_iid}/links operations: - name: getapiv4projectsidissuesissueiidlinks method: GET description: List issue relations outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project owned by the authenticated user required: true - name: issue_iid in: path type: integer description: The internal ID of a project’s issue required: true - name: postapiv4projectsidissuesissueiidlinks method: POST description: Create an issue link outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project owned by the authenticated user required: true - name: issue_iid in: path type: integer description: The internal ID of a project’s issue required: true - name: postApiV4ProjectsIdIssuesIssueIidLinks in: body type: string required: true - name: api-v4-projects-id-issues-issue_iid-links-issue_link_id path: /api/v4/projects/{id}/issues/{issue_iid}/links/{issue_link_id} operations: - name: getapiv4projectsidissuesissueiidlinksissuelinkid method: GET description: Get an issue link outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project owned by the authenticated user required: true - name: issue_iid in: path type: integer description: The internal ID of a project’s issue required: true - name: issue_link_id in: path type: string description: ID of an issue relationship required: true - name: deleteapiv4projectsidissuesissueiidlinksissuelinkid method: DELETE description: Delete an issue link outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project owned by the authenticated user required: true - name: issue_iid in: path type: integer description: The internal ID of a project’s issue required: true - name: issue_link_id in: path type: string description: The ID of an issue relationship required: true - name: api-v4-projects-id-issues-issue_iid-participants path: /api/v4/projects/{id}/issues/{issue_iid}/participants operations: - name: getapiv4projectsidissuesissueiidparticipants method: GET description: List participants for an issue outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project required: true - name: issue_iid in: path type: integer description: The internal ID of a project issue required: true - name: api-v4-projects-id-issues-issue_iid-related_merge_requests path: /api/v4/projects/{id}/issues/{issue_iid}/related_merge_requests operations: - name: getapiv4projectsidissuesissueiidrelatedmergerequests method: GET description: List merge requests that are related to the issue outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project required: true - name: issue_iid in: path type: integer description: The internal ID of a project issue required: true - name: api-v4-projects-id-issues-issue_iid-reset_spent_time path: /api/v4/projects/{id}/issues/{issue_iid}/reset_spent_time operations: - name: postapiv4projectsidissuesissueiidresetspenttime method: POST description: Reset spent time for a issue outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project required: true - name: issue_iid in: path type: integer description: The internal ID of the issue required: true - name: api-v4-projects-id-issues-issue_iid-reset_time_estimate path: /api/v4/projects/{id}/issues/{issue_iid}/reset_time_estimate operations: - name: postapiv4projectsidissuesissueiidresettimeestimate method: POST description: Reset the time estimate for a project issue outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project required: true - name: issue_iid in: path type: integer description: The internal ID of the issue. required: true - name: api-v4-projects-id-issues-issue_iid-time_estimate path: /api/v4/projects/{id}/issues/{issue_iid}/time_estimate operations: - name: postapiv4projectsidissuesissueiidtimeestimate method: POST description: Set a time estimate for a issue outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project required: true - name: issue_iid in: path type: integer description: The internal ID of the issue. required: true - name: postApiV4ProjectsIdIssuesIssueIidTimeEstimate in: body type: string required: true - name: api-v4-projects-id-issues-issue_iid-time_stats path: /api/v4/projects/{id}/issues/{issue_iid}/time_stats operations: - name: getapiv4projectsidissuesissueiidtimestats method: GET description: Get time tracking stats outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project required: true - name: issue_iid in: path type: integer description: The internal ID of the issue required: true - name: api-v4-projects-id-issues-issue_iid-user_agent_detail path: /api/v4/projects/{id}/issues/{issue_iid}/user_agent_detail operations: - name: getapiv4projectsidissuesissueiiduseragentdetail method: GET description: Get the user agent details for an issue outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The ID or URL-encoded path of the project required: true - name: issue_iid in: path type: integer description: The internal ID of a project issue required: true exposes: - type: rest namespace: gitlab-ci-issues-rest port: 8080 description: REST adapter for GitLab API — issues. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/v4/issues name: api-v4-issues description: REST surface for api-v4-issues. operations: - method: GET name: getapiv4issues description: Get currently authenticated user's issues call: gitlab-ci-issues.getapiv4issues with: with_labels_details: rest.with_labels_details state: rest.state closed_by_id: rest.closed_by_id order_by: rest.order_by sort: rest.sort due_date: rest.due_date issue_type: rest.issue_type labels: rest.labels milestone: rest.milestone milestone_id: rest.milestone_id iids: rest.iids search: rest.search in: rest.in author_id: rest.author_id author_username: rest.author_username assignee_id: rest.assignee_id assignee_username: rest.assignee_username created_after: rest.created_after created_before: rest.created_before updated_after: rest.updated_after updated_before: rest.updated_before not[labels]: rest.not[labels] not[milestone]: rest.not[milestone] not[milestone_id]: rest.not[milestone_id] not[iids]: rest.not[iids] not[author_id]: rest.not[author_id] not[author_username]: rest.not[author_username] not[assignee_id]: rest.not[assignee_id] not[assignee_username]: rest.not[assignee_username] not[weight]: rest.not[weight] not[iteration_id]: rest.not[iteration_id] not[iteration_title]: rest.not[iteration_title] scope: rest.scope my_reaction_emoji: rest.my_reaction_emoji confidential: rest.confidential weight: rest.weight epic_id: rest.epic_id health_status: rest.health_status iteration_id: rest.iteration_id iteration_title: rest.iteration_title page: rest.page per_page: rest.per_page non_archived: rest.non_archived outputParameters: - type: object mapping: $. - path: /v1/api/v4/issues/{id} name: api-v4-issues-id description: REST surface for api-v4-issues-id. operations: - method: GET name: getapiv4issuesid description: Get specified issue (admin only) call: gitlab-ci-issues.getapiv4issuesid with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/api/v4/issues-statistics name: api-v4-issues-statistics description: REST surface for api-v4-issues_statistics. operations: - method: GET name: getapiv4issuesstatistics description: Get currently authenticated user's issues statistics call: gitlab-ci-issues.getapiv4issuesstatistics with: labels: rest.labels milestone: rest.milestone milestone_id: rest.milestone_id iids: rest.iids search: rest.search in: rest.in author_id: rest.author_id author_username: rest.author_username assignee_id: rest.assignee_id assignee_username: rest.assignee_username created_after: rest.created_after created_before: rest.created_before updated_after: rest.updated_after updated_before: rest.updated_before not[labels]: rest.not[labels] not[milestone]: rest.not[milestone] not[milestone_id]: rest.not[milestone_id] not[iids]: rest.not[iids] not[author_id]: rest.not[author_id] not[author_username]: rest.not[author_username] not[assignee_id]: rest.not[assignee_id] not[assignee_username]: rest.not[assignee_username] not[weight]: rest.not[weight] not[iteration_id]: rest.not[iteration_id] not[iteration_title]: rest.not[iteration_title] scope: rest.scope my_reaction_emoji: rest.my_reaction_emoji confidential: rest.confidential weight: rest.weight epic_id: rest.epic_id health_status: rest.health_status iteration_id: rest.iteration_id iteration_title: rest.iteration_title outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/issues/{issue-iid}/add-spent-time name: api-v4-projects-id-issues-issue-iid-add-spent-time description: REST surface for api-v4-projects-id-issues-issue_iid-add_spent_time. operations: - method: POST name: postapiv4projectsidissuesissueiidaddspenttime description: Add spent time for a issue call: gitlab-ci-issues.postapiv4projectsidissuesissueiidaddspenttime with: id: rest.id issue_iid: rest.issue_iid postApiV4ProjectsIdIssuesIssueIidAddSpentTime: rest.postApiV4ProjectsIdIssuesIssueIidAddSpentTime outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/issues/{issue-iid}/links name: api-v4-projects-id-issues-issue-iid-links description: REST surface for api-v4-projects-id-issues-issue_iid-links. operations: - method: GET name: getapiv4projectsidissuesissueiidlinks description: List issue relations call: gitlab-ci-issues.getapiv4projectsidissuesissueiidlinks with: id: rest.id issue_iid: rest.issue_iid outputParameters: - type: object mapping: $. - method: POST name: postapiv4projectsidissuesissueiidlinks description: Create an issue link call: gitlab-ci-issues.postapiv4projectsidissuesissueiidlinks with: id: rest.id issue_iid: rest.issue_iid postApiV4ProjectsIdIssuesIssueIidLinks: rest.postApiV4ProjectsIdIssuesIssueIidLinks outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/issues/{issue-iid}/links/{issue-link-id} name: api-v4-projects-id-issues-issue-iid-links-issue-link-id description: REST surface for api-v4-projects-id-issues-issue_iid-links-issue_link_id. operations: - method: GET name: getapiv4projectsidissuesissueiidlinksissuelinkid description: Get an issue link call: gitlab-ci-issues.getapiv4projectsidissuesissueiidlinksissuelinkid with: id: rest.id issue_iid: rest.issue_iid issue_link_id: rest.issue_link_id outputParameters: - type: object mapping: $. - method: DELETE name: deleteapiv4projectsidissuesissueiidlinksissuelinkid description: Delete an issue link call: gitlab-ci-issues.deleteapiv4projectsidissuesissueiidlinksissuelinkid with: id: rest.id issue_iid: rest.issue_iid issue_link_id: rest.issue_link_id outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/issues/{issue-iid}/participants name: api-v4-projects-id-issues-issue-iid-participants description: REST surface for api-v4-projects-id-issues-issue_iid-participants. operations: - method: GET name: getapiv4projectsidissuesissueiidparticipants description: List participants for an issue call: gitlab-ci-issues.getapiv4projectsidissuesissueiidparticipants with: id: rest.id issue_iid: rest.issue_iid outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/issues/{issue-iid}/related-merge-requests name: api-v4-projects-id-issues-issue-iid-related-merge-requests description: REST surface for api-v4-projects-id-issues-issue_iid-related_merge_requests. operations: - method: GET name: getapiv4projectsidissuesissueiidrelatedmergerequests description: List merge requests that are related to the issue call: gitlab-ci-issues.getapiv4projectsidissuesissueiidrelatedmergerequests with: id: rest.id issue_iid: rest.issue_iid outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/issues/{issue-iid}/reset-spent-time name: api-v4-projects-id-issues-issue-iid-reset-spent-time description: REST surface for api-v4-projects-id-issues-issue_iid-reset_spent_time. operations: - method: POST name: postapiv4projectsidissuesissueiidresetspenttime description: Reset spent time for a issue call: gitlab-ci-issues.postapiv4projectsidissuesissueiidresetspenttime with: id: rest.id issue_iid: rest.issue_iid outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/issues/{issue-iid}/reset-time-estimate name: api-v4-projects-id-issues-issue-iid-reset-time-estimate description: REST surface for api-v4-projects-id-issues-issue_iid-reset_time_estimate. operations: - method: POST name: postapiv4projectsidissuesissueiidresettimeestimate description: Reset the time estimate for a project issue call: gitlab-ci-issues.postapiv4projectsidissuesissueiidresettimeestimate with: id: rest.id issue_iid: rest.issue_iid outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/issues/{issue-iid}/time-estimate name: api-v4-projects-id-issues-issue-iid-time-estimate description: REST surface for api-v4-projects-id-issues-issue_iid-time_estimate. operations: - method: POST name: postapiv4projectsidissuesissueiidtimeestimate description: Set a time estimate for a issue call: gitlab-ci-issues.postapiv4projectsidissuesissueiidtimeestimate with: id: rest.id issue_iid: rest.issue_iid postApiV4ProjectsIdIssuesIssueIidTimeEstimate: rest.postApiV4ProjectsIdIssuesIssueIidTimeEstimate outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/issues/{issue-iid}/time-stats name: api-v4-projects-id-issues-issue-iid-time-stats description: REST surface for api-v4-projects-id-issues-issue_iid-time_stats. operations: - method: GET name: getapiv4projectsidissuesissueiidtimestats description: Get time tracking stats call: gitlab-ci-issues.getapiv4projectsidissuesissueiidtimestats with: id: rest.id issue_iid: rest.issue_iid outputParameters: - type: object mapping: $. - path: /v1/api/v4/projects/{id}/issues/{issue-iid}/user-agent-detail name: api-v4-projects-id-issues-issue-iid-user-agent-detail description: REST surface for api-v4-projects-id-issues-issue_iid-user_agent_detail. operations: - method: GET name: getapiv4projectsidissuesissueiiduseragentdetail description: Get the user agent details for an issue call: gitlab-ci-issues.getapiv4projectsidissuesissueiiduseragentdetail with: id: rest.id issue_iid: rest.issue_iid outputParameters: - type: object mapping: $. - type: mcp namespace: gitlab-ci-issues-mcp port: 9090 transport: http description: MCP adapter for GitLab API — issues. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-currently-authenticated-user-s-issues description: Get currently authenticated user's issues hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-issues.getapiv4issues with: with_labels_details: tools.with_labels_details state: tools.state closed_by_id: tools.closed_by_id order_by: tools.order_by sort: tools.sort due_date: tools.due_date issue_type: tools.issue_type labels: tools.labels milestone: tools.milestone milestone_id: tools.milestone_id iids: tools.iids search: tools.search in: tools.in author_id: tools.author_id author_username: tools.author_username assignee_id: tools.assignee_id assignee_username: tools.assignee_username created_after: tools.created_after created_before: tools.created_before updated_after: tools.updated_after updated_before: tools.updated_before not[labels]: tools.not[labels] not[milestone]: tools.not[milestone] not[milestone_id]: tools.not[milestone_id] not[iids]: tools.not[iids] not[author_id]: tools.not[author_id] not[author_username]: tools.not[author_username] not[assignee_id]: tools.not[assignee_id] not[assignee_username]: tools.not[assignee_username] not[weight]: tools.not[weight] not[iteration_id]: tools.not[iteration_id] not[iteration_title]: tools.not[iteration_title] scope: tools.scope my_reaction_emoji: tools.my_reaction_emoji confidential: tools.confidential weight: tools.weight epic_id: tools.epic_id health_status: tools.health_status iteration_id: tools.iteration_id iteration_title: tools.iteration_title page: tools.page per_page: tools.per_page non_archived: tools.non_archived outputParameters: - type: object mapping: $. - name: get-specified-issue-admin-only description: Get specified issue (admin only) hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-issues.getapiv4issuesid with: id: tools.id outputParameters: - type: object mapping: $. - name: get-currently-authenticated-user-s-issues-2 description: Get currently authenticated user's issues statistics hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-issues.getapiv4issuesstatistics with: labels: tools.labels milestone: tools.milestone milestone_id: tools.milestone_id iids: tools.iids search: tools.search in: tools.in author_id: tools.author_id author_username: tools.author_username assignee_id: tools.assignee_id assignee_username: tools.assignee_username created_after: tools.created_after created_before: tools.created_before updated_after: tools.updated_after updated_before: tools.updated_before not[labels]: tools.not[labels] not[milestone]: tools.not[milestone] not[milestone_id]: tools.not[milestone_id] not[iids]: tools.not[iids] not[author_id]: tools.not[author_id] not[author_username]: tools.not[author_username] not[assignee_id]: tools.not[assignee_id] not[assignee_username]: tools.not[assignee_username] not[weight]: tools.not[weight] not[iteration_id]: tools.not[iteration_id] not[iteration_title]: tools.not[iteration_title] scope: tools.scope my_reaction_emoji: tools.my_reaction_emoji confidential: tools.confidential weight: tools.weight epic_id: tools.epic_id health_status: tools.health_status iteration_id: tools.iteration_id iteration_title: tools.iteration_title outputParameters: - type: object mapping: $. - name: add-spent-time-issue description: Add spent time for a issue hints: readOnly: false destructive: false idempotent: false call: gitlab-ci-issues.postapiv4projectsidissuesissueiidaddspenttime with: id: tools.id issue_iid: tools.issue_iid postApiV4ProjectsIdIssuesIssueIidAddSpentTime: tools.postApiV4ProjectsIdIssuesIssueIidAddSpentTime outputParameters: - type: object mapping: $. - name: list-issue-relations description: List issue relations hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-issues.getapiv4projectsidissuesissueiidlinks with: id: tools.id issue_iid: tools.issue_iid outputParameters: - type: object mapping: $. - name: create-issue-link description: Create an issue link hints: readOnly: false destructive: false idempotent: false call: gitlab-ci-issues.postapiv4projectsidissuesissueiidlinks with: id: tools.id issue_iid: tools.issue_iid postApiV4ProjectsIdIssuesIssueIidLinks: tools.postApiV4ProjectsIdIssuesIssueIidLinks outputParameters: - type: object mapping: $. - name: get-issue-link description: Get an issue link hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-issues.getapiv4projectsidissuesissueiidlinksissuelinkid with: id: tools.id issue_iid: tools.issue_iid issue_link_id: tools.issue_link_id outputParameters: - type: object mapping: $. - name: delete-issue-link description: Delete an issue link hints: readOnly: false destructive: true idempotent: true call: gitlab-ci-issues.deleteapiv4projectsidissuesissueiidlinksissuelinkid with: id: tools.id issue_iid: tools.issue_iid issue_link_id: tools.issue_link_id outputParameters: - type: object mapping: $. - name: list-participants-issue description: List participants for an issue hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-issues.getapiv4projectsidissuesissueiidparticipants with: id: tools.id issue_iid: tools.issue_iid outputParameters: - type: object mapping: $. - name: list-merge-requests-that-are description: List merge requests that are related to the issue hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-issues.getapiv4projectsidissuesissueiidrelatedmergerequests with: id: tools.id issue_iid: tools.issue_iid outputParameters: - type: object mapping: $. - name: reset-spent-time-issue description: Reset spent time for a issue hints: readOnly: false destructive: false idempotent: false call: gitlab-ci-issues.postapiv4projectsidissuesissueiidresetspenttime with: id: tools.id issue_iid: tools.issue_iid outputParameters: - type: object mapping: $. - name: reset-time-estimate-project-issue description: Reset the time estimate for a project issue hints: readOnly: false destructive: false idempotent: false call: gitlab-ci-issues.postapiv4projectsidissuesissueiidresettimeestimate with: id: tools.id issue_iid: tools.issue_iid outputParameters: - type: object mapping: $. - name: set-time-estimate-issue description: Set a time estimate for a issue hints: readOnly: false destructive: false idempotent: false call: gitlab-ci-issues.postapiv4projectsidissuesissueiidtimeestimate with: id: tools.id issue_iid: tools.issue_iid postApiV4ProjectsIdIssuesIssueIidTimeEstimate: tools.postApiV4ProjectsIdIssuesIssueIidTimeEstimate outputParameters: - type: object mapping: $. - name: get-time-tracking-stats description: Get time tracking stats hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-issues.getapiv4projectsidissuesissueiidtimestats with: id: tools.id issue_iid: tools.issue_iid outputParameters: - type: object mapping: $. - name: get-user-agent-details-issue description: Get the user agent details for an issue hints: readOnly: true destructive: false idempotent: true call: gitlab-ci-issues.getapiv4projectsidissuesissueiiduseragentdetail with: id: tools.id issue_iid: tools.issue_iid outputParameters: - type: object mapping: $.