PackageTrack
Sign in Get early access

gitlab

Gitlab API client.

0.1902.0 4.3M downloads/mo #4861 most downloaded on crates.io source

What this package is like to depend on

Last release 1 months ago

23 Jul 2026

Ships fairly regularly

a new release about every 4 weeks

Most releases are documented

notes for 103 of 162 stable releases

1 version withdrawn

withdrawn after publishing

11 years old

163 releases · first in 2016

13 releases in the last 12 months

see the full history below

Release timeline

163 releases · Jan 2016 to Jul 2026
2017 2018 2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 60 of 163
  1. 0.1902.0 23 Jul 2026
    Release notes

    Additions

    • Add api::users::BlockUser to block a user.
    Open source →
  2. 0.1901.0 29 Jun 2026
    Release notes
    • No changes needed for GitLab 19.1.
    Open source →
  3. 0.1900.1 08 Jun 2026
    Release notes

    Additions

    • Add api::params::MultipartBuilder to support building multi-part bodies.
    • Add api::common:SecretStr to support masking secrets from Debug impls.
    • Add api::projects::import::ImportStatus to check the import status of a project.
    • Add api::projects::import::RemoteImport to import a project from a remote URL.
    • Add api::projects::import::RemoteImportS3 to import a project from an AWS S3 bucket.
    • Add api::projects::import::ImportProject to import a project from a local archive file.
    • Add api::projects::export::ScheduleExport to schedule a project export.
    • Add api::projects::export::ExportStatus to check the status of a project export.
    • Add api::projects::export::DownloadExport to download a completed project export archive.
    • Add api::projects::merge_requests::MergeRequestReviewers
    • For api::projects::merge_requests, the following endpoints:
      • BlockMergeRequest
      • MergeRequestBlockees
      • MergeRequestBlocks
      • UnblockMergeRequest
    Open source →
  4. 0.1900.0 29 May 2026
    Release notes

    Additions

    • Add api::events::Events, api::events::UserEvents, and api::events::ProjectEvents.
    • For api::groups, api::projects, and api::users, the following endpoints:
      • custom_attributes::CustomAttributes
      • custom_attributes::CustomAttribute
      • custom_attributes::EditCustomAttribute
      • custom_attributes::DeleteCustomAttribute
    Open source →
  5. 0.1811.0 23 Apr 2026
    Release notes
    • No changes needed for GitLab 18.11.
    Open source →
  6. 0.1810.0 24 Mar 2026
    Release notes

    Additions

    • Add api::users::DeleteUser.
    Open source →
  7. 0.1809.0 24 Feb 2026
    Release notes

    Additions

    • Merge request endpoints may now query with the ReviewsForMe scope (new in GitLab 18.4).
    • Issue links may now be queried with api::projects::issues::links::IssueLinks and api::projects::issues::links::IssueLink.
    • Issue links may now be deleted with api::projects::issues::links::DeleteIssueLink.
    • Issue links may now be created with api::projects::issues::links::CreateIssueLink.
    • Add api::issues::Issues::milestone.

    Deprecations

    • Use milestone instead of milestone_id on api::issues::Issues.

    Breaking Changes

    • Update reqwest dependency to 0.13, which now uses rustls with rustls-platform-verifier by default.

    Changes

    • Update certificate handling methods to use new tls_ prefixed methods (tls_danger_accept_invalid_certs, tls_certs_merge).
    Open source →
  8. 0.1808.0 22 Jan 2026
    Release notes

    Additions

    • api::groups::issues::Issues::epic_id now supports direct ID parameters.
    • Add api::issues::Issues to search for issues instance-wide.
    • Add api::projects::repository::commits::CherryPick endpoint
    Open source →
  9. 0.1807.0 07 Jan 2026
    Release notes

    Additions

    • Add api::projects::releases::ProjectReleaseByTag to get a release by tag
    Open source →
  10. 0.1806.0 26 Nov 2025
    Release notes

    Additions

    • Add gitlab::Gitlab::new_custom_root_certs method
    • api::projects::registry::Repositories now supports the tags and tags_count parameters.
    • Add api::projects::registry::repositories::tags::DeleteRepositoryTags to delete container repository tags.
    • Add api::registry::repository::RepositoryDetails endpoint.
    • Support the ci_push_repository_for_job_token_allowed parameter when editing a project.
    Open source →
  11. 0.1805.0 05 Nov 2025
    Release notes

    Additions

    • Add missing api::projects::jobs::JobScope variants: Preparing, Canceling, and Scheduled to support all job status values documented in the GitLab Jobs API.
    Open source →
  12. 0.1804.0 25 Sep 2025
    Release notes
    • Removal of deprecated symbols:
      • api::groups::CreateGroup::default_branch_protection
      • api::groups::EditGroup::default_branch_protection
    Open source →
  13. 0.1803.0 01 Sep 2025
    Release notes
    • No changes needed for GitLab 18.3.
    Open source →
  14. 0.1802.1 24 Aug 2025
    Release notes

    Breaking changes

    • Removal of long-deprecated symbols:
      • api::error::ApiError<E>::Gitlab
      • api::error::ApiError<E>::GitlabObject
      • api::error::ApiError<E>::GitlabUnrecognized
      • api::issues::GroupIssues::without_milestone
      • api::issues::GroupIssues::any_milestone
      • api::issues::GroupIssues::milestone
      • All specific hook type specifications.
      • api::projects::merge_requests::MergeRequestSearchScope

    Deprecations

    • Deprecation of ProjectAccessTokensBuilder::description. This parameter does not actually exist.

    Additions

    • Responses from GitLab now log the X-Request-Id response header at the debug level. See
    • Add api::projects::StarProject, api::projects::UnstarProject, and api::projects::Starrers endpoints.
    • Add api::projects::artifacts::DeleteProjectArtifacts endpoint.
    • Add api::projects::jobs::artifacts::DeleteJobArtifacts endpoint.
    • Add api::projects::jobs::artifacts::KeepJobArtifacts endpoint.
    • Add api::projects::jobs::artifacts::DownloadJobArtifacts endpoint.
    • Add api::projects::jobs::artifacts::DownloadRefJobArtifacts endpoint.
    • Add api::projects::jobs::artifacts::DownloadJobArtifactFile endpoint.
    • Add api::projects::jobs::artifacts::DownloadRefJobArtifactFile endpoint.
    Open source →
  15. 0.1802.0 22 Jul 2025
    Release notes
    • No changes needed for GitLab 18.2.
    Open source →
  16. 0.1801.0 24 Jun 2025
    Release notes
    • No changes needed for GitLab 18.1.
    Open source →
  17. 0.1800.0 29 May 2025
    Release notes

    Breaking changes

    • api::projects::JobScope no longer impl Hash; instead it has PartialOrd and Ord implementations.
    • api::users::ImpersonationTokenScope no longer impl Hash; instead it has PartialOrd and Ord implementations.

    Deprecations

    • String representations of api::projects::labels::LabelColor are deprecated. They may still be passed to methods, but there is no way to trigger a diagnostic.

    Additions

    • Support for sorting project lists by StarCount.
    • Support member_role_id when sharing groups via api::groups::ShareGroup.
    • Support default_branch, enabled_git_access_protocol, organization_id, duo_availability, and experiment_features_enabled when creating groups via api::groups::CreateGroup.
    • Support default_branch, enabled_git_access_protocol, allowed_email_domains_list, duo_availability, experiment_features_enabled, math_rendering_limits_enabled, lock_math_rendering_limits_enabled, duo_features_enabled, and max_artifacts_size when editing groups via api::groups::EditGroup.
    • Support visibility and marked_for_deletion_on when listing groups via api::groups::Groups.
    • Support masked_and_hidden when creating group variables via api::groups::variables::CreateGroupVariable.
    • Support masked_and_hidden when updating group variables via api::groups::variables::UpdateGroupVariable.
    • Support description when creating project access tokens via api::projects::access_tokens::CreateProjectAccessToken.
    • Support created_after, created_before, last_used_after, last_used_before, revoked, search, state, description, order_by, and sort when listing project access tokens via api::projects::access_tokens::ProjectAccessTokens.
    • Support full_path and permanently_remove when deleting projects via api::projects::DeleteProject.
    • Support merge_after when creating merge requests via api::projects::merge_requests::CreateMergeRequest.
    • Support merge_after when editing merge requests via api::projects::merge_requests::EditMergeRequest.
    • Support name when querying pipelines via api::projects::pipelines::Pipelines.
    • Support masked_and_hidden when creating project variables via api::projects::variables::CreateProjectVariable.
    • Support masked_and_hidden when updating project variables via api::projects::variables::UpdateProjectVariable.
    • Support description when creating personal access tokens via api::users::personal_access_tokens::CreatePersonalAccessToken.
    • Support description when creating personal access tokens for a user via api::users::personal_access_tokens::CreatePersonalAccessTokenForUser.
    • Support description when creating impersonation tokens via api::users::impersonation_tokens::CreateImpersonationToken.
    • Support name, description, branch_filter_strategy, feature_flag_events, resource_access_token_events, custom_webhook_template, and custom_headers when creating or editing project and group hooks via api::projects::hooks::CreateHook, api::projects::hooks::EditHook, api::groups::hooks::CreateHook, and api::groups::hooks::EditHook.
    • Support filtering issues by Task type via api::issues::IssueType.
    • Add a IssueMilestone::named constructor to ease usage of non-Cow values.
    • Support filtering packages by Deprecated status via api::packages::PackageStatus.
    • Support marked_for_deletion_on when listing projects via api::projects::Projects.
    • Support pipeline_id, order_by, and sort when listing commit statuses via api::projects::repository::commits::CommitStatuses.
    • Support Skipped state for api::projects::repository::commits::CreateCommitStatus.
    • Support username and member_role_id for api::groups::members::AddGroupMember.
    • Support reject_non_dco_commits when editing project push rules via api::projects::push_rule::EditProjectPushRule.
    • Support include_lfs_blobs and exclude_paths when getting project repository archives via api::projects::repository::archive::Archive.
    • Support with_programming_language, id_after, id_before, membership, statistics, updated_after, and updated_before when listing user projects via api::users::projects::UserProjects.
    • Support exclude_active, exclude_humans, and humans when listing users via api::users::Users.
    • Support setting deploy key access to push to protected branches and tags.
    • Support for setting an HTTP user agent via GitlabBuilder::user_agent.
    • Support project job token scope APIs.
    • Add api::projects::pipelines::PipelineBridges endpoint
    • Add api::projects::pages to manage pages settings.
    • Add api::projects::labels::LabelPriority type
    • Add api::projects::labels::LabelColor type
    • Add api::projects::labels::EditLabel to edit project labels.
    • api::common::directory_path_escaped now exists for escaping directory paths in URL components.

    Changes

    • Support for better error messages for rate limited responses. (#121)

    Bug fixes

    • Fix milestone parameters when filtering issues within groups or projects.
    • Enforce character limits for ref_, target_url, and description when creating commit statuses via api::projects::repository::commits::CreateCommitStatus.
    • Fix file_name encoding when it contains a directory paths for package operations via api::projects::packages::generic::GetPackageFile and api::projects::packages::generic::UploadPackageFile
    Open source →
  18. 0.1711.0 24 Apr 2025
    Release notes
    • No changes needed for GitLab 17.11.
    Open source →
  19. 0.1710.0 25 Mar 2025
    Release notes
    • No changes needed for GitLab 17.10.
    Open source →
  20. 0.1709.3 17 Mar 2025
    Release notes

    Changes

    • DisableProjectRunner and EnableProjectRunner now accept project names as well. A slight break as the types are now lifetime-aware, but this only affects code that needed to name the endpoint types across an API boundary (which should be rare).
    Open source →
  21. 0.1709.2 07 Mar 2025
    Release notes

    Changes

    • Internal dependency version updates; no user-facing changes.
    Open source →
  22. 0.1709.1 04 Mar 2025
    Release notes

    Additions

    • Add support for GitLab API authentication with job tokens.
    • Add DeleteTag api
    Open source →
  23. 0.1709.0 24 Feb 2025
    Release notes

    Breaking changes

    • Removal of APIs deprecated prior to 0.1700.0. Includes:
      • api::groups::CreateGroup::emails_disabled
      • api::groups::EditGroup::emails_disabled
      • api::groups::Groups::with_projects
      • api::groups::members::AddGroupMember::tasks_to_be_done
      • api::groups::members::AddGroupMember::tasks_project_id
      • api::issues::IssueOrderBy::WeightFields
      • api::issues::ProjectIssuesBuilder::without_milestone
      • api::issues::ProjectIssuesBuilder::any_milestone
      • api::issues::ProjectIssuesBuilder::milestone
      • api::projects::ContainerExpirationPolicy::name_regex
      • api::projects::CreateProject::operations_access_level
      • api::projects::CreateProject::emails_disabled
      • api::projects::CreateProject::container_registry_enabled
      • api::projects::CreateProject::tag_list
      • api::projects::CreateProject::build_coverage_regex
      • api::projects::CreateProject::approvals_before_merge
      • api::projects::CreateProject::issues_enabled
      • api::projects::CreateProject::merge_requests_enabled
      • api::projects::CreateProject::jobs_enabled
      • api::projects::CreateProject::wiki_enabled
      • api::projects::CreateProject::snippets_enabled
      • api::projects::CreateProject::tag
      • api::projects::CreateProject::tags
      • api::projects::EditProject::operations_access_level
      • api::projects::EditProject::emails_disabled
      • api::projects::EditProject::container_registry_enabled
      • api::projects::EditProject::build_coverage_regex
      • api::projects::EditProject::approvals_before_merge
      • api::projects::EditProject::issues_enabled
      • api::projects::EditProject::merge_requests_enabled
      • api::projects::EditProject::jobs_enabled
      • api::projects::EditProject::wiki_enabled
      • api::projects::EditProject::snippets_enabled
      • api::projects::EditProject::tag
      • api::projects::EditProject::tags
      • api::projects::EditProject::printing_merge_requests_link_enabled
      • api::projects::issues::CreateIssue::epic_iid
      • api::projects::issues::EditIssue::epic_iid
      • api::projects::issues::EditIssue::issue_iid
      • api::projects::issues::EditIssue::remove_labels
      • api::projects::issues::notes::CreateIssueNote::confidential
      • api::projects::issues::notes::EditIssueNote::confidential
      • api::projects::members::ProjectInviteTasksToBeDone
      • api::projects::members::AddProjectMember::task_to_be_done
      • api::projects::members::AddProjectMember::tasks_to_be_done
      • api::projects::members::AddProjectMember::tasks_project_id
      • api::projects::members::ProjectMember::all_builder
      • api::projects::members::ProjectMembers::all_builder
      • api::projects::merge_requests::MergeRequestPipelines
      • api::projects::merge_requests::MergeRequestPipelinesBuilder
      • api::projects::merge_requests::MergeRequestPipelinesBuilderError
      • api::projects::merge_requests::MergeRequestChanges
      • api::projects::merge_requests::MergeRequestChangesBuilder
      • api::projects::merge_requests::MergeRequestChangesBuilderError
      • api::projects::merge_requests::CreateMergeRequest::approvals_before_merge
      • api::projects::merge_requests::CreateMergeRequest::allow_maintainer_to_push
      • api::projects::merge_requests::EditMergeRequest::allow_maintainer_to_push
      • api::projects::merge_requests::EditMergeRequest::remove_labels
      • api::projects::merge_requests::MergeRequests::search_in
      • api::projects::merge_requests::note::CreateMergeRequestNote::merge_request_diff_sha
      • api::projects::merge_requests::note::EditMergeRequestNote::merge_request_diff_sha
      • api::projects::pipelines::Pipelines::name
      • api::projects::protected_branches::ProtectedAccessLevel
      • api::projects::registry::Repositories::tags
      • api::projects::registry::Repositories::tags_count
      • api::users::ExternalProvider::id
      • webhooks::MergeRequestHookAttrs::work_in_progress
    Open source →
  24. 0.1708.2 11 Feb 2025
    Release notes

    Fixes

    • hooktypes::HookDate parsing of local-offset time specifications has been restored.
    Open source →
  25. 0.1708.1 07 Feb 2025
    Release notes

    Breaking changes

    • IssueHookAttrs::time_estimate is allowed to be null (observed with a deployment).
    Open source →
  26. 0.1708.0 23 Jan 2025
    Release notes

    Additions

    • Add api::projects::variables to list and delete project-level CI/CD variables.

    Changes

    • Add support for Planner access levels where necessary. This access level is new in GitLab 17.7.
    Open source →
  27. 0.1707.0 08 Jan 2025
    Release notes

    Additions

    • Add api::paged::pagination::Pagination::AllPerPageLimit(usize) to get all results with smaller page size. Some endpoints return a 500 Internal Server Error when trying to fetch 100 results at once.
    • Add api::groups::variables to manage group-level CI/CD variables similar to the already available project-level CI/CD variable endpoints.
    Open source →
  28. 0.1706.0 27 Nov 2024
    Release notes

    Additions

    • Properly expose api::runners::RunnerMetadata for use with the CreateRunner::info method.
    • The following endpoints now support keyset pagination (depending on the ordering request):
      • api::groups::GroupProjects
      • api::projects::repository::Tree
      • api::users::UserProjects

    Fixes

    • api::projects::repository::CreateCommit now property forces the encoding to base64 when non-UTF-8 contents are detected. This bumps the minimum Rust version to use the client_api feature to 1.66.
    • api::users::Users now supports keyset pagination when sorting by created_at or updated_at.

    Deprecations

    • All webhooks and systemhooks types are deprecated. Parsing hooks should be done in the client crate to extract the fields of interest. See the hooktypes module for helpers with GitLab-specific oddities.
    • Deprecate api::issues::GroupIssues::{without_milestone,any_milestone,milestone} in preference for milestone_id. Previously documented to be deprecated in 0.1602.1, but the attributes were missed.

    Additions

    • New hooktypes module for stable types to assist in webhook parsing.
    • hooktypes::HookDate to support parsing dates that appear in webhooks.
    • hooktypes::{HookKind, SystemHookType, WebHookType} to help classify webhooks.
    Open source →
  29. 0.1705.0 24 Oct 2024
    Release notes

    Additions

    • Add ApiError code variants which give HTTP status codes with the GitLab error information (#116). These variants are now returned instead of the status-less variants. The variants without status information are now deprecated.
    Open source →
  30. 0.1704.1 10 Oct 2024
    Release notes

    Additions

    • Add api::projects::issues::DeleteIssue endpoint
    • Add api::projects::issues::notes::DeleteIssueNote endpoint
    • Add api::projects::approvals::ProjectApprovals endpoint
    • Add api::projects::approvals::ProjectApprovalRules endpoint
    • Add api::projects::repository::contributors::Contributors endpoint
    • Add api::users::CreateRunner endpoint
    • Add api::project::repository::branches::DeleteBranch endpoint
    • Add api::merge_requests::* datatypes (reexported from api::projects::merge_requests)
    • Support sorting merge requests by merge date
    • Add api::merge_requests::MergeRequests endpoint
    Open source →
  31. 0.1704.0 20 Sep 2024
    Release notes
    • No changes needed for GitLab 17.4.
    Open source →
  32. 0.1703.0 20 Aug 2024
    Release notes
    • No changes needed for GitLab 17.3.
    Open source →
  33. 0.1702.0 30 Jul 2024
    Release notes

    Additions

    • Add api::projects:repository::commits::CompareCommits endpoint
    Open source →
  34. 0.1701.0 26 Jun 2024
    Release notes

    Additions

    • Add api::projects::DeleteProject endpoint
    • Add api::projects::deployments::CreateDeployment endpoint
    • Add api::projects::deployments::DeleteDeployment endpoint
    • Add api::projects::deployments::Deployment endpoint
    • Add api::projects::deployments::Deployments endpoint
    • Add api::projects::deployments::EditDeployment endpoint
    Open source →
  35. 0.1700.1 22 May 2024
    Release notes

    Additions

    • Add api::projects::access_tokens::CreateProjectAccessToken endpoint
    • Add api::projects::access_tokens::ProjectAccessToken endpoint
    • Add api::projects::access_tokens::ProjectAccessTokens endpoint
    • Add api::projects::access_tokens::RevokeProjectAccessToken endpoint
    • Add api::projects::access_tokens::RotateProjectAccessToken endpoint
    Open source →
  36. 0.1611.2 21 May 2024
    Release notes

    Additions

    • Actually build the /project/:project/issues/:issue_iid/related_merge_requests endpoint.
    • Add api::pipelines::PipelineTestReportSummary endpoint

    Breaking changes

    • api::users::CreatePersonalAccessToken now uses PersonalAccessTokenCreateScope as this endpoint is actually quite limited compared to the CreatePersonalAccessTokenForUser endpoint.
    Open source →
  37. 0.1611.1 17 May 2024
    Release notes

    Additions

    • Add api::users::CreatePersonalAccessToken endpoint
    • Add api::users::CreatePersonalAccessTokenForUser endpoint
    • Add api::personal_access_tokens::PersonalAccessToken endpoint
    • Add api::personal_access_tokens::PersonalAccessTokenSelf endpoint
    • Add api::personal_access_tokens::PersonalAccessTokens endpoint
    • Add api::personal_access_tokens::RevokePersonalAccessToken endpoint
    • Add api::personal_access_tokens::RevokePersonalAccessTokenSelf endpoint
    • Add api::personal_access_tokens::RotatePersonalAccessToken endpoint
    • Add api::personal_access_tokens::RotatePersonalAccessTokenSelf endpoint
    Open source →
  38. 0.1611.0 02 May 2024
    Release notes

    Breaking changes

    • GraphQL support has been updated to use graphql_client 0.14.
    • The http crate has been updated to 1.x.

    Additions

    • Add api::projects::repository::commits::refs endpoint
    • Add api::pipelines::PipelineTestReport endpoint
    Open source →
  39. 0.1610.0 29 Mar 2024
    Release notes

    Additions

    • api::runners::EditRunner can now edit maintenance_note

    Breaking changes

    • The types module has been removed. Clients should define their own deserialization types.
    • Some enum types have been preserved for webhooks usage and are now exported from its module (though NoteableId has changed internal definition to avoid *Id types).
    • Hook type structures no longer impl Serialize as this crate is intended to parse hooks, not write them.
    Open source →
  40. 0.1609.2 20 Mar 2024
    Release notes

    Additions

    • Add api::job::Job endpoint

    Fixes

    • Job token authentication is now compliant with its limited permissions.
    Open source →
  41. 0.1609.1 05 Mar 2024
    Release notes

    Fixes

    • The ProtectedTags endpoint now impl Pageable.
    Open source →
  42. 0.1609.0 23 Feb 2024
    Release notes

    Breaking changes

    • hooks types no longer use the types::*Id types for simple wrappers.

    Deprecations

    • The types module and its members have been deprecated. Migrate to defining types in client crates directly.
    Open source →
  43. 0.1608.1 09 Feb 2024
    Release notes

    Additions

    • &Endpoint now has an impl Endpoint
    • &Pageable now has an impl Pageable
    • api::paged now supports into_iter() and into_iter_async() methods.
    • Add api::runners::Runners endpoint
    • Add api::runners::AllRunners endpoint
    • Add api::projects::runners::ProjectRunners endpoint
    • Add api::projects::runners::EnableProjectRunner endpoint
    • Add api::projects::runners::DisableProjectRunner endpoint
    • Add api::groups::runners::GroupRunners endpoint
    • Add api::runners::Runner endpoint
    • Add api::runners::EditRunner endpoint
    • Add api::runners::CreateRunner endpoint
    • Add api::runners::DeleteRunner endpoint
    • Add api::runners::DeleteRunnerByToken endpoint
    • Add api::runners::ResetRunnerAuthenticationToken endpoint
    • Add api::runners::ResetRunnerAuthenticationTokenByToken endpoint
    • Add api::runners::VerifyRunner endpoint
    • Add api::runners::RunnerJobs endpoint

    Breaking changes

    • api::paged now requires that the item type be 'static (shouldn't break anything).
    • api::Paged::into_iter now returns a LazilyPagedIter with &'a E rather than E (shouldn't break anything).
    Open source →
  44. 0.1608.0 24 Jan 2024
    Release notes

    Additions

    • Add From<&'a String> impl for NameOrId<'a>.
    Open source →
  45. 0.1607.0 05 Jan 2024
    Release notes
    • No changes needed for GitLab 16.7.
    Open source →
  46. 0.1606.2 30 Dec 2023
    Release notes

    Additions

    • api::projects::releases::CreateRelease
    • Add api::projects::repository::commits::signature endpoint.
    • Add endpoints for groups/projects access requests api::projects::access_requests::{access_requests,request,approve,deny} and api::groups::access_requests::{access_requests,request,approve,deny}.
    • Add api::users::CreateUser
    • The Endpoint::url_base method may be used to select the base for the endpoint's URL. Current options include UrlBase::ApiV4 and UrlBase::Instance.
    • api::RestClient::instance_endpoint now has a default implementation of not supporting UrlBase::Instance endpoints.
    • ImpersonationClient may now be switched to an OAuth2 token like the main builder can.

    Changes

    • Add JsonEncoded variant to BodyError enum.
    • Add JsonParams helper to create JSON-bodied queries.
    • Update to use the 2021 edition; used in the test suite.

    Breaking changes

    • api::users::ExternalProvider members are now private; use the associated builder() method to build an instance instead.
    Open source →
  47. 0.1606.1 13 Dec 2023
    Release notes

    Additions

    • Add missing endpoints to api::projects::merge_requests::awards and api::projects::merge_requests::notes::awards.
    • Add api::projects::issues::awards and api::projects::issues::notes::awards endpoints.
    • Add api::users::projects::UserProjects endpoint.
    • Add api::projects::ArchiveProject and api::projects::UnarchiveProject endpoints.
    • Support emails_enabled parameters when creating or editing groups and projects.
    • Support filtering groups based on the repository storage.
    • Support enforcing expiration on service access tokens for group hooks.
    • Support filtering group and project packages by version.
    • Support enforcing committer name requirements for push rules.
    • Support model experimentl access levels when creating or editng projects.
    • Support unidiff requests for merge request diffs.
    • Support the SecurityOrchestrationPolicy for the pipeline source filter.
    • Support returning users marked as auditors when listing all users.
    • Detect and notify of 301 Moved Permanently responses.
    • Support editing prevent_merge_without_jira_issue when editing a project.
    • Support filtering projects by those that are hidden or are pending deletion.
    • Support keyset pagination for the /users endpoint.
    • Support authentication with job tokens.
    • Support default_branch_protection_defaults parameters when creating and editing groups.
    • api::projects::releases::links::ListReleaseLinks
    • api::projects::releases::links::CreateReleaseLink
    • api::projects::releases::links::GetReleaseLink
    • api::projects::releases::links::UpdateReleaseLink
    • api::projects::releases::links::DeleteReleaseLink

    Deprecations

    • The emails_disabled parameter has been replaced by emails_enabled when creating or editing groups and projects.
    • The tasks_to_be_done and tasks_project_id parameters for group and project memberships have been removed upstream.

    Changes

    • enum types under the api module (with a few exceptions) have been marked as `#[non_exhaustive] with the intent to keep semver stability if/when GitLab enhances the API in ways that require these types to change.
    Open source →
  48. 0.1606.0 29 Nov 2023
    Release notes
    • No changes needed for GitLab 16.6.
    Open source →
  49. 0.1605.2 24 Nov 2023
    Release notes

    Additions

    • Add api::projects::packages::generic::UploadPackageFile and api::projects::packages::generic::GetPackageFile endpoints.
    Open source →
  50. 0.1605.1 31 Oct 2023
    Release notes

    Fixes

    • Fix "self" query used to verify authentication tokens (#96)
    Open source →
  51. 0.1605.0 25 Oct 2023
    Release notes

    Additions

    • Add Email Address to User Hook Attributes.
    • Support managing group/project push rules.
    • Add api::projects::merge_requests::MergeRequestDiffs endpoint.
    • api::paged iterators can be turned into async Streams using the into_async() method.
    • api::paged iterators can now set the page number (1-indexed) for direct access.
    • Extend enum systemhooks::ProjectEvent with project_update

    Fixes

    • api::retry::Client now forwards the HTTP version for requests as well.

    Deprecations

    • Deprecate api::projects::merge_requests::MergeRequestChanges endpoint. Deprecated in GitLab 15.7; use MergeRequestDiffs instead.
    Open source →
  52. 0.1604.0 26 Sep 2023
    Release notes
    • No changes needed for GitLab 16.4.
    Open source →
  53. 0.1603.0 24 Aug 2023
    Release notes

    Additions

    • Support /project/:project/issues/:issue_iid/related_merge_requests endpoint.

    Fixes

    • Switches /api/projects/repository/tree to use ordinary pagination.

    Changes

    • Minimum dependency build now requires 1.63 to avoid security advisories.
    Open source →
  54. 0.1602.1 27 Jul 2023
    Release notes

    Breaking changes

    • api::projects::protected_branches::ProtectBranch::allowed_to_unprotect no longer supports the NoAccess level as GitLab does not support it. Callers need to update to use the ProtectedAccessLevelWithAccess set of levels instead.

    Fixes

    • Milestone filters for api::issues::{Group,Project}Issues now use the proper query parameter (milestone_id).

    Additions

    • Add api::groups::BranchProtection::PushExceptInitial protection rule.
    • Support editing member rule IDs on group and project memberships.
    • Support Upcoming and Started milestone queries for issues.
    • Support skip_users in group and project member list queries.
    • Support show_seat_info parameter when listing memberships.
    • Support None and Any epic filters for project issues.
    • Support epic filters for group issues.
    • Support filtering project and group issues by health status.
    • Support Any, Today, and Tomorrow issue due date filters.
    • Support sorting issue results by their title.
    • Support filtering group issues by their type.
    • Support filtering out external users when listing users.
    • Support setting and editing the raw flag on project CI variables.
    • Support setting and editing the description field on project CI variables.
    • Support sorting tags by version number.
    • Support filtering commits by author.
    • Support filtering branches by regex.
    • Support setting the internal flag for created issue and MR notes.
    • Support the WaitingForResource job scope when filtering jobs.
    • Support the include_retried field for project jobs.
    • Support filtering MRs by approver usernames.
    • Support filtering MRs by whether they are approved or not.
    • Support setting merge_commit_template when creating a project.
    • Support setting mr_default_target_self when creating a project.
    • Support IP restriction ranges when editing groups.
    • Support wiki access level when editing groups.
    • Support project download limit parameters when editing groups.
    • Support filtering projects by last updated timestamps.
    • Support skipping LDAP users when searching users.
    • Support downloading raw file contents backed by LFS.
    • Support setting and editing access levels for releases, environments, feature flags, infrastructure, and monitor project features.
    • Support setting and editing the only_allow_merge_if_all_status_checks_passed flag on projects.
    • Support setting and editing group runner support on projects.
    • Support editing mirror_branch_regex on projects.
    • Support editing ci_allow_fork_pipelines_to_run_in_parent_project, enforce_auth_checks_on_uploads, issue_branch_template, allow_pipeline_trigger_approve_deployment, and ci_forward_deployment_rollback_allowed settings on projects.

    Changes

    • Deprecate api::issues::{Group,Project}Issues::{without_milestone,any_milestone,milestone} in preference for milestone_id. With new enumerations possible, using the actual name for the parameter is best with the actual type exposed.
    • The ref parameter for raw file contents is no longer required. If not provided, the repository's HEAD commit will be used.
    • Deprecate including tags and tags_count in project registry repository queries. Removed in GitLab 15.0.
    • Deprecate MR note creation and editing with merge_request_diff_sha fields. The documentation had a typo and it is only supported when creating an MR note. Use merge_request_diff_head_sha instead.
    • Deprecate approvals_before_merge in project creation and editing and MR creation. MR approval rules APIs (currently no bindings are provided) should be used instead.
    • Deprecate confidential for issue notes. Use internal instead, but note that it is only available at note creation and cannot be edited later.
    • ProtectedAccess is now a generic type in order to support different fields with different available access levels. Most call sites should not be affected.
    • Deprecate build_coverage_regex when creating and editing a project. This setting is now set via .gitlab-ci.yml rather than at the project-level.
    • Deprecate operations_access_level for more granular feature selections.
    Open source →
  55. 0.1602.0 26 Jul 2023
    Release notes

    Additions

    • Pipeline schedule API endpoints added.
    • Introduce the draft field to all MergeRequest structs.

    Changes

    • Deprecate the work_in_progress field on all MergeRequest structs.
    Open source →
  56. 0.1601.0 28 Jun 2023
    Release notes

    Fixes

    • api::projects::registry::RepositoryTags is now Pageable.

    Changes

    • api::projects::Jobs now supports keyset pagination.
    Open source →
  57. 0.1600.1 31 May 2023
    Release notes
    • CI updates to publish via CI.
    Open source →
  58. 0.1600.0 26 May 2023
    Release notes

    Additions

    • Support for GET /projects/:id/repository/files/:file_path endpoint
    Open source →
  59. 0.1511.0 28 Apr 2023
    Release notes

    Additions

    • Add "title" to webhooks::MergeRequestChanges.
    • Support /projects/:id/packages/:package_id endpoint
    • Support /projects/:id/packages/:package_id/package_files endpoint
    • Support /projects/:id/packages/:package_id/package_files/:package_file_id endpoint
    • Support /groups/:id/packages endpoint.
    • New endpoints for creating commits with gitlab::api::projects::repository::commits::CreateCommit
    Open source →
  60. 0.1510.0 24 Mar 2023
    Release notes

    Additions

    • Add "approval" and "unapproval" to webhooks::MergeRequestAction.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive