public async Task <SkillResponse> Post([FromBody] SkillRequest input, string key)
        {
            if (string.IsNullOrEmpty(key))
            {
                return(ResponseBuilder.Tell($"Servicekonfiguration muss geändert werden."));
            }
            var requesttype = input.GetRequestType();

            if (requesttype == typeof(IntentRequest))
            {
                var intentRequest = input.Request as IntentRequest;
                var name          = intentRequest.Intent.Name;
                switch (name)
                {
                case "Warensuche":
                    var suchbegriff = intentRequest.Intent.Slots["Suchbegriff"].Value;
                    if (null == suchbegriff)
                    {
                        return(ResponseBuilder.Tell($"Ich weiß nicht wie ich das suchen soll."));
                    }
                    var waren = await lieferant.SearchAsync(suchbegriff, (await userRepository.GetAsync(key)).StoreId);

                    if (waren.Length == 0)
                    {
                        return(ResponseBuilder.Tell($"Ich glaube {suchbegriff} gibt es beim Billa nicht."));
                    }
                    await sucheRepository.SucheZwischenSpeichernAsync(waren, input.Session.SessionId);

                    var ware = warenFormatter.Format(waren[0]);
                    return(ResponseBuilder.Ask($"Ich habe {(waren.Length == 1 ? "einen" : $"{waren.Length}")} Artikel für {suchbegriff} gefunden. Möchtest du {ware}?", new Reprompt()
 public async Task <Ware[]> Search(string term)
 {
     return(await lieferant.SearchAsync(term, "00-2808"));
 }