aboutsummaryrefslogtreecommitdiffstats
path: root/lulu.go
diff options
context:
space:
mode:
Diffstat (limited to 'lulu.go')
-rw-r--r--lulu.go17
1 files changed, 4 insertions, 13 deletions
diff --git a/lulu.go b/lulu.go
index 8532052..ae7bf23 100644
--- a/lulu.go
+++ b/lulu.go
@@ -227,21 +227,12 @@ func (c *Client) GetCoverValidation(id uint) (CoverValidation, error) {
// actually creating a print job.
//
// https://api.lulu.com/docs/#tag/Print-Job-Cost-Calculations/operation/Print-Job-cost-calculations_create
-func (c *Client) Cost(items []PrintJobCostLineItem, addr ShippingAddress, shipOpt ShippingLevel) (PrintJobCost, ShippingAddressValidation, error) {
- reqAddr := printJobCostReqShipAddr{
- City: addr.City,
- Country: addr.Country,
- PostCode: addr.PostCode,
- State: addr.State,
- Street1: addr.Street1,
- Phone: addr.Phone,
- }
- payload := printJobCostReq{items, reqAddr, shipOpt}
-
- var resp printJobCostResp
+func (c *Client) Cost(items []CostLineItem, addr ShippingAddress, shipOpt ShippingLevel) (Cost, ShippingAddressValidation, error) {
+ payload := costReq{items, addr, shipOpt}
+ var resp costResp
err := c.postDecode(printJobCostPath, payload, http.StatusCreated, &resp)
if err != nil {
- return PrintJobCost{}, ShippingAddressValidation{}, pkgErr(err)
+ return Cost{}, ShippingAddressValidation{}, pkgErr(err)
}
return resp.cost(), resp.AddressValidation, nil
}