Documentation ¶
Overview ¶
Package woocommerce 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++ }
Output:
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 BatchProductCreateItem
- type BatchProductRequest
- type BatchProductResult
- 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 BatchProductUpdateItem
- 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 QueryParams
- 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 }
Output:
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 BatchProductCreateItem ¶
type BatchProductCreateItem = CreateProductRequest
type BatchProductRequest ¶
type BatchProductRequest struct { Create []BatchProductCreateItem `json:"create,omitempty"` Update []BatchProductUpdateItem `json:"update,omitempty"` Delete []int `json:"delete,omitempty"` }
func (BatchProductRequest) Validate ¶
func (m BatchProductRequest) Validate() error
type BatchProductResult ¶
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 BatchProductUpdateItem ¶
type BatchProductUpdateItem struct { ID int `json:"id"` BatchProductCreateItem }
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 { QueryParams 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"` }
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.MetaData `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.MetaData `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.MetaData `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 string `json:"regular_price,string,omitempty"` SalePrice string `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.ProductAttributeItem `json:"attributes,omitempty"` DefaultAttributes []entity.ProductDefaultAttribute `json:"default_attributes,omitempty"` GroupedProducts []int `json:"grouped_products,omitempty"` MenuOrder int `json:"menu_order,omitempty"` MetaData []entity.MetaData `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.MetaData `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 { QueryParams 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"` }
func (CustomersQueryParams) Validate ¶
func (m CustomersQueryParams) Validate() error
type OrderNotesQueryParams ¶
type OrderNotesQueryParams struct { QueryParams Type string `url:"type,omitempty"` }
func (OrderNotesQueryParams) Validate ¶
func (m OrderNotesQueryParams) Validate() error
type OrderRefundsQueryParams ¶
type OrderRefundsQueryParams struct { QueryParams 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"` }
func (OrderRefundsQueryParams) Validate ¶
func (m OrderRefundsQueryParams) Validate() error
type OrdersQueryParams ¶
type OrdersQueryParams struct { QueryParams 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"` }
OrdersQueryParams orders query params
func (OrdersQueryParams) Validate ¶
func (m OrdersQueryParams) Validate() error
type ProductAttributeTermsQueryParaTerms ¶
type ProductAttributeTermsQueryParaTerms struct { QueryParams 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"` }
func (ProductAttributeTermsQueryParaTerms) Validate ¶
func (m ProductAttributeTermsQueryParaTerms) Validate() error
type ProductAttributesQueryParams ¶
type ProductAttributesQueryParams struct {
QueryParams
}
func (ProductAttributesQueryParams) Validate ¶
func (m ProductAttributesQueryParams) Validate() error
type ProductCategoriesQueryParams ¶
type ProductCategoriesQueryParams struct { QueryParams 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"` }
func (ProductCategoriesQueryParams) Validate ¶
func (m ProductCategoriesQueryParams) Validate() error
type ProductReviewsQueryParams ¶
type ProductReviewsQueryParams struct { QueryParams 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"` }
func (ProductReviewsQueryParams) Validate ¶
func (m ProductReviewsQueryParams) Validate() error
type ProductShippingClassesQueryParams ¶
type ProductShippingClassesQueryParams struct { QueryParams 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"` }
func (ProductShippingClassesQueryParams) Validate ¶
func (m ProductShippingClassesQueryParams) Validate() error
type ProductTagsQueryParams ¶
type ProductTagsQueryParams struct { QueryParams 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"` }
func (ProductTagsQueryParams) Validate ¶
func (m ProductTagsQueryParams) Validate() error
type ProductVariationsQueryParams ¶
type ProductVariationsQueryParams struct { QueryParams 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"` }
func (ProductVariationsQueryParams) Validate ¶
func (m ProductVariationsQueryParams) Validate() error
type ProductsQueryParams ¶
type ProductsQueryParams struct { QueryParams 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"` }
func (ProductsQueryParams) Validate ¶
func (m ProductsQueryParams) Validate() error
type QueryParams ¶
type QueryParams struct { Page int `url:"page,omitempty"` PerPage int `url:"per_page,omitempty"` Offset int `url:"offset,omitempty"` Order string `url:"order,omitempty"` OrderBy string `url:"order_by,omitempty"` Context string `url:"context,omitempty"` }
func (*QueryParams) TidyVars ¶
func (q *QueryParams) TidyVars() *QueryParams
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 { QueryParams Class string `url:"class,omitempty"` }
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.MetaData `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 { QueryParams Search string `url:"search"` After string `url:"after"` Before string `url:"before"` Exclude []int `url:"exclude"` Include []int `url:"include"` Status string `url:"status"` }
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