Gitlab APIv4 OCaml library
Module Gitlab . Project
val create : token:Token.t -> name:string -> ?description:string -> unit -> Gitlab_t.project_short Response.t Monad.t

create ~token ~name ?description () Creates a new project owned by the authenticated user.

See Create project.

val by_name : ?token:Token.t -> owner:string -> name:string -> unit -> Gitlab_t.projects_short Response.t Monad.t

by_name ~owner ~name () retrieves projects owned by owner with a name like name. Depending on the name used this will return 1 or more matches. Supply a token to access private projects.

There is no direct fetch by name API in GitLab.

val by_id : ?token:Token.t -> project_id:int -> unit -> Gitlab_t.project_short option Response.t Monad.t

by_id ~project_id retrieve the project for project_id, returns None if the project doesn't exist. Supply a token to access private projects.

See Get a single project.

module Branch : sig ... end
val pipelines : token:Token.t -> project_id:int -> ?per_page:int -> ?status:Gitlab_t.pipeline_status -> ?source:Gitlab_t.pipeline_source -> ?sha:string -> ?ref_:string -> ?username:string -> ?updated_after:string -> ?updated_before:string -> ?sort:Gitlab_t.sort -> ?order_by:[ `Id | `Ref | `Status | `Updated_at | `User_id ] -> unit -> Gitlab_t.pipeline Stream.t

pipelines ~token ~project_id () list all pipelines the authenticated user has access to in project_id.

See List project pipelines.

val pipeline : token:Token.t -> project_id:int -> pipeline_id:int -> unit -> Gitlab_t.single_pipeline Response.t Monad.t

pipeline ~token ~project_id ~pipeline_id () get one single pipeline pipeline_id in project_id.

See Get a single pipeline.

val pipeline_jobs : token:Token.t -> project_id:int -> ?per_page:int -> ?scope:Gitlab_t.pipeline_job_scope -> ?include_retried:bool -> pipeline_id:int -> unit -> Gitlab_t.pipeline_job Stream.t

pipeline_jobs ~token ~project_id pipeline_id () get a list of jobs for a pipeline pipeline_id of a project project_id.

See List pipeline jobs.

val job_trace : token:Token.t -> project_id:int -> job_id:int -> unit -> string option Response.t Monad.t

job_trace ~token ~project_id job_id () get the log (trace) of a specific job job_id of a project project-id.

See Get a log file.

val merge_requests : ?token:Token.t -> ?state:Gitlab_t.state -> ?milestone:string -> ?labels:string list -> ?author:string -> ?author_username:string -> ?my_reaction:string -> ?scope:Gitlab_t.merge_request_scope -> ?updated_after:string -> id:int -> unit -> Gitlab_t.merge_request Stream.t

merge_requests ?token ~id () list all merge requests for project id.

See List project merge requests.

val merge_request : ?token:Token.t -> project_id:int -> merge_request_iid:string -> unit -> Gitlab_t.merge_request Response.t Monad.t

merge_request ?token ~project_id ~merge_request_iid () shows information about a single merge request.

See Get single merge request.

val merge_request_participants : ?token:Token.t -> project_id:int -> merge_request_iid:string -> unit -> Gitlab_t.users Response.t Monad.t

merge_request_participants ?token ~project_id ~merge_request_iid () gets a list of merge request participants.

See Get a list of merge request participants.

val merge_request_commits : ?token:Token.t -> project_id:int -> merge_request_iid:string -> unit -> Gitlab_t.commits Response.t Monad.t

merge_request_commits ?token ~project_id ~merge_request_iid () gets a list of merge request commits.

See Get single merge request commits.

val merge_request_changes : ?token:Token.t -> project_id:int -> merge_request_iid:string -> unit -> Gitlab_t.changes Response.t Monad.t

merge_request_changes ?token ~project_id ~merge_request_iid () shows information about the merge request including its files and changes.

See Get single MR changes.

val events : token:Token.t -> project_id:int -> ?action:Gitlab_t.event_action_name -> ?target_type:Gitlab_t.event_target_type -> unit -> Response.t Monad.t

events ~project_id get visible events for a project.

See List a projects visible events.

val all_projects : token:Token.t -> ?owned:bool -> ?search:string -> ?with_programming_language:string -> unit -> Gitlab_t.project_short Stream.t

all_projects ~token () Get a list of all visible projects across GitLab for the authenticated user.

See List all projects.

module ExternalStatusCheck : sig ... end
module Commit : sig ... end

Commit operates on a repository's commits.

module Milestone : sig ... end

Milestone operates on a Project's milestones. There is a separate Group Milestone module.

module ProjectAccessToken : sig ... end

Project access tokens for Project authentication.

module Issue : sig ... end
module Hook : sig ... end
module Notes : sig ... end

The Notes module provides access to Notes API.