/// <summary> /// Expands listings and adds prices the supplied virtual cart /// </summary> /// <param name="request"></param> /// <param name="XShopperId"></param> /// <param name="XPrivateLabelId"></param> /// <param name="XMarketId"></param> /// <param name="XCurrencyId"></param> /// <returns></returns> public async Task <CartResponse> ExpandCart(CartUpdateBulk request, string XShopperId = null, string XPrivateLabelId = null, string XMarketId = null, string XCurrencyId = null) { var client = GetBaseHttpClient(); if (XShopperId != null) { client.DefaultRequestHeaders.Add("X-Shopper-Id", XShopperId); } if (XMarketId != null) { client.DefaultRequestHeaders.Add("X-Market-Id", XMarketId); } if (XPrivateLabelId != null) { client.DefaultRequestHeaders.Add("X-Private-Label-Id", XPrivateLabelId); } if (XCurrencyId != null) { client.DefaultRequestHeaders.Add("X-Currency-Id", XCurrencyId); } var response = await client.PostAsync($"cart/virtual/render", request); await CheckResponseMessageIsValid(response); return(await response.Content.ReadAsAsync <CartResponse>()); }
/// <summary> /// Applies the specified additions/changes to the target Shopper's Cart /// </summary> /// <param name="request"></param> /// <param name="XShopperId"></param> /// <param name="XPrivateLabelId"></param> /// <param name="XMarketId"></param> /// <returns></returns> public async Task ApplyCartChanges(CartUpdateBulk request, string XShopperId = null, string XPrivateLabelId = null, string XMarketId = null) { var client = GetBaseHttpClient(); if (XShopperId != null) { client.DefaultRequestHeaders.Add("X-Shopper-Id", XShopperId); } if (XPrivateLabelId != null) { client.DefaultRequestHeaders.Add("X-Private-Label-Id", XPrivateLabelId); } if (XMarketId != null) { client.DefaultRequestHeaders.Add("X-Market-Id", XMarketId); } var response = await client.PatchAsync($"cart", request); await CheckResponseMessageIsValid(response); return; }