Documentation
¶
Index ¶
- type Client
- func (c *Client) Create(ctx context.Context, builder CreateRequestBuilder) (*CreateResponse, error)
- func (c *Client) Fetch(ctx context.Context, productID string) (*FetchResponse, error)
- func (c *Client) List(ctx context.Context, builder ListRequestBuilder) (*ListResponse, error)
- func (c *Client) Update(ctx context.Context, productID string, builder UpdateRequestBuilder) (*UpdateResponse, error)
- type CreateRequestBuilder
- type CreateResponse
- type CreateResponseData
- type FetchResponse
- type FetchResponseData
- type ListProduct
- type ListRequestBuilder
- func (b *ListRequestBuilder) Build() *listRequest
- func (b *ListRequestBuilder) DateRange(from, to string) *ListRequestBuilder
- func (b *ListRequestBuilder) From(from string) *ListRequestBuilder
- func (b *ListRequestBuilder) Page(page int) *ListRequestBuilder
- func (b *ListRequestBuilder) PerPage(perPage int) *ListRequestBuilder
- func (b *ListRequestBuilder) To(to string) *ListRequestBuilder
- type ListResponse
- type ListResponseData
- type UpdateRequestBuilder
- func (b *UpdateRequestBuilder) Build() *updateRequest
- func (b *UpdateRequestBuilder) Currency(currency string) *UpdateRequestBuilder
- func (b *UpdateRequestBuilder) Description(description string) *UpdateRequestBuilder
- func (b *UpdateRequestBuilder) Metadata(metadata *types.Metadata) *UpdateRequestBuilder
- func (b *UpdateRequestBuilder) Name(name string) *UpdateRequestBuilder
- func (b *UpdateRequestBuilder) Price(price int) *UpdateRequestBuilder
- func (b *UpdateRequestBuilder) Quantity(quantity int) *UpdateRequestBuilder
- func (b *UpdateRequestBuilder) Unlimited(unlimited bool) *UpdateRequestBuilder
- type UpdateResponse
- type UpdateResponseData
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
func (*Client) Create ¶
func (c *Client) Create(ctx context.Context, builder CreateRequestBuilder) (*CreateResponse, error)
func (*Client) List ¶
func (c *Client) List(ctx context.Context, builder ListRequestBuilder) (*ListResponse, error)
func (*Client) Update ¶
func (c *Client) Update(ctx context.Context, productID string, builder UpdateRequestBuilder) (*UpdateResponse, error)
type CreateRequestBuilder ¶
type CreateRequestBuilder struct {
// contains filtered or unexported fields
}
func NewCreateRequestBuilder ¶
func NewCreateRequestBuilder(name, description string, price int, currency string) *CreateRequestBuilder
func (*CreateRequestBuilder) Build ¶
func (b *CreateRequestBuilder) Build() *createRequest
func (*CreateRequestBuilder) Metadata ¶
func (b *CreateRequestBuilder) Metadata(metadata *types.Metadata) *CreateRequestBuilder
func (*CreateRequestBuilder) Quantity ¶
func (b *CreateRequestBuilder) Quantity(quantity int) *CreateRequestBuilder
func (*CreateRequestBuilder) Unlimited ¶
func (b *CreateRequestBuilder) Unlimited(unlimited bool) *CreateRequestBuilder
type CreateResponse ¶
type CreateResponse = types.Response[CreateResponseData]
type CreateResponseData ¶
type FetchResponse ¶
type FetchResponse = types.Response[FetchResponseData]
type FetchResponseData ¶
type ListProduct ¶
type ListProduct struct {
ID data.Int `json:"id,omitempty"`
Integration data.Int `json:"integration,omitempty"`
Name data.String `json:"name"`
Description data.String `json:"description"`
ProductCode data.String `json:"product_code,omitempty"`
Price data.Int `json:"price"`
Currency enums.Currency `json:"currency"`
Quantity data.NullInt `json:"quantity,omitempty"`
QuantitySold data.NullInt `json:"quantity_sold,omitempty"`
Type data.String `json:"type,omitempty"` // good, service
Files []any `json:"files,omitempty"` // Array in list response
IsShippable data.Bool `json:"is_shippable,omitempty"`
ShippingFields types.Metadata `json:"shipping_fields,omitempty"` // Object in list response
Unlimited data.Bool `json:"unlimited,omitempty"`
Domain data.String `json:"domain,omitempty"`
Active data.Bool `json:"active,omitempty"`
InStock data.Bool `json:"in_stock,omitempty"`
Metadata types.Metadata `json:"metadata,omitempty"` // Object in list response
Slug data.String `json:"slug,omitempty"`
SuccessMessage data.NullString `json:"success_message,omitempty"`
RedirectURL data.NullString `json:"redirect_url,omitempty"`
SplitCode data.NullString `json:"split_code,omitempty"`
NotificationEmails []data.String `json:"notification_emails,omitempty"`
MinimumOrderable data.NullInt `json:"minimum_orderable,omitempty"`
MaximumOrderable data.NullInt `json:"maximum_orderable,omitempty"`
LowStockAlert data.Bool `json:"low_stock_alert,omitempty"`
DigitalAssets []any `json:"digital_assets,omitempty"` // Array in list response
VariantOptions []any `json:"variant_options,omitempty"` // Array in list response
CreatedAt data.NullTime `json:"createdAt,omitempty"`
UpdatedAt data.NullTime `json:"updatedAt,omitempty"`
}
type ListRequestBuilder ¶
type ListRequestBuilder struct {
// contains filtered or unexported fields
}
func NewListRequestBuilder ¶
func NewListRequestBuilder() *ListRequestBuilder
func (*ListRequestBuilder) Build ¶
func (b *ListRequestBuilder) Build() *listRequest
func (*ListRequestBuilder) DateRange ¶
func (b *ListRequestBuilder) DateRange(from, to string) *ListRequestBuilder
func (*ListRequestBuilder) From ¶
func (b *ListRequestBuilder) From(from string) *ListRequestBuilder
func (*ListRequestBuilder) Page ¶
func (b *ListRequestBuilder) Page(page int) *ListRequestBuilder
func (*ListRequestBuilder) PerPage ¶
func (b *ListRequestBuilder) PerPage(perPage int) *ListRequestBuilder
func (*ListRequestBuilder) To ¶
func (b *ListRequestBuilder) To(to string) *ListRequestBuilder
type ListResponse ¶
type ListResponse = types.Response[ListResponseData]
type ListResponseData ¶
type ListResponseData = []ListProduct
type UpdateRequestBuilder ¶
type UpdateRequestBuilder struct {
// contains filtered or unexported fields
}
func NewUpdateRequestBuilder ¶
func NewUpdateRequestBuilder() *UpdateRequestBuilder
func (*UpdateRequestBuilder) Build ¶
func (b *UpdateRequestBuilder) Build() *updateRequest
func (*UpdateRequestBuilder) Currency ¶
func (b *UpdateRequestBuilder) Currency(currency string) *UpdateRequestBuilder
func (*UpdateRequestBuilder) Description ¶
func (b *UpdateRequestBuilder) Description(description string) *UpdateRequestBuilder
func (*UpdateRequestBuilder) Metadata ¶
func (b *UpdateRequestBuilder) Metadata(metadata *types.Metadata) *UpdateRequestBuilder
func (*UpdateRequestBuilder) Name ¶
func (b *UpdateRequestBuilder) Name(name string) *UpdateRequestBuilder
func (*UpdateRequestBuilder) Price ¶
func (b *UpdateRequestBuilder) Price(price int) *UpdateRequestBuilder
func (*UpdateRequestBuilder) Quantity ¶
func (b *UpdateRequestBuilder) Quantity(quantity int) *UpdateRequestBuilder
func (*UpdateRequestBuilder) Unlimited ¶
func (b *UpdateRequestBuilder) Unlimited(unlimited bool) *UpdateRequestBuilder
type UpdateResponse ¶
type UpdateResponse = types.Response[UpdateResponseData]
type UpdateResponseData ¶
Click to show internal directories.
Click to hide internal directories.