Module EzSendgrid

val sendgrid_url : string
val headers : string -> (string * string) list
val send : ?⁠encoding:'a Json_encoding.encoding -> api_key:string -> 'a EzSendgrid_types.mail -> (unit, string option) EzReq_lwt_S.api_result Lwt.t
val send_one : api_key:string -> dst:(string * string option) -> from:(string * string option) -> subject:string -> (string * string) list -> (unit, string option) EzReq_lwt_S.api_result Lwt.t
val send_template : api_key:string -> dst:(string * string option) list -> from:(string * string option) -> string -> string -> (unit, string option) EzReq_lwt_S.api_result Lwt.t
val add_contacts : api_key:string -> ?⁠list_ids:string list -> EzSendgrid_types.contact list -> (string, string option) EzReq_lwt_S.api_result Lwt.t
val delete_contacts : api_key:string -> ?⁠all:bool -> string list -> (string, string option) EzReq_lwt_S.api_result Lwt.t
val remove_contact_list : api_key:string -> string -> string list -> (string, string option) EzReq_lwt_S.api_result Lwt.t
val contacts_count : api_key:string -> (int, string option) EzReq_lwt_S.api_result Lwt.t
val get_contact : api_key:string -> string -> (EzSendgrid_types.contact * EzSendgrid_types.contact_morestring option) EzReq_lwt_S.api_result Lwt.t
val search_contacts : api_key:string -> string -> (int * (EzSendgrid_types.contact * EzSendgrid_types.contact_more) liststring option) EzReq_lwt_S.api_result Lwt.t