package otoggl

  1. Overview
  2. Docs
include module type of struct include Toggl_t end
val show_datetime : Ptime.t -> Ppx_deriving_runtime.string
val equal_datetime : Ptime.t -> Ptime.t -> Ppx_deriving_runtime.bool
val show_time_entry_update_request : Toggl_t.time_entry_update_request -> Ppx_deriving_runtime.string
val show_wrapped_time_entry_update_request : Toggl_t.wrapped_time_entry_update_request -> Ppx_deriving_runtime.string
val show_wid : int -> Ppx_deriving_runtime.string
val equal_wid : int -> int -> Ppx_deriving_runtime.bool
val show_wrapped_project_request : Toggl_t.wrapped_project_request -> Ppx_deriving_runtime.string
val show_workspace_list : Toggl_t.workspace list -> Ppx_deriving_runtime.string
val equal_workspace_list : Toggl_t.workspace list -> Toggl_t.workspace list -> Ppx_deriving_runtime.bool
val show_uid : int -> Ppx_deriving_runtime.string
val equal_uid : int -> int -> Ppx_deriving_runtime.bool
val show_tid : int -> Ppx_deriving_runtime.string
val equal_tid : int -> int -> Ppx_deriving_runtime.bool
val show_pid : int -> Ppx_deriving_runtime.string
val equal_pid : int -> int -> Ppx_deriving_runtime.bool
val show_time_entry_list : Toggl_t.time_entry list -> Ppx_deriving_runtime.string
val equal_time_entry_list : Toggl_t.time_entry list -> Toggl_t.time_entry list -> Ppx_deriving_runtime.bool
val show_tid_list : int list -> Ppx_deriving_runtime.string
val equal_tid_list : int list -> int list -> Ppx_deriving_runtime.bool
val show_project_list : Toggl_t.project list -> Ppx_deriving_runtime.string
val equal_project_list : Toggl_t.project list -> Toggl_t.project list -> Ppx_deriving_runtime.bool
val show_pid_list : int list -> Ppx_deriving_runtime.string
val equal_pid_list : int list -> int list -> Ppx_deriving_runtime.bool
include module type of struct include Toggl_j end
val write_datetime : Buffer.t -> Toggl_t.datetime -> unit

Output a JSON value of type datetime.

val string_of_datetime : ?len:int -> Toggl_t.datetime -> string

Serialize a value of type datetime into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type datetime.

val datetime_of_string : string -> Toggl_t.datetime

Deserialize JSON data of type datetime.

val write_time_entry_update_request : Buffer.t -> Toggl_t.time_entry_update_request -> unit

Output a JSON value of type time_entry_update_request.

val string_of_time_entry_update_request : ?len:int -> Toggl_t.time_entry_update_request -> string

Serialize a value of type time_entry_update_request into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

val read_time_entry_update_request : Yojson.Safe.lexer_state -> Lexing.lexbuf -> Toggl_t.time_entry_update_request

Input JSON data of type time_entry_update_request.

val time_entry_update_request_of_string : string -> Toggl_t.time_entry_update_request

Deserialize JSON data of type time_entry_update_request.

val write_wrapped_time_entry_update_request : Buffer.t -> Toggl_t.wrapped_time_entry_update_request -> unit

Output a JSON value of type wrapped_time_entry_update_request.

val string_of_wrapped_time_entry_update_request : ?len:int -> Toggl_t.wrapped_time_entry_update_request -> string

Serialize a value of type wrapped_time_entry_update_request into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

val read_wrapped_time_entry_update_request : Yojson.Safe.lexer_state -> Lexing.lexbuf -> Toggl_t.wrapped_time_entry_update_request

Input JSON data of type wrapped_time_entry_update_request.

val wrapped_time_entry_update_request_of_string : string -> Toggl_t.wrapped_time_entry_update_request

Deserialize JSON data of type wrapped_time_entry_update_request.

val write_time_entry_request : Buffer.t -> Toggl_t.time_entry_request -> unit

Output a JSON value of type time_entry_request.

val string_of_time_entry_request : ?len:int -> Toggl_t.time_entry_request -> string

Serialize a value of type time_entry_request into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

val read_time_entry_request : Yojson.Safe.lexer_state -> Lexing.lexbuf -> Toggl_t.time_entry_request

Input JSON data of type time_entry_request.

val time_entry_request_of_string : string -> Toggl_t.time_entry_request

Deserialize JSON data of type time_entry_request.

val write_wrapped_time_entry : Buffer.t -> Toggl_t.wrapped_time_entry -> unit

Output a JSON value of type wrapped_time_entry.

val string_of_wrapped_time_entry : ?len:int -> Toggl_t.wrapped_time_entry -> string

Serialize a value of type wrapped_time_entry into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

val read_wrapped_time_entry : Yojson.Safe.lexer_state -> Lexing.lexbuf -> Toggl_t.wrapped_time_entry

Input JSON data of type wrapped_time_entry.

val wrapped_time_entry_of_string : string -> Toggl_t.wrapped_time_entry

Deserialize JSON data of type wrapped_time_entry.

val write_wid : Buffer.t -> Toggl_t.wid -> unit

Output a JSON value of type wid.

val string_of_wid : ?len:int -> Toggl_t.wid -> string

Serialize a value of type wid into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type wid.

val wid_of_string : string -> Toggl_t.wid

Deserialize JSON data of type wid.

val write_project_request : Buffer.t -> Toggl_t.project_request -> unit

Output a JSON value of type project_request.

val string_of_project_request : ?len:int -> Toggl_t.project_request -> string

Serialize a value of type project_request into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type project_request.

val project_request_of_string : string -> Toggl_t.project_request

Deserialize JSON data of type project_request.

val write_wrapped_project_request : Buffer.t -> Toggl_t.wrapped_project_request -> unit

Output a JSON value of type wrapped_project_request.

val string_of_wrapped_project_request : ?len:int -> Toggl_t.wrapped_project_request -> string

Serialize a value of type wrapped_project_request into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type wrapped_project_request.

val wrapped_project_request_of_string : string -> Toggl_t.wrapped_project_request

Deserialize JSON data of type wrapped_project_request.

val write_workspace : Buffer.t -> Toggl_t.workspace -> unit

Output a JSON value of type workspace.

val string_of_workspace : ?len:int -> Toggl_t.workspace -> string

Serialize a value of type workspace into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type workspace.

val workspace_of_string : string -> Toggl_t.workspace

Deserialize JSON data of type workspace.

val write_workspace_list : Buffer.t -> Toggl_t.workspace_list -> unit

Output a JSON value of type workspace_list.

val string_of_workspace_list : ?len:int -> Toggl_t.workspace_list -> string

Serialize a value of type workspace_list into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type workspace_list.

val workspace_list_of_string : string -> Toggl_t.workspace_list

Deserialize JSON data of type workspace_list.

val write_uid : Buffer.t -> Toggl_t.uid -> unit

Output a JSON value of type uid.

val string_of_uid : ?len:int -> Toggl_t.uid -> string

Serialize a value of type uid into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type uid.

val uid_of_string : string -> Toggl_t.uid

Deserialize JSON data of type uid.

val write_tid : Buffer.t -> Toggl_t.tid -> unit

Output a JSON value of type tid.

val string_of_tid : ?len:int -> Toggl_t.tid -> string

Serialize a value of type tid into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type tid.

val tid_of_string : string -> Toggl_t.tid

Deserialize JSON data of type tid.

val write_pid : Buffer.t -> Toggl_t.pid -> unit

Output a JSON value of type pid.

val string_of_pid : ?len:int -> Toggl_t.pid -> string

Serialize a value of type pid into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type pid.

val pid_of_string : string -> Toggl_t.pid

Deserialize JSON data of type pid.

val write_time_entry : Buffer.t -> Toggl_t.time_entry -> unit

Output a JSON value of type time_entry.

val string_of_time_entry : ?len:int -> Toggl_t.time_entry -> string

Serialize a value of type time_entry into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

val read_time_entry : Yojson.Safe.lexer_state -> Lexing.lexbuf -> Toggl_t.time_entry

Input JSON data of type time_entry.

val time_entry_of_string : string -> Toggl_t.time_entry

Deserialize JSON data of type time_entry.

val write_time_entry_list : Buffer.t -> Toggl_t.time_entry_list -> unit

Output a JSON value of type time_entry_list.

val string_of_time_entry_list : ?len:int -> Toggl_t.time_entry_list -> string

Serialize a value of type time_entry_list into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

val read_time_entry_list : Yojson.Safe.lexer_state -> Lexing.lexbuf -> Toggl_t.time_entry_list

Input JSON data of type time_entry_list.

val time_entry_list_of_string : string -> Toggl_t.time_entry_list

Deserialize JSON data of type time_entry_list.

val write_tid_list : Buffer.t -> Toggl_t.tid_list -> unit

Output a JSON value of type tid_list.

val string_of_tid_list : ?len:int -> Toggl_t.tid_list -> string

Serialize a value of type tid_list into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type tid_list.

val tid_list_of_string : string -> Toggl_t.tid_list

Deserialize JSON data of type tid_list.

val write_project : Buffer.t -> Toggl_t.project -> unit

Output a JSON value of type project.

val string_of_project : ?len:int -> Toggl_t.project -> string

Serialize a value of type project into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type project.

val project_of_string : string -> Toggl_t.project

Deserialize JSON data of type project.

val write_project_list : Buffer.t -> Toggl_t.project_list -> unit

Output a JSON value of type project_list.

val string_of_project_list : ?len:int -> Toggl_t.project_list -> string

Serialize a value of type project_list into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type project_list.

val project_list_of_string : string -> Toggl_t.project_list

Deserialize JSON data of type project_list.

val write_pid_list : Buffer.t -> Toggl_t.pid_list -> unit

Output a JSON value of type pid_list.

val string_of_pid_list : ?len:int -> Toggl_t.pid_list -> string

Serialize a value of type pid_list into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type pid_list.

val pid_list_of_string : string -> Toggl_t.pid_list

Deserialize JSON data of type pid_list.

val write_data_time_entry : Buffer.t -> Toggl_t.data_time_entry -> unit

Output a JSON value of type data_time_entry.

val string_of_data_time_entry : ?len:int -> Toggl_t.data_time_entry -> string

Serialize a value of type data_time_entry into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

val read_data_time_entry : Yojson.Safe.lexer_state -> Lexing.lexbuf -> Toggl_t.data_time_entry

Input JSON data of type data_time_entry.

val data_time_entry_of_string : string -> Toggl_t.data_time_entry

Deserialize JSON data of type data_time_entry.

val write_data_project : Buffer.t -> Toggl_t.data_project -> unit

Output a JSON value of type data_project.

val string_of_data_project : ?len:int -> Toggl_t.data_project -> string

Serialize a value of type data_project into a JSON string.

  • parameter len

    specifies the initial length of the buffer used internally. Default: 1024.

Input JSON data of type data_project.

val data_project_of_string : string -> Toggl_t.data_project

Deserialize JSON data of type data_project.

include module type of struct include Toggl_v end
type datetime = Toggl_t.datetime

Response types

type time_entry_update_request = Toggl_t.time_entry_update_request = {
  1. description : string option;
  2. wid : int option;
  3. pid : int option option;
  4. start : datetime option;
  5. stop : datetime option option;
  6. duration : int option;
  7. tags : string list option;
  8. duronly : bool option;
  9. billable : bool option;
}

Represents a time entry as we send to Toggl when updating one

type wrapped_time_entry_update_request = Toggl_t.wrapped_time_entry_update_request = {
  1. time_entry : time_entry_update_request;
}
type time_entry_request = Toggl_t.time_entry_request = {
  1. description : string;
  2. wid : int option;
  3. pid : int option;
  4. start : datetime option;
  5. stop : datetime option option;
  6. duration : int;
  7. created_with : string;
  8. tags : string list;
  9. duronly : bool;
  10. billable : bool;
}

Represents a time entry as we send to Toggl when starting or creating one

type wrapped_time_entry = Toggl_t.wrapped_time_entry = {
  1. time_entry : time_entry_request;
}
type wid = Toggl_t.wid
type project_request = Toggl_t.project_request = {
  1. wid : wid;
  2. name : string;
  3. billable : bool;
  4. is_private : bool;
  5. active : bool;
  6. auto_estimates : bool;
  7. estimated_hours : bool;
  8. actual_hours : int;
  9. template : bool;
  10. template_id : int option;
  11. cid : int option;
  12. color : string option;
  13. hex_color : string option;
}

Represents a project as we send to Toggl when creating one

type wrapped_project_request = Toggl_t.wrapped_project_request = {
  1. project : project_request;
}
type workspace = Toggl_t.workspace = {
  1. id : wid;
  2. name : string;
  3. default_currency : string;
  4. at : datetime;
  5. premium : bool;
  6. admin : bool;
  7. default_hourly_rate : float;
  8. only_admins_may_create_projects : bool;
  9. only_admins_see_billable_rates : bool;
  10. only_admins_see_team_dashboard : bool;
  11. projects_billable_by_default : bool;
  12. rounding : int;
  13. rounding_minutes : int;
  14. ical_enabled : bool;
  15. api_token : string option;
  16. profile : int option;
  17. logo_url : string option;
}

Represents a workspace in Toggl

type workspace_list = Toggl_t.workspace_list
type uid = Toggl_t.uid
type tid = Toggl_t.tid
type pid = Toggl_t.pid
type time_entry = Toggl_t.time_entry = {
  1. id : tid;
  2. wid : wid;
  3. uid : uid;
  4. description : string;
  5. at : datetime;
  6. pid : pid option;
  7. start : datetime;
  8. stop : datetime option;
  9. duration : int;
  10. tags : string list;
  11. duronly : bool;
  12. billable : bool;
}

Represents a time enty as will be returned from the Toggl API

type time_entry_list = Toggl_t.time_entry_list
type tid_list = Toggl_t.tid_list
type project = Toggl_t.project = {
  1. id : pid;
  2. wid : wid;
  3. name : string;
  4. at : datetime;
  5. created_at : datetime option;
  6. billable : bool;
  7. is_private : bool;
  8. active : bool;
  9. auto_estimates : bool;
  10. estimated_hours : bool;
  11. actual_hours : int;
  12. template : bool;
  13. template_id : int option;
  14. color : string option;
  15. hex_color : string option;
}

Represents a project in Toggl

type project_list = Toggl_t.project_list
type pid_list = Toggl_t.pid_list
type data_time_entry = Toggl_t.data_time_entry = {
  1. data : time_entry;
}
type data_project = Toggl_t.data_project = {
  1. data : project;
}

Request types

Validate a value of type datetime.

val create_time_entry_update_request : ?description:string -> ?wid:int -> ?pid:int option -> ?start:datetime -> ?stop:datetime option -> ?duration:int -> ?tags:string list -> ?duronly:bool -> ?billable:bool -> unit -> time_entry_update_request

Create a record of type time_entry_update_request.

val validate_time_entry_update_request : Atdgen_runtime.Util.Validation.path -> time_entry_update_request -> Atdgen_runtime.Util.Validation.error option

Validate a value of type time_entry_update_request.

val create_wrapped_time_entry_update_request : time_entry:time_entry_update_request -> unit -> wrapped_time_entry_update_request

Create a record of type wrapped_time_entry_update_request.

val validate_time_entry_request : Atdgen_runtime.Util.Validation.path -> time_entry_request -> Atdgen_runtime.Util.Validation.error option

Validate a value of type time_entry_request.

val create_wrapped_time_entry : time_entry:time_entry_request -> unit -> wrapped_time_entry

Create a record of type wrapped_time_entry.

val validate_wrapped_time_entry : Atdgen_runtime.Util.Validation.path -> wrapped_time_entry -> Atdgen_runtime.Util.Validation.error option

Validate a value of type wrapped_time_entry.

Validate a value of type wid.

val create_project_request : wid:wid -> name:string -> ?billable:bool -> ?is_private:bool -> ?active:bool -> ?auto_estimates:bool -> ?estimated_hours:bool -> ?actual_hours:int -> ?template:bool -> ?template_id:int -> ?cid:int -> ?color:string -> ?hex_color:string -> unit -> project_request

Create a record of type project_request.

Validate a value of type project_request.

val create_wrapped_project_request : project:project_request -> unit -> wrapped_project_request

Create a record of type wrapped_project_request.

Validate a value of type wrapped_project_request.

val create_workspace : id:wid -> name:string -> default_currency:string -> at:datetime -> ?premium:bool -> ?admin:bool -> ?default_hourly_rate:float -> ?only_admins_may_create_projects:bool -> ?only_admins_see_billable_rates:bool -> ?only_admins_see_team_dashboard:bool -> ?projects_billable_by_default:bool -> ?rounding:int -> ?rounding_minutes:int -> ?ical_enabled:bool -> ?api_token:string -> ?profile:int -> ?logo_url:string -> unit -> workspace

Create a record of type workspace.

Validate a value of type workspace.

Validate a value of type workspace_list.

Validate a value of type uid.

Validate a value of type tid.

Validate a value of type pid.

val create_time_entry : id:tid -> wid:wid -> uid:uid -> description:string -> at:datetime -> ?pid:pid -> start:datetime -> ?stop:datetime -> duration:int -> ?tags:string list -> ?duronly:bool -> ?billable:bool -> unit -> time_entry

Create a record of type time_entry.

val validate_time_entry : Atdgen_runtime.Util.Validation.path -> time_entry -> Atdgen_runtime.Util.Validation.error option

Validate a value of type time_entry.

val validate_time_entry_list : Atdgen_runtime.Util.Validation.path -> time_entry_list -> Atdgen_runtime.Util.Validation.error option

Validate a value of type time_entry_list.

Validate a value of type tid_list.

val create_project : id:pid -> wid:wid -> name:string -> at:datetime -> ?created_at:datetime -> ?billable:bool -> ?is_private:bool -> ?active:bool -> ?auto_estimates:bool -> ?estimated_hours:bool -> ?actual_hours:int -> ?template:bool -> ?template_id:int -> ?color:string -> ?hex_color:string -> unit -> project

Create a record of type project.

Validate a value of type project.

Validate a value of type project_list.

Validate a value of type pid_list.

val create_data_time_entry : data:time_entry -> unit -> data_time_entry

Create a record of type data_time_entry.

val validate_data_time_entry : Atdgen_runtime.Util.Validation.path -> data_time_entry -> Atdgen_runtime.Util.Validation.error option

Validate a value of type data_time_entry.

val create_data_project : data:project -> unit -> data_project

Create a record of type data_project.

Validate a value of type data_project.

val create_time_entry_request : description:string -> ?wid:int -> ?pid:int -> ?start:Toggl_v.datetime -> ?stop:Toggl_v.datetime option -> ?duration:int -> ?tags:string list -> ?duronly:bool -> ?billable:bool -> unit -> Toggl_v.time_entry_request