
Wix
- 53 installs
- 76 repo stars
- Updated August 4, 2026
- vm0-ai/vm0-skills
Helps with ai & agent building tasks during AI-assisted development.
About
wix is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.
- wix
- AI & Agent Building
- AI-coding skill
Wix by the numbers
- 53 all-time installs (skills.sh)
- Ranked #7,039 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/vm0-ai/vm0-skills --skill wixAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 53 |
|---|---|
| repo stars | ★ 76 |
| Last updated | August 4, 2026 |
| Repository | vm0-ai/vm0-skills ↗ |
What it does
Helps with ai & agent building tasks during AI-assisted development.
Files
Troubleshooting
If requests fail, run zero doctor check-connector --env-name WIX_TOKEN or zero doctor check-connector --url https://www.wixapis.com/apps/v1/instance --method GET
Core APIs
Get Site Info
curl -s "https://www.wixapis.com/apps/v1/instance" --header "Authorization: Bearer $WIX_TOKEN" | jq '{instanceId: .instance.instanceId, appName: .instance.appName, siteName: .site.siteDisplayName, ownerEmail: .site.ownerEmail}'List Contacts
Requires CRM feature enabled on the site.
cat > /tmp/request.json << 'EOF'
{
"search": {
"paging": {
"limit": 20,
"offset": 0
}
}
}
EOF
curl -s -X POST "https://www.wixapis.com/crm/v3/contacts/search" --header "Authorization: Bearer $WIX_TOKEN" --header "Content-Type: application/json" -d @/tmp/request.json | jq '.contacts[] | {id, email: .primaryInfo.email, name: .info.name}'Get a Contact
Replace <contact-id> with the contact's ID:
curl -s "https://www.wixapis.com/crm/v3/contacts/<contact-id>" --header "Authorization: Bearer $WIX_TOKEN" | jq '{id, name: .info.name, emails: .info.emails, phones: .info.phones, createdDate}'Create a Contact
cat > /tmp/request.json << 'EOF'
{
"info": {
"name": {
"first": "Jane",
"last": "Doe"
},
"emails": {
"items": [
{
"email": "jane.doe@example.com",
"tag": "MAIN"
}
]
},
"phones": {
"items": [
{
"phone": "+1-555-0100",
"tag": "MOBILE"
}
]
}
}
}
EOF
curl -s -X POST "https://www.wixapis.com/crm/v3/contacts" --header "Authorization: Bearer $WIX_TOKEN" --header "Content-Type: application/json" -d @/tmp/request.json | jq '{id: .contact.id, name: .contact.info.name}'Update a Contact
Replace <contact-id> with the contact's ID:
cat > /tmp/request.json << 'EOF'
{
"info": {
"name": {
"first": "Jane",
"last": "Smith"
}
}
}
EOF
curl -s -X PATCH "https://www.wixapis.com/crm/v3/contacts/<contact-id>" --header "Authorization: Bearer $WIX_TOKEN" --header "Content-Type: application/json" -d @/tmp/request.json | jq '.contact | {id, name: .info.name}'List Blog Posts
Requires Blog feature enabled on the site.
cat > /tmp/request.json << 'EOF'
{
"paging": {
"limit": 10,
"offset": 0
},
"fieldsets": ["URL", "RICH_CONTENT"]
}
EOF
curl -s -X POST "https://www.wixapis.com/blog/v3/posts/list" --header "Authorization: Bearer $WIX_TOKEN" --header "Content-Type: application/json" -d @/tmp/request.json | jq '.posts[] | {id, title, status, publishedDate, url: .url.base}'Get a Blog Post
Replace <post-id> with the post's ID:
curl -s "https://www.wixapis.com/blog/v3/posts/<post-id>" --header "Authorization: Bearer $WIX_TOKEN" | jq '{id, title, status, publishedDate, excerpt}'Create a Draft Blog Post
Requires Blog feature enabled on the site. The memberId field is optional — omit it if you don't have a specific author ID.
cat > /tmp/request.json << 'EOF'
{
"draftPost": {
"title": "My New Blog Post",
"excerpt": "A brief summary of the post."
}
}
EOF
curl -s -X POST "https://www.wixapis.com/blog/v3/draft-posts" --header "Authorization: Bearer $WIX_TOKEN" --header "Content-Type: application/json" -d @/tmp/request.json | jq '{id: .draftPost.id, title: .draftPost.title, status: .draftPost.status}'Query Store Products
Requires Wix Stores feature enabled on the site.
cat > /tmp/request.json << 'EOF'
{
"query": {
"paging": {
"limit": 20,
"offset": 0
}
}
}
EOF
curl -s -X POST "https://www.wixapis.com/stores/v1/products/query" --header "Authorization: Bearer $WIX_TOKEN" --header "Content-Type: application/json" -d @/tmp/request.json | jq '.products[] | {id, name, description, price: .price.formatted.price, inStock}'Get a Product
Replace <product-id> with the product's ID:
curl -s "https://www.wixapis.com/stores/v1/products/<product-id>" --header "Authorization: Bearer $WIX_TOKEN" | jq '{id, name, description, price: .product.price.formatted.price, stock: .product.stock}'Search Orders
Requires Wix Stores feature enabled on the site.
cat > /tmp/request.json << 'EOF'
{
"search": {
"paging": {
"limit": 20,
"offset": 0
}
}
}
EOF
curl -s -X POST "https://www.wixapis.com/ecom/v1/orders/search" --header "Authorization: Bearer $WIX_TOKEN" --header "Content-Type: application/json" -d @/tmp/request.json | jq '.orders[] | {id, number, status, buyerInfo: .buyerInfo.email, total: .priceSummary.total.formattedAmount, createdDate}'Get an Order
Replace <order-id> with the order's ID:
curl -s "https://www.wixapis.com/ecom/v1/orders/<order-id>" --header "Authorization: Bearer $WIX_TOKEN" | jq '{id, number, status, buyer: .buyerInfo.email, total: .priceSummary.total.formattedAmount, lineItems: [.lineItems[] | {name: .productName.original, quantity, price: .price.formattedAmount}]}'Notes
- All API endpoints require a Wix site to have the VM0 app installed
- The access token is tied to the specific site where the app was installed
- CRM, Blog, and Store APIs only work if the site has those features installed/enabled
- Contacts API: use
MAINtag for primary email/phone - The
memberIdfield in blog post creation is optional — omit it if no specific author ID is available