> ## Documentation Index
> Fetch the complete documentation index at: https://docs.atako.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Wix

> Connect Wix to your Atako agents — 12 read and 4 write actions.

Let your agents work on a Wix site: search and create store products, read eCommerce orders, find, create and label CRM contacts, read blog posts and write drafts, list booking services and bookings, and list events.

## Connection

* **Authentication**: API key (Wix API key).
* **Required settings**:
  * **Site ID** — UUID after /dashboard/ in the URL of your site dashboard, e.g. 1b2c3d4e-5f60-4a7b-8c9d-0e1f2a3b4c5d.

<Note>
  As the account owner or a co-owner, open the API Keys Manager (manage.wix.com/account/api-keys) and generate a key limited to this site, with the permissions of the features you use: Read products in v3 catalog, Product write in v3 catalog, Read Orders, Read Contacts, Manage Contacts, Manage Contact Labels, Read Blog, Manage Blog, Read Bookings - Public Data, Read Bookings - Including Participants, Read Events. The key must include at least Manage Contact Labels (the connection checks the key by listing contact labels): without it, the connection is refused. Copy the key. The site ID is the part after /dashboard/ in the URL of the site dashboard.

  See [Wix's documentation](https://manage.wix.com/account/api-keys).
</Note>

## Read actions (12)

| Action | Description |
| - | - |
| `get_blog_post` | Get one published blog post. postId: post GUID (see list\_blog\_posts). Optional: fieldsets (URL, CONTENT\_TEXT, METRICS, SEO, CONTACT\_ID, RICH\_CONTENT) for the text, metrics or SEO data. |
| `get_contact` | Get one contact (name, emails, phones, addresses, company, labels, extended fields). contactId: contact GUID (see query\_contacts). |
| `get_order` | Get one eCommerce order: number, status, payment and fulfillment status, line items, buyer, billing and shipping info, totals, activities. orderId: order GUID (see search\_orders). |
| `get_product` | Get one store product (Catalog V3) with its variants, options, prices and inventory status. productId: product GUID (see search\_products). |
| `list_blog_posts` | List published blog posts (title, excerpt, slug, dates, memberId of the owner, category and tag IDs). Optional: featured (boolean), sort (FEED, PUBLISHED\_DATE\_ASC, PUBLISHED\_DATE\_DESC, VIEW\_COUNT, LIKE\_COUNT, TITLE\_ASC, TITLE\_DESC), limit (1–100, default 50), offset, fieldsets (URL, CONTENT\_TEXT, METRICS, SEO, CONTACT\_ID, RICH\_CONTENT). |
| `list_contact_labels` | List contact labels (key, displayName, labelType: SYSTEM, USER\_DEFINED, WIX\_APP\_DEFINED). Use the key with label\_contact or the info.labelKeys filter. Optional: startsWith (case-sensitive displayName prefix), limit (1–2000, default 1000), offset. |
| `query_booking_services` | Query booking services (up to 100): name, type (APPOINTMENT, CLASS, COURSE), category, schedule, payment options, locations, staff member IDs. Optional: filter (Wix query object on name, type, hidden, category.id, onlineBooking.enabled…, e.g. \{"type": "APPOINTMENT"}, \{"hidden": false}), sort (array of \{fieldName, order ASC\|DESC}), limit (1–100), offset. |
| `query_bookings` | Query bookings with their extended info (up to 100 per page, default 50): status, start and end dates (UTC), booked service and slot, contact details, number of participants. Optional: filter (Wix query object, dates in UTC, e.g. \{"startDate": \{"\$gte": "2026-10-01T00:00:00.000Z"}}, \{"status": "CONFIRMED"}), sort (array of \{fieldName, order ASC\|DESC}), limit (1–100), cursor (pagingMetadata.cursors.next of the previous page), withAllowedActions (boolean: what the customer can still do), withAttendanceInfo (boolean). |
| `query_contacts` | Query site contacts. Optional: search (exact-match text on first name, last name, email or phone, max 100 chars), filter (Wix query object on primaryInfo.email, info.name.first, info.name.last, info.company, info.labelKeys ($hasSome / $hasAll), createdDate, lastActivity.activityDate…, e.g. \{"info.labelKeys": \{"\$hasSome": \["custom.vip"]}}), sort (one \{fieldName, order ASC\|DESC}), limit (1–1000, default 50), offset, fieldsets (BASIC, COMMUNICATION\_DETAILS, EXTENDED, FULL). |
| `query_events` | Query events (title, slug, status, dates and time zone, location, registration type; online-conference links and passwords removed). Optional: filter (Wix query object on title, slug, status (UPCOMING, STARTED, ENDED, CANCELED, DRAFT), dateAndTimeSettings.startDate, dateAndTimeSettings.endDate, createdDate…, e.g. \{"status": \{"\$in": \["UPCOMING", "STARTED"]}}), sort (array of \{fieldName, order ASC\|DESC}, e.g. dateAndTimeSettings.startDate), limit (1–1000), offset, fields (extra data: DETAILS, TEXTS, REGISTRATION, URLS, FORM, DASHBOARD, FEED), includeDrafts (boolean). |
| `search_orders` | Search eCommerce orders, newest first by default, up to 100 per page (PENDING and REJECTED orders only when filtered on status explicitly). Optional: filter (Wix query object on status, paymentStatus, fulfillmentStatus, number, createdDate, buyerInfo.email, buyerInfo.contactId, archived…, e.g. \{"paymentStatus": "PAID"}, \{"createdDate": \{"\$gte": "2026-09-01T00:00:00.000Z"}}), sort (array of \{fieldName, order ASC\|DESC}), limit (1–100), cursor (pagingMetadata.cursors.next of the previous page). |
| `search_products` | Search store products (Catalog V3; a site still on Catalog V1 answers an error), up to 100 per page, without variant data. Optional: expression (free text, max 100 chars), searchFields (fields searched by expression: name, description, variantsInfo.variants.sku, variantsInfo.variants.barcode — default name), filter (Wix query object, e.g. \{"visible": true}, \{"productType": "PHYSICAL"}, \{"actualPriceRange.minValue.amount": \{"\$lte": "20"}}), sort (array of \{fieldName, order ASC\|DESC}, e.g. name, createdDate), limit (1–100), cursor (pagingMetadata.cursors.next of the previous page), fields (extra data: URL, CURRENCY, PLAIN\_DESCRIPTION, THUMBNAIL, MEDIA\_ITEMS\_INFO, DIRECT\_CATEGORIES\_INFO, BREADCRUMBS\_INFO, WEIGHT\_MEASUREMENT\_UNIT\_INFO, VARIANT\_OPTION\_CHOICE\_NAMES). |

## Write actions (4)

| Action | Description |
| - | - |
| `create_blog_draft` | Create an unpublished blog draft (never published by this action). Arguments: title (string, 1–200 chars, required), paragraphs (array of plain-text strings, one per paragraph, required), excerpt (string, optional), hashtags (array of strings, optional), memberId (owner's site member GUID, e.g. the memberId of a post from list\_blog\_posts; optional — Wix documents it as required for third-party apps). |
| `create_contact` | Create a contact. At least one of firstName, lastName, email or phone. Arguments (all strings unless noted): firstName, lastName, email, phone, company, jobTitle, birthdate ("YYYY-MM-DD"), labelKeys (array of label key strings, e.g. \["custom.vip"], see list\_contact\_labels), allowDuplicates (boolean: create even if the email or phone is already used by another contact; default false: Wix answers 409 DUPLICATE\_CONTACT\_EXISTS). |
| `create_product` | Create a simple physical product with a single variant (Catalog V3; no options, no inventory item). Arguments: name (string, 1–80 chars, required), price (decimal string, e.g. "15.00", required), compareAtPrice (decimal string, original price shown struck through, optional), plainDescription (HTML string, e.g. "\<p>Organic cotton\</p>", optional), sku (string, 1–40 chars, optional), visible (boolean, default true). |
| `label_contact` | Add existing labels to a contact. Arguments: contactId (contact GUID, see query\_contacts), labelKeys (array of label key strings, e.g. \["custom.vip"]; each label must already exist, see list\_contact\_labels). |

## Permissions

Every action above must be explicitly granted to an agent before it can be used. See [Permissions](/integrations/permissions) for the grant model and [Security](/integrations/security) for how credentials are protected.

***

*Last reviewed against the provider API: September 2026.*


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.