gitlab.v4 package

Submodules

gitlab.v4.objects module

class gitlab.v4.objects.ApplicationSettings(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ApplicationSettingsManager(gl, parent=None)

Bases: gitlab.mixins.GetWithoutIdMixin, gitlab.mixins.UpdateMixin, gitlab.base.RESTManager

Object update

Optional attributes for object update:

  • id
  • default_projects_limit
  • signup_enabled
  • password_authentication_enabled_for_web
  • gravatar_enabled
  • sign_in_text
  • created_at
  • updated_at
  • home_page_url
  • default_branch_protection
  • restricted_visibility_levels
  • max_attachment_size
  • session_expire_delay
  • default_project_visibility
  • default_snippet_visibility
  • default_group_visibility
  • outbound_local_requests_whitelist
  • domain_whitelist
  • domain_blacklist_enabled
  • domain_blacklist
  • external_authorization_service_enabled
  • external_authorization_service_url
  • external_authorization_service_default_label
  • external_authorization_service_timeout
  • user_oauth_applications
  • after_sign_out_path
  • container_registry_token_expire_delay
  • repository_storages
  • plantuml_enabled
  • plantuml_url
  • terminal_max_session_time
  • polling_interval_multiplier
  • rsa_key_restriction
  • dsa_key_restriction
  • ecdsa_key_restriction
  • ed25519_key_restriction
  • first_day_of_week
  • enforce_terms
  • terms
  • performance_bar_allowed_group_id
  • instance_statistics_visibility_private
  • user_show_add_ssh_key_message
  • file_template_project_id
  • local_markdown_version
  • asset_proxy_enabled
  • asset_proxy_url
  • asset_proxy_whitelist
  • geo_node_allowed_ips
  • allow_local_requests_from_hooks_and_services
  • allow_local_requests_from_web_hooks_and_services
  • allow_local_requests_from_system_hooks
update(**kwargs)

Update an object on the server.

Parameters:
  • id – ID of the object to update (can be None if not required)
  • new_data – the update data for the object
  • **kwargs – Extra options to send to the server (e.g. sudo)
Returns:

The new object data (not a RESTObject)

Return type:

dict

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabUpdateError – If the server cannot perform the request
class gitlab.v4.objects.BroadcastMessage(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.BroadcastMessageManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • message

Optional attributes:

  • starts_at
  • ends_at
  • color
  • font

Object update

Optional attributes for object update:

  • message
  • starts_at
  • ends_at
  • color
  • font
class gitlab.v4.objects.CurrentUser(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.CurrentUserEmail(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.CurrentUserEmailManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • email
class gitlab.v4.objects.CurrentUserGPGKey(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.CurrentUserGPGKeyManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • key
class gitlab.v4.objects.CurrentUserKey(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.CurrentUserKeyManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • title
  • key
class gitlab.v4.objects.CurrentUserManager(gl, parent=None)

Bases: gitlab.mixins.GetWithoutIdMixin, gitlab.base.RESTManager

class gitlab.v4.objects.CurrentUserStatus(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.base.RESTObject

class gitlab.v4.objects.CurrentUserStatusManager(gl, parent=None)

Bases: gitlab.mixins.GetWithoutIdMixin, gitlab.mixins.UpdateMixin, gitlab.base.RESTManager

Object update

Optional attributes for object update:

  • emoji
  • message
class gitlab.v4.objects.DeployKey(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.DeployKeyManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

class gitlab.v4.objects.Dockerfile(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.DockerfileManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

class gitlab.v4.objects.Event(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.EventManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • action
  • target_type
  • before
  • after
  • sort
class gitlab.v4.objects.Feature(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.FeatureManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

set(**kwargs)

Create or update the object.

Parameters:
  • name (str) – The value to set for the object
  • value (bool/int) – The value to set for the object
  • feature_group (str) – A feature group name
  • user (str) – A GitLab username
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabSetError – If an error occured
Returns:

The created/updated attribute

Return type:

obj

class gitlab.v4.objects.GeoNode(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

repair(**kwargs)

Repair the OAuth authentication of the geo node.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabRepairError – If the server failed to perform the request
status(**kwargs)

Get the status of the geo node.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server failed to perform the request
Returns:

The status of the geo node

Return type:

dict

class gitlab.v4.objects.GeoNodeManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object update

Optional attributes for object update:

  • enabled
  • url
  • files_max_capacity
  • repos_max_capacity
current_failures(**kwargs)

Get the list of failures on the current geo node.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server failed to perform the request
Returns:

The list of failures

Return type:

list

status(**kwargs)

Get the status of all the geo nodes.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server failed to perform the request
Returns:

The status of all the geo nodes

Return type:

list

class gitlab.v4.objects.Gitignore(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.GitignoreManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

class gitlab.v4.objects.Gitlabciyml(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.GitlabciymlManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

class gitlab.v4.objects.Group(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

Add an LDAP group link.

Parameters:
  • cn (str) – CN of the LDAP group
  • group_access (int) – Minimum access level for members of the LDAP group
  • provider (str) – LDAP provider for the LDAP group
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server cannot perform the request

Delete an LDAP group link.

Parameters:
  • cn (str) – CN of the LDAP group
  • provider (str) – LDAP provider for the LDAP group
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server cannot perform the request
ldap_sync(**kwargs)

Sync LDAP groups.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server cannot perform the request
search(**kwargs)

Search the group resources matching the provided string.’

Parameters:
  • scope (str) – Scope of the search
  • search (str) – Search string
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabSearchError – If the server failed to perform the request
Returns:

A list of dicts describing the resources found.

Return type:

GitlabList

transfer_project(**kwargs)

Transfer a project to this group.

Parameters:
  • to_project_id (int) – ID of the project to transfer
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabTransferProjectError – If the project could not be transfered
class gitlab.v4.objects.GroupAccessRequest(manager, attrs)

Bases: gitlab.mixins.AccessRequestMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.GroupAccessRequestManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

class gitlab.v4.objects.GroupBadge(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.GroupBadgeManager(gl, parent=None)

Bases: gitlab.mixins.BadgeRenderMixin, gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • link_url
  • image_url

Object update

Optional attributes for object update:

  • link_url
  • image_url
class gitlab.v4.objects.GroupBoard(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.GroupBoardList(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.GroupBoardListManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • label_id

Object update

Mandatory attributes for object update:

  • position
class gitlab.v4.objects.GroupBoardManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
class gitlab.v4.objects.GroupCustomAttribute(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.GroupCustomAttributeManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.SetMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

class gitlab.v4.objects.GroupEpic(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.mixins.SaveMixin, gitlab.base.RESTObject

class gitlab.v4.objects.GroupEpicIssue(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.mixins.SaveMixin, gitlab.base.RESTObject

save(**kwargs)

Save the changes made to the object to the server.

The object is updated to match what the server returns.

Parameters:**kwargs – Extra options to send to the server (e.g. sudo)
Raise:
GitlabAuthenticationError: If authentication is not correct GitlabUpdateError: If the server cannot perform the request
class gitlab.v4.objects.GroupEpicIssueManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • issue_id

Object update

Optional attributes for object update:

  • move_before_id
  • move_after_id
create(**kwargs)

Create a new object.

Parameters:
  • data (dict) – Parameters to send to the server to create the resource
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server cannot perform the request
Returns:

A new instance of the manage object class build with

the data sent by the server

Return type:

RESTObject

class gitlab.v4.objects.GroupEpicManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object listing filters

  • author_id
  • labels
  • order_by
  • sort
  • search

Object Creation

Mandatory attributes:

  • title

Optional attributes:

  • labels
  • description
  • start_date
  • end_date

Object update

Optional attributes for object update:

  • title
  • labels
  • description
  • start_date
  • end_date
class gitlab.v4.objects.GroupEpicResourceLabelEvent(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.GroupEpicResourceLabelEventManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

class gitlab.v4.objects.GroupIssue(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.GroupIssueManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • state
  • labels
  • milestone
  • order_by
  • sort
  • iids
  • author_id
  • assignee_id
  • my_reaction_emoji
  • search
  • created_after
  • created_before
  • updated_after
  • updated_before
class gitlab.v4.objects.GroupLabel(manager, attrs)

Bases: gitlab.mixins.SubscribableMixin, gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

save(**kwargs)

Saves the changes made to the object to the server.

The object is updated to match what the server returns.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct.
  • GitlabUpdateError – If the server cannot perform the request.
class gitlab.v4.objects.GroupLabelManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
  • color

Optional attributes:

  • description
  • priority

Object update

Mandatory attributes for object update:

  • name

Optional attributes for object update:

  • new_name
  • color
  • description
  • priority
delete(**kwargs)

Delete a Label on the server.

Parameters:
  • name – The name of the label
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server cannot perform the request
update(name, new_data=None, **kwargs)

Update a Label on the server.

Parameters:
  • name – The name of the label
  • **kwargs – Extra options to send to the server (e.g. sudo)
class gitlab.v4.objects.GroupManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object listing filters

  • skip_groups
  • all_available
  • search
  • order_by
  • sort
  • statistics
  • owned
  • with_custom_attributes

Object Creation

Mandatory attributes:

  • name
  • path

Optional attributes:

  • description
  • visibility
  • parent_id
  • lfs_enabled
  • request_access_enabled

Object update

Optional attributes for object update:

  • name
  • path
  • description
  • visibility
  • lfs_enabled
  • request_access_enabled
class gitlab.v4.objects.GroupMember(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.GroupMemberManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • access_level
  • user_id

Optional attributes:

  • expires_at

Object update

Mandatory attributes for object update:

  • access_level

Optional attributes for object update:

  • expires_at
all(**kwargs)

List all the members, included inherited ones.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the list could not be retrieved
Returns:

The list of members

Return type:

RESTObjectList

class gitlab.v4.objects.GroupMergeRequest(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.GroupMergeRequestManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • state
  • order_by
  • sort
  • milestone
  • view
  • labels
  • created_after
  • created_before
  • updated_after
  • updated_before
  • scope
  • author_id
  • assignee_id
  • my_reaction_emoji
  • source_branch
  • target_branch
  • search
class gitlab.v4.objects.GroupMilestone(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

issues(**kwargs)

List issues related to this milestone.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the list could not be retrieved
Returns:

The list of issues

Return type:

RESTObjectList

merge_requests(**kwargs)

List the merge requests related to this milestone.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the list could not be retrieved
Returns:

The list of merge requests

Return type:

RESTObjectList

class gitlab.v4.objects.GroupMilestoneManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object listing filters

  • iids
  • state
  • search

Object Creation

Mandatory attributes:

  • title

Optional attributes:

  • description
  • due_date
  • start_date

Object update

Optional attributes for object update:

  • title
  • description
  • due_date
  • start_date
  • state_event
class gitlab.v4.objects.GroupNotificationSettings(manager, attrs)

Bases: gitlab.v4.objects.NotificationSettings

class gitlab.v4.objects.GroupNotificationSettingsManager(gl, parent=None)

Bases: gitlab.v4.objects.NotificationSettingsManager

Object update

Optional attributes for object update:

  • level
  • notification_email
  • new_note
  • new_issue
  • reopen_issue
  • close_issue
  • reassign_issue
  • new_merge_request
  • reopen_merge_request
  • close_merge_request
  • reassign_merge_request
  • merge_merge_request
class gitlab.v4.objects.GroupProject(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.GroupProjectManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • archived
  • visibility
  • order_by
  • sort
  • search
  • ci_enabled_first
  • simple
  • owned
  • starred
  • with_custom_attributes
class gitlab.v4.objects.GroupSubgroup(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.GroupSubgroupManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • skip_groups
  • all_available
  • search
  • order_by
  • sort
  • statistics
  • owned
  • with_custom_attributes
class gitlab.v4.objects.GroupVariable(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.GroupVariableManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • key
  • value

Optional attributes:

  • protected

Object update

Mandatory attributes for object update:

  • key
  • value

Optional attributes for object update:

  • protected
class gitlab.v4.objects.Hook(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.HookManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • url
class gitlab.v4.objects.Issue(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.IssueManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • state
  • labels
  • milestone
  • scope
  • author_id
  • assignee_id
  • my_reaction_emoji
  • iids
  • order_by
  • sort
  • search
  • created_after
  • created_before
  • updated_after
  • updated_before
class gitlab.v4.objects.LDAPGroup(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.LDAPGroupManager(gl, parent=None)

Bases: gitlab.base.RESTManager

Object listing filters

  • search
  • provider
list(**kwargs)

Retrieve a list of objects.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Returns:

The list of objects, or a generator if as_list is False

Return type:

list

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the server cannot perform the request
class gitlab.v4.objects.License(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.LicenseManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

Object listing filters

  • popular
class gitlab.v4.objects.MergeRequest(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.MergeRequestManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • state
  • order_by
  • sort
  • milestone
  • view
  • labels
  • created_after
  • created_before
  • updated_after
  • updated_before
  • scope
  • author_id
  • assignee_id
  • my_reaction_emoji
  • source_branch
  • target_branch
  • search
class gitlab.v4.objects.Namespace(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.NamespaceManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

Object listing filters

  • search
class gitlab.v4.objects.NotificationSettings(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.base.RESTObject

class gitlab.v4.objects.NotificationSettingsManager(gl, parent=None)

Bases: gitlab.mixins.GetWithoutIdMixin, gitlab.mixins.UpdateMixin, gitlab.base.RESTManager

Object update

Optional attributes for object update:

  • level
  • notification_email
  • new_note
  • new_issue
  • reopen_issue
  • close_issue
  • reassign_issue
  • new_merge_request
  • reopen_merge_request
  • close_merge_request
  • reassign_merge_request
  • merge_merge_request
class gitlab.v4.objects.PagesDomain(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.PagesDomainManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

class gitlab.v4.objects.Project(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

archive(**kwargs)

Archive a project.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server failed to perform the request
artifact(**kwargs)

Download a single artifact file from a specific tag or branch from within the job’s artifacts archive.

Parameters:
  • ref_name (str) – Branch or tag name in repository. HEAD or SHA references are not supported.
  • artifact_path (str) – Path to a file inside the artifacts archive.
  • job (str) – The name of the job.
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for treatment
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the artifacts could not be retrieved
Returns:

The artifacts if streamed is False, None otherwise.

Return type:

str

create_fork_relation(**kwargs)

Create a forked from/to relation between existing projects.

Parameters:
  • forked_from_id (int) – The ID of the project that was forked from
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the relation could not be created
delete_fork_relation(**kwargs)

Delete a forked relation between existing projects.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server failed to perform the request
delete_merged_branches(**kwargs)

Delete merged branches.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server failed to perform the request
housekeeping(**kwargs)

Start the housekeeping task.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabHousekeepingError – If the server failed to perform the request
languages(**kwargs)

Get languages used in the project with percentage value.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server failed to perform the request
mirror_pull(**kwargs)

Start the pull mirroring process for the project.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server failed to perform the request
repository_archive(**kwargs)

Return a tarball of the repository.

Parameters:
  • sha (str) – ID of the commit (default branch by default)
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for treatment
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the server failed to perform the request
Returns:

The binary data of the archive

Return type:

str

repository_blob(**kwargs)

Return a file by blob SHA.

Parameters:
  • sha (str) – ID of the blob
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server failed to perform the request
Returns:

The blob content and metadata

Return type:

dict

repository_compare(**kwargs)

Return a diff between two branches/commits.

Parameters:
  • from (str) – Source branch/SHA
  • to (str) – Destination branch/SHA
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server failed to perform the request
Returns:

The diff

Return type:

str

repository_contributors(**kwargs)

Return a list of contributors for the project.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server failed to perform the request
Returns:

The contributors

Return type:

list

repository_raw_blob(**kwargs)

Return the raw file contents for a blob.

Parameters:
  • sha (str) – ID of the blob
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for treatment
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server failed to perform the request
Returns:

The blob content if streamed is False, None otherwise

Return type:

str

repository_tree(**kwargs)

Return a list of files in the repository.

Parameters:
  • path (str) – Path of the top folder (/ by default)
  • ref (str) – Reference to a commit or branch
  • recursive (bool) – Whether to get the tree recursively
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server failed to perform the request
Returns:

The representation of the tree

Return type:

list

search(**kwargs)

Search the project resources matching the provided string.’

Parameters:
  • scope (str) – Scope of the search
  • search (str) – Search string
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabSearchError – If the server failed to perform the request
Returns:

A list of dicts describing the resources found.

Return type:

GitlabList

share(**kwargs)

Share the project with a group.

Parameters:
  • group_id (int) – ID of the group.
  • group_access (int) – Access level for the group.
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server failed to perform the request
snapshot(**kwargs)

Return a snapshot of the repository.

Parameters:
  • wiki (bool) – If True return the wiki repository
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for treatment.
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the content could not be retrieved
Returns:

The uncompressed tar archive of the repository

Return type:

str

star(**kwargs)

Star a project.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server failed to perform the request
transfer_project(**kwargs)

Transfer a project to the given namespace ID

Parameters:
  • to_namespace (str) – ID or path of the namespace to transfer the
  • to (project) –
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabTransferProjectError – If the project could not be transfered
trigger_pipeline(**kwargs)

Trigger a CI build.

See https://gitlab.com/help/ci/triggers/README.md#trigger-a-build

Parameters:
  • ref (str) – Commit to build; can be a branch name or a tag
  • token (str) – The trigger token
  • variables (dict) – Variables passed to the build script
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server failed to perform the request
unarchive(**kwargs)

Unarchive a project.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server failed to perform the request
unshare(**kwargs)

Delete a shared project link within a group.

Parameters:
  • group_id (int) – ID of the group.
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server failed to perform the request
unstar(**kwargs)

Unstar a project.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server failed to perform the request
update_submodule(**kwargs)

Update a project submodule

Parameters:
  • submodule (str) – Full path to the submodule
  • branch (str) – Name of the branch to commit into
  • commit_sha (str) – Full commit SHA to update the submodule to
  • commit_message (str) – Commit message. If no message is provided, a default one will be set (optional)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabPutError – If the submodule could not be updated
upload(**kwargs)

Upload the specified file into the project.

Note

Either filedata or filepath MUST be specified.

Parameters:
  • filename (str) – The name of the file being uploaded
  • filedata (bytes) – The raw data of the file being uploaded
  • filepath (str) – The path to a local file to upload (optional)
Raises:
  • GitlabConnectionError – If the server cannot be reached
  • GitlabUploadError – If the file upload fails
  • GitlabUploadError – If filedata and filepath are not specified
  • GitlabUploadError – If both filedata and filepath are specified
Returns:

A dict with the keys:
  • alt - The alternate text for the upload
  • url - The direct url to the uploaded file
  • markdown - Markdown for the uploaded file

Return type:

dict

class gitlab.v4.objects.ProjectAccessRequest(manager, attrs)

Bases: gitlab.mixins.AccessRequestMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectAccessRequestManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

class gitlab.v4.objects.ProjectApproval(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectApprovalManager(gl, parent=None)

Bases: gitlab.mixins.GetWithoutIdMixin, gitlab.mixins.UpdateMixin, gitlab.base.RESTManager

Object update

Optional attributes for object update:

  • approvals_before_merge
  • reset_approvals_on_push
  • disable_overriding_approvers_per_merge_request
set_approvers(**kwargs)

Change project-level allowed approvers and approver groups.

Parameters:
  • approver_ids (list) – User IDs that can approve MRs
  • approver_group_ids (list) – Group IDs whose members can approve MRs
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabUpdateError – If the server failed to perform the request
class gitlab.v4.objects.ProjectApprovalRule(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectApprovalRuleManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
  • approvals_required

Optional attributes:

  • user_ids
  • group_ids
class gitlab.v4.objects.ProjectBadge(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectBadgeManager(gl, parent=None)

Bases: gitlab.mixins.BadgeRenderMixin, gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • link_url
  • image_url

Object update

Optional attributes for object update:

  • link_url
  • image_url
class gitlab.v4.objects.ProjectBoard(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectBoardList(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectBoardListManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • label_id

Object update

Mandatory attributes for object update:

  • position
class gitlab.v4.objects.ProjectBoardManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
class gitlab.v4.objects.ProjectBranch(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

protect(**kwargs)

Protect the branch.

Parameters:
  • developers_can_push (bool) – Set to True if developers are allowed to push to the branch
  • developers_can_merge (bool) – Set to True if developers are allowed to merge to the branch
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabProtectError – If the branch could not be protected
unprotect(**kwargs)

Unprotect the branch.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabProtectError – If the branch could not be unprotected
class gitlab.v4.objects.ProjectBranchManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • branch
  • ref
class gitlab.v4.objects.ProjectCommit(manager, attrs)

Bases: gitlab.base.RESTObject

cherry_pick(**kwargs)

Cherry-pick a commit into a branch.

Parameters:
  • branch (str) – Name of target branch
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCherryPickError – If the cherry-pick could not be performed
diff(**kwargs)

Generate the commit diff.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the diff could not be retrieved
Returns:

The changes done in this commit

Return type:

list

merge_requests(**kwargs)

List the merge requests related to the commit.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the references could not be retrieved
Returns:

The merge requests related to the commit.

Return type:

list

refs(**kwargs)

List the references the commit is pushed to.

Parameters:
  • type (str) – The scope of references (‘branch’, ‘tag’ or ‘all’)
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the references could not be retrieved
Returns:

The references the commit is pushed to.

Return type:

list

class gitlab.v4.objects.ProjectCommitComment(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectCommitCommentManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • note

Optional attributes:

  • path
  • line
  • line_type
class gitlab.v4.objects.ProjectCommitDiscussion(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectCommitDiscussionManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Optional attributes:

  • created_at
class gitlab.v4.objects.ProjectCommitDiscussionNote(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectCommitDiscussionNoteManager(gl, parent=None)

Bases: gitlab.mixins.GetMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Optional attributes:

  • created_at
  • position

Object update

Mandatory attributes for object update:

  • body
class gitlab.v4.objects.ProjectCommitManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • branch
  • commit_message
  • actions

Optional attributes:

  • author_email
  • author_name
class gitlab.v4.objects.ProjectCommitStatus(manager, attrs)

Bases: gitlab.base.RESTObject, gitlab.mixins.RefreshMixin

class gitlab.v4.objects.ProjectCommitStatusManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • state

Optional attributes:

  • description
  • name
  • context
  • ref
  • target_url
  • coverage
create(**kwargs)

Create a new object.

Parameters:
  • data (dict) – Parameters to send to the server to create the resource
  • **kwargs – Extra options to send to the server (e.g. sudo or ‘ref_name’, ‘stage’, ‘name’, ‘all’)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server cannot perform the request
Returns:

A new instance of the manage object class build with

the data sent by the server

Return type:

RESTObject

class gitlab.v4.objects.ProjectCustomAttribute(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectCustomAttributeManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.SetMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

class gitlab.v4.objects.ProjectDeployment(manager, attrs)

Bases: gitlab.base.RESTObject, gitlab.mixins.SaveMixin

class gitlab.v4.objects.ProjectDeploymentManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.base.RESTManager

Object listing filters

  • order_by
  • sort

Object Creation

Mandatory attributes:

  • sha
  • ref
  • tag
  • status
  • environment
class gitlab.v4.objects.ProjectEnvironment(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

stop(**kwargs)

Stop the environment.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabStopError – If the operation failed
class gitlab.v4.objects.ProjectEnvironmentManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name

Optional attributes:

  • external_url

Object update

Optional attributes for object update:

  • name
  • external_url
class gitlab.v4.objects.ProjectEvent(manager, attrs)

Bases: gitlab.v4.objects.Event

class gitlab.v4.objects.ProjectEventManager(gl, parent=None)

Bases: gitlab.v4.objects.EventManager

Object listing filters

  • action
  • target_type
  • before
  • after
  • sort
class gitlab.v4.objects.ProjectExport(manager, attrs)

Bases: gitlab.mixins.RefreshMixin, gitlab.base.RESTObject

download(**kwargs)

Download the archive of a project export.

Parameters:
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for reatment
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server failed to perform the request
Returns:

The blob content if streamed is False, None otherwise

Return type:

str

class gitlab.v4.objects.ProjectExportManager(gl, parent=None)

Bases: gitlab.mixins.GetWithoutIdMixin, gitlab.mixins.CreateMixin, gitlab.base.RESTManager

Object Creation

Optional attributes:

  • description
class gitlab.v4.objects.ProjectFile(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

decode()

Returns the decoded content of the file.

Returns:the decoded content.
Return type:(str)
delete(branch, commit_message, **kwargs)

Delete the file from the server.

Parameters:
  • branch (str) – Branch from which the file will be removed
  • commit_message (str) – Commit message for the deletion
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server cannot perform the request
save(branch, commit_message, **kwargs)

Save the changes made to the file to the server.

The object is updated to match what the server returns.

Parameters:
  • branch (str) – Branch in which the file will be updated
  • commit_message (str) – Message to send with the commit
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabUpdateError – If the server cannot perform the request
class gitlab.v4.objects.ProjectFileManager(gl, parent=None)

Bases: gitlab.mixins.GetMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • file_path
  • branch
  • content
  • commit_message

Optional attributes:

  • encoding
  • author_email
  • author_name

Object update

Mandatory attributes for object update:

  • file_path
  • branch
  • content
  • commit_message

Optional attributes for object update:

  • encoding
  • author_email
  • author_name
blame(**kwargs)

Return the content of a file for a commit.

Parameters:
  • file_path (str) – Path of the file to retrieve
  • ref (str) – Name of the branch, tag or commit
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the server failed to perform the request
Returns:

a list of commits/lines matching the file

Return type:

list(blame)

create(**kwargs)

Create a new object.

Parameters:
  • data (dict) – parameters to send to the server to create the resource
  • **kwargs – Extra options to send to the server (e.g. sudo)
Returns:

a new instance of the managed object class built with

the data sent by the server

Return type:

RESTObject

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server cannot perform the request
delete(**kwargs)

Delete a file on the server.

Parameters:
  • file_path (str) – Path of the file to remove
  • branch (str) – Branch from which the file will be removed
  • commit_message (str) – Commit message for the deletion
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server cannot perform the request
get(**kwargs)

Retrieve a single file.

Parameters:
  • file_path (str) – Path of the file to retrieve
  • ref (str) – Name of the branch, tag or commit
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the file could not be retrieved
Returns:

The generated RESTObject

Return type:

object

raw(**kwargs)

Return the content of a file for a commit.

Parameters:
  • ref (str) – ID of the commit
  • filepath (str) – Path of the file to return
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for treatment
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the file could not be retrieved
Returns:

The file content

Return type:

str

update(**kwargs)

Update an object on the server.

Parameters:
  • id – ID of the object to update (can be None if not required)
  • new_data – the update data for the object
  • **kwargs – Extra options to send to the server (e.g. sudo)
Returns:

The new object data (not a RESTObject)

Return type:

dict

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabUpdateError – If the server cannot perform the request
class gitlab.v4.objects.ProjectFork(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectForkManager(gl, parent=None)

Bases: gitlab.mixins.CreateMixin, gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • archived
  • visibility
  • order_by
  • sort
  • search
  • simple
  • owned
  • membership
  • starred
  • statistics
  • with_custom_attributes
  • with_issues_enabled
  • with_merge_requests_enabled

Object Creation

Optional attributes:

  • namespace
list(**kwargs)

Retrieve a list of objects.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Returns:

The list of objects, or a generator if as_list is False

Return type:

list

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the server cannot perform the request
class gitlab.v4.objects.ProjectHook(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectHookManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • url

Optional attributes:

  • push_events
  • issues_events
  • confidential_issues_events
  • merge_requests_events
  • tag_push_events
  • note_events
  • job_events
  • pipeline_events
  • wiki_page_events
  • enable_ssl_verification
  • token

Object update

Mandatory attributes for object update:

  • url

Optional attributes for object update:

  • push_events
  • issues_events
  • confidential_issues_events
  • merge_requests_events
  • tag_push_events
  • note_events
  • job_events
  • pipeline_events
  • wiki_events
  • enable_ssl_verification
  • token
class gitlab.v4.objects.ProjectImport(manager, attrs)

Bases: gitlab.mixins.RefreshMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectImportManager(gl, parent=None)

Bases: gitlab.mixins.GetWithoutIdMixin, gitlab.base.RESTManager

class gitlab.v4.objects.ProjectIssue(manager, attrs)

Bases: gitlab.mixins.UserAgentDetailMixin, gitlab.mixins.SubscribableMixin, gitlab.mixins.TodoMixin, gitlab.mixins.TimeTrackingMixin, gitlab.mixins.ParticipantsMixin, gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

closed_by(**kwargs)

List merge requests that will close the issue when merged.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetErrot – If the merge requests could not be retrieved
Returns:

The list of merge requests.

Return type:

list

move(**kwargs)

Move the issue to another project.

Parameters:
  • to_project_id (int) – ID of the target project
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabUpdateError – If the issue could not be moved
related_merge_requests(**kwargs)

List merge requests related to the issue.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetErrot – If the merge requests could not be retrieved
Returns:

The list of merge requests.

Return type:

list

class gitlab.v4.objects.ProjectIssueAwardEmoji(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectIssueAwardEmojiManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
class gitlab.v4.objects.ProjectIssueDiscussion(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectIssueDiscussionManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Optional attributes:

  • created_at
class gitlab.v4.objects.ProjectIssueDiscussionNote(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectIssueDiscussionNoteManager(gl, parent=None)

Bases: gitlab.mixins.GetMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Optional attributes:

  • created_at

Object update

Mandatory attributes for object update:

  • body

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectIssueLinkManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • target_project_id
  • target_issue_iid
create(**kwargs)

Create a new object.

Parameters:
  • data (dict) – parameters to send to the server to create the resource
  • **kwargs – Extra options to send to the server (e.g. sudo)
Returns:

The source and target issues

Return type:

RESTObject, RESTObject

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server cannot perform the request
class gitlab.v4.objects.ProjectIssueManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object listing filters

  • iids
  • state
  • labels
  • milestone
  • scope
  • author_id
  • assignee_id
  • my_reaction_emoji
  • order_by
  • sort
  • search
  • created_after
  • created_before
  • updated_after
  • updated_before

Object Creation

Mandatory attributes:

  • title

Optional attributes:

  • description
  • confidential
  • assignee_ids
  • assignee_id
  • milestone_id
  • labels
  • created_at
  • due_date
  • merge_request_to_resolve_discussions_of
  • discussion_to_resolve

Object update

Optional attributes for object update:

  • title
  • description
  • confidential
  • assignee_ids
  • assignee_id
  • milestone_id
  • labels
  • state_event
  • updated_at
  • due_date
  • discussion_locked
class gitlab.v4.objects.ProjectIssueNote(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectIssueNoteAwardEmoji(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectIssueNoteAwardEmojiManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
class gitlab.v4.objects.ProjectIssueNoteManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Optional attributes:

  • created_at

Object update

Mandatory attributes for object update:

  • body
class gitlab.v4.objects.ProjectIssueResourceLabelEvent(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectIssueResourceLabelEventManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

class gitlab.v4.objects.ProjectJob(manager, attrs)

Bases: gitlab.base.RESTObject, gitlab.mixins.RefreshMixin

artifact(**kwargs)

Get a single artifact file from within the job’s artifacts archive.

Parameters:
  • path (str) – Path of the artifact
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for treatment
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the artifacts could not be retrieved
Returns:

The artifacts if streamed is False, None otherwise.

Return type:

str

artifacts(**kwargs)

Get the job artifacts.

Parameters:
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for treatment
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the artifacts could not be retrieved
Returns:

The artifacts if streamed is False, None otherwise.

Return type:

str

cancel(**kwargs)

Cancel the job.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabJobCancelError – If the job could not be canceled
delete_artifacts(**kwargs)

Delete artifacts of a job.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the request could not be performed
erase(**kwargs)

Erase the job (remove job artifacts and trace).

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabJobEraseError – If the job could not be erased
keep_artifacts(**kwargs)

Prevent artifacts from being deleted when expiration is set.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the request could not be performed
play(**kwargs)

Trigger a job explicitly.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabJobPlayError – If the job could not be triggered
retry(**kwargs)

Retry the job.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabJobRetryError – If the job could not be retried
trace(**kwargs)

Get the job trace.

Parameters:
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for treatment
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the artifacts could not be retrieved
Returns:

The trace

Return type:

str

class gitlab.v4.objects.ProjectJobManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

class gitlab.v4.objects.ProjectKey(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectKeyManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • title
  • key

Optional attributes:

  • can_push

Object update

Optional attributes for object update:

  • title
  • can_push
enable(**kwargs)

Enable a deploy key for a project.

Parameters:
  • key_id (int) – The ID of the key to enable
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabProjectDeployKeyError – If the key could not be enabled
class gitlab.v4.objects.ProjectLabel(manager, attrs)

Bases: gitlab.mixins.SubscribableMixin, gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

save(**kwargs)

Saves the changes made to the object to the server.

The object is updated to match what the server returns.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct.
  • GitlabUpdateError – If the server cannot perform the request.
class gitlab.v4.objects.ProjectLabelManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
  • color

Optional attributes:

  • description
  • priority

Object update

Mandatory attributes for object update:

  • name

Optional attributes for object update:

  • new_name
  • color
  • description
  • priority
delete(**kwargs)

Delete a Label on the server.

Parameters:
  • name – The name of the label
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server cannot perform the request
update(name, new_data=None, **kwargs)

Update a Label on the server.

Parameters:
  • name – The name of the label
  • **kwargs – Extra options to send to the server (e.g. sudo)
class gitlab.v4.objects.ProjectManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object listing filters

  • search
  • owned
  • starred
  • archived
  • visibility
  • order_by
  • sort
  • simple
  • membership
  • statistics
  • with_issues_enabled
  • with_merge_requests_enabled
  • with_custom_attributes

Object Creation

Optional attributes:

  • name
  • path
  • namespace_id
  • description
  • issues_enabled
  • merge_requests_enabled
  • jobs_enabled
  • wiki_enabled
  • snippets_enabled
  • resolve_outdated_diff_discussions
  • container_registry_enabled
  • shared_runners_enabled
  • visibility
  • import_url
  • public_jobs
  • only_allow_merge_if_pipeline_succeeds
  • only_allow_merge_if_all_discussions_are_resolved
  • merge_method
  • lfs_enabled
  • request_access_enabled
  • tag_list
  • avatar
  • printing_merge_request_link_enabled
  • ci_config_path

Object update

Optional attributes for object update:

  • name
  • path
  • default_branch
  • description
  • issues_enabled
  • merge_requests_enabled
  • jobs_enabled
  • wiki_enabled
  • snippets_enabled
  • resolve_outdated_diff_discussions
  • container_registry_enabled
  • shared_runners_enabled
  • visibility
  • import_url
  • public_jobs
  • only_allow_merge_if_pipeline_succeeds
  • only_allow_merge_if_all_discussions_are_resolved
  • merge_method
  • lfs_enabled
  • request_access_enabled
  • tag_list
  • avatar
  • ci_config_path
import_project(file, path, namespace=None, overwrite=False, override_params=None, **kwargs)

Import a project from an archive file.

Parameters:
  • file – Data or file object containing the project
  • path (str) – Name and path for the new project
  • namespace (str) – The ID or path of the namespace that the project will be imported to
  • overwrite (bool) – If True overwrite an existing project with the same path
  • override_params (dict) – Set the specific settings for the project
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the server failed to perform the request
Returns:

A representation of the import status.

Return type:

dict

class gitlab.v4.objects.ProjectMember(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectMemberManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • access_level
  • user_id

Optional attributes:

  • expires_at

Object update

Mandatory attributes for object update:

  • access_level

Optional attributes for object update:

  • expires_at
all(**kwargs)

List all the members, included inherited ones.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the list could not be retrieved
Returns:

The list of members

Return type:

RESTObjectList

class gitlab.v4.objects.ProjectMergeRequest(manager, attrs)

Bases: gitlab.mixins.SubscribableMixin, gitlab.mixins.TodoMixin, gitlab.mixins.TimeTrackingMixin, gitlab.mixins.ParticipantsMixin, gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

approve(**kwargs)

Approve the merge request.

Parameters:
  • sha (str) – Head SHA of MR
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabMRApprovalError – If the approval failed
cancel_merge_when_pipeline_succeeds(**kwargs)

Cancel merge when the pipeline succeeds.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabMROnBuildSuccessError – If the server could not handle the request
changes(**kwargs)

List the merge request changes.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the list could not be retrieved
Returns:

List of changes

Return type:

RESTObjectList

closes_issues(**kwargs)

List issues that will close on merge.”

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the list could not be retrieved
Returns:

List of issues

Return type:

RESTObjectList

commits(**kwargs)

List the merge request commits.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the list could not be retrieved
Returns:

The list of commits

Return type:

RESTObjectList

merge(**kwargs)

Accept the merge request.

Parameters:
  • merge_commit_message (bool) – Commit message
  • should_remove_source_branch (bool) – If True, removes the source branch
  • merge_when_pipeline_succeeds (bool) – Wait for the build to succeed, then merge
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabMRClosedError – If the merge failed
pipelines(**kwargs)

List the merge request pipelines.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the list could not be retrieved
Returns:

List of changes

Return type:

RESTObjectList

rebase(**kwargs)

Attempt to rebase the source branch onto the target branch

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabMRRebaseError – If rebasing failed
unapprove(**kwargs)

Unapprove the merge request.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabMRApprovalError – If the unapproval failed
class gitlab.v4.objects.ProjectMergeRequestApproval(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectMergeRequestApprovalManager(gl, parent=None)

Bases: gitlab.mixins.GetWithoutIdMixin, gitlab.mixins.UpdateMixin, gitlab.base.RESTManager

Object update

Mandatory attributes for object update:

  • approvals_required
set_approvers(**kwargs)

Change MR-level allowed approvers and approver groups.

Parameters:
  • approver_ids (list) – User IDs that can approve MRs
  • approver_group_ids (list) – Group IDs whose members can approve MRs
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabUpdateError – If the server failed to perform the request
class gitlab.v4.objects.ProjectMergeRequestAwardEmoji(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectMergeRequestAwardEmojiManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
class gitlab.v4.objects.ProjectMergeRequestDiff(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectMergeRequestDiffManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

class gitlab.v4.objects.ProjectMergeRequestDiscussion(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectMergeRequestDiscussionManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Optional attributes:

  • created_at
  • position

Object update

Mandatory attributes for object update:

  • resolved
class gitlab.v4.objects.ProjectMergeRequestDiscussionNote(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectMergeRequestDiscussionNoteManager(gl, parent=None)

Bases: gitlab.mixins.GetMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Optional attributes:

  • created_at

Object update

Mandatory attributes for object update:

  • body
class gitlab.v4.objects.ProjectMergeRequestManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object listing filters

  • state
  • order_by
  • sort
  • milestone
  • view
  • labels
  • created_after
  • created_before
  • updated_after
  • updated_before
  • scope
  • author_id
  • assignee_id
  • my_reaction_emoji
  • source_branch
  • target_branch
  • search

Object Creation

Mandatory attributes:

  • source_branch
  • target_branch
  • title

Optional attributes:

  • assignee_id
  • description
  • target_project_id
  • labels
  • milestone_id
  • remove_source_branch
  • allow_maintainer_to_push
  • squash

Object update

Optional attributes for object update:

  • target_branch
  • assignee_id
  • title
  • description
  • state_event
  • labels
  • milestone_id
  • remove_source_branch
  • discussion_locked
  • allow_maintainer_to_push
  • squash
class gitlab.v4.objects.ProjectMergeRequestNote(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectMergeRequestNoteAwardEmoji(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectMergeRequestNoteAwardEmojiManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
class gitlab.v4.objects.ProjectMergeRequestNoteManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Object update

Mandatory attributes for object update:

  • body
class gitlab.v4.objects.ProjectMergeRequestResourceLabelEvent(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectMergeRequestResourceLabelEventManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

class gitlab.v4.objects.ProjectMilestone(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

issues(**kwargs)

List issues related to this milestone.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the list could not be retrieved
Returns:

The list of issues

Return type:

RESTObjectList

merge_requests(**kwargs)

List the merge requests related to this milestone.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the list could not be retrieved
Returns:

The list of merge requests

Return type:

RESTObjectList

class gitlab.v4.objects.ProjectMilestoneManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object listing filters

  • iids
  • state
  • search

Object Creation

Mandatory attributes:

  • title

Optional attributes:

  • description
  • due_date
  • start_date
  • state_event

Object update

Optional attributes for object update:

  • title
  • description
  • due_date
  • start_date
  • state_event
class gitlab.v4.objects.ProjectNote(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectNoteManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body
class gitlab.v4.objects.ProjectNotificationSettings(manager, attrs)

Bases: gitlab.v4.objects.NotificationSettings

class gitlab.v4.objects.ProjectNotificationSettingsManager(gl, parent=None)

Bases: gitlab.v4.objects.NotificationSettingsManager

Object update

Optional attributes for object update:

  • level
  • notification_email
  • new_note
  • new_issue
  • reopen_issue
  • close_issue
  • reassign_issue
  • new_merge_request
  • reopen_merge_request
  • close_merge_request
  • reassign_merge_request
  • merge_merge_request
class gitlab.v4.objects.ProjectPagesDomain(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectPagesDomainManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • domain

Optional attributes:

  • certificate
  • key

Object update

Optional attributes for object update:

  • certificate
  • key
class gitlab.v4.objects.ProjectPipeline(manager, attrs)

Bases: gitlab.base.RESTObject, gitlab.mixins.RefreshMixin, gitlab.mixins.ObjectDeleteMixin

cancel(**kwargs)

Cancel the job.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabPipelineCancelError – If the request failed
retry(**kwargs)

Retry the job.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabPipelineRetryError – If the request failed
class gitlab.v4.objects.ProjectPipelineJob(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectPipelineJobManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • scope
class gitlab.v4.objects.ProjectPipelineManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object listing filters

  • scope
  • status
  • ref
  • sha
  • yaml_errors
  • name
  • username
  • order_by
  • sort

Object Creation

Mandatory attributes:

  • ref
create(data, **kwargs)

Creates a new object.

Parameters:
  • data (dict) – Parameters to send to the server to create the resource
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server cannot perform the request
Returns:

A new instance of the managed object class build with

the data sent by the server

Return type:

RESTObject

class gitlab.v4.objects.ProjectPipelineSchedule(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

take_ownership(**kwargs)

Update the owner of a pipeline schedule.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabOwnershipError – If the request failed
class gitlab.v4.objects.ProjectPipelineScheduleManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • description
  • ref
  • cron

Optional attributes:

  • cron_timezone
  • active

Object update

Optional attributes for object update:

  • description
  • ref
  • cron
  • cron_timezone
  • active
class gitlab.v4.objects.ProjectPipelineScheduleVariable(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectPipelineScheduleVariableManager(gl, parent=None)

Bases: gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • key
  • value

Object update

Mandatory attributes for object update:

  • key
  • value
class gitlab.v4.objects.ProjectPipelineVariable(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectPipelineVariableManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

class gitlab.v4.objects.ProjectProtectedBranch(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectProtectedBranchManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name

Optional attributes:

  • push_access_level
  • merge_access_level
  • unprotect_access_level
  • allowed_to_push
  • allowed_to_merge
  • allowed_to_unprotect
class gitlab.v4.objects.ProjectProtectedTag(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectProtectedTagManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name

Optional attributes:

  • create_access_level
class gitlab.v4.objects.ProjectPushRules(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectPushRulesManager(gl, parent=None)

Bases: gitlab.mixins.GetWithoutIdMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Optional attributes:

  • deny_delete_tag
  • member_check
  • prevent_secrets
  • commit_message_regex
  • branch_name_regex
  • author_email_regex
  • file_name_regex
  • max_file_size

Object update

Optional attributes for object update:

  • deny_delete_tag
  • member_check
  • prevent_secrets
  • commit_message_regex
  • branch_name_regex
  • author_email_regex
  • file_name_regex
  • max_file_size
class gitlab.v4.objects.ProjectRegistryRepository(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectRegistryRepositoryManager(gl, parent=None)

Bases: gitlab.mixins.DeleteMixin, gitlab.mixins.ListMixin, gitlab.base.RESTManager

class gitlab.v4.objects.ProjectRegistryTag(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectRegistryTagManager(gl, parent=None)

Bases: gitlab.mixins.DeleteMixin, gitlab.mixins.RetrieveMixin, gitlab.base.RESTManager

delete_in_bulk(**kwargs)

Delete Tag in bulk

Parameters:
  • name_regex (string) – The regex of the name to delete. To delete all tags specify .*.
  • keep_n (integer) – The amount of latest tags of given name to keep.
  • older_than (string) – Tags to delete that are older than the given time, written in human readable form 1h, 1d, 1month.
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeleteError – If the server cannot perform the request
class gitlab.v4.objects.ProjectRelease(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectReleaseManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
  • tag_name
  • description

Optional attributes:

  • ref
  • assets
class gitlab.v4.objects.ProjectRunner(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectRunnerManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • runner_id
class gitlab.v4.objects.ProjectService(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectServiceManager(gl, parent=None)

Bases: gitlab.mixins.GetMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

available(**kwargs)

List the services known by python-gitlab.

Returns:The list of service code names.
Return type:list (str)
get(id, **kwargs)

Retrieve a single object.

Parameters:
  • id (int or str) – ID of the object to retrieve
  • lazy (bool) – If True, don’t request the server, but create a shallow object giving access to the managers. This is useful if you want to avoid useless calls to the API.
  • **kwargs – Extra options to send to the server (e.g. sudo)
Returns:

The generated RESTObject.

Return type:

object

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the server cannot perform the request
update(id=None, new_data=None, **kwargs)

Update an object on the server.

Parameters:
  • id – ID of the object to update (can be None if not required)
  • new_data – the update data for the object
  • **kwargs – Extra options to send to the server (e.g. sudo)
Returns:

The new object data (not a RESTObject)

Return type:

dict

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabUpdateError – If the server cannot perform the request
class gitlab.v4.objects.ProjectSnippet(manager, attrs)

Bases: gitlab.mixins.UserAgentDetailMixin, gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

content(**kwargs)

Return the content of a snippet.

Parameters:
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for treatment.
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the content could not be retrieved
Returns:

The snippet content

Return type:

str

class gitlab.v4.objects.ProjectSnippetAwardEmoji(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectSnippetAwardEmojiManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
class gitlab.v4.objects.ProjectSnippetDiscussion(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectSnippetDiscussionManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Optional attributes:

  • created_at
class gitlab.v4.objects.ProjectSnippetDiscussionNote(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectSnippetDiscussionNoteManager(gl, parent=None)

Bases: gitlab.mixins.GetMixin, gitlab.mixins.CreateMixin, gitlab.mixins.UpdateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Optional attributes:

  • created_at

Object update

Mandatory attributes for object update:

  • body
class gitlab.v4.objects.ProjectSnippetManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • title
  • file_name
  • code

Optional attributes:

  • lifetime
  • visibility

Object update

Optional attributes for object update:

  • title
  • file_name
  • code
  • visibility
class gitlab.v4.objects.ProjectSnippetNote(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectSnippetNoteAwardEmoji(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectSnippetNoteAwardEmojiManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • name
class gitlab.v4.objects.ProjectSnippetNoteManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • body

Object update

Mandatory attributes for object update:

  • body
class gitlab.v4.objects.ProjectTag(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

set_release_description(**kwargs)

Set the release notes on the tag.

If the release doesn’t exist yet, it will be created. If it already exists, its description will be updated.

Parameters:
  • description (str) – Description of the release.
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabCreateError – If the server fails to create the release
  • GitlabUpdateError – If the server fails to update the release
class gitlab.v4.objects.ProjectTagManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • tag_name
  • ref

Optional attributes:

  • message
class gitlab.v4.objects.ProjectTrigger(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

take_ownership(**kwargs)

Update the owner of a trigger.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabOwnershipError – If the request failed
class gitlab.v4.objects.ProjectTriggerManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • description

Object update

Mandatory attributes for object update:

  • description
class gitlab.v4.objects.ProjectUser(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.ProjectUserManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • search
class gitlab.v4.objects.ProjectVariable(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectVariableManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • key
  • value

Object update

Mandatory attributes for object update:

  • key
  • value
class gitlab.v4.objects.ProjectWiki(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.ProjectWikiManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object listing filters

  • with_content

Object Creation

Mandatory attributes:

  • title
  • content

Optional attributes:

  • format

Object update

Optional attributes for object update:

  • title
  • content
  • format
class gitlab.v4.objects.Runner(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.RunnerJob(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.RunnerJobManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

Object listing filters

  • status
class gitlab.v4.objects.RunnerManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object listing filters

  • scope

Object Creation

Mandatory attributes:

  • token

Optional attributes:

  • description
  • info
  • active
  • locked
  • run_untagged
  • tag_list
  • maximum_timeout

Object update

Optional attributes for object update:

  • description
  • active
  • tag_list
  • run_untagged
  • locked
  • access_level
  • maximum_timeout
all(**kwargs)

List all the runners.

Parameters:
  • scope (str) – The scope of runners to show, one of: specific, shared, active, paused, online
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the server failed to perform the request
Returns:

a list of runners matching the scope.

Return type:

list(Runner)

verify(**kwargs)

Validates authentication credentials for a registered Runner.

Parameters:
  • token (str) – The runner’s authentication token
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabVerifyError – If the server failed to verify the token
class gitlab.v4.objects.SidekiqManager(gl, parent=None)

Bases: gitlab.base.RESTManager

Manager for the Sidekiq methods.

This manager doesn’t actually manage objects but provides helper fonction for the sidekiq metrics API.

compound_metrics(**kwargs)

Return all available metrics and statistics.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the information couldn’t be retrieved
Returns:

All available Sidekiq metrics and statistics

Return type:

dict

job_stats(**kwargs)

Return statistics about the jobs performed.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the information couldn’t be retrieved
Returns:

Statistics about the Sidekiq jobs performed

Return type:

dict

process_metrics(**kwargs)

Return the registred sidekiq workers.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the information couldn’t be retrieved
Returns:

Information about the register Sidekiq worker

Return type:

dict

queue_metrics(**kwargs)

Return the registred queues information.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the information couldn’t be retrieved
Returns:

Information about the Sidekiq queues

Return type:

dict

class gitlab.v4.objects.Snippet(manager, attrs)

Bases: gitlab.mixins.UserAgentDetailMixin, gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

content(**kwargs)

Return the content of a snippet.

Parameters:
  • streamed (bool) – If True the data will be processed by chunks of chunk_size and each chunk is passed to action for treatment.
  • action (callable) – Callable responsible of dealing with chunk of data
  • chunk_size (int) – Size of each chunk
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabGetError – If the content could not be retrieved
Returns:

The snippet content

Return type:

str

class gitlab.v4.objects.SnippetManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • title
  • file_name
  • content

Optional attributes:

  • lifetime
  • visibility

Object update

Optional attributes for object update:

  • title
  • file_name
  • content
  • visibility
public(**kwargs)

List all the public snippets.

Parameters:
  • all (bool) – If True the returned object will be a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Raises:

GitlabListError – If the list could not be retrieved

Returns:

A generator for the snippets list

Return type:

RESTObjectList

class gitlab.v4.objects.Todo(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

mark_as_done(**kwargs)

Mark the todo as done.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabTodoError – If the server failed to perform the request
class gitlab.v4.objects.TodoManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object listing filters

  • action
  • author_id
  • project_id
  • state
  • type
mark_all_as_done(**kwargs)

Mark all the todos as done.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabTodoError – If the server failed to perform the request
Returns:

The number of todos maked done

Return type:

int

class gitlab.v4.objects.User(manager, attrs)

Bases: gitlab.mixins.SaveMixin, gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

activate(**kwargs)

Activate the user.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabActivateError – If the user could not be activated
Returns:

Whether the user status has been changed

Return type:

bool

block(**kwargs)

Block the user.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabBlockError – If the user could not be blocked
Returns:

Whether the user status has been changed

Return type:

bool

deactivate(**kwargs)

Deactivate the user.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabDeactivateError – If the user could not be deactivated
Returns:

Whether the user status has been changed

Return type:

bool

unblock(**kwargs)

Unblock the user.

Parameters:

**kwargs – Extra options to send to the server (e.g. sudo)

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabUnblockError – If the user could not be unblocked
Returns:

Whether the user status has been changed

Return type:

bool

class gitlab.v4.objects.UserActivities(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.UserActivitiesManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.base.RESTManager

class gitlab.v4.objects.UserCustomAttribute(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.UserCustomAttributeManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.SetMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

class gitlab.v4.objects.UserEmail(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.UserEmailManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • email
class gitlab.v4.objects.UserEvent(manager, attrs)

Bases: gitlab.v4.objects.Event

class gitlab.v4.objects.UserEventManager(gl, parent=None)

Bases: gitlab.v4.objects.EventManager

Object listing filters

  • action
  • target_type
  • before
  • after
  • sort
class gitlab.v4.objects.UserGPGKey(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.UserGPGKeyManager(gl, parent=None)

Bases: gitlab.mixins.RetrieveMixin, gitlab.mixins.CreateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • key
class gitlab.v4.objects.UserImpersonationToken(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.UserImpersonationTokenManager(gl, parent=None)

Bases: gitlab.mixins.NoUpdateMixin, gitlab.base.RESTManager

Object listing filters

  • state

Object Creation

Mandatory attributes:

  • name
  • scopes

Optional attributes:

  • expires_at
class gitlab.v4.objects.UserKey(manager, attrs)

Bases: gitlab.mixins.ObjectDeleteMixin, gitlab.base.RESTObject

class gitlab.v4.objects.UserKeyManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.mixins.DeleteMixin, gitlab.base.RESTManager

Object Creation

Mandatory attributes:

  • title
  • key
class gitlab.v4.objects.UserManager(gl, parent=None)

Bases: gitlab.mixins.CRUDMixin, gitlab.base.RESTManager

Object listing filters

  • active
  • blocked
  • username
  • extern_uid
  • provider
  • external
  • search
  • custom_attributes
  • status

Object Creation

Optional attributes:

  • email
  • username
  • name
  • password
  • reset_password
  • skype
  • linkedin
  • twitter
  • projects_limit
  • extern_uid
  • provider
  • bio
  • admin
  • can_create_group
  • website_url
  • skip_confirmation
  • external
  • organization
  • location
  • avatar

Object update

Mandatory attributes for object update:

  • email
  • username
  • name

Optional attributes for object update:

  • password
  • skype
  • linkedin
  • twitter
  • projects_limit
  • extern_uid
  • provider
  • bio
  • admin
  • can_create_group
  • website_url
  • skip_confirmation
  • external
  • organization
  • location
  • avatar
class gitlab.v4.objects.UserProject(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.UserProjectManager(gl, parent=None)

Bases: gitlab.mixins.ListMixin, gitlab.mixins.CreateMixin, gitlab.base.RESTManager

Object listing filters

  • archived
  • visibility
  • order_by
  • sort
  • search
  • simple
  • owned
  • membership
  • starred
  • statistics
  • with_issues_enabled
  • with_merge_requests_enabled

Object Creation

Mandatory attributes:

  • name

Optional attributes:

  • default_branch
  • issues_enabled
  • wall_enabled
  • merge_requests_enabled
  • wiki_enabled
  • snippets_enabled
  • public
  • visibility
  • description
  • builds_enabled
  • public_builds
  • import_url
  • only_allow_merge_if_build_succeeds
list(**kwargs)

Retrieve a list of objects.

Parameters:
  • all (bool) – If True, return all the items, without pagination
  • per_page (int) – Number of items to retrieve per request
  • page (int) – ID of the page to return (starts with page 1)
  • as_list (bool) – If set to False and no pagination option is defined, return a generator instead of a list
  • **kwargs – Extra options to send to the server (e.g. sudo)
Returns:

The list of objects, or a generator if as_list is False

Return type:

list

Raises:
  • GitlabAuthenticationError – If authentication is not correct
  • GitlabListError – If the server cannot perform the request
class gitlab.v4.objects.UserStatus(manager, attrs)

Bases: gitlab.base.RESTObject

class gitlab.v4.objects.UserStatusManager(gl, parent=None)

Bases: gitlab.mixins.GetWithoutIdMixin, gitlab.base.RESTManager

Module contents