/// <summary>
        /// Get all registered AQL user functions.
        /// </summary>
        /// <returns></returns>
        public virtual async Task <GetAqlFunctionsResponse> GetAqlFunctionsAsync(GetAqlFunctionsQuery query = null)
        {
            string uri = _apiPath;

            if (query != null)
            {
                uri += "?" + query.ToQueryString();
            }

            using (var response = await _transport.GetAsync(uri))
            {
                if (response.IsSuccessStatusCode)
                {
                    var stream = await response.Content.ReadAsStreamAsync();

                    return(DeserializeJsonFromStream <GetAqlFunctionsResponse>(stream));
                }
                throw await GetApiErrorException(response);
            }
        }
 /// <summary>
 /// Get all registered AQL user functions.
 /// </summary>
 /// <returns></returns>
 public virtual async Task <GetAqlFunctionsResponse> GetAqlFunctionsAsync(GetAqlFunctionsQuery query = null, CancellationToken cancellationToken = default)
 {
     return(await GetRequestAsync(ApiRootPath, response => new GetAqlFunctionsResponse(response), query,
                                  cancellationToken));
 }