/// <summary> /// Initializes a new instance of the <see cref="OrderFulfillmentShipmentDetails" /> class. /// </summary> /// <param name="Recipient">Information on the person meant to receive this shipment fulfillment..</param> /// <param name="Carrier">The shipping carrier being used to ship this fulfillment e.g. UPS, FedEx, USPS, etc..</param> /// <param name="ShippingNote">A note with additional information for the shipping carrier..</param> /// <param name="ShippingType">A description of the type of shipping product purchased from the carrier. e.g. First Class, Priority, Express.</param> /// <param name="TrackingNumber">The reference number provided by the carrier to track the shipment's progress..</param> /// <param name="TrackingUrl">A link to the tracking webpage on the carrier's website..</param> /// <param name="PlacedAt">The [timestamp](#workingwithdates) indicating when the shipment was requested. Must be in RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="InProgressAt">The [timestamp](#workingwithdates) indicating when this fulfillment was moved to the `RESERVED` state. Indicates that preparation of this shipment has begun. Must be in RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="PackagedAt">The [timestamp](#workingwithdates) indicating when this fulfillment was moved to the `PREPARED` state. Indicates that the fulfillment is packaged. Must be in RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="ExpectedShippedAt">The [timestamp](#workingwithdates) indicating when the shipment is expected to be delivered to the shipping carrier. Must be in RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="ShippedAt">The [timestamp](#workingwithdates) indicating when this fulfillment was moved to the `COMPLETED`state. Indicates that the fulfillment has been given to the shipping carrier. Must be in RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="CanceledAt">The [timestamp](#workingwithdates) indicating the shipment was canceled. Must be in RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="CancelReason">A description of why the shipment was canceled..</param> /// <param name="FailedAt">The [timestamp](#workingwithdates) indicating when the shipment failed to be completed. Must be in RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="FailureReason">A description of why the shipment failed to be completed..</param> public OrderFulfillmentShipmentDetails(OrderFulfillmentRecipient Recipient = default(OrderFulfillmentRecipient), string Carrier = default(string), string ShippingNote = default(string), string ShippingType = default(string), string TrackingNumber = default(string), string TrackingUrl = default(string), string PlacedAt = default(string), string InProgressAt = default(string), string PackagedAt = default(string), string ExpectedShippedAt = default(string), string ShippedAt = default(string), string CanceledAt = default(string), string CancelReason = default(string), string FailedAt = default(string), string FailureReason = default(string)) { this.Recipient = Recipient; this.Carrier = Carrier; this.ShippingNote = ShippingNote; this.ShippingType = ShippingType; this.TrackingNumber = TrackingNumber; this.TrackingUrl = TrackingUrl; this.PlacedAt = PlacedAt; this.InProgressAt = InProgressAt; this.PackagedAt = PackagedAt; this.ExpectedShippedAt = ExpectedShippedAt; this.ShippedAt = ShippedAt; this.CanceledAt = CanceledAt; this.CancelReason = CancelReason; this.FailedAt = FailedAt; this.FailureReason = FailureReason; }
/// <summary> /// Initializes a new instance of the <see cref="OrderFulfillmentPickupDetails" /> class. /// </summary> /// <param name="Recipient">Information on the person meant to pick up this fulfillment from a physical location..</param> /// <param name="ExpiresAt">The [timestamp](#workingwithdates) indicating when this fulfillment will expire if it is not accepted. Must be in RFC 3339 format e.g., \"2016-09-04T23:59:33.123Z\". Expiration time can only be set up to 7 days in the future. If `expires_at` is not set, this pickup fulfillment will be automatically accepted when placed..</param> /// <param name="AutoCompleteDuration">The duration of time after which an open and accepted pickup fulfillment will automatically move to the `COMPLETED` state. Must be in RFC3339 duration format e.g., \"P1W3D\". If not set, this pickup fulfillment will remain accepted until it is canceled or completed..</param> /// <param name="ScheduleType">The schedule type of the pickup fulfillment. Defaults to `SCHEDULED`. See [OrderFulfillmentPickupDetailsScheduleType](#type-orderfulfillmentpickupdetailsscheduletype) for possible values.</param> /// <param name="PickupAt">The [timestamp](#workingwithdates) that represents the start of the pickup window. Must be in RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\". For fulfillments with the schedule type `ASAP`, this is automatically set to the current time plus the expected duration to prepare the fulfillment..</param> /// <param name="PickupWindowDuration">The window of time in which the order should be picked up after the `pickup_at` timestamp. Must be in RFC3339 duration format, e.g., \"P1W3D\". Can be used as an informational guideline for merchants..</param> /// <param name="PrepTimeDuration">The duration of time it takes to prepare this fulfillment. Must be in RFC3339 duration format, e.g., \"P1W3D\"..</param> /// <param name="Note">A note meant to provide additional instructions about the pickup fulfillment displayed in the Square Point of Sale and set by the API..</param> /// <param name="PlacedAt">The [timestamp](#workingwithdates) indicating when the fulfillment was placed. Must be in RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="AcceptedAt">The [timestamp](#workingwithdates) indicating when the fulfillment was accepted. In RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="RejectedAt">The [timestamp](#workingwithdates) indicating when the fulfillment was rejected. In RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="ReadyAt">The [timestamp](#workingwithdates) indicating when the fulfillment is marked as ready for pickup. In RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="ExpiredAt">The [timestamp](#workingwithdates) indicating when the fulfillment expired. In RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="PickedUpAt">The [timestamp](#workingwithdates) indicating when the fulfillment was picked up by the recipient. In RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\"..</param> /// <param name="CanceledAt">The [timestamp](#workingwithdates) in RFC3339 timestamp format, e.g., \"2016-09-04T23:59:33.123Z\", indicating when the fulfillment was canceled..</param> /// <param name="CancelReason">A description of why the pickup was canceled. Max length: 100 characters..</param> public OrderFulfillmentPickupDetails(OrderFulfillmentRecipient Recipient = default(OrderFulfillmentRecipient), string ExpiresAt = default(string), string AutoCompleteDuration = default(string), string ScheduleType = default(string), string PickupAt = default(string), string PickupWindowDuration = default(string), string PrepTimeDuration = default(string), string Note = default(string), string PlacedAt = default(string), string AcceptedAt = default(string), string RejectedAt = default(string), string ReadyAt = default(string), string ExpiredAt = default(string), string PickedUpAt = default(string), string CanceledAt = default(string), string CancelReason = default(string)) { this.Recipient = Recipient; this.ExpiresAt = ExpiresAt; this.AutoCompleteDuration = AutoCompleteDuration; this.ScheduleType = ScheduleType; this.PickupAt = PickupAt; this.PickupWindowDuration = PickupWindowDuration; this.PrepTimeDuration = PrepTimeDuration; this.Note = Note; this.PlacedAt = PlacedAt; this.AcceptedAt = AcceptedAt; this.RejectedAt = RejectedAt; this.ReadyAt = ReadyAt; this.ExpiredAt = ExpiredAt; this.PickedUpAt = PickedUpAt; this.CanceledAt = CanceledAt; this.CancelReason = CancelReason; }