github.com/stripe/stripe-go/v76@v76.25.0/invoicelineitem/client.go (about)

     1  //
     2  //
     3  // File generated from our OpenAPI spec
     4  //
     5  //
     6  
     7  // Package invoicelineitem provides the /invoices/{invoice}/lines APIs
     8  package invoicelineitem
     9  
    10  import (
    11  	"net/http"
    12  
    13  	stripe "github.com/stripe/stripe-go/v76"
    14  )
    15  
    16  // Client is used to invoke /invoices/{invoice}/lines APIs.
    17  type Client struct {
    18  	B   stripe.Backend
    19  	Key string
    20  }
    21  
    22  // Update updates an invoice line item's properties.
    23  func Update(id string, params *stripe.InvoiceLineItemParams) (*stripe.InvoiceLineItem, error) {
    24  	return getC().Update(id, params)
    25  }
    26  
    27  // Update updates an invoice line item's properties.
    28  func (c Client) Update(id string, params *stripe.InvoiceLineItemParams) (*stripe.InvoiceLineItem, error) {
    29  	path := stripe.FormatURLPath(
    30  		"/v1/invoices/%s/lines/%s",
    31  		stripe.StringValue(params.Invoice),
    32  		id,
    33  	)
    34  	invoicelineitem := &stripe.InvoiceLineItem{}
    35  	err := c.B.Call(http.MethodPost, path, c.Key, params, invoicelineitem)
    36  	return invoicelineitem, err
    37  }
    38  
    39  func getC() Client {
    40  	return Client{stripe.GetBackend(stripe.APIBackend), stripe.Key}
    41  }