Based on the provided schema, here is the technical documentation for the core entities and types available in the Vvveb CMS GraphQL API.
This documentation outlines the primary data structures and types available for querying and mutations within the Vvveb CMS environment.
Core Commerce Types
Product (product)
The central entity for the storefront. It contains physical attributes, pricing, and associations with content and taxonomies.
| Field | Type | Description |
|---|---|---|
product_id |
ID |
Unique identifier for the product. |
|
| model | String | Product model identifier.
|
| sku | String | Stock Keeping Unit.
|
| price | Float | The current price of the product.
|
| old_price | Float | The original price (useful for showing discounts).
|
| stock_quantity | Int | Number of items currently in stock.
|
| image | String | Path to the main product image.
|
| weight | Float | Physical weight for shipping calculations.
|
| variants | [ProductVariantType] | Available variations (size, color, etc.).
|
| contents | [ProductContentType] | Localized names and descriptions.
|
Cart (cart)
Represents a user's active shopping session.
| Field | Type | Description |
|---|---|---|
cart_id |
Id |
Unique identifier for the cart. |
|
| products | [CartProductType] | List of items currently in the cart.
|
| totals | [TotalType] | Breakdown of subtotal, tax, and shipping.
|
| total_price | Float | The grand total amount.
|
| total_formatted | String | Currency-formatted total string.
|
| checkout_url | String | Direct link to the checkout page.
|
Content & Blogging
Post (post)
Used for blog articles, news, or generic CMS pages.
| Field | Type | Description |
|---|---|---|
post_id |
ID |
Unique identifier for the post. |
|
| status | String | The post status (e.g., "published", "draft").
|
| comment_count | Int | Total number of approved comments.
|
| created_at | String | Timestamp of post creation.
|
| contents | [PostContentType] | Multi-language content (title, body, slug).
|
| seo | [SeoType] | Metadata for search engine optimization.
|
Media (media)
Represents uploaded assets like images and videos.
| Field | Type | Description |
|---|---|---|
media_id |
ID |
Unique identifier. |
|
| file | String | The file path or URL.
|
| type | String | MIME type or category (image, video, etc.).
|
Orders & Customers
Order (order)
A finalized transaction containing snapshot data of the purchase.
-
Identifiers: Includes
order_id,invoice_no, andcustomer_order_id. -
Customer Info: Stores
first_name,last_name,email, andphone_number. -
Shipping/Billing: Comprehensive address fields including
address_1,city,post_code, andcountry_id. -
Financials: Tracks
payment_method,shipping_method,total, andcurrency_id. -
Associations: Links to
products,shipments,subscriptions, andvouchers.
️ System & Configuration
-
Localization: Supported via
language(codes, locales, RTL support) andcurrency(symbols, decimal places, exchange values). -
Geography:
countrydata including ISO codes and status. -
Administration:
admintype manages backend users, includingrole_id,auth_tokens, andfailed_logins. -
Marketing:
couponmanagement (discount types, usage limits, date ranges) andnewsletter_listmanagement. -
Customization:
fieldandfield_groupallow for extensible data models across posts and products.
Pro Tip: Localized Content
Most primary entities (Product, Post, Category) do not store names directly. Instead, they use a contents array (e.g., ProductContentType) which maps content to a specific language_id. Always query the contents field to retrieve the correct translation for your frontend.