Token导航 LogoToken导航TokenDH.com
研究检索敏感数据clawhub未标认证来源可访问clear审计通过

woocommercewoocommerce 搜索

Agent Skill

woocommerce 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

460,592

周安装

19,583

GitHub Stars

18

下载量

161,364
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:woocommerce(woocommerce 搜索)
来源仓库:https://github.com/byungkyu/woocommerce
安装命令:
openclaw skills install woocommerce
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install woocommerce

简介

WooCommerce REST API 与托管 OAuth 集成。访问产品、订单、客户、优惠券、运输、税金、报告和 Webhooks。当用户想要管理电子商务运营、处理订单或与 WooCommerce 商店集成时,请使用此技能。对于其他第三方应用程序,请使用 api-gateway 技能 (https://clawhub.ai/byungkyu/api-gateway)。

SKILL.md

name
woocommerce
description
|
compatibility
Requires network access and valid Maton API key
metadata
author
maton
version
1.0
clawdbot
emoji
🧠
requires
env

WooCommerce

Access the WooCommerce REST API with managed OAuth authentication. Manage products, orders, customers, coupons, shipping, taxes, and more for e-commerce operations.

Quick Start

# List products
python <<'EOF'
import urllib.request, os, json
req = urllib.request.Request('https://api.maton.ai/woocommerce/wp-json/wc/v3/products')
req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}')
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

Base URL

https://api.maton.ai/woocommerce/{native-api-path}

Maton proxies requests to your WooCommerce store and automatically handles authentication.

Authentication

All requests require the Maton API key in the Authorization header:

Authorization: Bearer $MATON_API_KEY

Environment Variable: Set your API key as MATON_API_KEY:

export MATON_API_KEY="YOUR_API_KEY"

Getting Your API Key

  1. Sign in or create an account at maton.ai
  2. Go to maton.ai/settings
  3. Copy your API key

Connection Management

Manage your WooCommerce OAuth connections at https://api.maton.ai.

List Connections

python <<'EOF'
import urllib.request, os, json
req = urllib.request.Request('https://api.maton.ai/connections?app=woocommerce&status=ACTIVE')
req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}')
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

Create Connection

python <<'EOF'
import urllib.request, os, json
data = json.dumps({'app': 'woocommerce'}).encode()
req = urllib.request.Request('https://api.maton.ai/connections', data=data, method='POST')
req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}')
req.add_header('Content-Type', 'application/json')
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

Get Connection

python <<'EOF'
import urllib.request, os, json
req = urllib.request.Request('https://api.maton.ai/connections/{connection_id}')
req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}')
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

Response:

{
  "connection": {
    "connection_id": "{connection_id}",
    "status": "ACTIVE",
    "creation_time": "2025-12-08T07:20:53.488460Z",
    "last_updated_time": "2026-01-31T20:03:32.593153Z",
    "url": "https://connect.maton.ai/?session_token=...",
    "app": "woocommerce",
    "metadata": {}
  }
}

Open the returned url in a browser to complete OAuth authorization.

Delete Connection

python <<'EOF'
import urllib.request, os, json
req = urllib.request.Request('https://api.maton.ai/connections/{connection_id}', method='DELETE')
req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}')
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

Specifying Connection

If you have multiple WooCommerce connections, specify which one to use with the Maton-Connection header:

python <<'EOF'
import urllib.request, os, json
req = urllib.request.Request('https://api.maton.ai/woocommerce/wp-json/wc/v3/products')
req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}')
req.add_header('Maton-Connection', '{connection_id}')
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

If you have multiple connections, always include this header to ensure requests go to the intended account.

Security & Permissions

  • Access is scoped to products, orders, customers, coupons, shipping, taxes, reports, and webhooks within the connected WooCommerce account.
  • All write operations require explicit user approval. Before executing any create, update, or delete call, confirm the target resource and intended effect with the user.

API Reference

Products

List All Products

GET /woocommerce/wp-json/wc/v3/products

Query parameters:

  • page - Current page (default: 1)
  • per_page - Items per page (default: 10, max: 100)
  • search - Search by product name
  • status - Filter by status: draft, pending, private, publish
  • type - Filter by type: simple, grouped, external, variable
  • sku - Filter by SKU
  • category - Filter by category ID
  • tag - Filter by tag ID
  • featured - Filter featured products
  • on_sale - Filter on-sale products
  • min_price / max_price - Filter by price range
  • stock_status - Filter by stock status: instock, outofstock, onbackorder
  • orderby - Sort by: date, id, include, title, slug, price, popularity, rating
  • order - Sort order: asc, desc

Example:

curl -s -X GET "https://api.maton.ai/woocommerce/wp-json/wc/v3/products?per_page=20&status=publish" -H "Authorization: Bearer $MATON_API_KEY"

Response:

[
  {
    "id": 123,
    "name": "Premium T-Shirt",
    "slug": "premium-t-shirt",
    "type": "simple",
    "status": "publish",
    "sku": "TSH-001",
    "price": "29.99",
    "regular_price": "34.99",
    "sale_price": "29.99",
    "stock_quantity": 50,
    "stock_status": "instock",
    "categories": [{"id": 15, "name": "Apparel"}],
    "images": [{"id": 456, "src": "https://..."}]
  }
]

Get a Product

GET /woocommerce/wp-json/wc/v3/products/{id}

Example:

curl -s -X GET "https://api.maton.ai/woocommerce/wp-json/wc/v3/products/123" -H "Authorization: Bearer $MATON_API_KEY"

Create a Product

POST /woocommerce/wp-json/wc/v3/products
Content-Type: application/json

{
  "name": "New Product",
  "type": "simple",
  "regular_price": "49.99",
  "description": "Full product description",
  "short_description": "Brief description",
  "sku": "PROD-001",
  "manage_stock": true,
  "stock_quantity": 100,
  "categories": [{"id": 15}],
  "images": [{"src": "https://example.com/image.jpg"}]
}

Example:

curl -s -X POST "https://api.maton.ai/woocommerce/wp-json/wc/v3/products" -H "Content-Type: application/json" -H "Authorization: Bearer $MATON_API_KEY" -d '{"name": "Premium Widget", "type": "simple", "regular_price": "19.99", "sku": "WDG-001"}'

Update a Product

PUT /woocommerce/wp-json/wc/v3/products/{id}

Example:

curl -s -X PUT "https://api.maton.ai/woocommerce/wp-json/wc/v3/products/123" -H "Content-Type: application/json" -H "Authorization: Bearer $MATON_API_KEY" -d '{"regular_price": "24.99", "sale_price": "19.99"}'

Delete a Product

DELETE /woocommerce/wp-json/wc/v3/products/{id}

Query parameters:

  • force - Set to true to permanently delete (default: false moves to trash)

Duplicate a Product

POST /woocommerce/wp-json/wc/v3/products/{id}/duplicate

Product Variations

For variable products, manage individual variations:

List Variations

GET /woocommerce/wp-json/wc/v3/products/{product_id}/variations

Create Variation

POST /woocommerce/wp-json/wc/v3/products/{product_id}/variations
Content-Type: application/json

{
  "regular_price": "29.99",
  "sku": "TSH-001-RED-M",
  "attributes": [
    {"id": 1, "option": "Red"},
    {"id": 2, "option": "Medium"}
  ]
}

Update Variation

PUT /woocommerce/wp-json/wc/v3/products/{product_id}/variations/{id}

Delete Variation

DELETE /woocommerce/wp-json/wc/v3/products/{product_id}/variations/{id}

Batch Update Variations

POST /woocommerce/wp-json/wc/v3/products/{product_id}/variations/batch

Product Attributes

List Attributes

GET /woocommerce/wp-json/wc/v3/products/attributes

Create Attribute

POST /woocommerce/wp-json/wc/v3/products/attributes
Content-Type: application/json

{
  "name": "Color",
  "slug": "color",
  "type": "select",
  "order_by": "menu_order"
}

Get/Update/Delete Attribute

GET /woocommerce/wp-json/wc/v3/products/attributes/{id}
PUT /woocommerce/wp-json/wc/v3/products/attributes/{id}
DELETE /woocommerce/wp-json/wc/v3/products/attributes/{id}

Attribute Terms

GET /woocommerce/wp-json/wc/v3/products/attributes/{attribute_id}/terms
POST /woocommerce/wp-json/wc/v3/products/attributes/{attribute_id}/terms
GET /woocommerce/wp-json/wc/v3/products/attributes/{attribute_id}/terms/{id}
PUT /woocommerce/wp-json/wc/v3/products/attributes/{attribute_id}/terms/{id}
DELETE /woocommerce/wp-json/wc/v3/products/attributes/{attribute_id}/terms/{id}

Product Categories

List Categories

GET /woocommerce/wp-json/wc/v3/products/categories

Create Category

POST /woocommerce/wp-json/wc/v3/products/categories
Content-Type: application/json

{
  "name": "Electronics",
  "parent": 0,
  "description": "Electronic products"
}

Get/Update/Delete Category

GET /woocommerce/wp-json/wc/v3/products/categories/{id}
PUT /woocommerce/wp-json/wc/v3/products/categories/{id}
DELETE /woocommerce/wp-json/wc/v3/products/categories/{id}

Product Tags

GET /woocommerce/wp-json/wc/v3/products/tags
POST /woocommerce/wp-json/wc/v3/products/tags
GET /woocommerce/wp-json/wc/v3/products/tags/{id}
PUT /woocommerce/wp-json/wc/v3/products/tags/{id}
DELETE /woocommerce/wp-json/wc/v3/products/tags/{id}

Product Shipping Classes

GET /woocommerce/wp-json/wc/v3/products/shipping_classes
POST /woocommerce/wp-json/wc/v3/products/shipping_classes
GET /woocommerce/wp-json/wc/v3/products/shipping_classes/{id}
PUT /woocommerce/wp-json/wc/v3/products/shipping_classes/{id}
DELETE /woocommerce/wp-json/wc/v3/products/shipping_classes/{id}

Product Reviews

List Reviews

GET /woocommerce/wp-json/wc/v3/products/reviews

Query parameters:

  • product - Filter by product ID
  • status - Filter by status: approved, hold, spam, trash

Create Review

POST /woocommerce/wp-json/wc/v3/products/reviews
Content-Type: application/json

{
  "product_id": 123,
  "review": "Great product!",
  "reviewer": "John Doe",
  "reviewer_email": "john@example.com",
  "rating": 5
}

Get/Update/Delete Review

GET /woocommerce/wp-json/wc/v3/products/reviews/{id}
PUT /woocommerce/wp-json/wc/v3/products/reviews/{id}
DELETE /woocommerce/wp-json/wc/v3/products/reviews/{id}

Orders

List All Orders

GET /woocommerce/wp-json/wc/v3/orders

Query parameters:

  • page - Current page (default: 1)
  • per_page - Items per page (default: 10)
  • search - Search orders
  • after / before - Filter by date (ISO8601)
  • status - Order status (see below)
  • customer - Filter by customer ID
  • product - Filter by product ID
  • orderby - Sort by: date, id, include, title, slug
  • order - Sort order: asc, desc

Order Statuses:

  • pending - Payment pending
  • processing - Payment received, awaiting fulfillment
  • on-hold - Awaiting payment confirmation
  • completed - Order fulfilled
  • cancelled - Cancelled by admin or customer
  • refunded - Fully refunded
  • failed - Payment failed

Example:

curl -s -X GET "https://api.maton.ai/woocommerce/wp-json/wc/v3/orders?status=processing&per_page=50" -H "Authorization: Bearer $MATON_API_KEY"

Response:

[
  {
    "id": 456,
    "status": "processing",
    "currency": "USD",
    "total": "129.99",
    "customer_id": 12,
    "billing": {
      "first_name": "John",
      "last_name": "Doe",
      "email": "john@example.com"
    },
    "line_items": [
      {
        "id": 789,
        "product_id": 123,
        "name": "Premium T-Shirt",
        "quantity": 2,
        "total": "59.98"
      }
    ]
  }
]

Get an Order

GET /woocommerce/wp-json/wc/v3/orders/{id}

Create an Order

POST /woocommerce/wp-json/wc/v3/orders
Content-Type: application/json

{
  "payment_method": "stripe",
  "payment_method_title": "Credit Card",
  "set_paid": true,
  "billing": {
    "first_name": "John",
    "last_name": "Doe",
    "address_1": "123 Main St",
    "city": "Anytown",
    "state": "CA",
    "postcode": "12345",
    "country": "US",
    "email": "john@example.com",
    "phone": "555-1234"
  },
  "shipping": {
    "first_name": "John",
    "last_name": "Doe",
    "address_1": "123 Main St",
    "city": "Anytown",
    "state": "CA",
    "postcode": "12345",
    "country": "US"
  },
  "line_items": [
    {
      "product_id": 123,
      "quantity": 2
    }
  ]
}

Update an Order

PUT /woocommerce/wp-json/wc/v3/orders/{id}

Example - Update order status:

curl -s -X PUT "https://api.maton.ai/woocommerce/wp-json/wc/v3/orders/456" -H "Content-Type: application/json" -H "Authorization: Bearer $MATON_API_KEY" -d '{"status": "completed"}'

Delete an Order

DELETE /woocommerce/wp-json/wc/v3/orders/{id}

Order Notes

List Order Notes

GET /woocommerce/wp-json/wc/v3/orders/{order_id}/notes

Create Order Note

POST /woocommerce/wp-json/wc/v3/orders/{order_id}/notes
Content-Type: application/json

{
  "note": "Order shipped via FedEx, tracking #12345",
  "customer_note": true
}
  • customer_note: Set to true to make the note visible to the customer

Get/Delete Order Note

GET /woocommerce/wp-json/wc/v3/orders/{order_id}/notes/{id}
DELETE /woocommerce/wp-json/wc/v3/orders/{order_id}/notes/{id}

Order Refunds

List Refunds

GET /woocommerce/wp-json/wc/v3/orders/{order_id}/refunds

Create Refund

POST /woocommerce/wp-json/wc/v3/orders/{order_id}/refunds
Content-Type: application/json

{
  "amount": "25.00",
  "reason": "Product damaged during shipping",
  "api_refund": true
}
  • api_refund: Set to true to process refund through payment gateway

Get/Delete Refund

GET /woocommerce/wp-json/wc/v3/orders/{order_id}/refunds/{id}
DELETE /woocommerce/wp-json/wc/v3/orders/{order_id}/refunds/{id}

Customers

List All Customers

GET /woocommerce/wp-json/wc/v3/customers

Query parameters:

  • page - Current page (default: 1)
  • per_page - Items per page (default: 10)
  • search - Search by name or email
  • email - Filter by exact email
  • role - Filter by role: all, administrator, customer, shop_manager
  • orderby - Sort by: id, include, name, registered_date
  • order - Sort order: asc, desc

Example:

curl -s -X GET "https://api.maton.ai/woocommerce/wp-json/wc/v3/customers?per_page=25" -H "Authorization: Bearer $MATON_API_KEY"

Response:

[
  {
    "id": 12,
    "email": "john@example.com",
    "first_name": "John",
    "last_name": "Doe",
    "username": "johndoe",
    "billing": {
      "first_name": "John",
      "last_name": "Doe",
      "address_1": "123 Main St",
      "city": "Anytown",
      "state": "CA",
      "postcode": "12345",
      "country": "US",
      "email": "john@example.com",
      "phone": "555-1234"
    },
    "shipping": {
      "first_name": "John",
      "last_name": "Doe",
      "address_1": "123 Main St",
      "city": "Anytown",
      "state": "CA",
      "postcode": "12345",
      "country": "US"
    }
  }
]

Get a Customer

GET /woocommerce/wp-json/wc/v3/customers/{id}

Create a Customer

POST /woocommerce/wp-json/wc/v3/customers
Content-Type: application/json

{
  "email": "jane@example.com",
  "first_name": "Jane",
  "last_name": "Smith",
  "username": "janesmith",
  "password": "secure_password",
  "billing": {
    "first_name": "Jane",
    "last_name": "Smith",
    "address_1": "456 Oak Ave",
    "city": "Springfield",
    "state": "IL",
    "postcode": "62701",
    "country": "US",
    "email": "jane@example.com",
    "phone": "555-5678"
  }
}

Update a Customer

PUT /woocommerce/wp-json/wc/v3/customers/{id}

Delete a Customer

DELETE /woocommerce/wp-json/wc/v3/customers/{id}

Customer Downloads

GET /woocommerce/wp-json/wc/v3/customers/{customer_id}/downloads

Returns downloadable products the customer has access to.


Coupons

List All Coupons

GET /woocommerce/wp-json/wc/v3/coupons

Query parameters:

  • page - Current page (default: 1)
  • per_page - Items per page (default: 10)
  • search - Search coupons
  • code - Filter by coupon code

Get a Coupon

GET /woocommerce/wp-json/wc/v3/coupons/{id}

Create a Coupon

POST /woocommerce/wp-json/wc/v3/coupons
Content-Type: application/json

{
  "code": "SUMMER2024",
  "discount_type": "percent",
  "amount": "15",
  "description": "Summer promotion - 15% off",
  "date_expires": "2024-08-31T23:59:59",
  "individual_use": true,
  "usage_limit": 100,
  "usage_limit_per_user": 1,
  "minimum_amount": "50.00",
  "maximum_amount": "500.00",
  "free_shipping": false,
  "exclude_sale_items": true
}

Discount Types:

  • percent - Percentage discount
  • fixed_cart - Fixed amount off entire cart
  • fixed_product - Fixed amount off per product

Coupon Properties:

  • code - Coupon code (required)
  • amount - Discount amount
  • discount_type - Type of discount
  • description - Coupon description
  • date_expires - Expiration date (ISO8601)
  • individual_use - Cannot be combined with other coupons
  • product_ids - Array of product IDs the coupon applies to
  • excluded_product_ids - Array of product IDs excluded
  • usage_limit - Total number of times coupon can be used
  • usage_limit_per_user - Usage limit per customer
  • limit_usage_to_x_items - Max items the discount applies to
  • free_shipping - Enables free shipping
  • product_categories - Array of category IDs
  • excluded_product_categories - Array of excluded category IDs
  • exclude_sale_items - Exclude sale items from discount
  • minimum_amount - Minimum cart total required
  • maximum_amount - Maximum cart total allowed
  • email_restrictions - Array of allowed email addresses

Update a Coupon

PUT /woocommerce/wp-json/wc/v3/coupons/{id}

Delete a Coupon

DELETE /woocommerce/wp-json/wc/v3/coupons/{id}

Taxes

Tax Rates

GET /woocommerce/wp-json/wc/v3/taxes
POST /woocommerce/wp-json/wc/v3/taxes
GET /woocommerce/wp-json/wc/v3/taxes/{id}
PUT /woocommerce/wp-json/wc/v3/taxes/{id}
DELETE /woocommerce/wp-json/wc/v3/taxes/{id}
POST /woocommerce/wp-json/wc/v3/taxes/batch

Create Tax Rate Example:

curl -s -X POST "https://api.maton.ai/woocommerce/wp-json/wc/v3/taxes" -H "Content-Type: application/json" -H "Authorization: Bearer $MATON_API_KEY" -d '{"country": "US", "state": "CA", "rate": "7.25", "name": "CA State Tax", "shipping": true}'

Tax Classes

GET /woocommerce/wp-json/wc/v3/taxes/classes
POST /woocommerce/wp-json/wc/v3/taxes/classes
DELETE /woocommerce/wp-json/wc/v3/taxes/classes/{slug}

Shipping

Shipping Zones

GET /woocommerce/wp-json/wc/v3/shipping/zones
POST /woocommerce/wp-json/wc/v3/shipping/zones
GET /woocommerce/wp-json/wc/v3/shipping/zones/{id}
PUT /woocommerce/wp-json/wc/v3/shipping/zones/{id}
DELETE /woocommerce/wp-json/wc/v3/shipping/zones/{id}

Create Shipping Zone Example:

curl -s -X POST "https://api.maton.ai/woocommerce/wp-json/wc/v3/shipping/zones" -H "Content-Type: application/json" -H "Authorization: Bearer $MATON_API_KEY" -d '{"name": "US West Coast", "order": 1}'

Shipping Zone Locations

GET /woocommerce/wp-json/wc/v3/shipping/zones/{zone_id}/locations
PUT /woocommerce/wp-json/wc/v3/shipping/zones/{zone_id}/locations

Update Zone Locations Example:

curl -s -X PUT "https://api.maton.ai/woocommerce/wp-json/wc/v3/shipping/zones/1/locations" -H "Content-Type: application/json" -H "Authorization: Bearer $MATON_API_KEY" -d '[{"code": "US:CA", "type": "state"}, {"code": "US:OR", "type": "state"}, {"code": "US:WA", "type": "state"}]'

Shipping Zone Methods

GET /woocommerce/wp-json/wc/v3/shipping/zones/{zone_id}/methods
POST /woocommerce/wp-json/wc/v3/shipping/zones/{zone_id}/methods
GET /woocommerce/wp-json/wc/v3/shipping/zones/{zone_id}/methods/{id}
PUT /woocommerce/wp-json/wc/v3/shipping/zones/{zone_id}/methods/{id}
DELETE /woocommerce/wp-json/wc/v3/shipping/zones/{zone_id}/methods/{id}

Shipping Methods (Global)

GET /woocommerce/wp-json/wc/v3/shipping_methods
GET /woocommerce/wp-json/wc/v3/shipping_methods/{id}

Payment Gateways

GET /woocommerce/wp-json/wc/v3/payment_gateways
GET /woocommerce/wp-json/wc/v3/payment_gateways/{id}
PUT /woocommerce/wp-json/wc/v3/payment_gateways/{id}

Example - Enable a Payment Gateway:

curl -s -X PUT "https://api.maton.ai/woocommerce/wp-json/wc/v3/payment_gateways/stripe" -H "Content-Type: application/json" -H "Authorization: Bearer $MATON_API_KEY" -d '{"enabled": true}'

Settings

List Settings Groups

GET /woocommerce/wp-json/wc/v3/settings

List Settings in a Group

GET /woocommerce/wp-json/wc/v3/settings/{group}

Common groups: general, products, tax, shipping, checkout, account, email

Get/Update a Setting

GET /woocommerce/wp-json/wc/v3/settings/{group}/{id}
PUT /woocommerce/wp-json/wc/v3/settings/{group}/{id}

Example - Update Store Address:

curl -s -X PUT "https://api.maton.ai/woocommerce/wp-json/wc/v3/settings/general/woocommerce_store_address" -H "Content-Type: application/json" -H "Authorization: Bearer $MATON_API_KEY" -d '{"value": "123 Commerce St"}'

Batch Update Settings

POST /woocommerce/wp-json/wc/v3/settings/{group}/batch

Webhooks

List All Webhooks

GET /woocommerce/wp-json/wc/v3/webhooks

Create a Webhook

POST /woocommerce/wp-json/wc/v3/webhooks
Content-Type: application/json

{
  "name": "Order Created",
  "topic": "order.created",
  "delivery_url": "https://example.com/webhooks/woocommerce",
  "status": "active"
}

Webhook Topics:

  • order.created, order.updated, order.deleted, order.restored
  • product.created, product.updated, product.deleted, product.restored
  • customer.created, customer.updated, customer.deleted
  • coupon.created, coupon.updated, coupon.deleted, coupon.restored

Get/Update/Delete Webhook

GET /woocommerce/wp-json/wc/v3/webhooks/{id}
PUT /woocommerce/wp-json/wc/v3/webhooks/{id}
DELETE /woocommerce/wp-json/wc/v3/webhooks/{id}

Reports

List Available Reports

GET /woocommerce/wp-json/wc/v3/reports

Sales Report

GET /woocommerce/wp-json/wc/v3/reports/sales

Query parameters:

  • period - Report period: week, month, last_month, year
  • date_min / date_max - Custom date range

Top Sellers Report

GET /woocommerce/wp-json/wc/v3/reports/top_sellers

Coupons Totals

GET /woocommerce/wp-json/wc/v3/reports/coupons/totals

Customers Totals

GET /woocommerce/wp-json/wc/v3/reports/customers/totals

Orders Totals

GET /woocommerce/wp-json/wc/v3/reports/orders/totals

Products Totals

GET /woocommerce/wp-json/wc/v3/reports/products/totals

Reviews Totals

GET /woocommerce/wp-json/wc/v3/reports/reviews/totals

Data

List All Data Endpoints

GET /woocommerce/wp-json/wc/v3/data

Continents

GET /woocommerce/wp-json/wc/v3/data/continents
GET /woocommerce/wp-json/wc/v3/data/continents/{code}

Countries

GET /woocommerce/wp-json/wc/v3/data/countries
GET /woocommerce/wp-json/wc/v3/data/countries/{code}

Currencies

GET /woocommerce/wp-json/wc/v3/data/currencies
GET /woocommerce/wp-json/wc/v3/data/currencies/{code}
GET /woocommerce/wp-json/wc/v3/data/currencies/current

System Status

GET /woocommerce/wp-json/wc/v3/system_status
GET /woocommerce/wp-json/wc/v3/system_status/tools
POST /woocommerce/wp-json/wc/v3/system_status/tools/{id}

Batch Operations

Most resources support batch operations for creating, updating, and deleting multiple items:

POST /woocommerce/wp-json/wc/v3/{resource}/batch
Content-Type: application/json

{
  "create": [
    {"name": "New Product 1", "regular_price": "19.99"},
    {"name": "New Product 2", "regular_price": "29.99"}
  ],
  "update": [
    {"id": 123, "regular_price": "24.99"}
  ],
  "delete": [456, 789]
}

Response:

{
  "create": [...],
  "update": [...],
  "delete": [...]
}

Pagination

WooCommerce uses page-based pagination with response headers:

Query Parameters:

  • page - Page number (default: 1)
  • per_page - Items per page (default: 10, max: 100)
  • offset - Offset to start from

Response Headers:

  • X-WP-Total - Total number of items
  • X-WP-TotalPages - Total number of pages
  • Link - Contains next, prev, first, last pagination links

Example:

curl -s -I -X GET "https://api.maton.ai/woocommerce/wp-json/wc/v3/products?page=2&per_page=25" -H "Authorization: Bearer $MATON_API_KEY"

Code Examples

JavaScript

const response = await fetch(
  'https://api.maton.ai/woocommerce/wp-json/wc/v3/orders?status=processing',
  {
    headers: {
      'Authorization': `Bearer ${process.env.MATON_API_KEY}`
    }
  }
);
const orders = await response.json();

Python

import os
import requests

response = requests.get(
    'https://api.maton.ai/woocommerce/wp-json/wc/v3/products',
    headers={'Authorization': f'Bearer {os.environ["MATON_API_KEY"]}'},
    params={'per_page': 50, 'status': 'publish'}
)
products = response.json()

Creating an Order with Line Items

import os
import requests

order_data = {
    "payment_method": "stripe",
    "set_paid": True,
    "billing": {
        "first_name": "John",
        "last_name": "Doe",
        "email": "john@example.com",
        "address_1": "123 Main St",
        "city": "Anytown",
        "state": "CA",
        "postcode": "12345",
        "country": "US"
    },
    "line_items": [
        {"product_id": 123, "quantity": 2},
        {"product_id": 456, "quantity": 1}
    ]
}

response = requests.post(
    'https://api.maton.ai/woocommerce/wp-json/wc/v3/orders',
    headers={
        'Authorization': f'Bearer {os.environ["MATON_API_KEY"]}',
        'Content-Type': 'application/json'
    },
    json=order_data
)
order = response.json()

Notes

  • All monetary amounts are returned as strings with two decimal places
  • Dates are in ISO8601 format: YYYY-MM-DDTHH:MM:SS
  • Resource IDs are integers
  • The API requires "pretty permalinks" enabled in WordPress
  • Use context=edit parameter for additional writable fields
  • IMPORTANT: When using curl commands, use curl -g when URLs contain brackets (fields[], sort[], records[]) to disable glob parsing
  • IMPORTANT: When piping curl output to jq or other commands, environment variables like $MATON_API_KEY may not expand correctly in some shell environments. You may get "Invalid API key" errors when piping.

Error Handling

StatusMeaning
400Bad request or invalid data
401Invalid or missing authentication
403Forbidden - insufficient permissions
404Resource not found
500Internal server error

Error Response Format:

{
  "code": "woocommerce_rest_invalid_id",
  "message": "Invalid ID.",
  "data": {
    "status": 404
  }
}

Troubleshooting: API Key Issues

  1. Check that the MATON_API_KEY environment variable is set:
echo $MATON_API_KEY
  1. Verify the API key is valid by listing connections:
python <<'EOF'
import urllib.request, os, json
req = urllib.request.Request('https://api.maton.ai/connections')
req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}')
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

Troubleshooting: Invalid App Name

  1. Ensure your URL path starts with woocommerce. For example:
  • Correct: https://api.maton.ai/woocommerce/wp-json/wc/v3/products
  • Incorrect: https://api.maton.ai/wp-json/wc/v3/products

Resources

General

Products

Orders

Customers

Coupons

Taxes

Shipping

Payments & Settings

Webhooks

Reports

Data

System

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

72.75%
按下载量换算117,392

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

未展示

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills