package gitlab
-
gitlab
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
type project_webhook = {
project_webhook_id : int;
project_webhook_name : string;
project_webhook_description : string option;
project_webhook_web_url : string;
project_webhook_avatar_url : string option;
project_webhook_ci_config_path : string option;
project_webhook_git_ssh_url : string;
project_webhook_git_http_url : string;
project_webhook_namespace : string;
project_webhook_path_with_namespace : string;
project_webhook_visibility_level : int;
project_webhook_default_branch : string;
project_webhook_homepage : string option;
project_webhook_url : string option;
project_webhook_ssh_url : string option;
project_webhook_http_url : string option;
}
type wiki_page_webhook = {
wiki_page_webhook_user : user_short;
wiki_page_webhook_project : project_webhook;
wiki_page_webhook_wiki : wiki;
wiki_page_webhook_attributes : wiki_attributes;
}
type release_webhook = {
release_webhook_id : int;
release_webhook_created_at : string;
release_webhook_description : string;
release_webhook_name : string;
release_webhook_released_at : string;
release_webhook_tag : string;
release_webhook_project : project_webhook;
release_webhook_url : string;
release_webhook_action : string;
release_webhook_assets : assets;
release_webhook_commit : commit_short_webhook;
}
type commits_webhook = commit_webhook list
type push_webhook = {
push_webhook_event_name : string;
push_webhook_before : string;
push_webhook_after : string;
push_webhook_ref : string;
push_webhook_checkout_sha : string;
push_webhook_message : string option;
push_webhook_user_id : int;
push_webhook_user_name : string;
push_webhook_user_username : string;
push_webhook_user_email : string;
push_webhook_user_avatar : string;
push_webhook_project_id : int;
push_webhook_project : project_webhook;
push_webhook_commits : commits_webhook;
push_webhook_total_commits_count : int;
push_webhook_repository : repository;
}
type note_attributes = {
note_attrbutes_attachment : string option;
note_attrbutes_change_position : string option;
note_attrbutes_commit_id : string option;
note_attrbutes_created_at : string;
note_attrbutes_discussion_id : string;
note_attrbutes_id : int;
note_attrbutes_line_code : int option;
note_attrbutes_note : string;
note_attrbutes_noteable_id : int;
note_attrbutes_noteable_type : string;
note_attrbutes_original_position : string option;
note_attrbutes_position : string option;
note_attrbutes_project_id : int;
note_attrbutes_resolved_at : string option;
note_attrbutes_resolved_by_id : string option;
note_attrbutes_resolved_by_push : string option;
note_attrbutes_st_diff : string option;
note_attrbutes_system : bool;
note_attrbutes_note_attribute_type : string option;
note_attrbutes_updated_at : string;
note_attrbutes_updated_by_id : string option;
note_attrbutes_description : string;
note_attrbutes_url : string;
}
type issue = {
closed_at : string option;
confidential : bool;
created_at : string;
description : string;
discussion_locked : string option;
due_date : string option;
id : int;
iid : int;
last_edited_at : string option;
last_edited_by_id : string option;
milestone_id : string option;
moved_to_id : string option;
duplicated_to_id : int option;
project_id : int;
relative_position : int;
state_id : int;
time_estimate : int;
title : string;
updated_at : string;
updated_by_id : string option;
weight : string option;
url : string;
total_time_spent : int;
time_change : int;
human_total_time_spent : int option;
human_time_change : int option;
human_time_estimate : int option;
assignee_ids : int list;
assignee_id : int;
labels : string list;
state : state;
severity : string;
}
type note_webhook = {
note_webhook_event_type : string;
note_webhook_user : user_short;
note_webhook_project : project_webhook;
note_webhook_attributes : note_attributes;
note_webhook_repository : repository;
note_webhook_project_id : int;
note_webhook_issue : issue;
}
type merge_request_changes = {
merge_request_changes_updated_by_id : updated_by_id option;
merge_request_changes_updated_at : updated_at option;
merge_request_changes_assignees : assignees option;
}
type merge_request_attributes = {
merge_request_attributes_action : string option;
merge_request_attributes_assignee_id : int option;
merge_request_attributes_assignee_ids : int list;
merge_request_attributes_created_at : string;
merge_request_attributes_description : string;
merge_request_attributes_head_pipeline_id : int option;
merge_request_attributes_id : int;
merge_request_attributes_iid : int;
merge_request_attributes_last_edited_at : string option;
merge_request_attributes_last_edited_by_id : string option;
merge_request_attributes_last_commit : commit_short_webhook;
merge_request_attributes_oldrev : string option;
merge_request_attributes_merge_commit_sha : string option;
merge_request_attributes_merge_error : string option;
merge_request_attributes_merge_params : merge_params;
merge_request_attributes_merge_status : merge_status;
merge_request_attributes_merge_user_id : int option;
merge_request_attributes_merge_when_pipeline_succeeds : bool;
merge_request_attributes_milestone_id : string option;
merge_request_attributes_source : project_webhook;
merge_request_attributes_source_branch : string;
merge_request_attributes_source_project_id : int;
merge_request_attributes_state_id : int;
merge_request_attributes_state : string;
merge_request_attributes_target : project_webhook;
merge_request_attributes_target_branch : string;
merge_request_attributes_target_project_id : int;
merge_request_attributes_title : string;
merge_request_attributes_updated_at : string;
merge_request_attributes_updated_by_id : int option;
merge_request_attributes_url : string;
merge_request_attributes_work_in_progress : bool;
merge_request_attributes_total_time_spent : int;
merge_request_attributes_time_change : int;
merge_request_attributes_time_estimate : int;
merge_request_attributes_human_total_time_spent : int option;
merge_request_attributes_human_time_change : int option;
merge_request_attributes_human_time_estimate : int option;
}
type merge_request_webhook = {
merge_request_webhook_event_type : string;
merge_request_webhook_user : user_short;
merge_request_webhook_project : project_webhook;
merge_request_webhook_attributes : merge_request_attributes;
merge_request_webhook_repository : repository;
merge_request_webhook_labels : label list;
merge_request_webhook_changes : merge_request_changes option;
merge_request_webhook_assignees : user_short list option;
}
type issue_attributes = {
issue_attributes_assignee_id : int option;
issue_attributes_assignee_ids : int list;
issue_attributes_closed_at : string option;
issue_attributes_confidential : bool;
issue_attributes_created_at : string;
issue_attributes_description : string;
issue_attributes_discussion_locked : string option;
issue_attributes_due_date : string option;
issue_attributes_duplicated_to_id : string option;
issue_attributes_human_time_change : string option;
issue_attributes_human_time_estimate : string option;
issue_attributes_human_total_time_spent : string option;
issue_attributes_id : int;
issue_attributes_iid : int;
issue_attributes_labels : string list;
issue_attributes_last_edited_at : string option;
issue_attributes_last_edited_by_id : string option;
issue_attributes_milestone_id : string option;
issue_attributes_moved_to_id : int option;
issue_attributes_project_id : int;
issue_attributes_relative_position : int;
issue_attributes_severity : string;
issue_attributes_state : string;
issue_attributes_state_id : int;
issue_attributes_time_change : int;
issue_attributes_time_estimate : int;
issue_attributes_title : string;
issue_attributes_total_time_spent : int;
issue_attributes_updated_at : string;
issue_attributes_updated_by_id : int option;
issue_attributes_url : string;
issue_attributes_weight : int option;
}
type issue_webhook = {
issue_webhook_event_type : string;
issue_webhook_user : user_short;
issue_webhook_project : project_webhook;
issue_webhook_attributes : issue_attributes;
issue_webhook_labels : label list;
issue_webhook_repository : repository;
issue_webhook_assignees : user_short list;
}
type webhook = [
| `Push of push_webhook
| `MergeRequest of merge_request_webhook
| `Issue of issue_webhook
| `Note of note_webhook
| `WikiPage of wiki_page_webhook
| `Release of release_webhook
]
type webhooks = webhook list
type users = user_short list
type user = {
user_id : Stdlib.Int64.t;
user_username : string;
user_name : string;
user_state : string;
user_avatar_url : string;
user_web_url : string;
user_created_at : string;
user_bio : string option;
user_bio_html : string option;
user_location : string option;
user_public_email : string option;
user_skype : string option;
user_linkedin : string option;
user_twitter : string option;
user_website_url : string option;
user_organization : string option;
user_job_title : string option;
user_pronouns : string option;
user_bot : bool;
user_work_information : string option;
user_followers : int;
user_following : int;
}
type status_check = {
status_check_id : int;
status_check_name : string;
status_check_external_url : string;
status_check_status : status_check_status;
}
type status_checks = status_check list
type project_short = {
project_short_id : int;
project_short_name : string;
project_short_description : string;
project_short_name_with_namespace : string;
project_short_path : string;
project_short_path_with_namespace : string;
project_short_created_at : string;
project_short_default_branch : string;
project_short_tag_list : string list option;
project_short_topics : string list option;
project_short_ssh_url_to_repo : string;
project_short_http_url_to_repo : string;
project_short_web_url : string;
project_short_readme_url : string option;
project_short_avatar_url : string option;
project_short_forks_count : int;
project_short_star_count : int;
project_short_last_activity_at : string;
project_short_namespace : namespace;
}
type projects_short = project_short list
type permissions = {
permissions_group_access : string option;
permissions_project_access : project_access;
}
type container_expiration_policy = {
container_expiration_policy_cadence : string;
container_expiration_policy_enabled : bool;
container_expiration_policy_keep_n : int;
container_expiration_policy_name_regex : string;
container_expiration_policy_name_regex_keep : string option;
container_expiration_policy_next_run_at : string;
container_expiration_policy_older_than : string;
}
type project_full = {
project_full_id : int;
project_full_name : string;
project_full_description : string;
project_full_name_with_namespace : string;
project_full_created_at : string;
project_full_default_branch : string;
project_full_tag_list : string list option;
project_full_topics : string list option;
project_full_ssh_url_to_repo : string;
project_full_http_url_to_repo : string;
project_full_web_url : string;
project_full_readme_url : string option;
project_full_avatar_url : string option;
project_full_forks_count : int;
project_full_star_count : int;
project_full_last_activity_at : string;
project_full_namespace : namespace;
project_full_runners_token : string option;
project_full_statistics : statistics option;
project_full_allow_merge_on_skipped_pipeline : bool option;
project_full_analytics_access_level : string;
project_full_approvals_before_merge : int;
project_full_archived : bool;
project_full_auto_cancel_pending_pipelines : string;
project_full_auto_devops_deploy_strategy : string;
project_full_auto_devops_enabled : bool;
project_full_autoclose_referenced_issues : bool;
project_full_build_coverage_regex : string option;
project_full_build_timeout : int;
project_full_builds_access_level : string;
project_full_can_create_merge_request_in : bool;
project_full_ci_config_path : string option;
project_full_ci_default_git_depth : int option;
project_full_ci_forward_deployment_enabled : bool option;
project_full_ci_job_token_scope_enabled : bool;
project_full_compliance_frameworks : string list;
project_full_container_expiration_policy : container_expiration_policy option;
project_full_container_registry_access_level : string;
project_full_container_registry_enabled : bool;
project_full_container_registry_image_prefix : string;
project_full_creator_id : int;
project_full_emails_disabled : string option;
project_full_empty_repo : bool;
project_full_forked_from_project : project_short option;
project_full_forking_access_level : string;
project_full_import_status : string;
project_full_issues_access_level : string;
project_full_issues_enabled : bool;
project_full_issues_template : string option;
project_full_jobs_enabled : bool;
project_full_keep_latest_artifact : bool;
project_full_lfs_enabled : bool;
project_full_links : links;
project_full_marked_for_deletion_at : string option;
project_full_marked_for_deletion_on : string option;
project_full_merge_method : merge_method;
project_full_merge_pipelines_enabled : bool;
project_full_merge_requests_access_level : string;
project_full_merge_requests_enabled : bool;
project_full_merge_requests_template : string option;
project_full_merge_trains_enabled : bool;
project_full_mirror : bool;
project_full_only_allow_merge_if_all_discussions_are_resolved : bool option;
project_full_only_allow_merge_if_pipeline_succeeds : bool;
project_full_open_issues_count : int;
project_full_operations_access_level : string;
project_full_owner : user_short;
project_full_packages_enabled : bool option;
project_full_pages_access_level : string;
project_full_path : string;
project_full_path_with_namespace : string;
project_full_permissions : permissions;
project_full_public_jobs : bool;
project_full_printing_merge_request_link_enabled : bool;
project_full_remove_source_branch_after_merge : bool option;
project_full_repository_access_level : string;
project_full_request_access_enabled : bool;
project_full_requirements_enabled : bool;
project_full_resolve_outdated_diff_discussions : bool option;
project_full_restrict_user_defined_variables : bool option;
project_full_security_and_compliance_enabled : bool;
project_full_service_desk_address : string option;
project_full_service_desk_enabled : bool option;
project_full_snippets_enabled : bool;
project_full_snippets_access_level : string;
project_full_squash_option : string;
project_full_suggestion_commit_message : string option;
project_full_visibility : visibility;
project_full_wiki_access_level : string;
project_full_wiki_enabled : bool;
}
type projects_full = project_full list
type project_shorts = project_short list
type project_access_token = {
project_access_token_id : int;
project_access_token_name : string;
project_access_token_revoked : bool;
project_access_token_created_at : string;
project_access_token_scopes : scope list;
project_access_token_user_id : int;
project_access_token_active : bool;
project_access_token_expires_at : string option;
}
type project_access_tokens = project_access_token list
type personal_access_token = {
personal_access_token_id : int;
personal_access_token_name : string;
personal_access_token_revoked : bool;
personal_access_token_created_at : string;
personal_access_token_scopes : scope list;
personal_access_token_user_id : int;
personal_access_token_active : bool;
personal_access_token_expires_at : string option;
}
type personal_access_tokens = personal_access_token list
type note = {
note_id : int;
note_note_type : string option;
note_body : string;
note_attachment : string option;
note_created_at : string;
note_updated_at : string;
note_system : bool;
note_noteable_id : int;
note_noteable_type : noteable_type;
note_resolvable : bool;
note_confidential : bool;
note_noteable_iid : int;
}
type new_status = {
state : commit_status_status;
ref_name : string option;
name : string option;
target_url : string option;
description : string option;
coverage : int option;
pipeline_id : int option;
}
type new_comment = {
note : string;
path : string option;
line : int option;
line_type : line_type option;
}
type milestone = {
milestone_id : int;
milestone_iid : int;
milestone_project_id : int option;
milestone_group_id : int option;
milestone_title : string;
milestone_description : string;
milestone_state : milestone_state;
milestone_created_at : string;
milestone_updated_at : string;
milestone_due_date : string option;
milestone_start_date : string option;
milestone_expired : bool option;
milestone_web_url : string;
}
type milestones = milestone list
type merge_request = {
merge_request_id : int;
merge_request_iid : int;
merge_request_project_id : int;
merge_request_title : string;
merge_request_description : string;
merge_request_state : state;
merge_request_merged_by : user_short option;
merge_request_merged_at : string option;
merge_request_closed_by : user_short option;
merge_request_closed_at : string option;
merge_request_created_at : string;
merge_request_updated_at : string;
merge_request_target_branch : string;
merge_request_source_branch : string;
merge_request_upvotes : int;
merge_request_downvotes : int;
merge_request_assignee : user_short option;
merge_request_approvals_before_merge : string option;
merge_request_allow_collaboration : bool option;
merge_request_allow_maintainer_to_push : bool option;
merge_request_blocking_discussions_resolved : bool;
merge_request_has_conflicts : bool;
merge_request_assignees : user_short list;
merge_request_reviewers : user_short list;
merge_request_source_project_id : int;
merge_request_target_project_id : int;
merge_request_labels : string list;
merge_request_draft : bool;
merge_request_work_in_progress : bool;
merge_request_milestone : milestone option;
merge_request_merge_when_pipeline_succeeds : bool;
merge_request_merge_status : merge_status;
merge_request_sha : string;
merge_request_merge_commit_sha : string option;
merge_request_squash_commit_sha : string option;
merge_request_user_notes_count : int;
merge_request_discussion_locked : bool option;
merge_request_should_remove_source_branch : bool option;
merge_request_force_remove_source_branch : bool option;
merge_request_web_url : string;
merge_request_reference : string;
merge_request_references : references;
merge_request_time_stats : time_stats;
merge_request_squash : bool;
merge_request_task_completion_status : task_completion_status;
}
type merge_requests = merge_request list
type external_status_check = {
external_status_check_id : int;
external_status_check_name : string;
external_status_check_project_id : int;
external_status_check_external_url : string;
external_status_check_protected_branches : branch list;
}
type external_status_checks = external_status_check list
type event = {
event_id : int;
event_project_id : int;
event_action_name : event_action_name option;
event_target_id : int option;
event_target_iid : int option;
event_target_type : event_target_type option;
event_target_title : string option;
event_created_at : string;
event_push_data : push_data option;
event_note : note option;
event_wiki_page : wiki_page option;
}
type events = event list
type commits = commit list
type commit_status = {
commit_status_id : int;
commit_status_sha : string;
commit_status_ref : string;
commit_status_status : string;
commit_status_name : string;
commit_status_target_url : string option;
commit_status_description : string option;
commit_status_created_at : string;
commit_status_started_at : string option;
commit_status_finished_at : string option;
commit_status_allow_failure : bool;
commit_status_coverage : string option;
}
type commit_statuses = commit_status list
type commit_comments = commit_comment list
type commit_commented = {
commit_commented_created_at : string;
commit_commented_line_type : line_type;
commit_commented_path : string;
commit_commented_line : int;
commit_commented_note : string;
}
type changes = {
changes_id : int;
changes_iid : int;
changes_project_id : int;
changes_title : string;
changes_state : string;
changes_created_at : string;
changes_updated_at : string;
changes_target_branch : string;
changes_source_branch : string;
changes_upvotes : int;
changes_downvotes : int;
changes_assignee : user_short option;
changes_assignees : user_short list option;
changes_reviewers : user_short list;
changes_source_project_id : int;
changes_target_project_id : int;
changes_labels : string list;
changes_description : string;
changes_draft : bool;
changes_work_in_progress : bool;
changes_milestone : milestone option;
changes_merge_when_pipeline_succeeds : bool;
changes_merge_status : merge_status;
changes_subscribed : bool;
changes_sha : string;
changes_merge_commit_sha : string option;
changes_squash_commit_sha : string option;
changes_user_notes_count : int;
changes_changes_count : int;
changes_should_remove_source_branch : bool;
changes_force_remove_source_branch : bool;
changes_squash : bool;
changes_web_url : string;
changes_references : references;
changes_discussion_locked : bool;
changes_time_stats : time_stats;
changes_task_completion_status : task_completion_status;
changes_changes : change list;
changes_overflow : bool;
}
type branch_full = {
branch_full_name : string;
branch_full_merged : bool;
branch_full_protected : bool;
branch_full_developers_can_push : bool;
branch_full_developers_can_merge : bool;
branch_full_can_push : bool;
branch_full_default : bool;
branch_full_web_url : string;
branch_full_commit : commit;
}
type branches_full = branch_full list