GitLab is a single application for the entire software development lifecycle. From project planning and source code management to CI/CD, monitoring, and security.
This document provides information about the GitLab Connector, which facilitates automated interactions, with a GitLab server using FortiSOAR™ playbooks. Add the GitLab Connector as a step in FortiSOAR™ playbooks and perform automated operations with GitLab.
Connector Version: 2.0.1
FortiSOAR™ Version Tested on: 7.5.0-4015
GitLab API Version Tested on: v4
Authored By: Fortinet
Certified: Yes
Following enhancements have been made to the GitLab Connector in version 2.0.1:
[Errno 2] No such file or directory: '/tmp/gitlab-repo-title
Use the Content Hub to install the connector. For the detailed procedure to install a connector, click here.
You can also use the yum command as a root user to install the connector:
yum install cyops-connector-gitlab
For the procedure to configure a connector, click here.
In FortiSOAR™, on the Connectors page, click the GitLab connector row (if you are in the Grid view on the Connectors page) and in the Configurations tab enter the required configuration details:
| Parameter | Description |
|---|---|
| Server URL | IP address or hostname of the GitLab server to which you will connect and perform automated operations. |
| Gitlab Username | Specify the username used to access the GitLab server to connect and perform the automated operations. |
| Access Token | Access Token that is provided to you by a GitLab administrator that you will use to access the GitLab REST API. For information on generating access tokens, refer https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html. |
| Verify SSL | Specifies whether the SSL certificate for the server is to be verified. By default, this option is set to True. |
The following automated operations can be included in playbooks and you can also use the annotations to access operations:
| Function | Description | Annotation and Category |
|---|---|---|
| Create Repository | Creates a new repository based on the repository type, repository name, and other input parameters that you have specified. | create_repository Investigation |
| Create Repository Using Templates | Creates a new repository based on the repository type, repository name, a template, and other input parameters that you have specified. | create_repository_using_templates Investigation |
| List User Repositories | Retrieves a list of user repositories filtered by the user ID, visibility, and other filter conditions that you have specified. When accessed without authentication, only public repositories are returned. | list_user_repositories Investigation |
| List Authenticated User Repositories | Retrieves a list of authenticated user repositories filtered by the access level, visibility, and other filter conditions that you have specified. | list_authenticated_user_repositories Investigation |
| List Group Repositories | Retrieves a list of group repositories filtered by the group name, visibility, and other filter conditions that you have specified.. When accessed without authentication, only public repositories are returned. | list_group_repositories Investigation |
| Update Repository | Updates an existing repository based on the repository type, repository name, and other input parameters that you have specified. | update_repository Investigation |
| Delete Repository | Deletes a repository including all associated resources, like issues and merge requests, based on the repository type, repository name, and other input parameters that you have specified. | delete_repository Investigation |
| Fork Repository | Forks a repository into the user namespace based on the repository type, repository name, and other input parameters that you have specified. | fork_repository Investigation |
| List Fork Repositories | Retrieves a list of the projects accessible to the calling user that have an established, forked relationship with the specified project | list_fork_repositories Investigation |
| Create File | Creates a single file in the GitLab repository based on the repository ID, branch name, file name and other input parameters that you have specified.. | create_new_file_in_repository Investigation |
| Get File | Retrieves information such as name, size, content, etc. about a file from the GitLab repository based on the repository ID, branch name, file name, and other input parameters that you have specified. | get_file_from_repository Investigation |
| Update File | Updates a single file in the GitLab repository based on the repository ID, branch name, file name and other input parameters. | update_file_in_repository Investigation |
| Delete File | Deletes a single file in the GitLab repository based on the repository ID, branch name, file name and other input parameters. | delete_existing_file_in_repository Investigation |
| Add Member to Repository | Adds a member to a GitLab project based on the username, access level, and other input parameters that you have specified. | add_member_to_repository Investigation |
| Get Member List of Repository | Retrieves a list of group or repository members viewable by the authenticated user, including inherited members, invited users, and permissions through ancestor groups. | get_member_list_of_repository Investigation |
| Create Repository Branch | Creates a new branch in the repository based on the repository type, branch name, and other input parameters that you have specified. | create_repository_branch Investigation |
| Get Repository Branch | Retrieves a repository branch from a GitLab Repository based on the repository type, branch name, and other input parameters that you have specified. | get_repository_branch Investigation |
| List Repository Branches | Retrieves a list of repository branches from a project, alphabetically sorted by name based on the repository type, branch name, and other input parameters that you have specified. | list_repository_branches Investigation |
| Delete Repository Branch | Deletes a branch from the repository based on the repository type and branch name that you have specified. | delete_repository_branch Investigation |
| Create Merge Request | Creates a new merge request (MR) on a repository based on the repository type, branch name, and other input parameters that you have specified. | create_merge_request Investigation |
| List Repository Merge Requests | Retrieves a list of all merge requests for a project based on the repository type, repository name, and other input parameters that you have specified. | list_repository_merge_requests Investigation |
| Update Merge Request | Updates an existing merge request. You can change the target branch, title, Add Reviewers, Assignees or even close the MR. | update_merge_request Investigation |
| List Merge Request Reviewers | Retrieves a list of merge request reviewers based on the repository type, repository name, and other input parameters that you have specified. | list_merge_request_reviewers Investigation |
| Create Merge Request Comment | Creates a new note/comment on a merge request based on the repository type, repository name, and other input parameters that you have specified. | create_merge_request_comment Investigation |
| List Merge Request Comments | Retrieves a list of all notes/comments for a merge request based on the repository type, repository name, and other input parameters that you have specified. | list_merge_request_comments Investigation |
| Merge a Merge Request | Accept and merge changes in the merge request based on the repository type, repository name, and other input parameters that you have specified. | merge_a_merge_request Investigation |
| Create Issue | Creates a new issue within a GitLab project based on the repository type, repository name, and other input parameters that you have specified. | create_issue Investigation |
| List Repository Issues | Retrieves a list of a project's issues based on the repository type, repository name, and other input parameters that you have specified. | list_repository_issues Investigation |
| Update Issue | Updates an existing issue based on the repository type, repository name, and other input parameters that you have specified. This call is also used to mark an issue as closed. | update_issue Investigation |
| Create Issue Comment | Creates a new note/comment to a single repository issue based on the repository type, repository name, and other input parameters that you have specified. | create_issue_comment Investigation |
| Create Release | Creates a new GitLab release based on the repository type, repository name, and other input parameters that you have specified. Developer level access to the repository is required to create a release. | create_release Investigation |
| List Releases | Retrieves a paginated list of releases, sorted by the date when they were released, based on the repository type, repository name, and other input parameters that you have specified. | list_releases Investigation |
| Star Repository | Stars a given GitLab project based on the repository type and repository name that you have specified. Returns a status code 304 if the repository is already starred. |
star_repository Investigation |
| List Starrers | Retrieves a list of users who have starred the specified project based on the repository type, repository name, and other input parameters that you have specified. | list_starrers Investigation |
| Update Repository Notification Level | Updates a repository's notification settings via a specified notification level based on the repository type, repository name, and other input parameters that you have specified. | update_repository_notification_level Investigation |
| Update Remote Repository | Applies changes made in a FortiSOAR™ file to the specified remote repository that is cloned from GitLab based on the file IRI and cloned repository path that you have specified. | update_remote_repository Investigation |
| Clone Repository | Clones the specified repository in a GitLab project based on the repository type, repository name, and other input parameters that you have specified. | clone_repository Investigation |
| Push Changes | Commits the local changes to the specified repository in a GitLab project based on the repository type, organization or repository owner's name, repository name, cloned repository path, and other input parameters you have specified. | push_changes Investigation |
| Fetch Upstream | Creates a merge request for a branch of a forked repository to keep it up-to-date with the upstream repository based on the repository type, repository name, and other input parameters that you have specified. | fetch_upstream Investigation |
| Review Merge Request | Review an merge request based on the repository type, repository name, and other input parameters that you have specified. You can approve or reject an MR. | review_merge_request Investigation |
| Get Approval State of Merge Request | Retrieves information about a merge request's approval state based on the repository type, repository name, and other input parameters that you have specified. | get_approval_state_of_merge_request Investigation |
| Get Server URL | Retrieves the server URL (Web URL) of the configured GitLab server. | get_web_url Investigation |
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to create on GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository to create. |
| Description | (Optional) Specify a short description of the repository being created on GitLab. |
| Visibility of Repository | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Issues Access Level | (Optional) Select to allow creation of issues on this repository. You can select from the following options:
|
| Has Wiki | (Optional) Select to create a wiki for this project. You can select from the following options:
|
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"description": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"created_at": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"forks_count": "",
"avatar_url": "",
"star_count": "",
"last_activity_at": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": "",
"parent_id": "",
"avatar_url": "",
"web_url": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
},
"packages_enabled": "",
"empty_repo": "",
"archived": "",
"visibility": "",
"owner": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"resolve_outdated_diff_discussions": "",
"container_expiration_policy": {
"cadence": "",
"enabled": "",
"keep_n": "",
"older_than": "",
"name_regex": "",
"name_regex_keep": "",
"next_run_at": ""
},
"issues_enabled": "",
"merge_requests_enabled": "",
"wiki_enabled": "",
"jobs_enabled": "",
"snippets_enabled": "",
"container_registry_enabled": "",
"service_desk_enabled": "",
"service_desk_address": "",
"can_create_merge_request_in": "",
"issues_access_level": "",
"repository_access_level": "",
"merge_requests_access_level": "",
"forking_access_level": "",
"wiki_access_level": "",
"builds_access_level": "",
"snippets_access_level": "",
"pages_access_level": "",
"analytics_access_level": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"releases_access_level": "",
"environments_access_level": "",
"feature_flags_access_level": "",
"infrastructure_access_level": "",
"monitor_access_level": "",
"emails_disabled": "",
"emails_enabled": "",
"shared_runners_enabled": "",
"lfs_enabled": "",
"creator_id": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"open_issues_count": "",
"description_html": "",
"updated_at": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_job_token_scope_enabled": "",
"ci_separated_caches": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"build_git_strategy": "",
"keep_latest_artifact": "",
"restrict_user_defined_variables": "",
"runners_token": "",
"runner_token_expiration_interval": "",
"group_runners_enabled": "",
"auto_cancel_pending_pipelines": "",
"build_timeout": "",
"auto_devops_enabled": "",
"auto_devops_deploy_strategy": "",
"ci_config_path": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"request_access_enabled": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"printing_merge_request_link_enabled": "",
"merge_method": "",
"squash_option": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"autoclose_referenced_issues": "",
"external_authorization_classification_label": "",
"requirements_enabled": "",
"requirements_access_level": "",
"security_and_compliance_enabled": "",
"compliance_frameworks": []
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to create on GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository to create. |
| Use Custom Template | (Optional) Select to use a custom template (Requires Premium GitLab access). Clear the checkbox to use a built-in template. |
| Create Repository By | Select the method by which to reference the template for creating repository. You can select one of the following options:
|
| Description | (Optional) Specify a short description of the repository being created on GitLab. |
| Visibility of Repository | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Issues Access Level | (Optional) Select to allow creation of issues on this repository. You can select from the following options:
|
| Has Wiki | (Optional) Select to create a wiki for this project. You can select from the following options:
|
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"description": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"created_at": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"forks_count": "",
"avatar_url": "",
"star_count": "",
"last_activity_at": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": "",
"parent_id": "",
"avatar_url": "",
"web_url": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
},
"packages_enabled": "",
"empty_repo": "",
"archived": "",
"visibility": "",
"owner": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"resolve_outdated_diff_discussions": "",
"container_expiration_policy": {
"cadence": "",
"enabled": "",
"keep_n": "",
"older_than": "",
"name_regex": "",
"name_regex_keep": "",
"next_run_at": ""
},
"issues_enabled": "",
"merge_requests_enabled": "",
"wiki_enabled": "",
"jobs_enabled": "",
"snippets_enabled": "",
"container_registry_enabled": "",
"service_desk_enabled": "",
"service_desk_address": "",
"can_create_merge_request_in": "",
"issues_access_level": "",
"repository_access_level": "",
"merge_requests_access_level": "",
"forking_access_level": "",
"wiki_access_level": "",
"builds_access_level": "",
"snippets_access_level": "",
"pages_access_level": "",
"analytics_access_level": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"releases_access_level": "",
"environments_access_level": "",
"feature_flags_access_level": "",
"infrastructure_access_level": "",
"monitor_access_level": "",
"emails_disabled": "",
"emails_enabled": "",
"shared_runners_enabled": "",
"lfs_enabled": "",
"creator_id": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"open_issues_count": "",
"description_html": "",
"updated_at": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_job_token_scope_enabled": "",
"ci_separated_caches": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"build_git_strategy": "",
"keep_latest_artifact": "",
"restrict_user_defined_variables": "",
"runners_token": "",
"runner_token_expiration_interval": "",
"group_runners_enabled": "",
"auto_cancel_pending_pipelines": "",
"build_timeout": "",
"auto_devops_enabled": "",
"auto_devops_deploy_strategy": "",
"ci_config_path": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"request_access_enabled": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"printing_merge_request_link_enabled": "",
"merge_method": "",
"squash_option": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"autoclose_referenced_issues": "",
"external_authorization_classification_label": "",
"requirements_enabled": "",
"requirements_access_level": "",
"security_and_compliance_enabled": "",
"compliance_frameworks": []
}
| Parameter | Description |
|---|---|
| User ID | Specify the ID or username of the user whose repositories are to be listed. |
| Owned by the User | (Optional) Select to limit projects explicitly owned by the specified user. |
| Visibility | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"description": "",
"description_html": "",
"default_branch": "",
"visibility": "",
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"tag_list": [],
"topics": [],
"owner": {
"id": "",
"name": "",
"created_at": ""
},
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"issues_enabled": "",
"open_issues_count": "",
"merge_requests_enabled": "",
"jobs_enabled": "",
"wiki_enabled": "",
"snippets_enabled": "",
"can_create_merge_request_in": "",
"resolve_outdated_diff_discussions": "",
"container_registry_enabled": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"created_at": "",
"updated_at": "",
"last_activity_at": "",
"creator_id": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": ""
},
"archived": "",
"avatar_url": "",
"shared_runners_enabled": "",
"group_runners_enabled": "",
"forks_count": "",
"star_count": "",
"runners_token": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"ci_separated_caches": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"restrict_user_defined_variables": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"request_access_enabled": "",
"merge_method": "",
"squash_option": "",
"autoclose_referenced_issues": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"marked_for_deletion_at": "",
"marked_for_deletion_on": "",
"statistics": {
"commit_count": "",
"storage_size": "",
"repository_size": "",
"wiki_size": "",
"lfs_objects_size": "",
"job_artifacts_size": "",
"pipeline_artifacts_size": "",
"packages_size": "",
"snippets_size": "",
"uploads_size": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
}
}
]
| Parameter | Description |
|---|---|
| Minimum Access Level | (Optional) Select the current user's minimal access level to retrieve their repositories. You can select one of the following options:
|
| Visibility | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"description": "",
"description_html": "",
"default_branch": "",
"visibility": "",
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"tag_list": [],
"topics": [],
"owner": {
"id": "",
"name": "",
"created_at": ""
},
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"issues_enabled": "",
"open_issues_count": "",
"merge_requests_enabled": "",
"jobs_enabled": "",
"wiki_enabled": "",
"snippets_enabled": "",
"can_create_merge_request_in": "",
"resolve_outdated_diff_discussions": "",
"container_registry_enabled": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"created_at": "",
"updated_at": "",
"last_activity_at": "",
"creator_id": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": ""
},
"archived": "",
"avatar_url": "",
"shared_runners_enabled": "",
"group_runners_enabled": "",
"forks_count": "",
"star_count": "",
"runners_token": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"ci_separated_caches": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"restrict_user_defined_variables": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"request_access_enabled": "",
"merge_method": "",
"squash_option": "",
"autoclose_referenced_issues": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"marked_for_deletion_at": "",
"marked_for_deletion_on": "",
"statistics": {
"commit_count": "",
"storage_size": "",
"repository_size": "",
"wiki_size": "",
"lfs_objects_size": "",
"job_artifacts_size": "",
"pipeline_artifacts_size": "",
"packages_size": "",
"snippets_size": "",
"uploads_size": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
}
}
]
| Parameter | Description |
|---|---|
| Group Name | Specify the name of the group whose repositories to retrieve from GitLab. |
| Visibility | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"description": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"archived": "",
"visibility": "",
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"issues_enabled": "",
"merge_requests_enabled": "",
"wiki_enabled": "",
"jobs_enabled": "",
"snippets_enabled": "",
"created_at": "",
"last_activity_at": "",
"shared_runners_enabled": "",
"creator_id": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": ""
},
"avatar_url": "",
"star_count": "",
"forks_count": "",
"open_issues_count": "",
"public_jobs": "",
"shared_with_groups": [],
"request_access_enabled": ""
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to update on GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository to update on GitLab. |
| New Repository Name | (Optional) Specify the new name of the repository to update on GitLab. |
| Description | (Optional) Specify a short description of the repository to update on GitLab. |
| Visibility of Repository | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Issues Access Level | (Optional) Select to update creation of issues on this repository. You can select from the following options:
|
| Has Wiki | (Optional) Select to update the wiki status for this project. You can select from the following options:
|
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"description": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"created_at": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"forks_count": "",
"avatar_url": "",
"star_count": "",
"last_activity_at": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": "",
"parent_id": "",
"avatar_url": "",
"web_url": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
},
"packages_enabled": "",
"empty_repo": "",
"archived": "",
"visibility": "",
"owner": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"resolve_outdated_diff_discussions": "",
"container_expiration_policy": {
"cadence": "",
"enabled": "",
"keep_n": "",
"older_than": "",
"name_regex": "",
"name_regex_keep": "",
"next_run_at": ""
},
"issues_enabled": "",
"merge_requests_enabled": "",
"wiki_enabled": "",
"jobs_enabled": "",
"snippets_enabled": "",
"container_registry_enabled": "",
"service_desk_enabled": "",
"service_desk_address": "",
"can_create_merge_request_in": "",
"issues_access_level": "",
"repository_access_level": "",
"merge_requests_access_level": "",
"forking_access_level": "",
"wiki_access_level": "",
"builds_access_level": "",
"snippets_access_level": "",
"pages_access_level": "",
"analytics_access_level": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"releases_access_level": "",
"environments_access_level": "",
"feature_flags_access_level": "",
"infrastructure_access_level": "",
"monitor_access_level": "",
"emails_disabled": "",
"emails_enabled": "",
"shared_runners_enabled": "",
"lfs_enabled": "",
"creator_id": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"open_issues_count": "",
"description_html": "",
"updated_at": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_job_token_scope_enabled": "",
"ci_separated_caches": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"build_git_strategy": "",
"keep_latest_artifact": "",
"restrict_user_defined_variables": "",
"runners_token": "",
"runner_token_expiration_interval": "",
"group_runners_enabled": "",
"auto_cancel_pending_pipelines": "",
"build_timeout": "",
"auto_devops_enabled": "",
"auto_devops_deploy_strategy": "",
"ci_config_path": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"request_access_enabled": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"printing_merge_request_link_enabled": "",
"merge_method": "",
"squash_option": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"autoclose_referenced_issues": "",
"external_authorization_classification_label": "",
"requirements_enabled": "",
"requirements_access_level": "",
"security_and_compliance_enabled": "",
"compliance_frameworks": []
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to delete on GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository to delete. |
The output contains the following populated JSON schema:
{
"message": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to fork on GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository in GitLab to fork. |
| New Repository Name | (Optional) Specify the name to assign to the resultant repository after forking. |
| Description | (Optional) Specify a short description to the resultant repository after forking. |
| Visibility of Repository | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"description": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"created_at": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"forks_count": "",
"avatar_url": "",
"star_count": "",
"last_activity_at": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": "",
"parent_id": "",
"avatar_url": "",
"web_url": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
},
"packages_enabled": "",
"empty_repo": "",
"archived": "",
"visibility": "",
"owner": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"resolve_outdated_diff_discussions": "",
"container_expiration_policy": {
"cadence": "",
"enabled": "",
"keep_n": "",
"older_than": "",
"name_regex": "",
"name_regex_keep": "",
"next_run_at": ""
},
"issues_enabled": "",
"merge_requests_enabled": "",
"wiki_enabled": "",
"jobs_enabled": "",
"snippets_enabled": "",
"container_registry_enabled": "",
"service_desk_enabled": "",
"service_desk_address": "",
"can_create_merge_request_in": "",
"issues_access_level": "",
"repository_access_level": "",
"merge_requests_access_level": "",
"forking_access_level": "",
"wiki_access_level": "",
"builds_access_level": "",
"snippets_access_level": "",
"pages_access_level": "",
"analytics_access_level": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"releases_access_level": "",
"environments_access_level": "",
"feature_flags_access_level": "",
"infrastructure_access_level": "",
"monitor_access_level": "",
"emails_disabled": "",
"emails_enabled": "",
"shared_runners_enabled": "",
"lfs_enabled": "",
"creator_id": "",
"forked_from_project": {
"id": "",
"description": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"created_at": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"forks_count": "",
"avatar_url": "",
"star_count": "",
"last_activity_at": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": "",
"parent_id": "",
"avatar_url": "",
"web_url": ""
}
},
"mr_default_target_self": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"open_issues_count": "",
"description_html": "",
"updated_at": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_job_token_scope_enabled": "",
"ci_separated_caches": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"build_git_strategy": "",
"keep_latest_artifact": "",
"restrict_user_defined_variables": "",
"runners_token": "",
"runner_token_expiration_interval": "",
"group_runners_enabled": "",
"auto_cancel_pending_pipelines": "",
"build_timeout": "",
"auto_devops_enabled": "",
"auto_devops_deploy_strategy": "",
"ci_config_path": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"request_access_enabled": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"printing_merge_request_link_enabled": "",
"merge_method": "",
"squash_option": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"autoclose_referenced_issues": "",
"external_authorization_classification_label": "",
"requirements_enabled": "",
"requirements_access_level": "",
"security_and_compliance_enabled": "",
"compliance_frameworks": []
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to retrieve from GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository whose forks are to be retrieved. |
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"description": "",
"description_html": "",
"default_branch": "",
"visibility": "",
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"tag_list": [],
"topics": [],
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"issues_enabled": "",
"open_issues_count": "",
"merge_requests_enabled": "",
"jobs_enabled": "",
"wiki_enabled": "",
"snippets_enabled": "",
"can_create_merge_request_in": "",
"resolve_outdated_diff_discussions": "",
"container_registry_enabled": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"created_at": "",
"updated_at": "",
"last_activity_at": "",
"creator_id": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": ""
},
"import_status": "",
"archived": "",
"avatar_url": "",
"shared_runners_enabled": "",
"group_runners_enabled": "",
"forks_count": "",
"star_count": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"restrict_user_defined_variables": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"request_access_enabled": "",
"merge_method": "",
"squash_option": "",
"autoclose_referenced_issues": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
}
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository on which to create the file. You can select from the following options:
|
| Repository Name | Specify the name of the repository within which the file is to be created. |
| Branch Name | Specify the name of the branch in which to create the file. |
| File Name | Specify the name of the file to create. |
| Content Information | Specify the contents to add to the file being created. |
| Commit Message | Specify the commit message to add while creating the file. |
| Author Email ID | (Optional) Specify the email address of the commit author to add while creating the file. |
| Author Name | (Optional) Specify the name of the commit author to add while creating the file. |
The output contains the following populated JSON schema:
{
"file_path": "",
"branch": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the file. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which the file is to be retrieved. |
| Branch Name | Specify the name of the branch from which to retrieve the file. |
| File Name | Specify the name of the file to retrieve. |
| Decode Content | (Optional) Select to decode the file contents. The files are Base64 encoded. |
The output contains the following populated JSON schema:
{
"file_name": "",
"file_path": "",
"size": "",
"encoding": "",
"content_sha256": "",
"ref": "",
"blob_id": "",
"commit_id": "",
"last_commit_id": "",
"content": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to update the file. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which the file is to be updated. |
| Branch Name | Specify the name of the branch in which to update the file. |
| File Name | Specify the name of the file to update. |
| Content Information | Specify the contents to update in the file being updated. |
| Operation | Select the operation to perform on the existing content. You can choose from following options:
|
| Commit Message | Specify the commit message for updating the file. |
The output contains the following populated JSON schema:
{
"file_path": "",
"branch": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to delete the file. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which the file is to be deleted. |
| Branch Name | Specify the name of the branch in which to delete the file. |
| File Name | Specify the name of the file to delete. |
| Commit Message | Specify the commit message for deleting the file. |
| Author Email ID | (Optional) Specify the email address of the commit author to add while deleting the file. |
| Author Name | (Optional) Specify the name of the commit author to add while deleting the file. |
The output contains a non-dictionary value.
| Parameter | Description |
|---|---|
| Add Member To | Select where you want to add the specified collaborator. You can select from the following options:
|
| Username | Specify the username of the member to add as a collaborator in the project. |
| Access Level | Select the access level to grant to the specified collaborator. You can select from following options:
NOTE: Permissions are applicable only on organization-owned repositories. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": "",
"created_at": "",
"created_by": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"expires_at": "",
"access_level": "",
"email": "",
"group_saml_identity": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to retrieve its collaborators. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the collaborators. |
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": "",
"created_at": "",
"created_by": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"expires_at": "",
"access_level": "",
"group_saml_identity": ""
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create the branch. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the branch. |
| Branch | Specify the URL-encoded name of the branch to create. For more information on URL-encoded name on GitLab, refer https://docs.gitlab.com/ee/api/rest/index.html#namespaced-path-encoding. |
| Reference Branch | Specify the branch name or the commit SHA from which to create the new branch. |
The output contains the following populated JSON schema:
{
"commit": {
"id": "",
"short_id": "",
"created_at": "",
"parent_ids": [],
"title": "",
"message": "",
"author_name": "",
"author_email": "",
"authored_date": "",
"committer_name": "",
"committer_email": "",
"committed_date": "",
"trailers": {},
"web_url": ""
},
"name": "",
"merged": "",
"protected": "",
"default": "",
"developers_can_push": "",
"developers_can_merge": "",
"can_push": "",
"web_url": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the branch. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the branch. |
| Branch | Specify the URL-encoded name of the branch to retrieve. For more information on URL-encoded name on GitLab, refer https://docs.gitlab.com/ee/api/rest/index.html#namespaced-path-encoding. |
The output contains the following populated JSON schema:
{
"name": "",
"merged": "",
"protected": "",
"default": "",
"developers_can_push": "",
"developers_can_merge": "",
"can_push": "",
"web_url": "",
"commit": {
"id": "",
"short_id": "",
"created_at": "",
"parent_ids": [],
"title": "",
"message": "",
"author_name": "",
"author_email": "",
"authored_date": "",
"committer_name": "",
"committer_email": "",
"committed_date": "",
"trailers": {},
"web_url": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository whose branches to retrieve. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the branches. |
| RE2 Regex Expression | (Optional) Specify a re2 regular expression to filter and return the list of branches with names matching the expression. For example, ^release\/(\d+\.\d+)$ retrieves branches matching release/2.0, release/3.5, release/4.2, release/3.14 etc. For more information about re2 regular expression syntax, see https://github.com/google/re2/wiki/Syntax. |
The output contains the following populated JSON schema:
[
{
"name": "",
"merged": "",
"protected": "",
"default": "",
"developers_can_push": "",
"developers_can_merge": "",
"can_push": "",
"web_url": "",
"commit": {
"id": "",
"short_id": "",
"created_at": "",
"parent_ids": [],
"title": "",
"message": "",
"author_name": "",
"author_email": "",
"authored_date": "",
"committer_name": "",
"committer_email": "",
"committed_date": "",
"trailers": {},
"web_url": ""
}
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to delete the branch. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to delete the branch. |
| Branch | Specify the URL-encoded name of the branch to delete. For more information on URL-encoded name on GitLab, refer https://docs.gitlab.com/ee/api/rest/index.html#namespaced-path-encoding. |
The output contains a non-dictionary value.
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create the merge request. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the merge request. |
| Source Branch | Specify the source branch, from where to pull the changes, for the merge request. |
| Target Branch | Specify the target branch, in which to merge the changes, for the merge request. |
| Merge Request Title | Specify a title for the merge request being created in the GitLab repository. |
| Description | (Optional) Specify a short description for the merge request being created in the GitLab repository. |
| Target Repository ID | (Optional) Specify the project ID of the forked repository to create a merge request. |
| Remove Source Branch after Merging | (Optional) Select if the source branch is to be deleted after merge completes. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"target_branch": "",
"source_branch": "",
"upvotes": "",
"downvotes": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignee": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"source_project_id": "",
"target_project_id": "",
"labels": [],
"draft": "",
"work_in_progress": "",
"milestone": {
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": ""
},
"merge_when_pipeline_succeeds": "",
"merge_status": "",
"detailed_merge_status": "",
"merge_error": "",
"sha": "",
"merge_commit_sha": "",
"squash_commit_sha": "",
"user_notes_count": "",
"discussion_locked": "",
"should_remove_source_branch": "",
"force_remove_source_branch": "",
"allow_collaboration": "",
"allow_maintainer_to_push": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"squash": "",
"subscribed": "",
"changes_count": "",
"merged_by": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merge_user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merged_at": "",
"prepared_at": "",
"closed_by": "",
"closed_at": "",
"latest_build_started_at": "",
"latest_build_finished_at": "",
"first_deployed_to_production_at": "",
"pipeline": {
"id": "",
"sha": "",
"ref": "",
"status": "",
"web_url": ""
},
"diff_refs": {
"base_sha": "",
"head_sha": "",
"start_sha": ""
},
"diverged_commits_count": "",
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the list of merge requests. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the list of merge requests. |
| State | (Optional) Select an option to retrieve all merge requests with the selected status. You can select one of the following options:
|
| Source Branch | (Optional) Specify the source branch of the merge requests to filter the results. |
| Target Branch | (Optional) Specify the target branch of the merge requests to filter the results. |
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"merged_by": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merge_user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merged_at": "",
"prepared_at": "",
"closed_by": "",
"closed_at": "",
"created_at": "",
"updated_at": "",
"target_branch": "",
"source_branch": "",
"upvotes": "",
"downvotes": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignee": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignees": [
{
"name": "",
"username": "",
"id": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"reviewers": [
{
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"source_project_id": "",
"target_project_id": "",
"labels": [],
"draft": "",
"work_in_progress": "",
"milestone": {
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": ""
},
"merge_when_pipeline_succeeds": "",
"merge_status": "",
"detailed_merge_status": "",
"sha": "",
"merge_commit_sha": "",
"squash_commit_sha": "",
"user_notes_count": "",
"discussion_locked": "",
"should_remove_source_branch": "",
"force_remove_source_branch": "",
"allow_collaboration": "",
"allow_maintainer_to_push": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"squash": "",
"task_completion_status": {
"count": "",
"completed_count": ""
},
"has_conflicts": "",
"blocking_discussions_resolved": ""
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to update the merge request. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to update the merge request. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to update. |
| Title of MR | Specify a title to update in the merge request being updated in the GitLab repository. |
| Assignee Names | (Optional) Specify the comma separated value of the names of the users to assign the merge request to. Set to 0 to unassign all assignees. |
| Reviewer Names | (Optional) Specify the comma separated value of the names of the users to set as a reviewer to the merge request. Set the value to 0 to unset all reviewers. |
| Target Branch | Specify the target branch, in which to merge the changes, to update in the merge request. |
| State | (Optional) Select to update the state of the merge request. You can select from following options:
|
| Description | (Optional) Specify a short description to update in the merge request being updated in the GitLab repository. |
| Remove Source Branch after Merging | (Optional) Select if the source branch is to be deleted after the merge completes. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"target_branch": "",
"source_branch": "",
"upvotes": "",
"downvotes": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignee": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignees": [
{
"name": "",
"username": "",
"id": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"reviewers": [
{
"name": "",
"username": "",
"id": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"source_project_id": "",
"target_project_id": "",
"labels": [],
"draft": "",
"work_in_progress": "",
"milestone": {
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": ""
},
"merge_when_pipeline_succeeds": "",
"merge_status": "",
"detailed_merge_status": "",
"merge_error": "",
"sha": "",
"merge_commit_sha": "",
"squash_commit_sha": "",
"user_notes_count": "",
"discussion_locked": "",
"should_remove_source_branch": "",
"force_remove_source_branch": "",
"allow_collaboration": "",
"allow_maintainer_to_push": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"squash": "",
"subscribed": "",
"changes_count": "",
"merged_by": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merge_user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merged_at": "",
"prepared_at": "",
"closed_by": "",
"closed_at": "",
"latest_build_started_at": "",
"latest_build_finished_at": "",
"first_deployed_to_production_at": "",
"pipeline": {
"id": "",
"sha": "",
"ref": "",
"status": "",
"web_url": ""
},
"diff_refs": {
"base_sha": "",
"head_sha": "",
"start_sha": ""
},
"diverged_commits_count": "",
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the list of merge request reviewers. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the list of merge request reviewers. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to retrieve its reviewers. |
The output contains the following populated JSON schema:
[
{
"user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"state": "",
"created_at": ""
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create a merge request comment. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the merge request comment. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to create the comment. |
| Description | Specify text for the merge request comment. The maximum limit is 1,000,000 characters. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"project_id": "",
"id": "",
"created_at": "",
"iid": "",
"title": "",
"state": "",
"assignees": [],
"assignee": "",
"type": "",
"labels": [],
"upvotes": "",
"downvotes": "",
"merge_requests_count": "",
"author": {
"name": "",
"avatar_url": "",
"state": "",
"web_url": "",
"id": "",
"username": ""
},
"description": "",
"updated_at": "",
"closed_at": "",
"closed_by": "",
"milestone": "",
"subscribed": "",
"user_notes_count": "",
"due_date": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"confidential": "",
"discussion_locked": "",
"issue_type": "",
"severity": "",
"_links": {
"self": "",
"notes": "",
"award_emoji": "",
"project": "",
"closed_as_duplicate_of": ""
},
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the merge request comments. You can select from the following options:
|
| Repository Name | Specify the name of the repository from whose merge request the comments are to be retrieved. |
| Merge Request IID | Specify The internal ID (IID) of a merge request whose comments are to be retrieved. |
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
The output contains the following populated JSON schema:
[
{
"id": "",
"body": "",
"attachment": "",
"author": {
"id": "",
"username": "",
"email": "",
"name": "",
"state": "",
"created_at": ""
},
"created_at": "",
"updated_at": "",
"system": "",
"noteable_id": "",
"noteable_type": "",
"project_id": "",
"noteable_iid": "",
"resolvable": "",
"confidential": "",
"internal": ""
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to merge the merge request. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to merge the merge request. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to merge. |
| Merge Commit Message | (Optional) Specify a message to attach to the merge commit. |
| Remove Source Branch after Merging | (Optional) Select if the source branch is to be deleted after the merge completes. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"target_branch": "",
"source_branch": "",
"upvotes": "",
"downvotes": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignee": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignees": [
{
"name": "",
"username": "",
"id": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"reviewers": [
{
"name": "",
"username": "",
"id": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"source_project_id": "",
"target_project_id": "",
"labels": [],
"draft": "",
"work_in_progress": "",
"milestone": {
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": ""
},
"merge_when_pipeline_succeeds": "",
"merge_status": "",
"detailed_merge_status": "",
"merge_error": "",
"sha": "",
"merge_commit_sha": "",
"squash_commit_sha": "",
"user_notes_count": "",
"discussion_locked": "",
"should_remove_source_branch": "",
"force_remove_source_branch": "",
"allow_collaboration": "",
"allow_maintainer_to_push": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"squash": "",
"subscribed": "",
"changes_count": "",
"merged_by": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merge_user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merged_at": "",
"prepared_at": "",
"closed_by": "",
"closed_at": "",
"latest_build_started_at": "",
"latest_build_finished_at": "",
"first_deployed_to_production_at": "",
"pipeline": {
"id": "",
"sha": "",
"ref": "",
"status": "",
"web_url": ""
},
"diff_refs": {
"base_sha": "",
"head_sha": "",
"start_sha": ""
},
"diverged_commits_count": "",
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create the issue. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the issue. |
| Title of Issue | Specify title of issue being created in the GitLab repository. |
| Description | (Optional) Specify a short description for the issue being created. |
| Assignee Name | (Optional) Specify the the name of the user to whom to assign the issue. |
| Assignee Names | (Optional) Specify a comma-separated list of users to whom to assign the issue. |
| Labels | (Optional) Specify a comma-separated list of label names to be assigned to the issue. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"project_id": "",
"id": "",
"created_at": "",
"iid": "",
"title": "",
"state": "",
"assignees": [],
"assignee": "",
"type": "",
"labels": [],
"upvotes": "",
"downvotes": "",
"merge_requests_count": "",
"author": {
"name": "",
"avatar_url": "",
"state": "",
"web_url": "",
"id": "",
"username": ""
},
"description": "",
"updated_at": "",
"closed_at": "",
"closed_by": "",
"milestone": "",
"subscribed": "",
"user_notes_count": "",
"due_date": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"confidential": "",
"discussion_locked": "",
"issue_type": "",
"severity": "",
"_links": {
"self": "",
"notes": "",
"award_emoji": "",
"project": "",
"closed_as_duplicate_of": ""
},
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the list of issues. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the list of issues. |
| Assignee Name | (Optional) Specify the the name of the user whose assigned issues are to be retrieved. |
| State | (Optional) Select the state of the issues to retrieve. You can select from the following options:
|
| Created After | (Optional) Specify the time to retrieve issues which were created after the specified time. |
| Since | (Optional) Specify the time to retrieve the issues which is updated after specified time. |
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"project_id": "",
"milestone": {
"due_date": "",
"project_id": "",
"state": "",
"description": "",
"iid": "",
"id": "",
"title": "",
"created_at": "",
"updated_at": ""
},
"author": {
"state": "",
"web_url": "",
"avatar_url": "",
"username": "",
"id": "",
"name": ""
},
"description": "",
"state": "",
"iid": "",
"assignees": [
{
"avatar_url": "",
"web_url": "",
"state": "",
"username": "",
"id": "",
"name": ""
}
],
"assignee": {
"avatar_url": "",
"web_url": "",
"state": "",
"username": "",
"id": "",
"name": ""
},
"type": "",
"labels": [],
"upvotes": "",
"downvotes": "",
"merge_requests_count": "",
"id": "",
"title": "",
"updated_at": "",
"created_at": "",
"closed_at": "",
"closed_by": {
"state": "",
"web_url": "",
"avatar_url": "",
"username": "",
"id": "",
"name": ""
},
"user_notes_count": "",
"due_date": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"has_tasks": "",
"task_status": "",
"confidential": "",
"discussion_locked": "",
"issue_type": "",
"severity": "",
"_links": {
"self": "",
"notes": "",
"award_emoji": "",
"project": "",
"closed_as_duplicate_of": ""
},
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to update the issue. You can select from the following options:
|
| Repository Name | Specify the name of the repository whose issues are to be updated on GitLab. |
| Issue IID | Specify The internal ID (IID) of the issue to update. |
| Title of Issue | Specify title of issue to update. |
| Description | (Optional) Specify a short updated description of the issue to update. |
| Assignee Names | (Optional) Specify a comma-separated list of users to whom to assign the issue. Set to 0 or leave the parameter blank to remove all assignees. |
| Confidential | (Optional) Select True if the issue is to be marked confidential, select False to mark the issue as non-confidential, or leave it blank to ignore the confidentiality status. |
| Issue Type | (Optional) Select the type of the issue to update. You can choose from the following options:
|
| State | (Optional) Select the state of the issue to update. You can choose from the following options:
|
| Labels | (Optional) Specify a comma-separated list of label names to be assigned to an issue.
NOTE: Existing labels are removed when applying the specified list. |
| Due Date | (Optional) Specify a due date for the issue. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"project_id": "",
"id": "",
"created_at": "",
"iid": "",
"title": "",
"state": "",
"assignees": [],
"assignee": "",
"type": "",
"labels": [],
"upvotes": "",
"downvotes": "",
"merge_requests_count": "",
"author": {
"name": "",
"avatar_url": "",
"state": "",
"web_url": "",
"id": "",
"username": ""
},
"description": "",
"updated_at": "",
"closed_at": "",
"closed_by": "",
"milestone": "",
"subscribed": "",
"user_notes_count": "",
"due_date": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"confidential": "",
"discussion_locked": "",
"issue_type": "",
"severity": "",
"_links": {
"self": "",
"notes": "",
"award_emoji": "",
"project": "",
"closed_as_duplicate_of": ""
},
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create the issue comment. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the issue comment. |
| Issue IID | Specify The internal ID (IID) of issue to create the comment. |
| Comment | Specify the text for the issue comment. The maximum limit is 1,000,000 characters. |
| Confidential | (Optional) Select True if the issue is to be marked confidential, select False to mark the issue as non-confidential, or leave it blank to ignore the confidentiality status. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"project_id": "",
"id": "",
"created_at": "",
"iid": "",
"title": "",
"state": "",
"assignees": [],
"assignee": "",
"type": "",
"labels": [],
"upvotes": "",
"downvotes": "",
"merge_requests_count": "",
"author": {
"name": "",
"avatar_url": "",
"state": "",
"web_url": "",
"id": "",
"username": ""
},
"description": "",
"updated_at": "",
"closed_at": "",
"closed_by": "",
"milestone": "",
"subscribed": "",
"user_notes_count": "",
"due_date": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"confidential": "",
"discussion_locked": "",
"issue_type": "",
"severity": "",
"_links": {
"self": "",
"notes": "",
"award_emoji": "",
"project": "",
"closed_as_duplicate_of": ""
},
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create the release. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the release. |
| Tag Name | Specify the tag from where the release is created. |
| Target Branch | (Optional) Specify the branch name from where the release tag is to be created.
NOTE: This field is mandatory if no tags exist. If a tag exists, it does not update the existing tag. |
| Tag Message | (Optional) Specify the message to use if creating a new annotated tag. |
| Name of Release | (Optional) Specify a name of release that you want to create in the GitLab repository. |
| Description | (Optional) Specify a short description of the release you want to create on GitLab |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"tag_name": "",
"description": "",
"name": "",
"created_at": "",
"released_at": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"commit": {
"id": "",
"short_id": "",
"title": "",
"created_at": "",
"parent_ids": [],
"message": "",
"author_name": "",
"author_email": "",
"authored_date": "",
"committer_name": "",
"committer_email": "",
"committed_date": ""
},
"milestones": [
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": "",
"issue_stats": {
"total": "",
"closed": ""
}
}
],
"commit_path": "",
"tag_path": "",
"evidence_sha": "",
"assets": {
"count": "",
"sources": [
{
"format": "",
"url": ""
}
],
"links": [
{
"id": "",
"name": "",
"url": "",
"link_type": ""
}
],
"evidence_file_path": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the list of releases. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the list of releases. |
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"tag_name": "",
"description": "",
"name": "",
"created_at": "",
"released_at": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"commit": {
"id": "",
"short_id": "",
"title": "",
"created_at": "",
"parent_ids": [],
"message": "",
"author_name": "",
"author_email": "",
"authored_date": "",
"committer_name": "",
"committer_email": "",
"committed_date": ""
},
"milestones": [
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": "",
"issue_stats": {
"total": "",
"closed": ""
}
}
],
"commit_path": "",
"tag_path": "",
"assets": {
"count": "",
"sources": [
{
"format": "",
"url": ""
}
],
"links": [
{
"id": "",
"name": "",
"url": "",
"link_type": ""
}
],
"evidence_file_path": ""
},
"evidences": [
{
"sha": "",
"filepath": "",
"collected_at": ""
}
]
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository which is to be starred. You can select from the following options:
|
| Repository Name | Specify the name of the repository which is to be starred. |
The output contains the following populated JSON schema:
{
"id": "",
"description": "",
"description_html": "",
"default_branch": "",
"visibility": "",
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"tag_list": [],
"topics": [],
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"issues_enabled": "",
"open_issues_count": "",
"merge_requests_enabled": "",
"jobs_enabled": "",
"wiki_enabled": "",
"snippets_enabled": "",
"can_create_merge_request_in": "",
"resolve_outdated_diff_discussions": "",
"container_registry_enabled": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"created_at": "",
"updated_at": "",
"last_activity_at": "",
"creator_id": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": ""
},
"import_status": "",
"archived": "",
"avatar_url": "",
"license_url": "",
"license": {
"key": "",
"name": "",
"nickname": "",
"html_url": "",
"source_url": ""
},
"shared_runners_enabled": "",
"group_runners_enabled": "",
"forks_count": "",
"star_count": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"restrict_user_defined_variables": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"request_access_enabled": "",
"merge_method": "",
"squash_option": "",
"autoclose_referenced_issues": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the list of starrers (users who have starred a repository). You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the list of starrers. |
| Search | (Optional) Specify a search string using which to search for specific users. |
The output contains the following populated JSON schema:
[
{
"starred_since": "",
"user": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository whose notification level is to be updated. You can select from the following options:
|
| Repository Name | Specify the name of the repository whose notification level is to be updated. |
| Notification Level | Specify the notification level to be updated. You can select from following options:
|
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"level": "",
"events": {
"new_note": "",
"new_issue": "",
"reopen_issue": "",
"close_issue": "",
"reassign_issue": "",
"issue_due": "",
"new_merge_request": "",
"push_to_merge_request": "",
"reopen_merge_request": "",
"close_merge_request": "",
"reassign_merge_request": "",
"merge_merge_request": "",
"failed_pipeline": "",
"fixed_pipeline": "",
"success_pipeline": ""
}
}
| Parameter | Description |
|---|---|
| FortiSOAR File IRI | Specify the FortiSOAR file IRI whose changes replace in the specified local repository. |
| Cloned Repository Path | Specify the path of the cloned repository to which to apply the changes of the specified FortiSOAR file. |
The output contains a non-dictionary value.
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to clone. You can select from the following options:
|
| Repository Name | Specify the name of the repository to clone. |
| Branch Name | Specify the branch name of the repository to clone. |
| Clone As ZIP | Select this option to clone the specified repository as a zip file.
|
The output contains the following populated JSON schema:
{
"path": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to push the changes. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to push the changes. |
| Cloned Repository Path | Specify the path of the cloned repository in which to push the changes. |
| Branch Name | Specify the name of the branch in which to push the changes. |
| Commit Message | Specify the commit message to be used for pushing the changes. |
| Commit Description | Specify the commit description to be used for pushing changes. |
The output contains the following populated JSON schema:
{
"add": "",
"commit": "",
"push": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the forked repository in which to fetch upstream changes. You can select from the following options:
|
| Repository Name | Specify the name of the forked repository in which to fetch upstream changes. |
| Title of MR | Specify a title of the merge request to create for the fork. |
| Source Branch | Specify the source branch of the merge request to create for the fork. |
| Target Branch | Specify the target branch of the merge request to create for the fork. |
| Description | (Optional) Specify a short description of the merge request to create for the fork. |
The output contains the following populated JSON schema:
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"target_branch": "",
"source_branch": "",
"upvotes": "",
"downvotes": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignee": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"source_project_id": "",
"target_project_id": "",
"labels": [],
"draft": "",
"work_in_progress": "",
"milestone": {
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": ""
},
"merge_when_pipeline_succeeds": "",
"merge_status": "",
"detailed_merge_status": "",
"merge_error": "",
"sha": "",
"merge_commit_sha": "",
"squash_commit_sha": "",
"user_notes_count": "",
"discussion_locked": "",
"should_remove_source_branch": "",
"force_remove_source_branch": "",
"allow_collaboration": "",
"allow_maintainer_to_push": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"squash": "",
"subscribed": "",
"changes_count": "",
"merged_by": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merge_user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merged_at": "",
"prepared_at": "",
"closed_by": "",
"closed_at": "",
"latest_build_started_at": "",
"latest_build_finished_at": "",
"first_deployed_to_production_at": "",
"pipeline": {
"id": "",
"sha": "",
"ref": "",
"status": "",
"web_url": ""
},
"diff_refs": {
"base_sha": "",
"head_sha": "",
"start_sha": ""
},
"diverged_commits_count": "",
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to review the merge request. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to review the merge request. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to review. |
| Action | Select the action which you want to perform on the merge request. You can choose from following options:
|
The output contains the following populated JSON schema:
Output schema when you choose "Action" "Approve":
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"merge_status": "",
"approved": "",
"approvals_required": "",
"approvals_left": "",
"require_password_to_approve": "",
"approved_by": [
{
"user": {
"id": "",
"username": "",
"name": "",
"state": "",
"locked": "",
"avatar_url": "",
"web_url": ""
}
}
],
"suggested_approvers": [],
"approvers": [],
"approver_groups": [],
"user_has_approved": "",
"user_can_approve": "",
"approval_rules_left": [],
"has_approval_rules": "",
"merge_request_approvers_available": "",
"multiple_approval_rules_available": "",
"invalid_approvers_rules": []
}
Output schema when you choose "Action" "Unapprove":
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"merge_status": "",
"approved": "",
"approvals_required": "",
"approvals_left": "",
"require_password_to_approve": "",
"approved_by": [],
"suggested_approvers": [],
"approvers": [],
"approver_groups": [],
"user_has_approved": "",
"user_can_approve": "",
"approval_rules_left": [],
"has_approval_rules": "",
"merge_request_approvers_available": "",
"multiple_approval_rules_available": "",
"invalid_approvers_rules": []
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the merge request's approval state. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the merge request's approval state. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to retrieve its approval state. |
The output contains the following populated JSON schema:
{
"rules": [
{
"id": "",
"name": "",
"users": [],
"groups": [],
"section": "",
"approved": "",
"rule_type": "",
"code_owner": "",
"overridden": "",
"approved_by": [
{
"id": "",
"name": "",
"state": "",
"locked": "",
"web_url": "",
"username": "",
"avatar_url": ""
}
],
"source_rule": "",
"approvals_required": "",
"eligible_approvers": [],
"contains_hidden_groups": ""
}
],
"approval_rules_overwritten": ""
}
None.
The output contains the following populated JSON schema:
{
"server_url": ""
}
The Sample - GitLab - 2.0.1 playbook collection comes bundled with the GitLab connector. These playbooks contain steps using which you can perform all supported actions. You can see bundled playbooks in the Automation > Playbooks section in FortiSOAR™ after importing the GitLab connector.
Note: If you are planning to use any of the sample playbooks in your environment, ensure that you clone those playbooks and move them to a different collection since the sample playbook collection gets deleted during connector upgrade and delete.
NOTE: To use GitLab as a source control platform, all its associated playbooks must be in an active state.
The Sample - GitLab - 2.0.1 playbook collection contains pluggable source control that are used to perform actions through the Continuous Delivery solution pack. The pluggable source control playbooks are in the format: GitLab - playbookName. For example, GitLab - Create Repository.
Every playbook expects two input parameters:
connector_config_id which is used in connector actions' Configuration parameter.NOTE: To use GitLab as a source control platform, following playbooks must be in an active state.
| Playbook Name | Parameter Name | Dictionary | Required Tag | Additional Information |
|---|---|---|---|---|
| GitLab - Add Pull Request Review | add_pr_review_params |
{ "org_name": "", "repo_name": "", "pull_number": "", "state": "" }
|
GitLab-AddPullRequestReview | Not Required |
| GitLab - Update Issue | update_issue_params |
{ "org_name":"", "repo_name":"", "issue_no":"", "contents":"", "state":"" }
|
GitLab-UpdateIssue | This playbook updates an issue and adds a comment using specified contents. |
| GitLab - Create Issue | create_issue_params |
{ "org_name":"", "repo_name":"", "issue_title":"", "issue_content":"", "issue_assignee":" " }
|
GitLab-CreateIssue | This playbook creates issue and Add comment which will be provided in issue_content. Then we need to add new key "number" in response and map it with "iid" field from the response. |
| GitLab - List Repository Issue | list_repo_issues_params |
{ "org_name":"", "repo_name":"", "state":"", "created_after":"" }
|
GitLab-ListRepositoryIssue | The last step of this playbook should be "Set Variable" step, where user should need to map the response of the "List Repository Issue" action with the following keys:
{"id": "", "html_url": "", "number": "", "title": "", "body": "", "reporterUsername": "", "assigneeUsername": "", "state": "", "repository_url": "" }
|
| GitLab - Create Issue Comment | add_issue_comment_params |
{ "org_name":"", "repo_name":"", "cr_number":"", "commit_message":"" }
|
GitLab-CreateIssueComment | Not Required |
| GitLab - Create Repository | create_repo_params |
{ "org_name":"", "repo_name":" " }
|
GitLab-CreateRepository | "Create Repository" step should be set to Ignore Error Yes |
| GitLab - Create Branch | create_branch_params |
{ "org_name":"", "repo_name":"", "new_branch":"", "branch_name":"" }
|
GitLab-CreateBranch | "Create Branch" step should be set Ignore Error Yes |
| GitLab - List Pull Request | list_pr_params |
{ "org_name": "", "repo_name": "", "state": "", "pull_number": "", }
|
GitLab-ListPullRequest | The last step of this playbook should be "Set Variable" step, where user should need to map the response of "List Pull Request" action with below keys: { "reviewer_names": "", "html_url": "", "state": "", "body": "", "reporterUsername": "", "assigneeUsername": "", "repository_url": "" } |
| GitLab - Create Release | create_release_params |
{ "org_name":"", "repo_name":"", "tag_name":"", "base_branch":"", "release_description":"" }
|
GitLab-CreateRelease | Not Required |
| GitLab - Delete Branch | delete_branch_params |
{ "org_name":"", "repo_name":"", "branch_name":"" }
|
GitLab-DeleteBranch | Not Required |
| GitLab - Fetch Release | fetch_release_params |
{ "org_name":"", "repo_name":"", "release_name":"" }
|
GitLab-FetchRelease | The last step of the playbook should be "Set Variable" step where user should return the Release matching the release_name key from input. |
| GitLab - Add Reviewers for a Pull Request | add_reviewers_for_pr_params |
{ "org_name":"", "repo_name":"", "pull_number":"", "reviewers":"" }
|
GitLab-PullRequestAddReviewers | Note: This playbook will use "Update Merge Request" action to add reviewer |
| GitLab - List Pull Request Reviews | list_pr_reviews_params |
{ "org_name":"", "repo_name":"", "pull_number":"" }
|
GitLab-ListPullRequestReviews | Keep Set Variable as the last step of this playbook where the key state has values APPROVED, if the pull request can be merged, or UNAPPROVED, if the PR cannot be merged. |
| GitLab - Create Pull Request | create_pr_params |
{ "org_name":"", "repo_name":"", "head_repo":"", "base_branch":"", "pr_title":"", "pr_comments":"" }
|
GitLab-CreatePullRequest | Set Ignore Error flag to the step Create Pull Request to handle the scenario where if pull request is already created, the Create Pull Request action fails. If the playbook step executes successfully, we need to add new keys number and html_url in response and map it with the iid and web_url fields from the responses. |
| GitLab - Merge Pull Request | merge_pr_params |
{ "org_name":"", "repo_name":"", "pull_number":"" }
|
GitLab-MergePullRequest | Not Required |
| GitLab - List Repository Collaborator | list_repo_collaborator_params |
{ "org_name":"", "repo_name":"" }
|
GitLab-ListRepositoryCollaborator | Playbook will return list of users. Then we need to add new key "login" in response and map it with the "username" field from the response. |
| GitLab - Add Repository Collaborator | add_repo_collaborator_params |
{ "org_name":"", "repo_name":"", "username":"" }
|
GitLab-AddRepositoryCollaborator | Not Required |
| GitLab - Clone Repository | clone_repo_params |
{ "org_name":"", "repo_name":"", "branch_name":"", "clone_as_zip":"" }
|
GitLab-CloneRepository | Not Required |
| GitLab - Get Server URL | Not Required | Not Required | GitLab-GetServerURL | Not Required |
| GitLab - Update Remote Repository | update_remote_repo_params |
{"file_iri": "", "clone_path": ""}
|
GitLab-UpdateRemoteRepository | Not Required |
| GitLab - Push Changes | push_changes_params |
{
"org_name": "",
"branch_name": "",
"repo_type": "",
"repo_name": "",
"cloned_repo_path": "",
"commit_message": "",
"commit_description": ""
}
|
GitLab-PushChanges | Not Required |
| GitLab - Create or Update File Content | create_update_file_content_params |
{
"org_name": "",
"file_name": "",
"repo_name": "",
"branch_name": "",
"file_content": "",
"commit_message": ""
}
|
GitLab-CreateUpdateFileContent | This playbook creates a file. The step Create Step has an Ignore Error flag set to Yes. If file exists, the step fails and the existing file is updated, otherwise a new file is created.
When a file is created, this playbook returns the result and status of the step Create File, otherwise it returns the result and status of the step Update File. |
GitLab is a single application for the entire software development lifecycle. From project planning and source code management to CI/CD, monitoring, and security.
This document provides information about the GitLab Connector, which facilitates automated interactions, with a GitLab server using FortiSOAR™ playbooks. Add the GitLab Connector as a step in FortiSOAR™ playbooks and perform automated operations with GitLab.
Connector Version: 2.0.1
FortiSOAR™ Version Tested on: 7.5.0-4015
GitLab API Version Tested on: v4
Authored By: Fortinet
Certified: Yes
Following enhancements have been made to the GitLab Connector in version 2.0.1:
[Errno 2] No such file or directory: '/tmp/gitlab-repo-title
Use the Content Hub to install the connector. For the detailed procedure to install a connector, click here.
You can also use the yum command as a root user to install the connector:
yum install cyops-connector-gitlab
For the procedure to configure a connector, click here.
In FortiSOAR™, on the Connectors page, click the GitLab connector row (if you are in the Grid view on the Connectors page) and in the Configurations tab enter the required configuration details:
| Parameter | Description |
|---|---|
| Server URL | IP address or hostname of the GitLab server to which you will connect and perform automated operations. |
| Gitlab Username | Specify the username used to access the GitLab server to connect and perform the automated operations. |
| Access Token | Access Token that is provided to you by a GitLab administrator that you will use to access the GitLab REST API. For information on generating access tokens, refer https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html. |
| Verify SSL | Specifies whether the SSL certificate for the server is to be verified. By default, this option is set to True. |
The following automated operations can be included in playbooks and you can also use the annotations to access operations:
| Function | Description | Annotation and Category |
|---|---|---|
| Create Repository | Creates a new repository based on the repository type, repository name, and other input parameters that you have specified. | create_repository Investigation |
| Create Repository Using Templates | Creates a new repository based on the repository type, repository name, a template, and other input parameters that you have specified. | create_repository_using_templates Investigation |
| List User Repositories | Retrieves a list of user repositories filtered by the user ID, visibility, and other filter conditions that you have specified. When accessed without authentication, only public repositories are returned. | list_user_repositories Investigation |
| List Authenticated User Repositories | Retrieves a list of authenticated user repositories filtered by the access level, visibility, and other filter conditions that you have specified. | list_authenticated_user_repositories Investigation |
| List Group Repositories | Retrieves a list of group repositories filtered by the group name, visibility, and other filter conditions that you have specified.. When accessed without authentication, only public repositories are returned. | list_group_repositories Investigation |
| Update Repository | Updates an existing repository based on the repository type, repository name, and other input parameters that you have specified. | update_repository Investigation |
| Delete Repository | Deletes a repository including all associated resources, like issues and merge requests, based on the repository type, repository name, and other input parameters that you have specified. | delete_repository Investigation |
| Fork Repository | Forks a repository into the user namespace based on the repository type, repository name, and other input parameters that you have specified. | fork_repository Investigation |
| List Fork Repositories | Retrieves a list of the projects accessible to the calling user that have an established, forked relationship with the specified project | list_fork_repositories Investigation |
| Create File | Creates a single file in the GitLab repository based on the repository ID, branch name, file name and other input parameters that you have specified.. | create_new_file_in_repository Investigation |
| Get File | Retrieves information such as name, size, content, etc. about a file from the GitLab repository based on the repository ID, branch name, file name, and other input parameters that you have specified. | get_file_from_repository Investigation |
| Update File | Updates a single file in the GitLab repository based on the repository ID, branch name, file name and other input parameters. | update_file_in_repository Investigation |
| Delete File | Deletes a single file in the GitLab repository based on the repository ID, branch name, file name and other input parameters. | delete_existing_file_in_repository Investigation |
| Add Member to Repository | Adds a member to a GitLab project based on the username, access level, and other input parameters that you have specified. | add_member_to_repository Investigation |
| Get Member List of Repository | Retrieves a list of group or repository members viewable by the authenticated user, including inherited members, invited users, and permissions through ancestor groups. | get_member_list_of_repository Investigation |
| Create Repository Branch | Creates a new branch in the repository based on the repository type, branch name, and other input parameters that you have specified. | create_repository_branch Investigation |
| Get Repository Branch | Retrieves a repository branch from a GitLab Repository based on the repository type, branch name, and other input parameters that you have specified. | get_repository_branch Investigation |
| List Repository Branches | Retrieves a list of repository branches from a project, alphabetically sorted by name based on the repository type, branch name, and other input parameters that you have specified. | list_repository_branches Investigation |
| Delete Repository Branch | Deletes a branch from the repository based on the repository type and branch name that you have specified. | delete_repository_branch Investigation |
| Create Merge Request | Creates a new merge request (MR) on a repository based on the repository type, branch name, and other input parameters that you have specified. | create_merge_request Investigation |
| List Repository Merge Requests | Retrieves a list of all merge requests for a project based on the repository type, repository name, and other input parameters that you have specified. | list_repository_merge_requests Investigation |
| Update Merge Request | Updates an existing merge request. You can change the target branch, title, Add Reviewers, Assignees or even close the MR. | update_merge_request Investigation |
| List Merge Request Reviewers | Retrieves a list of merge request reviewers based on the repository type, repository name, and other input parameters that you have specified. | list_merge_request_reviewers Investigation |
| Create Merge Request Comment | Creates a new note/comment on a merge request based on the repository type, repository name, and other input parameters that you have specified. | create_merge_request_comment Investigation |
| List Merge Request Comments | Retrieves a list of all notes/comments for a merge request based on the repository type, repository name, and other input parameters that you have specified. | list_merge_request_comments Investigation |
| Merge a Merge Request | Accept and merge changes in the merge request based on the repository type, repository name, and other input parameters that you have specified. | merge_a_merge_request Investigation |
| Create Issue | Creates a new issue within a GitLab project based on the repository type, repository name, and other input parameters that you have specified. | create_issue Investigation |
| List Repository Issues | Retrieves a list of a project's issues based on the repository type, repository name, and other input parameters that you have specified. | list_repository_issues Investigation |
| Update Issue | Updates an existing issue based on the repository type, repository name, and other input parameters that you have specified. This call is also used to mark an issue as closed. | update_issue Investigation |
| Create Issue Comment | Creates a new note/comment to a single repository issue based on the repository type, repository name, and other input parameters that you have specified. | create_issue_comment Investigation |
| Create Release | Creates a new GitLab release based on the repository type, repository name, and other input parameters that you have specified. Developer level access to the repository is required to create a release. | create_release Investigation |
| List Releases | Retrieves a paginated list of releases, sorted by the date when they were released, based on the repository type, repository name, and other input parameters that you have specified. | list_releases Investigation |
| Star Repository | Stars a given GitLab project based on the repository type and repository name that you have specified. Returns a status code 304 if the repository is already starred. |
star_repository Investigation |
| List Starrers | Retrieves a list of users who have starred the specified project based on the repository type, repository name, and other input parameters that you have specified. | list_starrers Investigation |
| Update Repository Notification Level | Updates a repository's notification settings via a specified notification level based on the repository type, repository name, and other input parameters that you have specified. | update_repository_notification_level Investigation |
| Update Remote Repository | Applies changes made in a FortiSOAR™ file to the specified remote repository that is cloned from GitLab based on the file IRI and cloned repository path that you have specified. | update_remote_repository Investigation |
| Clone Repository | Clones the specified repository in a GitLab project based on the repository type, repository name, and other input parameters that you have specified. | clone_repository Investigation |
| Push Changes | Commits the local changes to the specified repository in a GitLab project based on the repository type, organization or repository owner's name, repository name, cloned repository path, and other input parameters you have specified. | push_changes Investigation |
| Fetch Upstream | Creates a merge request for a branch of a forked repository to keep it up-to-date with the upstream repository based on the repository type, repository name, and other input parameters that you have specified. | fetch_upstream Investigation |
| Review Merge Request | Review an merge request based on the repository type, repository name, and other input parameters that you have specified. You can approve or reject an MR. | review_merge_request Investigation |
| Get Approval State of Merge Request | Retrieves information about a merge request's approval state based on the repository type, repository name, and other input parameters that you have specified. | get_approval_state_of_merge_request Investigation |
| Get Server URL | Retrieves the server URL (Web URL) of the configured GitLab server. | get_web_url Investigation |
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to create on GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository to create. |
| Description | (Optional) Specify a short description of the repository being created on GitLab. |
| Visibility of Repository | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Issues Access Level | (Optional) Select to allow creation of issues on this repository. You can select from the following options:
|
| Has Wiki | (Optional) Select to create a wiki for this project. You can select from the following options:
|
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"description": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"created_at": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"forks_count": "",
"avatar_url": "",
"star_count": "",
"last_activity_at": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": "",
"parent_id": "",
"avatar_url": "",
"web_url": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
},
"packages_enabled": "",
"empty_repo": "",
"archived": "",
"visibility": "",
"owner": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"resolve_outdated_diff_discussions": "",
"container_expiration_policy": {
"cadence": "",
"enabled": "",
"keep_n": "",
"older_than": "",
"name_regex": "",
"name_regex_keep": "",
"next_run_at": ""
},
"issues_enabled": "",
"merge_requests_enabled": "",
"wiki_enabled": "",
"jobs_enabled": "",
"snippets_enabled": "",
"container_registry_enabled": "",
"service_desk_enabled": "",
"service_desk_address": "",
"can_create_merge_request_in": "",
"issues_access_level": "",
"repository_access_level": "",
"merge_requests_access_level": "",
"forking_access_level": "",
"wiki_access_level": "",
"builds_access_level": "",
"snippets_access_level": "",
"pages_access_level": "",
"analytics_access_level": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"releases_access_level": "",
"environments_access_level": "",
"feature_flags_access_level": "",
"infrastructure_access_level": "",
"monitor_access_level": "",
"emails_disabled": "",
"emails_enabled": "",
"shared_runners_enabled": "",
"lfs_enabled": "",
"creator_id": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"open_issues_count": "",
"description_html": "",
"updated_at": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_job_token_scope_enabled": "",
"ci_separated_caches": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"build_git_strategy": "",
"keep_latest_artifact": "",
"restrict_user_defined_variables": "",
"runners_token": "",
"runner_token_expiration_interval": "",
"group_runners_enabled": "",
"auto_cancel_pending_pipelines": "",
"build_timeout": "",
"auto_devops_enabled": "",
"auto_devops_deploy_strategy": "",
"ci_config_path": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"request_access_enabled": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"printing_merge_request_link_enabled": "",
"merge_method": "",
"squash_option": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"autoclose_referenced_issues": "",
"external_authorization_classification_label": "",
"requirements_enabled": "",
"requirements_access_level": "",
"security_and_compliance_enabled": "",
"compliance_frameworks": []
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to create on GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository to create. |
| Use Custom Template | (Optional) Select to use a custom template (Requires Premium GitLab access). Clear the checkbox to use a built-in template. |
| Create Repository By | Select the method by which to reference the template for creating repository. You can select one of the following options:
|
| Description | (Optional) Specify a short description of the repository being created on GitLab. |
| Visibility of Repository | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Issues Access Level | (Optional) Select to allow creation of issues on this repository. You can select from the following options:
|
| Has Wiki | (Optional) Select to create a wiki for this project. You can select from the following options:
|
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"description": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"created_at": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"forks_count": "",
"avatar_url": "",
"star_count": "",
"last_activity_at": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": "",
"parent_id": "",
"avatar_url": "",
"web_url": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
},
"packages_enabled": "",
"empty_repo": "",
"archived": "",
"visibility": "",
"owner": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"resolve_outdated_diff_discussions": "",
"container_expiration_policy": {
"cadence": "",
"enabled": "",
"keep_n": "",
"older_than": "",
"name_regex": "",
"name_regex_keep": "",
"next_run_at": ""
},
"issues_enabled": "",
"merge_requests_enabled": "",
"wiki_enabled": "",
"jobs_enabled": "",
"snippets_enabled": "",
"container_registry_enabled": "",
"service_desk_enabled": "",
"service_desk_address": "",
"can_create_merge_request_in": "",
"issues_access_level": "",
"repository_access_level": "",
"merge_requests_access_level": "",
"forking_access_level": "",
"wiki_access_level": "",
"builds_access_level": "",
"snippets_access_level": "",
"pages_access_level": "",
"analytics_access_level": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"releases_access_level": "",
"environments_access_level": "",
"feature_flags_access_level": "",
"infrastructure_access_level": "",
"monitor_access_level": "",
"emails_disabled": "",
"emails_enabled": "",
"shared_runners_enabled": "",
"lfs_enabled": "",
"creator_id": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"open_issues_count": "",
"description_html": "",
"updated_at": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_job_token_scope_enabled": "",
"ci_separated_caches": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"build_git_strategy": "",
"keep_latest_artifact": "",
"restrict_user_defined_variables": "",
"runners_token": "",
"runner_token_expiration_interval": "",
"group_runners_enabled": "",
"auto_cancel_pending_pipelines": "",
"build_timeout": "",
"auto_devops_enabled": "",
"auto_devops_deploy_strategy": "",
"ci_config_path": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"request_access_enabled": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"printing_merge_request_link_enabled": "",
"merge_method": "",
"squash_option": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"autoclose_referenced_issues": "",
"external_authorization_classification_label": "",
"requirements_enabled": "",
"requirements_access_level": "",
"security_and_compliance_enabled": "",
"compliance_frameworks": []
}
| Parameter | Description |
|---|---|
| User ID | Specify the ID or username of the user whose repositories are to be listed. |
| Owned by the User | (Optional) Select to limit projects explicitly owned by the specified user. |
| Visibility | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"description": "",
"description_html": "",
"default_branch": "",
"visibility": "",
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"tag_list": [],
"topics": [],
"owner": {
"id": "",
"name": "",
"created_at": ""
},
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"issues_enabled": "",
"open_issues_count": "",
"merge_requests_enabled": "",
"jobs_enabled": "",
"wiki_enabled": "",
"snippets_enabled": "",
"can_create_merge_request_in": "",
"resolve_outdated_diff_discussions": "",
"container_registry_enabled": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"created_at": "",
"updated_at": "",
"last_activity_at": "",
"creator_id": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": ""
},
"archived": "",
"avatar_url": "",
"shared_runners_enabled": "",
"group_runners_enabled": "",
"forks_count": "",
"star_count": "",
"runners_token": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"ci_separated_caches": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"restrict_user_defined_variables": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"request_access_enabled": "",
"merge_method": "",
"squash_option": "",
"autoclose_referenced_issues": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"marked_for_deletion_at": "",
"marked_for_deletion_on": "",
"statistics": {
"commit_count": "",
"storage_size": "",
"repository_size": "",
"wiki_size": "",
"lfs_objects_size": "",
"job_artifacts_size": "",
"pipeline_artifacts_size": "",
"packages_size": "",
"snippets_size": "",
"uploads_size": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
}
}
]
| Parameter | Description |
|---|---|
| Minimum Access Level | (Optional) Select the current user's minimal access level to retrieve their repositories. You can select one of the following options:
|
| Visibility | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"description": "",
"description_html": "",
"default_branch": "",
"visibility": "",
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"tag_list": [],
"topics": [],
"owner": {
"id": "",
"name": "",
"created_at": ""
},
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"issues_enabled": "",
"open_issues_count": "",
"merge_requests_enabled": "",
"jobs_enabled": "",
"wiki_enabled": "",
"snippets_enabled": "",
"can_create_merge_request_in": "",
"resolve_outdated_diff_discussions": "",
"container_registry_enabled": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"created_at": "",
"updated_at": "",
"last_activity_at": "",
"creator_id": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": ""
},
"archived": "",
"avatar_url": "",
"shared_runners_enabled": "",
"group_runners_enabled": "",
"forks_count": "",
"star_count": "",
"runners_token": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"ci_separated_caches": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"restrict_user_defined_variables": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"request_access_enabled": "",
"merge_method": "",
"squash_option": "",
"autoclose_referenced_issues": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"marked_for_deletion_at": "",
"marked_for_deletion_on": "",
"statistics": {
"commit_count": "",
"storage_size": "",
"repository_size": "",
"wiki_size": "",
"lfs_objects_size": "",
"job_artifacts_size": "",
"pipeline_artifacts_size": "",
"packages_size": "",
"snippets_size": "",
"uploads_size": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
}
}
]
| Parameter | Description |
|---|---|
| Group Name | Specify the name of the group whose repositories to retrieve from GitLab. |
| Visibility | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"description": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"archived": "",
"visibility": "",
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"issues_enabled": "",
"merge_requests_enabled": "",
"wiki_enabled": "",
"jobs_enabled": "",
"snippets_enabled": "",
"created_at": "",
"last_activity_at": "",
"shared_runners_enabled": "",
"creator_id": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": ""
},
"avatar_url": "",
"star_count": "",
"forks_count": "",
"open_issues_count": "",
"public_jobs": "",
"shared_with_groups": [],
"request_access_enabled": ""
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to update on GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository to update on GitLab. |
| New Repository Name | (Optional) Specify the new name of the repository to update on GitLab. |
| Description | (Optional) Specify a short description of the repository to update on GitLab. |
| Visibility of Repository | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Issues Access Level | (Optional) Select to update creation of issues on this repository. You can select from the following options:
|
| Has Wiki | (Optional) Select to update the wiki status for this project. You can select from the following options:
|
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"description": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"created_at": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"forks_count": "",
"avatar_url": "",
"star_count": "",
"last_activity_at": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": "",
"parent_id": "",
"avatar_url": "",
"web_url": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
},
"packages_enabled": "",
"empty_repo": "",
"archived": "",
"visibility": "",
"owner": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"resolve_outdated_diff_discussions": "",
"container_expiration_policy": {
"cadence": "",
"enabled": "",
"keep_n": "",
"older_than": "",
"name_regex": "",
"name_regex_keep": "",
"next_run_at": ""
},
"issues_enabled": "",
"merge_requests_enabled": "",
"wiki_enabled": "",
"jobs_enabled": "",
"snippets_enabled": "",
"container_registry_enabled": "",
"service_desk_enabled": "",
"service_desk_address": "",
"can_create_merge_request_in": "",
"issues_access_level": "",
"repository_access_level": "",
"merge_requests_access_level": "",
"forking_access_level": "",
"wiki_access_level": "",
"builds_access_level": "",
"snippets_access_level": "",
"pages_access_level": "",
"analytics_access_level": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"releases_access_level": "",
"environments_access_level": "",
"feature_flags_access_level": "",
"infrastructure_access_level": "",
"monitor_access_level": "",
"emails_disabled": "",
"emails_enabled": "",
"shared_runners_enabled": "",
"lfs_enabled": "",
"creator_id": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"open_issues_count": "",
"description_html": "",
"updated_at": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_job_token_scope_enabled": "",
"ci_separated_caches": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"build_git_strategy": "",
"keep_latest_artifact": "",
"restrict_user_defined_variables": "",
"runners_token": "",
"runner_token_expiration_interval": "",
"group_runners_enabled": "",
"auto_cancel_pending_pipelines": "",
"build_timeout": "",
"auto_devops_enabled": "",
"auto_devops_deploy_strategy": "",
"ci_config_path": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"request_access_enabled": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"printing_merge_request_link_enabled": "",
"merge_method": "",
"squash_option": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"autoclose_referenced_issues": "",
"external_authorization_classification_label": "",
"requirements_enabled": "",
"requirements_access_level": "",
"security_and_compliance_enabled": "",
"compliance_frameworks": []
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to delete on GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository to delete. |
The output contains the following populated JSON schema:
{
"message": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to fork on GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository in GitLab to fork. |
| New Repository Name | (Optional) Specify the name to assign to the resultant repository after forking. |
| Description | (Optional) Specify a short description to the resultant repository after forking. |
| Visibility of Repository | (Optional) Specify the scope of the repository. You can select from the following options:
|
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"description": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"created_at": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"forks_count": "",
"avatar_url": "",
"star_count": "",
"last_activity_at": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": "",
"parent_id": "",
"avatar_url": "",
"web_url": ""
},
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
},
"packages_enabled": "",
"empty_repo": "",
"archived": "",
"visibility": "",
"owner": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"resolve_outdated_diff_discussions": "",
"container_expiration_policy": {
"cadence": "",
"enabled": "",
"keep_n": "",
"older_than": "",
"name_regex": "",
"name_regex_keep": "",
"next_run_at": ""
},
"issues_enabled": "",
"merge_requests_enabled": "",
"wiki_enabled": "",
"jobs_enabled": "",
"snippets_enabled": "",
"container_registry_enabled": "",
"service_desk_enabled": "",
"service_desk_address": "",
"can_create_merge_request_in": "",
"issues_access_level": "",
"repository_access_level": "",
"merge_requests_access_level": "",
"forking_access_level": "",
"wiki_access_level": "",
"builds_access_level": "",
"snippets_access_level": "",
"pages_access_level": "",
"analytics_access_level": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"releases_access_level": "",
"environments_access_level": "",
"feature_flags_access_level": "",
"infrastructure_access_level": "",
"monitor_access_level": "",
"emails_disabled": "",
"emails_enabled": "",
"shared_runners_enabled": "",
"lfs_enabled": "",
"creator_id": "",
"forked_from_project": {
"id": "",
"description": "",
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"created_at": "",
"default_branch": "",
"tag_list": [],
"topics": [],
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"forks_count": "",
"avatar_url": "",
"star_count": "",
"last_activity_at": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": "",
"parent_id": "",
"avatar_url": "",
"web_url": ""
}
},
"mr_default_target_self": "",
"import_url": "",
"import_type": "",
"import_status": "",
"import_error": "",
"open_issues_count": "",
"description_html": "",
"updated_at": "",
"ci_default_git_depth": "",
"ci_forward_deployment_enabled": "",
"ci_forward_deployment_rollback_allowed": "",
"ci_job_token_scope_enabled": "",
"ci_separated_caches": "",
"ci_allow_fork_pipelines_to_run_in_parent_project": "",
"build_git_strategy": "",
"keep_latest_artifact": "",
"restrict_user_defined_variables": "",
"runners_token": "",
"runner_token_expiration_interval": "",
"group_runners_enabled": "",
"auto_cancel_pending_pipelines": "",
"build_timeout": "",
"auto_devops_enabled": "",
"auto_devops_deploy_strategy": "",
"ci_config_path": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"request_access_enabled": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"printing_merge_request_link_enabled": "",
"merge_method": "",
"squash_option": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"squash_commit_template": "",
"issue_branch_template": "",
"autoclose_referenced_issues": "",
"external_authorization_classification_label": "",
"requirements_enabled": "",
"requirements_access_level": "",
"security_and_compliance_enabled": "",
"compliance_frameworks": []
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to retrieve from GitLab. You can select from the following options:
|
| Repository Name | Specify the name of the repository whose forks are to be retrieved. |
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"description": "",
"description_html": "",
"default_branch": "",
"visibility": "",
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"tag_list": [],
"topics": [],
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"issues_enabled": "",
"open_issues_count": "",
"merge_requests_enabled": "",
"jobs_enabled": "",
"wiki_enabled": "",
"snippets_enabled": "",
"can_create_merge_request_in": "",
"resolve_outdated_diff_discussions": "",
"container_registry_enabled": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"created_at": "",
"updated_at": "",
"last_activity_at": "",
"creator_id": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": ""
},
"import_status": "",
"archived": "",
"avatar_url": "",
"shared_runners_enabled": "",
"group_runners_enabled": "",
"forks_count": "",
"star_count": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"restrict_user_defined_variables": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"request_access_enabled": "",
"merge_method": "",
"squash_option": "",
"autoclose_referenced_issues": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
}
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository on which to create the file. You can select from the following options:
|
| Repository Name | Specify the name of the repository within which the file is to be created. |
| Branch Name | Specify the name of the branch in which to create the file. |
| File Name | Specify the name of the file to create. |
| Content Information | Specify the contents to add to the file being created. |
| Commit Message | Specify the commit message to add while creating the file. |
| Author Email ID | (Optional) Specify the email address of the commit author to add while creating the file. |
| Author Name | (Optional) Specify the name of the commit author to add while creating the file. |
The output contains the following populated JSON schema:
{
"file_path": "",
"branch": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the file. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which the file is to be retrieved. |
| Branch Name | Specify the name of the branch from which to retrieve the file. |
| File Name | Specify the name of the file to retrieve. |
| Decode Content | (Optional) Select to decode the file contents. The files are Base64 encoded. |
The output contains the following populated JSON schema:
{
"file_name": "",
"file_path": "",
"size": "",
"encoding": "",
"content_sha256": "",
"ref": "",
"blob_id": "",
"commit_id": "",
"last_commit_id": "",
"content": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to update the file. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which the file is to be updated. |
| Branch Name | Specify the name of the branch in which to update the file. |
| File Name | Specify the name of the file to update. |
| Content Information | Specify the contents to update in the file being updated. |
| Operation | Select the operation to perform on the existing content. You can choose from following options:
|
| Commit Message | Specify the commit message for updating the file. |
The output contains the following populated JSON schema:
{
"file_path": "",
"branch": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to delete the file. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which the file is to be deleted. |
| Branch Name | Specify the name of the branch in which to delete the file. |
| File Name | Specify the name of the file to delete. |
| Commit Message | Specify the commit message for deleting the file. |
| Author Email ID | (Optional) Specify the email address of the commit author to add while deleting the file. |
| Author Name | (Optional) Specify the name of the commit author to add while deleting the file. |
The output contains a non-dictionary value.
| Parameter | Description |
|---|---|
| Add Member To | Select where you want to add the specified collaborator. You can select from the following options:
|
| Username | Specify the username of the member to add as a collaborator in the project. |
| Access Level | Select the access level to grant to the specified collaborator. You can select from following options:
NOTE: Permissions are applicable only on organization-owned repositories. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": "",
"created_at": "",
"created_by": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"expires_at": "",
"access_level": "",
"email": "",
"group_saml_identity": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to retrieve its collaborators. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the collaborators. |
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": "",
"created_at": "",
"created_by": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"expires_at": "",
"access_level": "",
"group_saml_identity": ""
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create the branch. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the branch. |
| Branch | Specify the URL-encoded name of the branch to create. For more information on URL-encoded name on GitLab, refer https://docs.gitlab.com/ee/api/rest/index.html#namespaced-path-encoding. |
| Reference Branch | Specify the branch name or the commit SHA from which to create the new branch. |
The output contains the following populated JSON schema:
{
"commit": {
"id": "",
"short_id": "",
"created_at": "",
"parent_ids": [],
"title": "",
"message": "",
"author_name": "",
"author_email": "",
"authored_date": "",
"committer_name": "",
"committer_email": "",
"committed_date": "",
"trailers": {},
"web_url": ""
},
"name": "",
"merged": "",
"protected": "",
"default": "",
"developers_can_push": "",
"developers_can_merge": "",
"can_push": "",
"web_url": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the branch. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the branch. |
| Branch | Specify the URL-encoded name of the branch to retrieve. For more information on URL-encoded name on GitLab, refer https://docs.gitlab.com/ee/api/rest/index.html#namespaced-path-encoding. |
The output contains the following populated JSON schema:
{
"name": "",
"merged": "",
"protected": "",
"default": "",
"developers_can_push": "",
"developers_can_merge": "",
"can_push": "",
"web_url": "",
"commit": {
"id": "",
"short_id": "",
"created_at": "",
"parent_ids": [],
"title": "",
"message": "",
"author_name": "",
"author_email": "",
"authored_date": "",
"committer_name": "",
"committer_email": "",
"committed_date": "",
"trailers": {},
"web_url": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository whose branches to retrieve. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the branches. |
| RE2 Regex Expression | (Optional) Specify a re2 regular expression to filter and return the list of branches with names matching the expression. For example, ^release\/(\d+\.\d+)$ retrieves branches matching release/2.0, release/3.5, release/4.2, release/3.14 etc. For more information about re2 regular expression syntax, see https://github.com/google/re2/wiki/Syntax. |
The output contains the following populated JSON schema:
[
{
"name": "",
"merged": "",
"protected": "",
"default": "",
"developers_can_push": "",
"developers_can_merge": "",
"can_push": "",
"web_url": "",
"commit": {
"id": "",
"short_id": "",
"created_at": "",
"parent_ids": [],
"title": "",
"message": "",
"author_name": "",
"author_email": "",
"authored_date": "",
"committer_name": "",
"committer_email": "",
"committed_date": "",
"trailers": {},
"web_url": ""
}
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to delete the branch. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to delete the branch. |
| Branch | Specify the URL-encoded name of the branch to delete. For more information on URL-encoded name on GitLab, refer https://docs.gitlab.com/ee/api/rest/index.html#namespaced-path-encoding. |
The output contains a non-dictionary value.
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create the merge request. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the merge request. |
| Source Branch | Specify the source branch, from where to pull the changes, for the merge request. |
| Target Branch | Specify the target branch, in which to merge the changes, for the merge request. |
| Merge Request Title | Specify a title for the merge request being created in the GitLab repository. |
| Description | (Optional) Specify a short description for the merge request being created in the GitLab repository. |
| Target Repository ID | (Optional) Specify the project ID of the forked repository to create a merge request. |
| Remove Source Branch after Merging | (Optional) Select if the source branch is to be deleted after merge completes. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"target_branch": "",
"source_branch": "",
"upvotes": "",
"downvotes": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignee": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"source_project_id": "",
"target_project_id": "",
"labels": [],
"draft": "",
"work_in_progress": "",
"milestone": {
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": ""
},
"merge_when_pipeline_succeeds": "",
"merge_status": "",
"detailed_merge_status": "",
"merge_error": "",
"sha": "",
"merge_commit_sha": "",
"squash_commit_sha": "",
"user_notes_count": "",
"discussion_locked": "",
"should_remove_source_branch": "",
"force_remove_source_branch": "",
"allow_collaboration": "",
"allow_maintainer_to_push": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"squash": "",
"subscribed": "",
"changes_count": "",
"merged_by": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merge_user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merged_at": "",
"prepared_at": "",
"closed_by": "",
"closed_at": "",
"latest_build_started_at": "",
"latest_build_finished_at": "",
"first_deployed_to_production_at": "",
"pipeline": {
"id": "",
"sha": "",
"ref": "",
"status": "",
"web_url": ""
},
"diff_refs": {
"base_sha": "",
"head_sha": "",
"start_sha": ""
},
"diverged_commits_count": "",
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the list of merge requests. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the list of merge requests. |
| State | (Optional) Select an option to retrieve all merge requests with the selected status. You can select one of the following options:
|
| Source Branch | (Optional) Specify the source branch of the merge requests to filter the results. |
| Target Branch | (Optional) Specify the target branch of the merge requests to filter the results. |
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"merged_by": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merge_user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merged_at": "",
"prepared_at": "",
"closed_by": "",
"closed_at": "",
"created_at": "",
"updated_at": "",
"target_branch": "",
"source_branch": "",
"upvotes": "",
"downvotes": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignee": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignees": [
{
"name": "",
"username": "",
"id": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"reviewers": [
{
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"source_project_id": "",
"target_project_id": "",
"labels": [],
"draft": "",
"work_in_progress": "",
"milestone": {
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": ""
},
"merge_when_pipeline_succeeds": "",
"merge_status": "",
"detailed_merge_status": "",
"sha": "",
"merge_commit_sha": "",
"squash_commit_sha": "",
"user_notes_count": "",
"discussion_locked": "",
"should_remove_source_branch": "",
"force_remove_source_branch": "",
"allow_collaboration": "",
"allow_maintainer_to_push": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"squash": "",
"task_completion_status": {
"count": "",
"completed_count": ""
},
"has_conflicts": "",
"blocking_discussions_resolved": ""
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to update the merge request. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to update the merge request. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to update. |
| Title of MR | Specify a title to update in the merge request being updated in the GitLab repository. |
| Assignee Names | (Optional) Specify the comma separated value of the names of the users to assign the merge request to. Set to 0 to unassign all assignees. |
| Reviewer Names | (Optional) Specify the comma separated value of the names of the users to set as a reviewer to the merge request. Set the value to 0 to unset all reviewers. |
| Target Branch | Specify the target branch, in which to merge the changes, to update in the merge request. |
| State | (Optional) Select to update the state of the merge request. You can select from following options:
|
| Description | (Optional) Specify a short description to update in the merge request being updated in the GitLab repository. |
| Remove Source Branch after Merging | (Optional) Select if the source branch is to be deleted after the merge completes. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"target_branch": "",
"source_branch": "",
"upvotes": "",
"downvotes": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignee": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignees": [
{
"name": "",
"username": "",
"id": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"reviewers": [
{
"name": "",
"username": "",
"id": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"source_project_id": "",
"target_project_id": "",
"labels": [],
"draft": "",
"work_in_progress": "",
"milestone": {
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": ""
},
"merge_when_pipeline_succeeds": "",
"merge_status": "",
"detailed_merge_status": "",
"merge_error": "",
"sha": "",
"merge_commit_sha": "",
"squash_commit_sha": "",
"user_notes_count": "",
"discussion_locked": "",
"should_remove_source_branch": "",
"force_remove_source_branch": "",
"allow_collaboration": "",
"allow_maintainer_to_push": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"squash": "",
"subscribed": "",
"changes_count": "",
"merged_by": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merge_user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merged_at": "",
"prepared_at": "",
"closed_by": "",
"closed_at": "",
"latest_build_started_at": "",
"latest_build_finished_at": "",
"first_deployed_to_production_at": "",
"pipeline": {
"id": "",
"sha": "",
"ref": "",
"status": "",
"web_url": ""
},
"diff_refs": {
"base_sha": "",
"head_sha": "",
"start_sha": ""
},
"diverged_commits_count": "",
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the list of merge request reviewers. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the list of merge request reviewers. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to retrieve its reviewers. |
The output contains the following populated JSON schema:
[
{
"user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"state": "",
"created_at": ""
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create a merge request comment. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the merge request comment. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to create the comment. |
| Description | Specify text for the merge request comment. The maximum limit is 1,000,000 characters. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"project_id": "",
"id": "",
"created_at": "",
"iid": "",
"title": "",
"state": "",
"assignees": [],
"assignee": "",
"type": "",
"labels": [],
"upvotes": "",
"downvotes": "",
"merge_requests_count": "",
"author": {
"name": "",
"avatar_url": "",
"state": "",
"web_url": "",
"id": "",
"username": ""
},
"description": "",
"updated_at": "",
"closed_at": "",
"closed_by": "",
"milestone": "",
"subscribed": "",
"user_notes_count": "",
"due_date": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"confidential": "",
"discussion_locked": "",
"issue_type": "",
"severity": "",
"_links": {
"self": "",
"notes": "",
"award_emoji": "",
"project": "",
"closed_as_duplicate_of": ""
},
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the merge request comments. You can select from the following options:
|
| Repository Name | Specify the name of the repository from whose merge request the comments are to be retrieved. |
| Merge Request IID | Specify The internal ID (IID) of a merge request whose comments are to be retrieved. |
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
The output contains the following populated JSON schema:
[
{
"id": "",
"body": "",
"attachment": "",
"author": {
"id": "",
"username": "",
"email": "",
"name": "",
"state": "",
"created_at": ""
},
"created_at": "",
"updated_at": "",
"system": "",
"noteable_id": "",
"noteable_type": "",
"project_id": "",
"noteable_iid": "",
"resolvable": "",
"confidential": "",
"internal": ""
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to merge the merge request. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to merge the merge request. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to merge. |
| Merge Commit Message | (Optional) Specify a message to attach to the merge commit. |
| Remove Source Branch after Merging | (Optional) Select if the source branch is to be deleted after the merge completes. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"target_branch": "",
"source_branch": "",
"upvotes": "",
"downvotes": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignee": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignees": [
{
"name": "",
"username": "",
"id": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"reviewers": [
{
"name": "",
"username": "",
"id": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
],
"source_project_id": "",
"target_project_id": "",
"labels": [],
"draft": "",
"work_in_progress": "",
"milestone": {
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": ""
},
"merge_when_pipeline_succeeds": "",
"merge_status": "",
"detailed_merge_status": "",
"merge_error": "",
"sha": "",
"merge_commit_sha": "",
"squash_commit_sha": "",
"user_notes_count": "",
"discussion_locked": "",
"should_remove_source_branch": "",
"force_remove_source_branch": "",
"allow_collaboration": "",
"allow_maintainer_to_push": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"squash": "",
"subscribed": "",
"changes_count": "",
"merged_by": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merge_user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merged_at": "",
"prepared_at": "",
"closed_by": "",
"closed_at": "",
"latest_build_started_at": "",
"latest_build_finished_at": "",
"first_deployed_to_production_at": "",
"pipeline": {
"id": "",
"sha": "",
"ref": "",
"status": "",
"web_url": ""
},
"diff_refs": {
"base_sha": "",
"head_sha": "",
"start_sha": ""
},
"diverged_commits_count": "",
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create the issue. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the issue. |
| Title of Issue | Specify title of issue being created in the GitLab repository. |
| Description | (Optional) Specify a short description for the issue being created. |
| Assignee Name | (Optional) Specify the the name of the user to whom to assign the issue. |
| Assignee Names | (Optional) Specify a comma-separated list of users to whom to assign the issue. |
| Labels | (Optional) Specify a comma-separated list of label names to be assigned to the issue. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"project_id": "",
"id": "",
"created_at": "",
"iid": "",
"title": "",
"state": "",
"assignees": [],
"assignee": "",
"type": "",
"labels": [],
"upvotes": "",
"downvotes": "",
"merge_requests_count": "",
"author": {
"name": "",
"avatar_url": "",
"state": "",
"web_url": "",
"id": "",
"username": ""
},
"description": "",
"updated_at": "",
"closed_at": "",
"closed_by": "",
"milestone": "",
"subscribed": "",
"user_notes_count": "",
"due_date": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"confidential": "",
"discussion_locked": "",
"issue_type": "",
"severity": "",
"_links": {
"self": "",
"notes": "",
"award_emoji": "",
"project": "",
"closed_as_duplicate_of": ""
},
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the list of issues. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the list of issues. |
| Assignee Name | (Optional) Specify the the name of the user whose assigned issues are to be retrieved. |
| State | (Optional) Select the state of the issues to retrieve. You can select from the following options:
|
| Created After | (Optional) Specify the time to retrieve issues which were created after the specified time. |
| Since | (Optional) Specify the time to retrieve the issues which is updated after specified time. |
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"project_id": "",
"milestone": {
"due_date": "",
"project_id": "",
"state": "",
"description": "",
"iid": "",
"id": "",
"title": "",
"created_at": "",
"updated_at": ""
},
"author": {
"state": "",
"web_url": "",
"avatar_url": "",
"username": "",
"id": "",
"name": ""
},
"description": "",
"state": "",
"iid": "",
"assignees": [
{
"avatar_url": "",
"web_url": "",
"state": "",
"username": "",
"id": "",
"name": ""
}
],
"assignee": {
"avatar_url": "",
"web_url": "",
"state": "",
"username": "",
"id": "",
"name": ""
},
"type": "",
"labels": [],
"upvotes": "",
"downvotes": "",
"merge_requests_count": "",
"id": "",
"title": "",
"updated_at": "",
"created_at": "",
"closed_at": "",
"closed_by": {
"state": "",
"web_url": "",
"avatar_url": "",
"username": "",
"id": "",
"name": ""
},
"user_notes_count": "",
"due_date": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"has_tasks": "",
"task_status": "",
"confidential": "",
"discussion_locked": "",
"issue_type": "",
"severity": "",
"_links": {
"self": "",
"notes": "",
"award_emoji": "",
"project": "",
"closed_as_duplicate_of": ""
},
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to update the issue. You can select from the following options:
|
| Repository Name | Specify the name of the repository whose issues are to be updated on GitLab. |
| Issue IID | Specify The internal ID (IID) of the issue to update. |
| Title of Issue | Specify title of issue to update. |
| Description | (Optional) Specify a short updated description of the issue to update. |
| Assignee Names | (Optional) Specify a comma-separated list of users to whom to assign the issue. Set to 0 or leave the parameter blank to remove all assignees. |
| Confidential | (Optional) Select True if the issue is to be marked confidential, select False to mark the issue as non-confidential, or leave it blank to ignore the confidentiality status. |
| Issue Type | (Optional) Select the type of the issue to update. You can choose from the following options:
|
| State | (Optional) Select the state of the issue to update. You can choose from the following options:
|
| Labels | (Optional) Specify a comma-separated list of label names to be assigned to an issue.
NOTE: Existing labels are removed when applying the specified list. |
| Due Date | (Optional) Specify a due date for the issue. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"project_id": "",
"id": "",
"created_at": "",
"iid": "",
"title": "",
"state": "",
"assignees": [],
"assignee": "",
"type": "",
"labels": [],
"upvotes": "",
"downvotes": "",
"merge_requests_count": "",
"author": {
"name": "",
"avatar_url": "",
"state": "",
"web_url": "",
"id": "",
"username": ""
},
"description": "",
"updated_at": "",
"closed_at": "",
"closed_by": "",
"milestone": "",
"subscribed": "",
"user_notes_count": "",
"due_date": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"confidential": "",
"discussion_locked": "",
"issue_type": "",
"severity": "",
"_links": {
"self": "",
"notes": "",
"award_emoji": "",
"project": "",
"closed_as_duplicate_of": ""
},
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create the issue comment. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the issue comment. |
| Issue IID | Specify The internal ID (IID) of issue to create the comment. |
| Comment | Specify the text for the issue comment. The maximum limit is 1,000,000 characters. |
| Confidential | (Optional) Select True if the issue is to be marked confidential, select False to mark the issue as non-confidential, or leave it blank to ignore the confidentiality status. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"project_id": "",
"id": "",
"created_at": "",
"iid": "",
"title": "",
"state": "",
"assignees": [],
"assignee": "",
"type": "",
"labels": [],
"upvotes": "",
"downvotes": "",
"merge_requests_count": "",
"author": {
"name": "",
"avatar_url": "",
"state": "",
"web_url": "",
"id": "",
"username": ""
},
"description": "",
"updated_at": "",
"closed_at": "",
"closed_by": "",
"milestone": "",
"subscribed": "",
"user_notes_count": "",
"due_date": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"confidential": "",
"discussion_locked": "",
"issue_type": "",
"severity": "",
"_links": {
"self": "",
"notes": "",
"award_emoji": "",
"project": "",
"closed_as_duplicate_of": ""
},
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to create the release. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to create the release. |
| Tag Name | Specify the tag from where the release is created. |
| Target Branch | (Optional) Specify the branch name from where the release tag is to be created.
NOTE: This field is mandatory if no tags exist. If a tag exists, it does not update the existing tag. |
| Tag Message | (Optional) Specify the message to use if creating a new annotated tag. |
| Name of Release | (Optional) Specify a name of release that you want to create in the GitLab repository. |
| Description | (Optional) Specify a short description of the release you want to create on GitLab |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"tag_name": "",
"description": "",
"name": "",
"created_at": "",
"released_at": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"commit": {
"id": "",
"short_id": "",
"title": "",
"created_at": "",
"parent_ids": [],
"message": "",
"author_name": "",
"author_email": "",
"authored_date": "",
"committer_name": "",
"committer_email": "",
"committed_date": ""
},
"milestones": [
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": "",
"issue_stats": {
"total": "",
"closed": ""
}
}
],
"commit_path": "",
"tag_path": "",
"evidence_sha": "",
"assets": {
"count": "",
"sources": [
{
"format": "",
"url": ""
}
],
"links": [
{
"id": "",
"name": "",
"url": "",
"link_type": ""
}
],
"evidence_file_path": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the list of releases. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the list of releases. |
| Order By | (Optional) Select the sorting criteria to sort the results. You can select from the following options:
|
| Sort Order | (Optional) Select the sort order to sort the results. You can select from the following options:
|
| Page | (Optional) Specify the page number from which to return the results of the operation. By default, this value is set to 1. |
| Per Page | (Optional) Specify the number of results, per page, that this operation should return. By default, this value is set to 20; and the maximum value you can specify for this parameter is 100. |
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
[
{
"tag_name": "",
"description": "",
"name": "",
"created_at": "",
"released_at": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"commit": {
"id": "",
"short_id": "",
"title": "",
"created_at": "",
"parent_ids": [],
"message": "",
"author_name": "",
"author_email": "",
"authored_date": "",
"committer_name": "",
"committer_email": "",
"committed_date": ""
},
"milestones": [
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": "",
"issue_stats": {
"total": "",
"closed": ""
}
}
],
"commit_path": "",
"tag_path": "",
"assets": {
"count": "",
"sources": [
{
"format": "",
"url": ""
}
],
"links": [
{
"id": "",
"name": "",
"url": "",
"link_type": ""
}
],
"evidence_file_path": ""
},
"evidences": [
{
"sha": "",
"filepath": "",
"collected_at": ""
}
]
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository which is to be starred. You can select from the following options:
|
| Repository Name | Specify the name of the repository which is to be starred. |
The output contains the following populated JSON schema:
{
"id": "",
"description": "",
"description_html": "",
"default_branch": "",
"visibility": "",
"ssh_url_to_repo": "",
"http_url_to_repo": "",
"web_url": "",
"readme_url": "",
"tag_list": [],
"topics": [],
"name": "",
"name_with_namespace": "",
"path": "",
"path_with_namespace": "",
"issues_enabled": "",
"open_issues_count": "",
"merge_requests_enabled": "",
"jobs_enabled": "",
"wiki_enabled": "",
"snippets_enabled": "",
"can_create_merge_request_in": "",
"resolve_outdated_diff_discussions": "",
"container_registry_enabled": "",
"container_registry_access_level": "",
"security_and_compliance_access_level": "",
"created_at": "",
"updated_at": "",
"last_activity_at": "",
"creator_id": "",
"namespace": {
"id": "",
"name": "",
"path": "",
"kind": "",
"full_path": ""
},
"import_status": "",
"archived": "",
"avatar_url": "",
"license_url": "",
"license": {
"key": "",
"name": "",
"nickname": "",
"html_url": "",
"source_url": ""
},
"shared_runners_enabled": "",
"group_runners_enabled": "",
"forks_count": "",
"star_count": "",
"public_jobs": "",
"shared_with_groups": [],
"only_allow_merge_if_pipeline_succeeds": "",
"allow_merge_on_skipped_pipeline": "",
"restrict_user_defined_variables": "",
"only_allow_merge_if_all_discussions_are_resolved": "",
"remove_source_branch_after_merge": "",
"request_access_enabled": "",
"merge_method": "",
"squash_option": "",
"autoclose_referenced_issues": "",
"enforce_auth_checks_on_uploads": "",
"suggestion_commit_message": "",
"merge_commit_template": "",
"container_registry_image_prefix": "",
"_links": {
"self": "",
"issues": "",
"merge_requests": "",
"repo_branches": "",
"labels": "",
"events": "",
"members": "",
"cluster_agents": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the list of starrers (users who have starred a repository). You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the list of starrers. |
| Search | (Optional) Specify a search string using which to search for specific users. |
The output contains the following populated JSON schema:
[
{
"starred_since": "",
"user": {
"id": "",
"username": "",
"name": "",
"state": "",
"avatar_url": "",
"web_url": ""
}
}
]
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository whose notification level is to be updated. You can select from the following options:
|
| Repository Name | Specify the name of the repository whose notification level is to be updated. |
| Notification Level | Specify the notification level to be updated. You can select from following options:
|
| Other Fields | (Optional) Specify other fields in the JSON format. For more information about other fields, see https://docs.gitlab.com/ee/api/rest/index.html. |
The output contains the following populated JSON schema:
{
"level": "",
"events": {
"new_note": "",
"new_issue": "",
"reopen_issue": "",
"close_issue": "",
"reassign_issue": "",
"issue_due": "",
"new_merge_request": "",
"push_to_merge_request": "",
"reopen_merge_request": "",
"close_merge_request": "",
"reassign_merge_request": "",
"merge_merge_request": "",
"failed_pipeline": "",
"fixed_pipeline": "",
"success_pipeline": ""
}
}
| Parameter | Description |
|---|---|
| FortiSOAR File IRI | Specify the FortiSOAR file IRI whose changes replace in the specified local repository. |
| Cloned Repository Path | Specify the path of the cloned repository to which to apply the changes of the specified FortiSOAR file. |
The output contains a non-dictionary value.
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository to clone. You can select from the following options:
|
| Repository Name | Specify the name of the repository to clone. |
| Branch Name | Specify the branch name of the repository to clone. |
| Clone As ZIP | Select this option to clone the specified repository as a zip file.
|
The output contains the following populated JSON schema:
{
"path": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to push the changes. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to push the changes. |
| Cloned Repository Path | Specify the path of the cloned repository in which to push the changes. |
| Branch Name | Specify the name of the branch in which to push the changes. |
| Commit Message | Specify the commit message to be used for pushing the changes. |
| Commit Description | Specify the commit description to be used for pushing changes. |
The output contains the following populated JSON schema:
{
"add": "",
"commit": "",
"push": ""
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the forked repository in which to fetch upstream changes. You can select from the following options:
|
| Repository Name | Specify the name of the forked repository in which to fetch upstream changes. |
| Title of MR | Specify a title of the merge request to create for the fork. |
| Source Branch | Specify the source branch of the merge request to create for the fork. |
| Target Branch | Specify the target branch of the merge request to create for the fork. |
| Description | (Optional) Specify a short description of the merge request to create for the fork. |
The output contains the following populated JSON schema:
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"target_branch": "",
"source_branch": "",
"upvotes": "",
"downvotes": "",
"author": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"assignee": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"source_project_id": "",
"target_project_id": "",
"labels": [],
"draft": "",
"work_in_progress": "",
"milestone": {
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"due_date": "",
"start_date": "",
"web_url": ""
},
"merge_when_pipeline_succeeds": "",
"merge_status": "",
"detailed_merge_status": "",
"merge_error": "",
"sha": "",
"merge_commit_sha": "",
"squash_commit_sha": "",
"user_notes_count": "",
"discussion_locked": "",
"should_remove_source_branch": "",
"force_remove_source_branch": "",
"allow_collaboration": "",
"allow_maintainer_to_push": "",
"web_url": "",
"references": {
"short": "",
"relative": "",
"full": ""
},
"time_stats": {
"time_estimate": "",
"total_time_spent": "",
"human_time_estimate": "",
"human_total_time_spent": ""
},
"squash": "",
"subscribed": "",
"changes_count": "",
"merged_by": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merge_user": {
"id": "",
"name": "",
"username": "",
"state": "",
"avatar_url": "",
"web_url": ""
},
"merged_at": "",
"prepared_at": "",
"closed_by": "",
"closed_at": "",
"latest_build_started_at": "",
"latest_build_finished_at": "",
"first_deployed_to_production_at": "",
"pipeline": {
"id": "",
"sha": "",
"ref": "",
"status": "",
"web_url": ""
},
"diff_refs": {
"base_sha": "",
"head_sha": "",
"start_sha": ""
},
"diverged_commits_count": "",
"task_completion_status": {
"count": "",
"completed_count": ""
}
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository in which to review the merge request. You can select from the following options:
|
| Repository Name | Specify the name of the repository in which to review the merge request. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to review. |
| Action | Select the action which you want to perform on the merge request. You can choose from following options:
|
The output contains the following populated JSON schema:
Output schema when you choose "Action" "Approve":
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"merge_status": "",
"approved": "",
"approvals_required": "",
"approvals_left": "",
"require_password_to_approve": "",
"approved_by": [
{
"user": {
"id": "",
"username": "",
"name": "",
"state": "",
"locked": "",
"avatar_url": "",
"web_url": ""
}
}
],
"suggested_approvers": [],
"approvers": [],
"approver_groups": [],
"user_has_approved": "",
"user_can_approve": "",
"approval_rules_left": [],
"has_approval_rules": "",
"merge_request_approvers_available": "",
"multiple_approval_rules_available": "",
"invalid_approvers_rules": []
}
Output schema when you choose "Action" "Unapprove":
{
"id": "",
"iid": "",
"project_id": "",
"title": "",
"description": "",
"state": "",
"created_at": "",
"updated_at": "",
"merge_status": "",
"approved": "",
"approvals_required": "",
"approvals_left": "",
"require_password_to_approve": "",
"approved_by": [],
"suggested_approvers": [],
"approvers": [],
"approver_groups": [],
"user_has_approved": "",
"user_can_approve": "",
"approval_rules_left": [],
"has_approval_rules": "",
"merge_request_approvers_available": "",
"multiple_approval_rules_available": "",
"invalid_approvers_rules": []
}
| Parameter | Description |
|---|---|
| Repository Type | Select the type of the repository from which to retrieve the merge request's approval state. You can select from the following options:
|
| Repository Name | Specify the name of the repository from which to retrieve the merge request's approval state. |
| Merge Request IID | Specify The internal ID (IID) of a merge request to retrieve its approval state. |
The output contains the following populated JSON schema:
{
"rules": [
{
"id": "",
"name": "",
"users": [],
"groups": [],
"section": "",
"approved": "",
"rule_type": "",
"code_owner": "",
"overridden": "",
"approved_by": [
{
"id": "",
"name": "",
"state": "",
"locked": "",
"web_url": "",
"username": "",
"avatar_url": ""
}
],
"source_rule": "",
"approvals_required": "",
"eligible_approvers": [],
"contains_hidden_groups": ""
}
],
"approval_rules_overwritten": ""
}
None.
The output contains the following populated JSON schema:
{
"server_url": ""
}
The Sample - GitLab - 2.0.1 playbook collection comes bundled with the GitLab connector. These playbooks contain steps using which you can perform all supported actions. You can see bundled playbooks in the Automation > Playbooks section in FortiSOAR™ after importing the GitLab connector.
Note: If you are planning to use any of the sample playbooks in your environment, ensure that you clone those playbooks and move them to a different collection since the sample playbook collection gets deleted during connector upgrade and delete.
NOTE: To use GitLab as a source control platform, all its associated playbooks must be in an active state.
The Sample - GitLab - 2.0.1 playbook collection contains pluggable source control that are used to perform actions through the Continuous Delivery solution pack. The pluggable source control playbooks are in the format: GitLab - playbookName. For example, GitLab - Create Repository.
Every playbook expects two input parameters:
connector_config_id which is used in connector actions' Configuration parameter.NOTE: To use GitLab as a source control platform, following playbooks must be in an active state.
| Playbook Name | Parameter Name | Dictionary | Required Tag | Additional Information |
|---|---|---|---|---|
| GitLab - Add Pull Request Review | add_pr_review_params |
{ "org_name": "", "repo_name": "", "pull_number": "", "state": "" }
|
GitLab-AddPullRequestReview | Not Required |
| GitLab - Update Issue | update_issue_params |
{ "org_name":"", "repo_name":"", "issue_no":"", "contents":"", "state":"" }
|
GitLab-UpdateIssue | This playbook updates an issue and adds a comment using specified contents. |
| GitLab - Create Issue | create_issue_params |
{ "org_name":"", "repo_name":"", "issue_title":"", "issue_content":"", "issue_assignee":" " }
|
GitLab-CreateIssue | This playbook creates issue and Add comment which will be provided in issue_content. Then we need to add new key "number" in response and map it with "iid" field from the response. |
| GitLab - List Repository Issue | list_repo_issues_params |
{ "org_name":"", "repo_name":"", "state":"", "created_after":"" }
|
GitLab-ListRepositoryIssue | The last step of this playbook should be "Set Variable" step, where user should need to map the response of the "List Repository Issue" action with the following keys:
{"id": "", "html_url": "", "number": "", "title": "", "body": "", "reporterUsername": "", "assigneeUsername": "", "state": "", "repository_url": "" }
|
| GitLab - Create Issue Comment | add_issue_comment_params |
{ "org_name":"", "repo_name":"", "cr_number":"", "commit_message":"" }
|
GitLab-CreateIssueComment | Not Required |
| GitLab - Create Repository | create_repo_params |
{ "org_name":"", "repo_name":" " }
|
GitLab-CreateRepository | "Create Repository" step should be set to Ignore Error Yes |
| GitLab - Create Branch | create_branch_params |
{ "org_name":"", "repo_name":"", "new_branch":"", "branch_name":"" }
|
GitLab-CreateBranch | "Create Branch" step should be set Ignore Error Yes |
| GitLab - List Pull Request | list_pr_params |
{ "org_name": "", "repo_name": "", "state": "", "pull_number": "", }
|
GitLab-ListPullRequest | The last step of this playbook should be "Set Variable" step, where user should need to map the response of "List Pull Request" action with below keys: { "reviewer_names": "", "html_url": "", "state": "", "body": "", "reporterUsername": "", "assigneeUsername": "", "repository_url": "" } |
| GitLab - Create Release | create_release_params |
{ "org_name":"", "repo_name":"", "tag_name":"", "base_branch":"", "release_description":"" }
|
GitLab-CreateRelease | Not Required |
| GitLab - Delete Branch | delete_branch_params |
{ "org_name":"", "repo_name":"", "branch_name":"" }
|
GitLab-DeleteBranch | Not Required |
| GitLab - Fetch Release | fetch_release_params |
{ "org_name":"", "repo_name":"", "release_name":"" }
|
GitLab-FetchRelease | The last step of the playbook should be "Set Variable" step where user should return the Release matching the release_name key from input. |
| GitLab - Add Reviewers for a Pull Request | add_reviewers_for_pr_params |
{ "org_name":"", "repo_name":"", "pull_number":"", "reviewers":"" }
|
GitLab-PullRequestAddReviewers | Note: This playbook will use "Update Merge Request" action to add reviewer |
| GitLab - List Pull Request Reviews | list_pr_reviews_params |
{ "org_name":"", "repo_name":"", "pull_number":"" }
|
GitLab-ListPullRequestReviews | Keep Set Variable as the last step of this playbook where the key state has values APPROVED, if the pull request can be merged, or UNAPPROVED, if the PR cannot be merged. |
| GitLab - Create Pull Request | create_pr_params |
{ "org_name":"", "repo_name":"", "head_repo":"", "base_branch":"", "pr_title":"", "pr_comments":"" }
|
GitLab-CreatePullRequest | Set Ignore Error flag to the step Create Pull Request to handle the scenario where if pull request is already created, the Create Pull Request action fails. If the playbook step executes successfully, we need to add new keys number and html_url in response and map it with the iid and web_url fields from the responses. |
| GitLab - Merge Pull Request | merge_pr_params |
{ "org_name":"", "repo_name":"", "pull_number":"" }
|
GitLab-MergePullRequest | Not Required |
| GitLab - List Repository Collaborator | list_repo_collaborator_params |
{ "org_name":"", "repo_name":"" }
|
GitLab-ListRepositoryCollaborator | Playbook will return list of users. Then we need to add new key "login" in response and map it with the "username" field from the response. |
| GitLab - Add Repository Collaborator | add_repo_collaborator_params |
{ "org_name":"", "repo_name":"", "username":"" }
|
GitLab-AddRepositoryCollaborator | Not Required |
| GitLab - Clone Repository | clone_repo_params |
{ "org_name":"", "repo_name":"", "branch_name":"", "clone_as_zip":"" }
|
GitLab-CloneRepository | Not Required |
| GitLab - Get Server URL | Not Required | Not Required | GitLab-GetServerURL | Not Required |
| GitLab - Update Remote Repository | update_remote_repo_params |
{"file_iri": "", "clone_path": ""}
|
GitLab-UpdateRemoteRepository | Not Required |
| GitLab - Push Changes | push_changes_params |
{
"org_name": "",
"branch_name": "",
"repo_type": "",
"repo_name": "",
"cloned_repo_path": "",
"commit_message": "",
"commit_description": ""
}
|
GitLab-PushChanges | Not Required |
| GitLab - Create or Update File Content | create_update_file_content_params |
{
"org_name": "",
"file_name": "",
"repo_name": "",
"branch_name": "",
"file_content": "",
"commit_message": ""
}
|
GitLab-CreateUpdateFileContent | This playbook creates a file. The step Create Step has an Ignore Error flag set to Yes. If file exists, the step fails and the existing file is updated, otherwise a new file is created.
When a file is created, this playbook returns the result and status of the step Create File, otherwise it returns the result and status of the step Update File. |