public async Task<string> GetOrganisms(string apikey, double version, string returntype) { try { if (version.Equals(ApiVersion)) { if (!string.IsNullOrEmpty(returntype) && ValidReturnTypes != null && ValidReturnTypes.Contains(returntype.ToLower())) { if (!string.IsNullOrEmpty(apikey) && apikey.Length == 32 && ApiKey == apikey) { var list = Organism.All(ApiConfiguration, ConnectionString); return await list.ToReturnType(returntype); } else return await Core.ToReturnType(new Response("Failed", "Invalid apikey"), returntype); } else return await Core.OutputText("Supported return types are json and xml only."); } else return await Core.OutputText("Version not yet implemented"); } catch (Exception ex) { return await Core.ToReturnType(new Response("Failed", ex.Message), "json"); } }