Documentation
¶
Overview ¶
package woogo is a Woo Commerce lib.
Quick start:
b, err := os.ReadFile("./config/config_test.json")
if err != nil {
panic(fmt.Sprintf("Read config error: %s", err.Error()))
}
var c config.Config
err = jsoniter.Unmarshal(b, &c)
if err != nil {
panic(fmt.Sprintf("Parse config file error: %s", err.Error()))
}
wooClient = NewClient(c)
// Query an order
order, err := wooClient.Services.Order.One(1)
if err != nil {
fmt.Println(err)
} else {
fmt.Println(fmt.Sprintf("%#v", order))
}
Example ¶
Operate data use WooCommerce for golang
b, err := os.ReadFile("./config/config_test.json")
if err != nil {
panic(fmt.Sprintf("Read config error: %s", err.Error()))
}
var c config.Config
err = jsoniter.Unmarshal(b, &c)
if err != nil {
panic(fmt.Sprintf("Parse config file error: %s", err.Error()))
}
wooClient = NewClient(c)
// Query an order
order, err := wooClient.Services.Order.One(1)
if err != nil {
fmt.Println(err)
} else {
fmt.Println(fmt.Sprintf("%#v", order))
}
// Query orders
params := OrdersQueryParams{
After: "2022-06-10",
}
params.PerPage = 100
for {
orders, total, totalPages, isLastPage, err := wooClient.Services.Order.All(params)
if err != nil {
break
}
fmt.Println(fmt.Sprintf("Page %d/%d", total, totalPages))
// read orders
for _, order := range orders {
_ = order
}
if err != nil || isLastPage {
break
}
params.Page++
}
Index ¶
- Constants
- Variables
- func ErrorWrap(code int, message string) error
- func IsValidateTime(dateStr string) error
- func ToISOTimeString(dateStr string, addMinTimeString, addMaxTimeString bool) (s string)
- type BatchCouponsCreateItem
- type BatchCouponsRequest
- type BatchCouponsResult
- type BatchCouponsUpdateItem
- type BatchCreateCustomerRequest
- type BatchCustomerRequest
- type BatchCustomerResult
- type BatchProductAttributeTermsCreateItem
- type BatchProductAttributeTermsRequest
- type BatchProductAttributeTermsResult
- type BatchProductAttributeTermsUpdateItem
- type BatchProductAttributesCreateItem
- type BatchProductAttributesRequest
- type BatchProductAttributesResult
- type BatchProductAttributesUpdateItem
- type BatchProductCategoriesCreateItem
- type BatchProductCategoriesRequest
- type BatchProductCategoriesResult
- type BatchProductCategoriesUpdateItem
- type BatchProductReviewsCreateItem
- type BatchProductReviewsRequest
- type BatchProductReviewsResult
- type BatchProductReviewsUpdateItem
- type BatchProductShippingClassesCreateItem
- type BatchProductShippingClassesRequest
- type BatchProductShippingClassesResult
- type BatchProductShippingClassesUpdateItem
- type BatchProductTagsCreateItem
- type BatchProductTagsRequest
- type BatchProductTagsResult
- type BatchProductTagsUpdateItem
- type BatchProductVariationsCreateItem
- type BatchProductVariationsRequest
- type BatchProductVariationsResult
- type BatchProductVariationsUpdateItem
- type BatchTaxRatesCreateItem
- type BatchTaxRatesRequest
- type BatchTaxRatesResult
- type BatchTaxRatesUpdateItem
- type BatchUpdateCustomerRequest
- type BatchWebhooksCreateItem
- type BatchWebhooksRequest
- type BatchWebhooksResult
- type BatchWebhooksUpdateItem
- type CouponsQueryParams
- type CreateCouponRequest
- type CreateCustomerRequest
- type CreateOrderNoteRequest
- type CreateOrderRefundRequest
- type CreateOrderRequest
- type CreateProductAttributeRequest
- type CreateProductAttributeTermRequest
- type CreateProductCategoryRequest
- type CreateProductRequest
- type CreateProductReviewRequest
- type CreateProductShippingClassRequest
- type CreateProductTagRequest
- type CreateProductVariationRequest
- type CreateShippingZoneRequest
- type CreateTaxClassRequest
- type CreateTaxRateRequest
- type CreateWebhookRequest
- type CustomersQueryParams
- type OrderNotesQueryParams
- type OrderRefundsQueryParams
- type OrdersQueryParams
- type ProductAttributeTermsQueryParaTerms
- type ProductAttributesQueryParams
- type ProductCategoriesQueryParams
- type ProductReviewsQueryParams
- type ProductShippingClassesQueryParams
- type ProductTagsQueryParams
- type ProductVariationsQueryParams
- type ProductsQueryParams
- type ReportsQueryParams
- type SalesReportsQueryParams
- type ShippingZoneMethodIncludeRequest
- type TaxRatesQueryParams
- type TopSellerReportsQueryParams
- type UpdateCouponRequest
- type UpdateCustomerRequest
- type UpdateOrderRequest
- type UpdatePaymentGatewayRequest
- type UpdateProductAttributeRequest
- type UpdateProductAttributeTermRequest
- type UpdateProductCategoryRequest
- type UpdateProductRequest
- type UpdateProductReviewRequest
- type UpdateProductShippingClassRequest
- type UpdateProductTagRequest
- type UpdateProductVariationRequest
- type UpdateSettingOptionRequest
- type UpdateShippingZoneLocationsRequest
- type UpdateShippingZoneMethodRequest
- type UpdateShippingZoneMethodSetting
- type UpdateShippingZoneRequest
- type UpdateTaxRateRequest
- type UpdateWebhookRequest
- type UpsertProductCategoryRequest
- type UpsertProductTagRequest
- type WebhooksQueryParams
- type WooCommerce
Examples ¶
Constants ¶
const ( SortAsc = "asc" SortDesc = "desc" )
const ( ViewContext = "view" EditContext = "edit" )
const ( Version = "1.0.3" UserAgent = "WooCommerce API Client-Golang/" + Version HashAlgorithm = "HMAC-SHA256" )
const ( BadRequestError = 400 // 错误的请求 NotFoundError = 404 // 访问资源不存在 InternalServerError = 500 // 服务器内部错误 MethodNotImplementedError = 501 // 方法未实现 )
https://woocommerce.github.io/woocommerce-rest-api-docs/?php#request-response-format
Variables ¶
var ErrNotFound = errors.New("WooCommerce: not found")
Functions ¶
func ErrorWrap ¶
ErrorWrap wrap an error, if status code is 200, return nil, otherwise return an error
Example ¶
err := ErrorWrap(200, "Ok")
if err != nil {
return
}
func ToISOTimeString ¶
ToISOTimeString Convert to iso time string If date format is invalid, then return original value If dateStr include time part, and you set addMinTimeString/addMaxTimeString to true, but still return original dateStr value.
Types ¶
type BatchCouponsCreateItem ¶
type BatchCouponsCreateItem = CreateCouponRequest
type BatchCouponsRequest ¶
type BatchCouponsRequest struct {
Create []BatchCouponsCreateItem `json:"create,omitempty"`
Update []BatchCouponsUpdateItem `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchCouponsRequest) Validate ¶
func (m BatchCouponsRequest) Validate() error
type BatchCouponsResult ¶
type BatchCouponsUpdateItem ¶
type BatchCouponsUpdateItem struct {
ID string `json:"id"`
BatchCouponsCreateItem
}
type BatchCreateCustomerRequest ¶
type BatchCreateCustomerRequest = CreateCustomerRequest
type BatchCustomerRequest ¶
type BatchCustomerRequest struct {
Create []BatchCreateCustomerRequest `json:"create,omitempty"`
Update []BatchUpdateCustomerRequest `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchCustomerRequest) Validate ¶
func (m BatchCustomerRequest) Validate() error
type BatchCustomerResult ¶
type BatchProductAttributeTermsCreateItem ¶
type BatchProductAttributeTermsCreateItem = CreateProductAttributeTermRequest
type BatchProductAttributeTermsRequest ¶
type BatchProductAttributeTermsRequest struct {
Create []BatchProductAttributeTermsCreateItem `json:"create,omitempty"`
Update []BatchProductAttributeTermsUpdateItem `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchProductAttributeTermsRequest) Validate ¶
func (m BatchProductAttributeTermsRequest) Validate() error
type BatchProductAttributeTermsResult ¶
type BatchProductAttributeTermsResult struct {
Create []entity.ProductAttributeTerm `json:"create"`
Update []entity.ProductAttributeTerm `json:"update"`
Delete []entity.ProductAttributeTerm `json:"delete"`
}
type BatchProductAttributeTermsUpdateItem ¶
type BatchProductAttributeTermsUpdateItem struct {
ID string `json:"id"`
BatchProductAttributeTermsCreateItem
}
type BatchProductAttributesCreateItem ¶
type BatchProductAttributesCreateItem = CreateProductAttributeRequest
type BatchProductAttributesRequest ¶
type BatchProductAttributesRequest struct {
Create []BatchProductAttributesCreateItem `json:"create,omitempty"`
Update []BatchProductAttributesUpdateItem `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchProductAttributesRequest) Validate ¶
func (m BatchProductAttributesRequest) Validate() error
type BatchProductAttributesResult ¶
type BatchProductAttributesResult struct {
Create []entity.ProductAttribute `json:"create"`
Update []entity.ProductAttribute `json:"update"`
Delete []entity.ProductAttribute `json:"delete"`
}
type BatchProductAttributesUpdateItem ¶
type BatchProductAttributesUpdateItem struct {
ID string `json:"id"`
BatchProductAttributesCreateItem
}
type BatchProductCategoriesCreateItem ¶
type BatchProductCategoriesCreateItem = UpsertProductCategoryRequest
type BatchProductCategoriesRequest ¶
type BatchProductCategoriesRequest struct {
Create []BatchProductCategoriesCreateItem `json:"create,omitempty"`
Update []BatchProductCategoriesUpdateItem `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchProductCategoriesRequest) Validate ¶
func (m BatchProductCategoriesRequest) Validate() error
type BatchProductCategoriesResult ¶
type BatchProductCategoriesResult struct {
Create []entity.ProductTag `json:"create"`
Update []entity.ProductTag `json:"update"`
Delete []entity.ProductTag `json:"delete"`
}
type BatchProductCategoriesUpdateItem ¶
type BatchProductCategoriesUpdateItem struct {
ID int `json:"id"`
UpsertProductTagRequest
}
type BatchProductReviewsCreateItem ¶
type BatchProductReviewsCreateItem = CreateProductReviewRequest
type BatchProductReviewsRequest ¶
type BatchProductReviewsRequest struct {
Create []BatchProductReviewsCreateItem `json:"create,omitempty"`
Update []BatchProductReviewsUpdateItem `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchProductReviewsRequest) Validate ¶
func (m BatchProductReviewsRequest) Validate() error
type BatchProductReviewsResult ¶
type BatchProductReviewsResult struct {
Create []entity.ProductReview `json:"create"`
Update []entity.ProductReview `json:"update"`
Delete []entity.ProductReview `json:"delete"`
}
type BatchProductReviewsUpdateItem ¶
type BatchProductReviewsUpdateItem struct {
ID string `json:"id"`
BatchProductReviewsCreateItem
}
type BatchProductShippingClassesCreateItem ¶
type BatchProductShippingClassesCreateItem = CreateProductShippingClassRequest
type BatchProductShippingClassesRequest ¶
type BatchProductShippingClassesRequest struct {
Create []BatchProductShippingClassesCreateItem `json:"create,omitempty"`
Update []BatchProductShippingClassesUpdateItem `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchProductShippingClassesRequest) Validate ¶
func (m BatchProductShippingClassesRequest) Validate() error
type BatchProductShippingClassesResult ¶
type BatchProductShippingClassesResult struct {
Create []entity.ProductShippingClass `json:"create"`
Update []entity.ProductShippingClass `json:"update"`
Delete []entity.ProductShippingClass `json:"delete"`
}
type BatchProductShippingClassesUpdateItem ¶
type BatchProductShippingClassesUpdateItem struct {
ID string `json:"id"`
BatchProductShippingClassesCreateItem
}
type BatchProductTagsCreateItem ¶
type BatchProductTagsCreateItem = UpsertProductTagRequest
type BatchProductTagsRequest ¶
type BatchProductTagsRequest struct {
Create []BatchProductTagsCreateItem `json:"create,omitempty"`
Update []BatchProductTagsUpdateItem `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchProductTagsRequest) Validate ¶
func (m BatchProductTagsRequest) Validate() error
type BatchProductTagsResult ¶
type BatchProductTagsResult struct {
Create []entity.ProductTag `json:"create"`
Update []entity.ProductTag `json:"update"`
Delete []entity.ProductTag `json:"delete"`
}
type BatchProductTagsUpdateItem ¶
type BatchProductTagsUpdateItem struct {
ID int `json:"id"`
UpsertProductTagRequest
}
type BatchProductVariationsCreateItem ¶
type BatchProductVariationsCreateItem = CreateProductVariationRequest
type BatchProductVariationsRequest ¶
type BatchProductVariationsRequest struct {
Create []BatchProductVariationsCreateItem `json:"create,omitempty"`
Update []BatchProductVariationsUpdateItem `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchProductVariationsRequest) Validate ¶
func (m BatchProductVariationsRequest) Validate() error
type BatchProductVariationsResult ¶
type BatchProductVariationsResult struct {
Create []entity.ProductVariation `json:"create"`
Update []entity.ProductVariation `json:"update"`
Delete []entity.ProductVariation `json:"delete"`
}
type BatchProductVariationsUpdateItem ¶
type BatchProductVariationsUpdateItem struct {
ID int `json:"id"`
CreateProductVariationRequest
}
type BatchTaxRatesCreateItem ¶
type BatchTaxRatesCreateItem = CreateTaxRateRequest
type BatchTaxRatesRequest ¶
type BatchTaxRatesRequest struct {
Create []BatchTaxRatesCreateItem `json:"create,omitempty"`
Update []BatchTaxRatesUpdateItem `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchTaxRatesRequest) Validate ¶
func (m BatchTaxRatesRequest) Validate() error
type BatchTaxRatesResult ¶
type BatchTaxRatesUpdateItem ¶
type BatchTaxRatesUpdateItem struct {
ID string `json:"id"`
BatchTaxRatesCreateItem
}
type BatchUpdateCustomerRequest ¶
type BatchUpdateCustomerRequest struct {
ID string `json:"id"`
BatchCreateCustomerRequest
}
type BatchWebhooksCreateItem ¶
type BatchWebhooksCreateItem = CreateWebhookRequest
type BatchWebhooksRequest ¶
type BatchWebhooksRequest struct {
Create []BatchWebhooksCreateItem `json:"create,omitempty"`
Update []BatchWebhooksUpdateItem `json:"update,omitempty"`
Delete []int `json:"delete,omitempty"`
}
func (BatchWebhooksRequest) Validate ¶
func (m BatchWebhooksRequest) Validate() error
type BatchWebhooksResult ¶
type BatchWebhooksUpdateItem ¶
type BatchWebhooksUpdateItem struct {
ID string `json:"id"`
BatchWebhooksCreateItem
}
type CouponsQueryParams ¶
type CouponsQueryParams struct {
Search string `url:"search,omitempty"`
After string `url:"after,omitempty"`
Before string `url:"before,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
Code string `url:"code,omitempty"`
// contains filtered or unexported fields
}
func (CouponsQueryParams) Validate ¶
func (m CouponsQueryParams) Validate() error
type CreateCouponRequest ¶
type CreateCouponRequest struct {
Code string `json:"code"`
DiscountType string `json:"discount_type"`
Amount float64 `json:"amount,string"`
IndividualUse bool `json:"individual_use"`
ExcludeSaleItems bool `json:"exclude_sale_items"`
MinimumAmount float64 `json:"minimum_amount,string"`
}
func (CreateCouponRequest) Validate ¶
func (m CreateCouponRequest) Validate() error
type CreateCustomerRequest ¶
type CreateCustomerRequest struct {
Email string `json:"email,omitempty"`
FirstName string `json:"first_name,omitempty"`
LastName string `json:"last_name,omitempty"`
Username string `json:"username,omitempty"`
Password string `json:"password,omitempty"`
Billing *entity.Billing `json:"billing,omitempty"`
Shipping *entity.Shipping `json:"shipping,omitempty"`
MetaData []entity.Meta `json:"meta_data,omitempty"`
}
CreateCustomerRequest Create customer request
func (CreateCustomerRequest) Validate ¶
func (m CreateCustomerRequest) Validate() error
type CreateOrderNoteRequest ¶
type CreateOrderNoteRequest struct {
Note string `json:"note"`
}
func (CreateOrderNoteRequest) Validate ¶
func (m CreateOrderNoteRequest) Validate() error
type CreateOrderRefundRequest ¶
type CreateOrderRefundRequest struct {
Amount float64 `json:"amount,string"`
Reason string `json:"reason,omitempty"`
RefundedBy int `json:"refunded_by,omitempty"`
MetaData []entity.Meta `json:"meta_data,omitempty"`
LineItems []entity.OrderRefundLineItem `json:"line_items,omitempty"`
}
func (CreateOrderRefundRequest) Validate ¶
func (m CreateOrderRefundRequest) Validate() error
type CreateOrderRequest ¶
type CreateOrderRequest struct {
Status string `json:"status,omitempty"`
Currency string `json:"currency,omitempty"`
CurrencySymbol string `json:"currency_symbol,omitempty"`
PricesIncludeTax bool `json:"prices_include_tax,omitempty"`
CustomerId int `json:"customer_id,omitempty"`
CustomerNote string `json:"customer_note,omitempty"`
Billing *entity.Billing `json:"billing,omitempty"`
Shipping *entity.Shipping `json:"shipping,omitempty"`
PaymentMethod string `json:"payment_method,omitempty"`
PaymentMethodTitle string `json:"payment_method_title,omitempty"`
TransactionId string `json:"transaction_id,omitempty"`
MetaData []entity.Meta `json:"meta_data,omitempty"`
LineItems []entity.LineItem `json:"line_items,omitempty"`
TaxLines []entity.TaxLine `json:"tax_lines,omitempty"`
ShippingLines []entity.ShippingLine `json:"shipping_lines,omitempty"`
FeeLines []entity.FeeLine `json:"fee_lines,omitempty"`
CouponLines []entity.CouponLine `json:"coupon_lines,omitempty"`
SetPaid bool `json:"set_paid,omitempty"`
}
func (CreateOrderRequest) Validate ¶
func (m CreateOrderRequest) Validate() error
type CreateProductAttributeRequest ¶
type CreateProductAttributeRequest struct {
Name string `json:"name,omitempty"`
Slug string `json:"slug,omitempty"`
Type string `json:"type,omitempty"`
OrderBy string `json:"order_by,omitempty"`
HasArchives bool `json:"has_archives,omitempty"`
}
func (CreateProductAttributeRequest) Validate ¶
func (m CreateProductAttributeRequest) Validate() error
type CreateProductAttributeTermRequest ¶
type CreateProductAttributeTermRequest struct {
Name string `json:"name,omitempty"`
Slug string `json:"slug,omitempty"`
Description string `json:"description,omitempty"`
MenuOrder int `json:"menu_order,omitempty"`
}
func (CreateProductAttributeTermRequest) Validate ¶
func (m CreateProductAttributeTermRequest) Validate() error
type CreateProductCategoryRequest ¶
type CreateProductCategoryRequest = UpsertProductCategoryRequest
type CreateProductRequest ¶
type CreateProductRequest struct {
Name string `json:"name,omitempty"`
Slug string `json:"slug,omitempty"`
Type string `json:"type,omitempty"`
Status string `json:"status,omitempty"`
Featured bool `json:"featured,omitempty"`
CatalogVisibility string `json:"catalog_visibility,omitempty"`
Description string `json:"description,omitempty"`
ShortDescription string `json:"short_description,omitempty"`
SKU string `json:"sku,omitempty"`
RegularPrice float64 `json:"regular_price,string,omitempty"`
SalePrice float64 `json:"sale_price,string,omitempty"`
DateOnSaleFrom string `json:"date_on_sale_from,omitempty"`
DateOnSaleFromGMT string `json:"date_on_sale_from_gmt,omitempty"`
DateOnSaleTo string `json:"date_on_sale_to,omitempty"`
DateOnSaleToGMT string `json:"date_on_sale_to_gmt,omitempty"`
Virtual bool `json:"virtual,omitempty"`
Downloadable bool `json:"downloadable,omitempty"`
Downloads []entity.ProductDownload `json:"downloads,omitempty"`
DownloadLimit int `json:"download_limit,omitempty"`
DownloadExpiry int `json:"download_expiry,omitempty"`
ExternalUrl string `json:"external_url,omitempty"`
ButtonText string `json:"button_text,omitempty"`
TaxStatus string `json:"tax_status,omitempty"`
TaxClass string `json:"tax_class,omitempty"`
ManageStock bool `json:"manage_stock,omitempty"`
StockQuantity int `json:"stock_quantity,omitempty"`
StockStatus string `json:"stock_status,omitempty"`
Backorders string `json:"backorders,omitempty"`
SoldIndividually bool `json:"sold_individually,omitempty"`
Weight string `json:"weight,omitempty"`
Dimensions *entity.ProductDimension `json:"dimensions,omitempty"`
ShippingClass string `json:"shipping_class,omitempty"`
ReviewsAllowed bool `json:"reviews_allowed,omitempty"`
UpsellIds []int `json:"upsell_ids,omitempty"`
CrossSellIds []int `json:"cross_sell_ids,omitempty"`
ParentId int `json:"parent_id,omitempty"`
PurchaseNote string `json:"purchase_note,omitempty"`
Categories []entity.ProductCategory `json:"categories,omitempty"`
Tags []entity.ProductTag `json:"tags,omitempty"`
Images []entity.ProductImage `json:"images,omitempty"`
Attributes []entity.ProductAttribute `json:"attributes,omitempty"`
DefaultAttributes []entity.ProductDefaultAttribute `json:"default_attributes,omitempty"`
GroupedProducts []int `json:"grouped_products,omitempty"`
MenuOrder int `json:"menu_order,omitempty"`
MetaData []entity.Meta `json:"meta_data,omitempty"`
}
func (CreateProductRequest) Validate ¶
func (m CreateProductRequest) Validate() error
type CreateProductReviewRequest ¶
type CreateProductReviewRequest struct {
ProductId int `json:"product_id,omitempty"`
Status string `json:"status,omitempty"`
Reviewer string `json:"reviewer,omitempty"`
ReviewerEmail string `json:"reviewer_email,omitempty"`
Review string `json:"review,omitempty"`
Rating int `json:"rating,omitempty"`
Verified bool `json:"verified,omitempty"`
}
func (CreateProductReviewRequest) Validate ¶
func (m CreateProductReviewRequest) Validate() error
type CreateProductShippingClassRequest ¶
type CreateProductShippingClassRequest struct {
Name string `json:"name,omitempty"`
Slug string `json:"slug,omitempty"`
Description string `json:"description,omitempty"`
}
func (CreateProductShippingClassRequest) Validate ¶
func (m CreateProductShippingClassRequest) Validate() error
type CreateProductTagRequest ¶
type CreateProductTagRequest = UpsertProductTagRequest
type CreateProductVariationRequest ¶
type CreateProductVariationRequest struct {
Description string `json:"description,omitempty"`
SKU string `json:"sku,omitempty"`
RegularPrice float64 `json:"regular_price,string,omitempty"`
SalePrice float64 `json:"sale_price,string,omitempty"`
Status string `json:"status,omitempty"`
Virtual bool `json:"virtual,omitempty"`
Downloadable bool `json:"downloadable,omitempty"`
Downloads []entity.ProductDownload `json:"downloads,omitempty"`
DownloadLimit int `json:"download_limit,omitempty"`
DownloadExpiry int `json:"download_expiry,omitempty"`
TaxStatus string `json:"tax_status,omitempty"`
TaxClass string `json:"tax_class,omitempty"`
ManageStock bool `json:"manage_stock,omitempty"`
StockQuantity int `json:"stock_quantity,omitempty"`
StockStatus string `json:"stock_status,omitempty"`
Backorders string `json:"backorders,omitempty"`
Weight float64 `json:"weight,string,omitempty"`
Dimension *entity.ProductDimension `json:"dimensions,omitempty"`
ShippingClass string `json:"shipping_class,omitempty"`
Image *entity.ProductImage `json:"image,omitempty"`
Attributes []entity.ProductVariationAttribute `json:"attributes,omitempty"`
MenuOrder int `json:"menu_order,omitempty"`
MetaData []entity.Meta `json:"meta_data,omitempty"`
}
func (CreateProductVariationRequest) Validate ¶
func (m CreateProductVariationRequest) Validate() error
type CreateShippingZoneRequest ¶
func (CreateShippingZoneRequest) Validate ¶
func (m CreateShippingZoneRequest) Validate() error
type CreateTaxClassRequest ¶
type CreateTaxClassRequest struct {
Name string `json:"name"`
}
func (CreateTaxClassRequest) Validate ¶
func (m CreateTaxClassRequest) Validate() error
type CreateTaxRateRequest ¶
type CreateTaxRateRequest struct {
Country string `json:"country,omitempty"`
State string `json:"state,omitempty"`
Postcode string `json:"postcode,omitempty"`
City string `json:"city,omitempty"`
Postcodes []string `json:"postcodes,omitempty"`
Cities []string `json:"cities,omitempty"`
Rate string `json:"rate,omitempty"`
Name string `json:"name,omitempty"`
Priority int `json:"priority,omitempty"`
Compound bool `json:"compound,omitempty"`
Shipping bool `json:"shipping,omitempty"`
Order int `json:"order,omitempty"`
Class string `json:"class,omitempty"`
}
func (CreateTaxRateRequest) Validate ¶
func (m CreateTaxRateRequest) Validate() error
type CreateWebhookRequest ¶
type CreateWebhookRequest struct {
Name string `json:"name,omitempty"`
Status string `json:"status,omitempty"`
Topic string `json:"topic,omitempty"`
DeliveryURL string `json:"delivery_url,omitempty"`
Secret string `json:"secret,omitempty"`
}
func (CreateWebhookRequest) Validate ¶
func (m CreateWebhookRequest) Validate() error
type CustomersQueryParams ¶
type CustomersQueryParams struct {
Search string `url:"search,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
Email string `url:"email,omitempty"`
Role string `url:"role,omitempty"`
// contains filtered or unexported fields
}
func (CustomersQueryParams) Validate ¶
func (m CustomersQueryParams) Validate() error
type OrderNotesQueryParams ¶
type OrderNotesQueryParams struct {
Type string `url:"type,omitempty"`
// contains filtered or unexported fields
}
func (OrderNotesQueryParams) Validate ¶
func (m OrderNotesQueryParams) Validate() error
type OrderRefundsQueryParams ¶
type OrderRefundsQueryParams struct {
Search string `url:"search,omitempty"`
After string `url:"after,omitempty"`
Before string `url:"before,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
Parent []int `url:"parent,omitempty"`
ParentExclude []int `url:"parent_exclude,omitempty"`
DecimalPoint int `url:"dp,omitempty"`
// contains filtered or unexported fields
}
func (*OrderRefundsQueryParams) TidyVars ¶
func (q *OrderRefundsQueryParams) TidyVars() *queryParams
func (OrderRefundsQueryParams) Validate ¶
func (m OrderRefundsQueryParams) Validate() error
type OrdersQueryParams ¶
type OrdersQueryParams struct {
Search string `url:"search,omitempty"`
After string `url:"after,omitempty"`
Before string `url:"before,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
Parent []int `url:"parent,omitempty"`
ParentExclude []int `url:"parent_exclude,omitempty"`
Status []string `url:"status,omitempty"`
Customer int `url:"customer,omitempty"`
Product int `url:"product,omitempty"`
DecimalPoint int `url:"dp,omitempty"`
// contains filtered or unexported fields
}
OrdersQueryParams orders query params
func (OrdersQueryParams) Validate ¶
func (m OrdersQueryParams) Validate() error
type ProductAttributeTermsQueryParaTerms ¶
type ProductAttributeTermsQueryParaTerms struct {
Search string `url:"search,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
HideEmpty bool `url:"hide_empty,omitempty"`
Parent int `url:"parent,omitempty"`
Product int `url:"product,omitempty"`
Slug string `url:"slug,omitempty"`
// contains filtered or unexported fields
}
func (*ProductAttributeTermsQueryParaTerms) TidyVars ¶
func (q *ProductAttributeTermsQueryParaTerms) TidyVars() *queryParams
func (ProductAttributeTermsQueryParaTerms) Validate ¶
func (m ProductAttributeTermsQueryParaTerms) Validate() error
type ProductAttributesQueryParams ¶
type ProductAttributesQueryParams struct {
// contains filtered or unexported fields
}
func (*ProductAttributesQueryParams) TidyVars ¶
func (q *ProductAttributesQueryParams) TidyVars() *queryParams
func (ProductAttributesQueryParams) Validate ¶
func (m ProductAttributesQueryParams) Validate() error
type ProductCategoriesQueryParams ¶
type ProductCategoriesQueryParams struct {
Search string `url:"search,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
HideEmpty bool `url:"hide_empty,omitempty"`
Parent int `url:"parent,omitempty"`
Product int `url:"product,omitempty"`
Slug string `url:"slug,omitempty"`
// contains filtered or unexported fields
}
func (*ProductCategoriesQueryParams) TidyVars ¶
func (q *ProductCategoriesQueryParams) TidyVars() *queryParams
func (ProductCategoriesQueryParams) Validate ¶
func (m ProductCategoriesQueryParams) Validate() error
type ProductReviewsQueryParams ¶
type ProductReviewsQueryParams struct {
Search string `url:"search,omitempty"`
After string `url:"after,omitempty"`
Before string `url:"before,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
Reviewer []int `url:"reviewer,omitempty"`
ReviewerExclude []int `url:"reviewer_exclude,omitempty"`
ReviewerEmail []string `url:"reviewer_email,omitempty"`
Product []int `url:"product,omitempty"`
Status string `url:"status,omitempty"`
// contains filtered or unexported fields
}
func (*ProductReviewsQueryParams) TidyVars ¶
func (q *ProductReviewsQueryParams) TidyVars() *queryParams
func (ProductReviewsQueryParams) Validate ¶
func (m ProductReviewsQueryParams) Validate() error
type ProductShippingClassesQueryParams ¶
type ProductShippingClassesQueryParams struct {
Search string `url:"search,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
HideEmpty bool `url:"hide_empty,omitempty"`
Parent int `url:"parent,omitempty"`
Product int `url:"product,omitempty"`
Slug string `url:"slug,omitempty"`
// contains filtered or unexported fields
}
func (*ProductShippingClassesQueryParams) TidyVars ¶
func (q *ProductShippingClassesQueryParams) TidyVars() *queryParams
func (ProductShippingClassesQueryParams) Validate ¶
func (m ProductShippingClassesQueryParams) Validate() error
type ProductTagsQueryParams ¶
type ProductTagsQueryParams struct {
Search string `url:"search,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
HideEmpty bool `url:"hide_empty,omitempty"`
Product int `url:"product,omitempty"`
Slug string `url:"slug,omitempty"`
// contains filtered or unexported fields
}
func (ProductTagsQueryParams) Validate ¶
func (m ProductTagsQueryParams) Validate() error
type ProductVariationsQueryParams ¶
type ProductVariationsQueryParams struct {
Search string `url:"search,omitempty"`
After string `url:"after,omitempty"`
Before string `url:"before,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
Parent []int `url:"parent,omitempty"`
ParentExclude []int `url:"parent_exclude,omitempty"`
Slug string `url:"slug,omitempty"`
Status string `url:"status,omitempty"`
SKU string `url:"sku,omitempty"`
TaxClass string `url:"tax_class,omitempty"`
OnSale string `url:"on_sale,omitempty"`
MinPrice float64 `url:"min_price,omitempty"`
MaxPrice float64 `url:"max_price,omitempty"`
StockStatus string `url:"stock_status,omitempty"`
// contains filtered or unexported fields
}
func (*ProductVariationsQueryParams) TidyVars ¶
func (q *ProductVariationsQueryParams) TidyVars() *queryParams
func (ProductVariationsQueryParams) Validate ¶
func (m ProductVariationsQueryParams) Validate() error
type ProductsQueryParams ¶
type ProductsQueryParams struct {
Search string `url:"search,omitempty"`
After string `url:"after,omitempty"`
Before string `url:"before,omitempty"`
Exclude []int `url:"exclude,omitempty"`
Include []int `url:"include,omitempty"`
Parent []int `url:"parent,omitempty"`
ParentExclude []int `url:"parent_exclude,omitempty"`
Slug string `url:"slug,omitempty"`
Status string `url:"status,omitempty"`
Type string `url:"type,omitempty"`
SKU string `url:"sku,omitempty"`
Featured bool `url:"featured,omitempty"`
Category string `url:"category,omitempty"`
Tag string `url:"tag,omitempty"`
ShippingClass string `url:"shipping_class,omitempty"`
Attribute string `url:"attribute,omitempty"`
AttributeTerm string `url:"attribute_term,omitempty"`
TaxClass string `url:"tax_class,omitempty"`
OnSale bool `url:"on_sale,omitempty"`
MinPrice float64 `url:"min_price,string,omitempty"`
MaxPrice float64 `url:"max_price,string,omitempty"`
StockStatus string `url:"stock_status,omitempty"`
// contains filtered or unexported fields
}
func (ProductsQueryParams) Validate ¶
func (m ProductsQueryParams) Validate() error
type ReportsQueryParams ¶
type ReportsQueryParams struct {
Context string `url:"context,omitempty"`
Period string `url:"period,omitempty"`
DateMin string `url:"date_min,omitempty"`
DateMax string `url:"date_max,omitempty"`
}
func (ReportsQueryParams) Validate ¶
func (m ReportsQueryParams) Validate() error
type SalesReportsQueryParams ¶
type SalesReportsQueryParams = ReportsQueryParams
type ShippingZoneMethodIncludeRequest ¶
type ShippingZoneMethodIncludeRequest struct {
MethodId string `json:"method_id"`
}
func (ShippingZoneMethodIncludeRequest) Validate ¶
func (m ShippingZoneMethodIncludeRequest) Validate() error
type TaxRatesQueryParams ¶
type TaxRatesQueryParams struct {
Class string `url:"class,omitempty"`
// contains filtered or unexported fields
}
func (TaxRatesQueryParams) Validate ¶
func (m TaxRatesQueryParams) Validate() error
type TopSellerReportsQueryParams ¶
type TopSellerReportsQueryParams = SalesReportsQueryParams
type UpdateCouponRequest ¶
type UpdateCouponRequest struct {
Code string `json:"code,omitempty"`
DiscountType string `json:"discount_type,omitempty"`
Amount float64 `json:"amount,omitempty,string"`
IndividualUse bool `json:"individual_use,omitempty"`
ExcludeSaleItems bool `json:"exclude_sale_items,omitempty"`
MinimumAmount float64 `json:"minimum_amount,omitempty,string"`
}
func (UpdateCouponRequest) Validate ¶
func (m UpdateCouponRequest) Validate() error
type UpdateCustomerRequest ¶
type UpdateCustomerRequest struct {
Email string `json:"email,omitempty"`
FirstName string `json:"first_name,omitempty"`
LastName string `json:"last_name,omitempty"`
Billing *entity.Billing `json:"billing,omitempty"`
Shipping *entity.Shipping `json:"shipping,omitempty"`
MetaData []entity.Meta `json:"meta_data,omitempty"`
}
func (UpdateCustomerRequest) Validate ¶
func (m UpdateCustomerRequest) Validate() error
type UpdateOrderRequest ¶
type UpdateOrderRequest = CreateOrderRequest
type UpdatePaymentGatewayRequest ¶
type UpdatePaymentGatewayRequest struct {
Title string `json:"title,omitempty"`
Description string `json:"description,omitempty"`
Order int `json:"order,omitempty"`
Enabled bool `json:"enabled,omitempty"`
MethodTitle string `json:"method_title,omitempty"`
MethodDescription string `json:"method_description,omitempty"`
MethodSupports []string `json:"method_supports,omitempty"`
Settings map[string]entity.PaymentGatewaySetting `json:"settings,omitempty"`
}
func (UpdatePaymentGatewayRequest) Validate ¶
func (m UpdatePaymentGatewayRequest) Validate() error
type UpdateProductAttributeRequest ¶
type UpdateProductAttributeRequest = CreateProductAttributeRequest
type UpdateProductAttributeTermRequest ¶
type UpdateProductAttributeTermRequest = CreateProductAttributeTermRequest
type UpdateProductCategoryRequest ¶
type UpdateProductCategoryRequest = UpsertProductCategoryRequest
type UpdateProductRequest ¶
type UpdateProductRequest = CreateProductRequest
type UpdateProductReviewRequest ¶
type UpdateProductReviewRequest = CreateProductReviewRequest
type UpdateProductShippingClassRequest ¶
type UpdateProductShippingClassRequest = CreateProductShippingClassRequest
type UpdateProductTagRequest ¶
type UpdateProductTagRequest = UpsertProductTagRequest
type UpdateProductVariationRequest ¶
type UpdateProductVariationRequest = CreateProductVariationRequest
type UpdateSettingOptionRequest ¶
type UpdateSettingOptionRequest struct {
Value string `json:"value"`
}
func (UpdateSettingOptionRequest) Validate ¶
func (m UpdateSettingOptionRequest) Validate() error
type UpdateShippingZoneLocationsRequest ¶
type UpdateShippingZoneLocationsRequest []entity.ShippingZoneLocation
func (UpdateShippingZoneLocationsRequest) Validate ¶
func (m UpdateShippingZoneLocationsRequest) Validate() error
type UpdateShippingZoneMethodRequest ¶
type UpdateShippingZoneMethodRequest struct {
Order int `json:"order"`
Enabled bool `json:"enabled"`
Settings UpdateShippingZoneMethodSetting `json:"settings"`
}
func (UpdateShippingZoneMethodRequest) Validate ¶
func (m UpdateShippingZoneMethodRequest) Validate() error
type UpdateShippingZoneMethodSetting ¶
type UpdateShippingZoneMethodSetting struct {
Value string `json:"value"`
}
type UpdateShippingZoneRequest ¶
type UpdateShippingZoneRequest = CreateShippingZoneRequest
type UpdateTaxRateRequest ¶
type UpdateTaxRateRequest = CreateTaxRateRequest
type UpdateWebhookRequest ¶
type UpdateWebhookRequest = CreateWebhookRequest
type UpsertProductCategoryRequest ¶
type UpsertProductCategoryRequest struct {
Name string `json:"name"`
Slug string `json:"slug,omitempty"`
Parent int `json:"parent,omitempty"`
Description string `json:"description,omitempty"`
Display string `json:"display,omitempty"`
Image *entity.ProductImage `json:"image,omitempty"`
MenuOrder int `json:"menu_order,omitempty"`
}
func (UpsertProductCategoryRequest) Validate ¶
func (m UpsertProductCategoryRequest) Validate() error
type UpsertProductTagRequest ¶
type UpsertProductTagRequest struct {
Name string `json:"name"`
Slug string `json:"slug,omitempty"`
Description string `json:"description,omitempty"`
}
func (UpsertProductTagRequest) Validate ¶
func (m UpsertProductTagRequest) Validate() error
type WebhooksQueryParams ¶
type WebhooksQueryParams struct {
Search string `url:"search"`
After string `url:"after"`
Before string `url:"before"`
Exclude []int `url:"exclude"`
Include []int `url:"include"`
Status string `url:"status"`
// contains filtered or unexported fields
}
func (WebhooksQueryParams) Validate ¶
func (m WebhooksQueryParams) Validate() error
type WooCommerce ¶
type WooCommerce struct {
Debug bool // Is debug mode
Logger *log.Logger // Log
Services services // WooCommerce API services
}
func NewClient ¶
func NewClient(config config.Config) *WooCommerce
NewClient Creates a new WooCommerce client
You must give a config with NewClient method params. After you can operate data use this client.
Source Files
¶
- coupon.go
- customer.go
- data.go
- order.go
- order_note.go
- order_refund.go
- payment_gateway.go
- product.go
- product_attribute.go
- product_attribute_term.go
- product_category.go
- product_review.go
- product_shipping_class.go
- product_tag.go
- product_variation.go
- query_params.go
- report.go
- setting.go
- setting_option.go
- shipping_method.go
- shipping_zone.go
- shipping_zone_location.go
- shipping_zone_method.go
- system_status.go
- system_status_tool.go
- tax_class.go
- tax_rate.go
- utils.go
- webhook.go
- woo.go