public void ScheduleAndCancel() { var address = (Address)AddressFluent <Address> .Create() .Company("Pitney Bowes Inc.") .AddressLines("27 Waterview Drive") .Residential(false) .CityTown("Shelton") .StateProvince("CT") .PostalCode("06484") .CountryCode("US") .Person("Paul Wright", "203-555-1213", "*****@*****.**"); // Schedule a pickup var pickup = PickupFluent <Pickup> .Create() .Carrier(Carrier.USPS) .PackageLocation(PackageLocation.MailRoom) .PickupAddress(address) .PickupDate(DateTime.Now.AddDays(1)) .SpecialInstructions("N/A") .AddPickupSummary <PickupCount, ParcelWeight>(PickupService.PM, 1, 16M, UnitOfWeight.OZ) .TransactionId(Guid.NewGuid().ToString().Substring(15)); var pickupResponse = Api.Schedule <Pickup>(pickup).GetAwaiter().GetResult(); Assert.NotNull(pickupResponse); Assert.True(pickupResponse.Success); Assert.NotNull(pickupResponse.ResponseObject); // Cancel pickup var p = pickupResponse.ResponseObject as Pickup; Assert.NotNull(p); var cancelPickup = new PickupCancelRequest() { PickupId = p.PickupId, TransactionId = Guid.NewGuid().ToString().Substring(15) }; var pickupCancelResponse = Api.CancelPickup(cancelPickup).GetAwaiter().GetResult(); Assert.NotNull(pickupCancelResponse); Assert.True(pickupCancelResponse.Success); Assert.NotNull(pickupCancelResponse.ResponseObject); }
/// <summary> /// Cancels the pickup. Calls API method. /// </summary> /// <param name="session"></param> /// <returns></returns> public PickupFluent <T> Cancel(ISession session = null) { if (session == null) { session = Globals.DefaultSession; } var cancel = new PickupCancelRequest() { PickupId = _pickup.PickupId }; var response = Api.CancelPickup(cancel, session).GetAwaiter().GetResult(); if (response.Success) { cancel = response.APIResponse; //_pickup.Status = cancel.Status; //TODO: add to pickup class } else { throw new ShippingAPIException(response); } return(this); }