public async Task<CreateSubaccountResponse> Create(SubaccountCreate subaccount) { var request = new Request { Url = $"api/{client.Version}/subaccounts", Method = "POST", Data = new { name = subaccount.Name, key_label = subaccount.KeyLabel, key_grants = subaccount.KeyGrants } }; var response = await requestSender.Send(request); if (response.StatusCode != HttpStatusCode.OK) throw new ResponseException(response); var results = Jsonification.DeserializeObject<dynamic>(response.Content).results; return new CreateSubaccountResponse { ReasonPhrase = response.ReasonPhrase, StatusCode = response.StatusCode, Content = response.Content, Key = results.key, Label = results.label, ShortKey = results.short_key, SubaccountId = results.subaccount_id }; }
/// <summary> /// Create a Subaccount owned by the authenticated Reseller /// </summary> /// <param name="request"></param> /// <returns></returns> public async Task <ShopperIdResponse> CreateSubaccount(SubaccountCreate request) { CheckRequestValid(request); var client = GetBaseHttpClient(); var response = await client.PostAsync($"shoppers/subaccount", request); await CheckResponseMessageIsValid(response); return(await response.Content.ReadAsAsync <ShopperIdResponse>()); }