Based on the provided schema, here is the technical documentation for the core entities and types available in the Vvveb CMS GraphQL API. | --- | --- | | 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.

|

2. 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

1. 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.

|

2. 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, and customer_order_id.

Customer Info: Stores first_name, last_name, email, and phone_number.

Shipping/Billing: Comprehensive address fields including address_1, city, post_code, and country_id.

Financials: Tracks payment_method, shipping_method, total, and currency_id.

Associations: Links to products, shipments, subscriptions, and vouchers.


🛠️ System & Configuration

Localization: Supported via language (codes, locales, RTL support) and currency (symbols, decimal places, exchange values).

Geography: country data including ISO codes and status.

Administration: admin type manages backend users, including role_id, auth_tokens, and failed_logins.

Marketing: coupon management (discount types, usage limits, date ranges) and newsletter_list management.

Customization: field and field_group allow 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.