Airsoko Shopfront GraphQL API Reference

Find all the relevant docs for usage in your custom store front!

API Endpoints
# Staging:
https://api.airsoko.com/graphql
# Production:
https://sandbox.airsoko.com/graphql
Headers
# Your foo from bar
Authorization: Bearer <YOUR_TOKEN_HERE>

Important thing 1

Some important stuff we wanted you to know. Supports markdown

Queries

allBrands

Description

Retrieve all brands.

Response

Returns [Brand!]!

Arguments
Name Description
orderBy - [QueryAllBrandsOrderByOrderByClause!] Specify the order in which brands are returned.
keyword - String Filter brands by keyword (name).
top - Boolean Filter brands by top status.
status - ModelStatus Filter brands by status.
featured - Boolean Filter brands by status.

Example

Query
query AllBrands(
  $orderBy: [QueryAllBrandsOrderByOrderByClause!],
  $keyword: String,
  $top: Boolean,
  $status: ModelStatus,
  $featured: Boolean
) {
  allBrands(
    orderBy: $orderBy,
    keyword: $keyword,
    top: $top,
    status: $status,
    featured: $featured
  ) {
    id
    name
    description
    logo {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    top
    handle
    countdown
    featured
    seo {
      title
      description
      image {
        ...AttachmentFragment
      }
      keywords
    }
    productsCount
    images {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    banners {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
  }
}
Variables
{
  "orderBy": [QueryAllBrandsOrderByOrderByClause],
  "keyword": "abc123",
  "top": false,
  "status": "DRAFT",
  "featured": false
}
Response
{
  "data": {
    "allBrands": [
      {
        "id": "4",
        "name": "xyz789",
        "description": "xyz789",
        "logo": Attachment,
        "top": false,
        "handle": "xyz789",
        "countdown": 987,
        "featured": false,
        "seo": Seo,
        "productsCount": 123,
        "images": Attachment,
        "banners": [Attachment]
      }
    ]
  }
}

article

Description

Retrieve a specific article by ID or handle.

Response

Returns an Article

Arguments
Name Description
id - ID The ID of the article to retrieve.
handle - String The handle of the article to retrieve.

Example

Query
query Article(
  $id: ID,
  $handle: String
) {
  article(
    id: $id,
    handle: $handle
  ) {
    id
    handle
    categoryId
    category {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ArticleCategoryFragment
      }
      children {
        ...ArticleCategoryFragment
      }
      childrenCount
      articlesCount
      parentMain {
        ...ArticleCategoryFragment
      }
      status
    }
    type
    title
    tags
    keywords
    excerpt
    content
    featuredImage {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    seo {
      title
      description
      image {
        ...AttachmentFragment
      }
      keywords
    }
    banner {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    featured
    top
    likes
    views
    shares
    externalLink
    productIds
    createdAt
    updatedAt
  }
}
Variables
{
  "id": "4",
  "handle": "xyz789"
}
Response
{
  "data": {
    "article": {
      "id": "4",
      "handle": "abc123",
      "categoryId": "4",
      "category": ArticleCategory,
      "type": "BLOG",
      "title": "abc123",
      "tags": ["abc123"],
      "keywords": ["xyz789"],
      "excerpt": "xyz789",
      "content": "abc123",
      "featuredImage": Attachment,
      "seo": Seo,
      "banner": Attachment,
      "featured": false,
      "top": true,
      "likes": 987,
      "views": 123,
      "shares": 123,
      "externalLink": "abc123",
      "productIds": ["abc123"],
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z"
    }
  }
}

articleCategories

Description

Retrieve a list of article categories.

Response

Returns an ArticleCategoryPaginator

Arguments
Name Description
orderBy - [QueryArticleCategoriesOrderByOrderByClause!] Specify the order by which the results should be sorted.
name - String Filter article categories by name.
status - ModelStatus Filter article categories by status.
parentId - ID Filter article categories by parent ID.
type - ArticleType Filter article categories by type.
featured - Boolean Filter article categories by featured status.
top - Boolean Filter article categories by top status.
keyword - String Filter article categories by keyword .
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 15
page - Int The offset from which items are returned.

Example

Query
query ArticleCategories(
  $orderBy: [QueryArticleCategoriesOrderByOrderByClause!],
  $name: String,
  $status: ModelStatus,
  $parentId: ID,
  $type: ArticleType,
  $featured: Boolean,
  $top: Boolean,
  $keyword: String,
  $first: Int,
  $page: Int
) {
  articleCategories(
    orderBy: $orderBy,
    name: $name,
    status: $status,
    parentId: $parentId,
    type: $type,
    featured: $featured,
    top: $top,
    keyword: $keyword,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ArticleCategoryFragment
      }
      children {
        ...ArticleCategoryFragment
      }
      childrenCount
      articlesCount
      parentMain {
        ...ArticleCategoryFragment
      }
      status
    }
  }
}
Variables
{
  "orderBy": [QueryArticleCategoriesOrderByOrderByClause],
  "name": "xyz789",
  "status": "DRAFT",
  "parentId": 4,
  "type": "BLOG",
  "featured": true,
  "top": false,
  "keyword": "xyz789",
  "first": 15,
  "page": 123
}
Response
{
  "data": {
    "articleCategories": {
      "paginatorInfo": PaginatorInfo,
      "data": [ArticleCategory]
    }
  }
}

articleCategory

Description

Retrieve a specific article category by ID or handle.

Response

Returns an ArticleCategory

Arguments
Name Description
id - ID The ID of the article category to retrieve.
handle - String The handle of the article category to retrieve.

Example

Query
query ArticleCategory(
  $id: ID,
  $handle: String
) {
  articleCategory(
    id: $id,
    handle: $handle
  ) {
    id
    parentId
    level
    orderLevel
    name
    displayName
    banners {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    image {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    icon {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    top
    featured
    handle
    type
    seo {
      title
      description
      image {
        ...AttachmentFragment
      }
      keywords
    }
    parent {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ArticleCategoryFragment
      }
      children {
        ...ArticleCategoryFragment
      }
      childrenCount
      articlesCount
      parentMain {
        ...ArticleCategoryFragment
      }
      status
    }
    children {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ArticleCategoryFragment
      }
      children {
        ...ArticleCategoryFragment
      }
      childrenCount
      articlesCount
      parentMain {
        ...ArticleCategoryFragment
      }
      status
    }
    childrenCount
    articlesCount
    parentMain {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ArticleCategoryFragment
      }
      children {
        ...ArticleCategoryFragment
      }
      childrenCount
      articlesCount
      parentMain {
        ...ArticleCategoryFragment
      }
      status
    }
    status
  }
}
Variables
{"id": 4, "handle": "abc123"}
Response
{
  "data": {
    "articleCategory": {
      "id": "4",
      "parentId": 4,
      "level": 987,
      "orderLevel": "xyz789",
      "name": "xyz789",
      "displayName": "abc123",
      "banners": [Attachment],
      "image": Attachment,
      "icon": Attachment,
      "top": false,
      "featured": false,
      "handle": "xyz789",
      "type": "BLOG",
      "seo": Seo,
      "parent": ArticleCategory,
      "children": [ArticleCategory],
      "childrenCount": 987,
      "articlesCount": 987,
      "parentMain": ArticleCategory,
      "status": "DRAFT"
    }
  }
}

articles

Description

Retrieve a list of articles.

Response

Returns an ArticlePaginator

Arguments
Name Description
orderBy - [QueryArticlesOrderByOrderByClause!] Specify the order by which the results should be sorted.
keyword - String Filter articles by keyword in the title .
type - ArticleType Filter articles by type.
categoryId - ID Filter articles by category ID.
categoryHandle - QueryArticlesCategoryHandleWhereHasConditions Filter articles by category handle using relation conditions.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 15
page - Int The offset from which items are returned.

Example

Query
query Articles(
  $orderBy: [QueryArticlesOrderByOrderByClause!],
  $keyword: String,
  $type: ArticleType,
  $categoryId: ID,
  $categoryHandle: QueryArticlesCategoryHandleWhereHasConditions,
  $first: Int,
  $page: Int
) {
  articles(
    orderBy: $orderBy,
    keyword: $keyword,
    type: $type,
    categoryId: $categoryId,
    categoryHandle: $categoryHandle,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      handle
      categoryId
      category {
        ...ArticleCategoryFragment
      }
      type
      title
      tags
      keywords
      excerpt
      content
      featuredImage {
        ...AttachmentFragment
      }
      seo {
        ...SeoFragment
      }
      banner {
        ...AttachmentFragment
      }
      featured
      top
      likes
      views
      shares
      externalLink
      productIds
      createdAt
      updatedAt
    }
  }
}
Variables
{
  "orderBy": [QueryArticlesOrderByOrderByClause],
  "keyword": "xyz789",
  "type": "BLOG",
  "categoryId": "4",
  "categoryHandle": QueryArticlesCategoryHandleWhereHasConditions,
  "first": 15,
  "page": 987
}
Response
{
  "data": {
    "articles": {
      "paginatorInfo": PaginatorInfo,
      "data": [Article]
    }
  }
}

brand

Description

Retrieve a specific brand by ID or handle.

Response

Returns a Brand

Arguments
Name Description
id - ID ID of the brand to retrieve.
handle - String Handle of the brand to retrieve.

Example

Query
query Brand(
  $id: ID,
  $handle: String
) {
  brand(
    id: $id,
    handle: $handle
  ) {
    id
    name
    description
    logo {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    top
    handle
    countdown
    featured
    seo {
      title
      description
      image {
        ...AttachmentFragment
      }
      keywords
    }
    productsCount
    images {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    banners {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
  }
}
Variables
{"id": 4, "handle": "xyz789"}
Response
{
  "data": {
    "brand": {
      "id": 4,
      "name": "abc123",
      "description": "abc123",
      "logo": Attachment,
      "top": true,
      "handle": "abc123",
      "countdown": 123,
      "featured": true,
      "seo": Seo,
      "productsCount": 987,
      "images": Attachment,
      "banners": [Attachment]
    }
  }
}

brands

Description

Retrieve a paginated list of brands.

Response

Returns a BrandPaginator

Arguments
Name Description
orderBy - [QueryBrandsOrderByOrderByClause!] Specify the order in which brands are returned.
keyword - String Filter brands by keyword (name).
top - Boolean Filter brands by top status.
status - ModelStatus Filter brands by status.
featured - Boolean Filter brands by status.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 15
page - Int The offset from which items are returned.

Example

Query
query Brands(
  $orderBy: [QueryBrandsOrderByOrderByClause!],
  $keyword: String,
  $top: Boolean,
  $status: ModelStatus,
  $featured: Boolean,
  $first: Int,
  $page: Int
) {
  brands(
    orderBy: $orderBy,
    keyword: $keyword,
    top: $top,
    status: $status,
    featured: $featured,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      name
      description
      logo {
        ...AttachmentFragment
      }
      top
      handle
      countdown
      featured
      seo {
        ...SeoFragment
      }
      productsCount
      images {
        ...AttachmentFragment
      }
      banners {
        ...AttachmentFragment
      }
    }
  }
}
Variables
{
  "orderBy": [QueryBrandsOrderByOrderByClause],
  "keyword": "abc123",
  "top": false,
  "status": "DRAFT",
  "featured": false,
  "first": 15,
  "page": 987
}
Response
{
  "data": {
    "brands": {
      "paginatorInfo": PaginatorInfo,
      "data": [Brand]
    }
  }
}

checkoutTransaction

Description

Retrieve checkout transaction information based on the checkout request ID.

Response

Returns a CheckoutTransaction

Arguments
Name Description
checkoutRequestId - ID! The ID of the checkout request.

Example

Query
query CheckoutTransaction($checkoutRequestId: ID!) {
  checkoutTransaction(checkoutRequestId: $checkoutRequestId) {
    orderId
  }
}
Variables
{"checkoutRequestId": "4"}
Response
{"data": {"checkoutTransaction": {"orderId": 4}}}

collection

Description

Fetches a specific collection by ID or handle.

Response

Returns a Collection

Arguments
Name Description
id - ID Filters collections based on the ID.
handle - String Filters collections based on the handle.

Example

Query
query Collection(
  $id: ID,
  $handle: String
) {
  collection(
    id: $id,
    handle: $handle
  ) {
    id
    title
    displayTitle
    handle
    sortOrder
    templateSuffix
    metaDescription
    metaTitle
    metaFields
    collectionType
    image {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    icon {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    featured
    top
    level
    products {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    productsCount
  }
}
Variables
{"id": 4, "handle": "xyz789"}
Response
{
  "data": {
    "collection": {
      "id": 4,
      "title": "abc123",
      "displayTitle": "abc123",
      "handle": "xyz789",
      "sortOrder": "ALPHA_ASC",
      "templateSuffix": "xyz789",
      "metaDescription": "xyz789",
      "metaTitle": "abc123",
      "metaFields": "abc123",
      "collectionType": "abc123",
      "image": Attachment,
      "icon": Attachment,
      "featured": true,
      "top": true,
      "level": 987,
      "products": [Product],
      "productsCount": 987
    }
  }
}

collections

Description

Fetches collections based on provided parameters.

Response

Returns a CollectionPaginator

Arguments
Name Description
orderBy - [QueryCollectionsOrderByOrderByClause!] Specifies the order in which the collections should be sorted.
title - String Filters collections based on a partial match of their title.
featured - Boolean Filters collections based on whether they are featured or not.
top - Boolean Filters collections based on whether they are top collections or not.
shopId - ID Filters collections based on the ID of the shop they belong to.
keyword - String Filters collections based on a keyword search.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 15
page - Int The offset from which items are returned.

Example

Query
query Collections(
  $orderBy: [QueryCollectionsOrderByOrderByClause!],
  $title: String,
  $featured: Boolean,
  $top: Boolean,
  $shopId: ID,
  $keyword: String,
  $first: Int,
  $page: Int
) {
  collections(
    orderBy: $orderBy,
    title: $title,
    featured: $featured,
    top: $top,
    shopId: $shopId,
    keyword: $keyword,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      title
      displayTitle
      handle
      sortOrder
      templateSuffix
      metaDescription
      metaTitle
      metaFields
      collectionType
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      featured
      top
      level
      products {
        ...ProductFragment
      }
      productsCount
    }
  }
}
Variables
{
  "orderBy": [QueryCollectionsOrderByOrderByClause],
  "title": "xyz789",
  "featured": true,
  "top": true,
  "shopId": 4,
  "keyword": "xyz789",
  "first": 15,
  "page": 987
}
Response
{
  "data": {
    "collections": {
      "paginatorInfo": PaginatorInfo,
      "data": [Collection]
    }
  }
}

coupon

Description

Fetches a specific coupon by ID or code.

Response

Returns a Coupon

Arguments
Name Description
id - ID
code - String

Example

Query
query Coupon(
  $id: ID,
  $code: String
) {
  coupon(
    id: $id,
    code: $code
  ) {
    id
    status
    type
    code
    discount
    discountType
    startDate
    endDate
    description
    banners {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    image {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
  }
}
Variables
{"id": 4, "code": "xyz789"}
Response
{
  "data": {
    "coupon": {
      "id": 4,
      "status": "ACTIVE",
      "type": "FIXED_COUPON",
      "code": "abc123",
      "discount": 987.65,
      "discountType": "PERCENT",
      "startDate": 987,
      "endDate": 123,
      "description": "abc123",
      "banners": [Attachment],
      "image": Attachment
    }
  }
}

coupons

Description

Fetches coupons based on provided parameters.

Response

Returns a CouponPaginator

Arguments
Name Description
orderBy - [QueryCouponsOrderByOrderByClause!]
keyword - String
status - ModelStatus
shopId - Int
type - String
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 15
page - Int The offset from which items are returned.

Example

Query
query Coupons(
  $orderBy: [QueryCouponsOrderByOrderByClause!],
  $keyword: String,
  $status: ModelStatus,
  $shopId: Int,
  $type: String,
  $first: Int,
  $page: Int
) {
  coupons(
    orderBy: $orderBy,
    keyword: $keyword,
    status: $status,
    shopId: $shopId,
    type: $type,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      status
      type
      code
      discount
      discountType
      startDate
      endDate
      description
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
    }
  }
}
Variables
{
  "orderBy": [QueryCouponsOrderByOrderByClause],
  "keyword": "abc123",
  "status": "DRAFT",
  "shopId": 123,
  "type": "abc123",
  "first": 15,
  "page": 123
}
Response
{
  "data": {
    "coupons": {
      "paginatorInfo": PaginatorInfo,
      "data": [Coupon]
    }
  }
}

customerAddress

Description

Retrieve a specific customer address by ID.

Response

Returns a CustomerAddress

Arguments
Name Description
id - ID! The ID of the customer address to retrieve.

Example

Query
query CustomerAddress($id: ID!) {
  customerAddress(id: $id) {
    address1
    address2
    city
    cityCode
    company
    country
    countryCode
    firstName
    formatted
    formattedArea
    id
    isDefault
    lastName
    latitude
    longitude
    name
    phone
    province
    provinceCode
    state
    stateCode
    type
    zip
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "customerAddress": {
      "address1": "abc123",
      "address2": "xyz789",
      "city": "abc123",
      "cityCode": 4,
      "company": "xyz789",
      "country": "abc123",
      "countryCode": "AF",
      "firstName": "xyz789",
      "formatted": "abc123",
      "formattedArea": "abc123",
      "id": "4",
      "isDefault": false,
      "lastName": "xyz789",
      "latitude": 123.45,
      "longitude": 987.65,
      "name": "abc123",
      "phone": "abc123",
      "province": "abc123",
      "provinceCode": "xyz789",
      "state": "abc123",
      "stateCode": 4,
      "type": "BILLING",
      "zip": "abc123"
    }
  }
}

customerAddresses

Description

Retrieve a list of customer addresses.

Response

Returns a CustomerAddressPaginator

Arguments
Name Description
orderBy - [QueryCustomerAddressesOrderByOrderByClause!] Specify the order by which the results should be sorted.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 10
page - Int The offset from which items are returned.

Example

Query
query CustomerAddresses(
  $orderBy: [QueryCustomerAddressesOrderByOrderByClause!],
  $first: Int,
  $page: Int
) {
  customerAddresses(
    orderBy: $orderBy,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      address1
      address2
      city
      cityCode
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      stateCode
      type
      zip
    }
  }
}
Variables
{
  "orderBy": [QueryCustomerAddressesOrderByOrderByClause],
  "first": 10,
  "page": 123
}
Response
{
  "data": {
    "customerAddresses": {
      "paginatorInfo": PaginatorInfo,
      "data": [CustomerAddress]
    }
  }
}

customerCart

Description

Retrieve the customer's cart.

Response

Returns a Cart!

Example

Query
query CustomerCart {
  customerCart {
    id
    buyerIdentity {
      countryCode
      customer {
        ...CustomerFragment
      }
      deliveryAddress {
        ...DeliveryAddressFragment
      }
      deliveryLocation {
        ...DeliveryLocationFragment
      }
      email
      phone
      deliveryAddressPreferences {
        ...DeliveryAddressPaginatorFragment
      }
    }
    cost {
      checkoutChargeAmount {
        ...MoneyV2Fragment
      }
      subtotalAmount {
        ...MoneyV2Fragment
      }
      subtotalAmountEstimated
      totalAmount {
        ...MoneyV2Fragment
      }
      totalAmountEstimated
      totalDutyAmount {
        ...MoneyV2Fragment
      }
      totalDutyAmountEstimated
      totalTaxAmount {
        ...MoneyV2Fragment
      }
      totalTaxAmountEstimated
      totalDiscountAmount {
        ...MoneyV2Fragment
      }
    }
    token
    isActive
    currencyCode
    userId
    tempUserId
    country
    addressId
    shippingType
    deliveryType
    discount
    couponCode
    couponApplied
    pickupPoint
    referralCode
    product {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    cartItems {
      id
      cartId
      productId
      variantId
      quantity
      discount {
        ...MoneyV2Fragment
      }
      tax {
        ...MoneyV2Fragment
      }
      shopId
      position
      onSale
      subtotalPrice {
        ...MoneyV2Fragment
      }
      totalPrice {
        ...MoneyV2Fragment
      }
      compareAtPrice {
        ...MoneyV2Fragment
      }
      price {
        ...MoneyV2Fragment
      }
      updatedAt
      createdAt
      variant {
        ...ProductVariantFragment
      }
      merchandise {
        ...ProductVariantFragment
      }
      product {
        ...ProductFragment
      }
      cost {
        ...CartItemCostFragment
      }
      availableForSale
      inStock
      attributes {
        ...AttributeFragment
      }
      attribute {
        ...AttributeFragment
      }
    }
    itemsCount
    operation {
      message
      success
      result
    }
    requiresShipping
  }
}
Response
{
  "data": {
    "customerCart": {
      "id": "4",
      "buyerIdentity": CartBuyerIdentity,
      "cost": CartCost,
      "token": "abc123",
      "isActive": false,
      "currencyCode": "AED",
      "userId": 4,
      "tempUserId": "4",
      "country": "abc123",
      "addressId": "4",
      "shippingType": "FIXED",
      "deliveryType": "PICKUP",
      "discount": 123.45,
      "couponCode": "xyz789",
      "couponApplied": true,
      "pickupPoint": "xyz789",
      "referralCode": "xyz789",
      "product": Product,
      "cartItems": [CartItem],
      "itemsCount": 123,
      "operation": actionResponse,
      "requiresShipping": true
    }
  }
}

customerDeliveryLocation

Description

Retrieve the delivery location of the customer.

Response

Returns a DeliveryLocation

Example

Query
query CustomerDeliveryLocation {
  customerDeliveryLocation {
    id
    uuid
    countryId
    countyId
    townId
    stationId
    deliveryType
    country {
      id
      name
      code
      regionId
      region {
        ...DeliveryRegionFragment
      }
      counties {
        ...DeliveryCountyFragment
      }
      cities {
        ...DeliveryCityFragment
      }
      options {
        ...CountryDeliveryOptionFragment
      }
    }
    county {
      id
      name
      code
      capital
      city
      lng
      lat
      zipInfo {
        ...DeliveryCountyZipRangeInfoFragment
      }
      countryId
      country {
        ...DeliveryCountryFragment
      }
      deliveryTowns {
        ...DeliveryTownPaginatorFragment
      }
      zipCodes {
        ...DeliveryCountyZipCodePaginatorFragment
      }
    }
    town {
      id
      name
      code
      countyId
      isPrimary
      county {
        ...DeliveryCountyFragment
      }
      stations {
        ...DeliveryStationFragment
      }
      deliveryOptions {
        ...DeliveryOptionFragment
      }
    }
    station {
      id
      name
      code
      deliveryTownId
      isPrimary
      town {
        ...DeliveryTownFragment
      }
      address {
        ...DeliveryStationAddressFragment
      }
      paymentMethods {
        ...DeliveryStationPaymentMethodFragment
      }
      availableTime {
        ...DeliveryStationAvailableTimeFragment
      }
      options {
        ...DeliveryStationOptionFragment
      }
    }
  }
}
Response
{
  "data": {
    "customerDeliveryLocation": {
      "id": 4,
      "uuid": "xyz789",
      "countryId": 4,
      "countyId": "4",
      "townId": 4,
      "stationId": 4,
      "deliveryType": "PICKUP",
      "country": DeliveryCountry,
      "county": DeliveryCounty,
      "town": DeliveryTown,
      "station": DeliveryStation
    }
  }
}

customerOrder

Description

Retrieves a specific customer order by ID.

Response

Returns an Order

Arguments
Name Description
id - ID! The ID of the customer order to retrieve.

Example

Query
query CustomerOrder($id: ID!) {
  customerOrder(id: $id) {
    billingAddress {
      name
      email
      streetAddress
      country
      city
      zip
      phone
    }
    childOrders {
      billingAddress {
        ...BillingAddressFragment
      }
      childOrders {
        ...OrderFragment
      }
      childOrderCount
      itemsCount
      orderCode
      coupon {
        ...CouponFragment
      }
      couponDiscountAmount {
        ...MoneyV2Fragment
      }
      createdAt
      customer {
        ...CustomerFragment
      }
      orderDate
      deliveryFee {
        ...MoneyV2Fragment
      }
      deliveryTime
      deliveryViewed
      guestId
      id
      isManualPayment
      orderCombinedId
      orderDetails {
        ...OrderDetailFragment
      }
      parentOrderDetails {
        ...OrderDetailFragment
      }
      paymentDetails
      paymentId
      paymentStatus
      paymentStatusViewed
      paymentMethod {
        ...PaymentMethodFragment
      }
      receipt
      request
      shippingAddress {
        ...CustomerAddressFragment
      }
      mailingAddress {
        ...MailingAddressFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      status {
        ...OrderStatusFragment
      }
      orderStage
      trackingNumber
      updatedAt
      userId
      viewed
      totals {
        ...OrderTotalsFragment
      }
      orderTimeline {
        ...OrderTimelineFragment
      }
    }
    childOrderCount
    itemsCount
    orderCode
    coupon {
      id
      status
      type
      code
      discount
      discountType
      startDate
      endDate
      description
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
    }
    couponDiscountAmount {
      currencyCode
      amount
    }
    createdAt
    customer {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    orderDate
    deliveryFee {
      currencyCode
      amount
    }
    deliveryTime
    deliveryViewed
    guestId
    id
    isManualPayment
    orderCombinedId
    orderDetails {
      id
      orderId
      userId
      shopId
      productId
      productVariant {
        ...ProductVariantFragment
      }
      price {
        ...MoneyV2Fragment
      }
      tax
      shippingCost {
        ...MoneyV2Fragment
      }
      quantity
      paymentStatus
      shippingType
      pickupPointId
      productReferralCode
    }
    parentOrderDetails {
      id
      orderId
      userId
      shopId
      productId
      productVariant {
        ...ProductVariantFragment
      }
      price {
        ...MoneyV2Fragment
      }
      tax
      shippingCost {
        ...MoneyV2Fragment
      }
      quantity
      paymentStatus
      shippingType
      pickupPointId
      productReferralCode
    }
    paymentDetails
    paymentId
    paymentStatus
    paymentStatusViewed
    paymentMethod {
      id
      name
      description
    }
    receipt
    request
    shippingAddress {
      address1
      address2
      city
      cityCode
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      stateCode
      type
      zip
    }
    mailingAddress {
      address1
      address2
      city
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      type
      zip
    }
    shop {
      id
      name
      handle
      top
      metrics {
        ...ShopMetricsFragment
      }
      logo {
        ...AttachmentFragment
      }
      coverImage {
        ...AttachmentFragment
      }
      sliders {
        ...AttachmentFragment
      }
      description
      seo {
        ...SeoFragment
      }
      status
      createdAt
      social {
        ...SocialAccountFragment
      }
      brand {
        ...BrandingFragment
      }
      products {
        ...ProductPaginatorFragment
      }
    }
    shopId
    status {
      id
      name
      color
      serial
    }
    orderStage
    trackingNumber
    updatedAt
    userId
    viewed
    totals {
      totalPaid {
        ...MoneyV2Fragment
      }
      shippingCost {
        ...MoneyV2Fragment
      }
      subtotal {
        ...MoneyV2Fragment
      }
      totalTax {
        ...MoneyV2Fragment
      }
      totalDiscount {
        ...MoneyV2Fragment
      }
      totalDuty {
        ...MoneyV2Fragment
      }
      netTotal {
        ...MoneyV2Fragment
      }
      grandTotal {
        ...MoneyV2Fragment
      }
      totalRefunded {
        ...MoneyV2Fragment
      }
      discount {
        ...MoneyV2Fragment
      }
    }
    orderTimeline {
      id
      name
      color
      serial
      stagePassed
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "customerOrder": {
      "billingAddress": BillingAddress,
      "childOrders": [Order],
      "childOrderCount": 987,
      "itemsCount": 987,
      "orderCode": "xyz789",
      "coupon": Coupon,
      "couponDiscountAmount": MoneyV2,
      "createdAt": "2007-12-03T10:15:30Z",
      "customer": Customer,
      "orderDate": 123,
      "deliveryFee": MoneyV2,
      "deliveryTime": "xyz789",
      "deliveryViewed": false,
      "guestId": "4",
      "id": 4,
      "isManualPayment": true,
      "orderCombinedId": 4,
      "orderDetails": [OrderDetail],
      "parentOrderDetails": [OrderDetail],
      "paymentDetails": "abc123",
      "paymentId": "xyz789",
      "paymentStatus": "UNPAID",
      "paymentStatusViewed": false,
      "paymentMethod": PaymentMethod,
      "receipt": "xyz789",
      "request": "abc123",
      "shippingAddress": CustomerAddress,
      "mailingAddress": MailingAddress,
      "shop": Shop,
      "shopId": 4,
      "status": OrderStatus,
      "orderStage": "PENDING",
      "trackingNumber": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "userId": "4",
      "viewed": true,
      "totals": OrderTotals,
      "orderTimeline": [OrderTimeline]
    }
  }
}

customerOrders

Description

Retrieves a list of customer orders.

Response

Returns an OrderPaginator

Arguments
Name Description
paymentStatus - PaymentStatus Filters orders based on payment status.
orderStage - OrderStatusType Filters orders based on order stage/status.
orderBy - [QueryCustomerOrdersOrderByOrderByClause!] Orders the results by creation or update time.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 10
page - Int The offset from which items are returned.

Example

Query
query CustomerOrders(
  $paymentStatus: PaymentStatus,
  $orderStage: OrderStatusType,
  $orderBy: [QueryCustomerOrdersOrderByOrderByClause!],
  $first: Int,
  $page: Int
) {
  customerOrders(
    paymentStatus: $paymentStatus,
    orderStage: $orderStage,
    orderBy: $orderBy,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      billingAddress {
        ...BillingAddressFragment
      }
      childOrders {
        ...OrderFragment
      }
      childOrderCount
      itemsCount
      orderCode
      coupon {
        ...CouponFragment
      }
      couponDiscountAmount {
        ...MoneyV2Fragment
      }
      createdAt
      customer {
        ...CustomerFragment
      }
      orderDate
      deliveryFee {
        ...MoneyV2Fragment
      }
      deliveryTime
      deliveryViewed
      guestId
      id
      isManualPayment
      orderCombinedId
      orderDetails {
        ...OrderDetailFragment
      }
      parentOrderDetails {
        ...OrderDetailFragment
      }
      paymentDetails
      paymentId
      paymentStatus
      paymentStatusViewed
      paymentMethod {
        ...PaymentMethodFragment
      }
      receipt
      request
      shippingAddress {
        ...CustomerAddressFragment
      }
      mailingAddress {
        ...MailingAddressFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      status {
        ...OrderStatusFragment
      }
      orderStage
      trackingNumber
      updatedAt
      userId
      viewed
      totals {
        ...OrderTotalsFragment
      }
      orderTimeline {
        ...OrderTimelineFragment
      }
    }
  }
}
Variables
{
  "paymentStatus": "UNPAID",
  "orderStage": "PENDING",
  "orderBy": [QueryCustomerOrdersOrderByOrderByClause],
  "first": 10,
  "page": 987
}
Response
{
  "data": {
    "customerOrders": {
      "paginatorInfo": PaginatorInfo,
      "data": [Order]
    }
  }
}

customerTicket

Description

Retrieve a customer ticket by ID.

Response

Returns a Ticket

Arguments
Name Description
id - ID! ID of the ticket to retrieve.

Example

Query
query CustomerTicket($id: ID!) {
  customerTicket(id: $id) {
    attachment {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    clientViewed
    code
    createdAt
    details
    feedbackRating
    feedbackType
    feedbackValue
    id
    notificationAccept
    priority
    replies {
      id
      isClient
      ticketId
      reply
      attachment {
        ...AttachmentFragment
      }
      createdAt
      updatedAt
      responder {
        ...CustomerFragment
      }
      sender {
        ...CustomerFragment
      }
    }
    repliesCount
    sender {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    spam
    status
    subject
    updatedAt
    viewed
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "customerTicket": {
      "attachment": Attachment,
      "clientViewed": false,
      "code": 4,
      "createdAt": "2007-12-03T10:15:30Z",
      "details": "abc123",
      "feedbackRating": 987,
      "feedbackType": "abc123",
      "feedbackValue": "xyz789",
      "id": 4,
      "notificationAccept": false,
      "priority": "LOW",
      "replies": [TicketReply],
      "repliesCount": 123,
      "sender": Customer,
      "spam": false,
      "status": "CLOSED",
      "subject": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "viewed": false
    }
  }
}

customerTickets

Description

Retrieve customer tickets based on specified criteria.

Response

Returns a TicketPaginator

Arguments
Name Description
orderBy - [QueryCustomerTicketsOrderByOrderByClause!] Columns to order the tickets by.
keyword - String Keyword to search for in ticket subjects.
status - TicketStatus Status of the tickets to filter by.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 10
page - Int The offset from which items are returned.

Example

Query
query CustomerTickets(
  $orderBy: [QueryCustomerTicketsOrderByOrderByClause!],
  $keyword: String,
  $status: TicketStatus,
  $first: Int,
  $page: Int
) {
  customerTickets(
    orderBy: $orderBy,
    keyword: $keyword,
    status: $status,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      attachment {
        ...AttachmentFragment
      }
      clientViewed
      code
      createdAt
      details
      feedbackRating
      feedbackType
      feedbackValue
      id
      notificationAccept
      priority
      replies {
        ...TicketReplyFragment
      }
      repliesCount
      sender {
        ...CustomerFragment
      }
      spam
      status
      subject
      updatedAt
      viewed
    }
  }
}
Variables
{
  "orderBy": [QueryCustomerTicketsOrderByOrderByClause],
  "keyword": "abc123",
  "status": "CLOSED",
  "first": 10,
  "page": 123
}
Response
{
  "data": {
    "customerTickets": {
      "paginatorInfo": PaginatorInfo,
      "data": [Ticket]
    }
  }
}

customerWishlist

Description

Retrieves a specific customer wishlist by its slug or token.

Response

Returns a Wishlist

Arguments
Name Description
wishlistSlug - String
wishlistToken - ID

Example

Query
query CustomerWishlist(
  $wishlistSlug: String,
  $wishlistToken: ID
) {
  customerWishlist(
    wishlistSlug: $wishlistSlug,
    wishlistToken: $wishlistToken
  ) {
    id
    user {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    sessionId
    userId
    wishlistSlug
    wishlistName
    wishlistToken
    wishlistPrivacy
    isDefault
    expiration
    createdAt
    updatedAt
    itemsCount
    items {
      id
      productId
      quantity
      userId
      wishlistId
      position
      originalPrice
      originalCurrency
      onSale
      createdAt
      updatedAt
      product {
        ...ProductFragment
      }
    }
  }
}
Variables
{
  "wishlistSlug": "abc123",
  "wishlistToken": "4"
}
Response
{
  "data": {
    "customerWishlist": {
      "id": "4",
      "user": Customer,
      "sessionId": "xyz789",
      "userId": "4",
      "wishlistSlug": "xyz789",
      "wishlistName": "xyz789",
      "wishlistToken": "xyz789",
      "wishlistPrivacy": false,
      "isDefault": false,
      "expiration": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "itemsCount": 987,
      "items": [WishlistItem]
    }
  }
}

customerWishlists

Description

Retrieves a list of customer wishlists.

Response

Returns a WishlistPaginator

Arguments
Name Description
orderBy - [QueryCustomerWishlistsOrderByOrderByClause!]
name - String
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 15
page - Int The offset from which items are returned.

Example

Query
query CustomerWishlists(
  $orderBy: [QueryCustomerWishlistsOrderByOrderByClause!],
  $name: String,
  $first: Int,
  $page: Int
) {
  customerWishlists(
    orderBy: $orderBy,
    name: $name,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      user {
        ...CustomerFragment
      }
      sessionId
      userId
      wishlistSlug
      wishlistName
      wishlistToken
      wishlistPrivacy
      isDefault
      expiration
      createdAt
      updatedAt
      itemsCount
      items {
        ...WishlistItemFragment
      }
    }
  }
}
Variables
{
  "orderBy": [QueryCustomerWishlistsOrderByOrderByClause],
  "name": "xyz789",
  "first": 15,
  "page": 123
}
Response
{
  "data": {
    "customerWishlists": {
      "paginatorInfo": PaginatorInfo,
      "data": [Wishlist]
    }
  }
}

deliveryCity

Description

Retrieve a delivery city by its ID.

Response

Returns a DeliveryCity

Arguments
Name Description
id - ID

Example

Query
query DeliveryCity($id: ID) {
  deliveryCity(id: $id) {
    id
    name
    code
    countryId
    country {
      id
      name
      code
      regionId
      region {
        ...DeliveryRegionFragment
      }
      counties {
        ...DeliveryCountyFragment
      }
      cities {
        ...DeliveryCityFragment
      }
      options {
        ...CountryDeliveryOptionFragment
      }
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "deliveryCity": {
      "id": 4,
      "name": "xyz789",
      "code": "xyz789",
      "countryId": 4,
      "country": DeliveryCountry
    }
  }
}

deliveryCountries

Description

Retrieve a paginated list of delivery countries.

Response

Returns a DeliveryCountryPaginator

Arguments
Name Description
orderBy - [QueryDeliveryCountriesOrderByOrderByClause!] Specify the ordering of delivery countries.
first - Int Limits number of fetched items. Maximum allowed value: 300. Default = 300
page - Int The offset from which items are returned.

Example

Query
query DeliveryCountries(
  $orderBy: [QueryDeliveryCountriesOrderByOrderByClause!],
  $first: Int,
  $page: Int
) {
  deliveryCountries(
    orderBy: $orderBy,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      name
      code
      regionId
      region {
        ...DeliveryRegionFragment
      }
      counties {
        ...DeliveryCountyFragment
      }
      cities {
        ...DeliveryCityFragment
      }
      options {
        ...CountryDeliveryOptionFragment
      }
    }
  }
}
Variables
{
  "orderBy": [QueryDeliveryCountriesOrderByOrderByClause],
  "first": 300,
  "page": 123
}
Response
{
  "data": {
    "deliveryCountries": {
      "paginatorInfo": PaginatorInfo,
      "data": [DeliveryCountry]
    }
  }
}

deliveryCountry

Description

Retrieve a delivery country by its ID or country code.

Response

Returns a DeliveryCountry!

Arguments
Name Description
id - ID
code - CountryCode

Example

Query
query DeliveryCountry(
  $id: ID,
  $code: CountryCode
) {
  deliveryCountry(
    id: $id,
    code: $code
  ) {
    id
    name
    code
    regionId
    region {
      id
      name
      code
      continentId
      continent {
        ...DeliveryContinentFragment
      }
    }
    counties {
      id
      name
      code
      capital
      city
      lng
      lat
      zipInfo {
        ...DeliveryCountyZipRangeInfoFragment
      }
      countryId
      country {
        ...DeliveryCountryFragment
      }
      deliveryTowns {
        ...DeliveryTownPaginatorFragment
      }
      zipCodes {
        ...DeliveryCountyZipCodePaginatorFragment
      }
    }
    cities {
      id
      name
      code
      countryId
      country {
        ...DeliveryCountryFragment
      }
    }
    options {
      id
      townId
      type
      isPrimary
      byAppointmentOnly
      minimumDeliveryTimeInDays
      maximumDeliveryTimeInDays
      chargeAmount {
        ...MoneyV2Fragment
      }
      estimatedTransportCost {
        ...MoneyV2Fragment
      }
    }
  }
}
Variables
{"id": "4", "code": "AF"}
Response
{
  "data": {
    "deliveryCountry": {
      "id": "4",
      "name": "abc123",
      "code": "AF",
      "regionId": 4,
      "region": DeliveryRegion,
      "counties": [DeliveryCounty],
      "cities": [DeliveryCity],
      "options": [CountryDeliveryOption]
    }
  }
}

deliveryCounty

Description

Retrieve a delivery county by its ID.

Response

Returns a DeliveryCounty!

Arguments
Name Description
id - ID

Example

Query
query DeliveryCounty($id: ID) {
  deliveryCounty(id: $id) {
    id
    name
    code
    capital
    city
    lng
    lat
    zipInfo {
      zipCode
      zipRangeStart
      zipRangeEnd
      zipQuantity
    }
    countryId
    country {
      id
      name
      code
      regionId
      region {
        ...DeliveryRegionFragment
      }
      counties {
        ...DeliveryCountyFragment
      }
      cities {
        ...DeliveryCityFragment
      }
      options {
        ...CountryDeliveryOptionFragment
      }
    }
    deliveryTowns {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...DeliveryTownFragment
      }
    }
    zipCodes {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...DeliveryCountyZipCodeFragment
      }
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "deliveryCounty": {
      "id": 4,
      "name": "abc123",
      "code": "xyz789",
      "capital": "xyz789",
      "city": "abc123",
      "lng": "abc123",
      "lat": "xyz789",
      "zipInfo": DeliveryCountyZipRangeInfo,
      "countryId": 4,
      "country": DeliveryCountry,
      "deliveryTowns": DeliveryTownPaginator,
      "zipCodes": DeliveryCountyZipCodePaginator
    }
  }
}

deliveryRegion

Description

Retrieve a delivery region by its ID.

Response

Returns a DeliveryRegion!

Arguments
Name Description
id - ID

Example

Query
query DeliveryRegion($id: ID) {
  deliveryRegion(id: $id) {
    id
    name
    code
    continentId
    continent {
      id
      name
      code
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "deliveryRegion": {
      "id": 4,
      "name": "xyz789",
      "code": "abc123",
      "continentId": "4",
      "continent": DeliveryContinent
    }
  }
}

deliveryStation

Description

Retrieve a delivery station by its ID.

Response

Returns a DeliveryStation!

Arguments
Name Description
id - ID

Example

Query
query DeliveryStation($id: ID) {
  deliveryStation(id: $id) {
    id
    name
    code
    deliveryTownId
    isPrimary
    town {
      id
      name
      code
      countyId
      isPrimary
      county {
        ...DeliveryCountyFragment
      }
      stations {
        ...DeliveryStationFragment
      }
      deliveryOptions {
        ...DeliveryOptionFragment
      }
    }
    address {
      id
      address
      stationId
      agentName
      zip
      phone
      company
      city
      state
      verified
      latitude
      longitude
    }
    paymentMethods {
      id
      stationId
      billingAccountId
      paymentMethodId
      details
      instructions
      isActive
      isVerified
      longitude
    }
    availableTime {
      id
      stationId
      day
      hours
      alwaysOpen
      byAppointmentOnly
    }
    options {
      id
      stationId
      type
      instantDelivery
      isAvailable
      isPrimary
      byAppointmentOnly
      minDeliveryTimeInDays
      maxDeliveryTimeInDays
      chargeAmount {
        ...MoneyV2Fragment
      }
      estimatedTransportCost {
        ...MoneyV2Fragment
      }
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "deliveryStation": {
      "id": "4",
      "name": "abc123",
      "code": "xyz789",
      "deliveryTownId": 4,
      "isPrimary": false,
      "town": DeliveryTown,
      "address": DeliveryStationAddress,
      "paymentMethods": [DeliveryStationPaymentMethod],
      "availableTime": [DeliveryStationAvailableTime],
      "options": [DeliveryStationOption]
    }
  }
}

deliveryTown

Description

Retrieve a delivery town by its ID.

Response

Returns a DeliveryTown!

Arguments
Name Description
id - ID

Example

Query
query DeliveryTown($id: ID) {
  deliveryTown(id: $id) {
    id
    name
    code
    countyId
    isPrimary
    county {
      id
      name
      code
      capital
      city
      lng
      lat
      zipInfo {
        ...DeliveryCountyZipRangeInfoFragment
      }
      countryId
      country {
        ...DeliveryCountryFragment
      }
      deliveryTowns {
        ...DeliveryTownPaginatorFragment
      }
      zipCodes {
        ...DeliveryCountyZipCodePaginatorFragment
      }
    }
    stations {
      id
      name
      code
      deliveryTownId
      isPrimary
      town {
        ...DeliveryTownFragment
      }
      address {
        ...DeliveryStationAddressFragment
      }
      paymentMethods {
        ...DeliveryStationPaymentMethodFragment
      }
      availableTime {
        ...DeliveryStationAvailableTimeFragment
      }
      options {
        ...DeliveryStationOptionFragment
      }
    }
    deliveryOptions {
      id
      townId
      type
      isPrimary
      byAppointmentOnly
      minimumDeliveryTimeInDays
      maximumDeliveryTimeInDays
      chargeAmount {
        ...MoneyV2Fragment
      }
      estimatedTransportCost {
        ...MoneyV2Fragment
      }
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "deliveryTown": {
      "id": "4",
      "name": "abc123",
      "code": "abc123",
      "countyId": 4,
      "isPrimary": true,
      "county": DeliveryCounty,
      "stations": [DeliveryStation],
      "deliveryOptions": [DeliveryOption]
    }
  }
}

me

Description

Retrieves the current authenticated customer's information.

Response

Returns a Customer

Example

Query
query Me {
  me {
    id
    lastName
    name
    initials
    firstName
    displayName
    email
    phone
    username
    userType
    country
    city
    banned
    avatar {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    avatarOriginal
    createdAt
    updatedAt
    profile {
      id
      avatar {
        ...AttachmentFragment
      }
      bio
      socials {
        ...SocialFragment
      }
      contact
      locale
      currency
      taxExempt
      acceptsSms
      currencyCode
      countryCode
    }
    address {
      address1
      address2
      city
      cityCode
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      stateCode
      type
      zip
    }
    referralCode
    social {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
  }
}
Response
{
  "data": {
    "me": {
      "id": 4,
      "lastName": "abc123",
      "name": "abc123",
      "initials": "abc123",
      "firstName": "xyz789",
      "displayName": "xyz789",
      "email": "xyz789",
      "phone": "xyz789",
      "username": "xyz789",
      "userType": "abc123",
      "country": "xyz789",
      "city": "abc123",
      "banned": false,
      "avatar": Attachment,
      "avatarOriginal": "xyz789",
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "profile": Profile,
      "address": [CustomerAddress],
      "referralCode": "abc123",
      "social": SocialAccount
    }
  }
}

myWishlist

Description

Retrieves the wishlist of the current customer.

Response

Returns a Wishlist

Example

Query
query MyWishlist {
  myWishlist {
    id
    user {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    sessionId
    userId
    wishlistSlug
    wishlistName
    wishlistToken
    wishlistPrivacy
    isDefault
    expiration
    createdAt
    updatedAt
    itemsCount
    items {
      id
      productId
      quantity
      userId
      wishlistId
      position
      originalPrice
      originalCurrency
      onSale
      createdAt
      updatedAt
      product {
        ...ProductFragment
      }
    }
  }
}
Response
{
  "data": {
    "myWishlist": {
      "id": 4,
      "user": Customer,
      "sessionId": "xyz789",
      "userId": 4,
      "wishlistSlug": "xyz789",
      "wishlistName": "xyz789",
      "wishlistToken": "xyz789",
      "wishlistPrivacy": true,
      "isDefault": false,
      "expiration": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "itemsCount": 123,
      "items": [WishlistItem]
    }
  }
}

onboarding

Description

Retrieves the onboarding details of the current authenticated customer.

Response

Returns a Customer

Example

Query
query Onboarding {
  onboarding {
    id
    lastName
    name
    initials
    firstName
    displayName
    email
    phone
    username
    userType
    country
    city
    banned
    avatar {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    avatarOriginal
    createdAt
    updatedAt
    profile {
      id
      avatar {
        ...AttachmentFragment
      }
      bio
      socials {
        ...SocialFragment
      }
      contact
      locale
      currency
      taxExempt
      acceptsSms
      currencyCode
      countryCode
    }
    address {
      address1
      address2
      city
      cityCode
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      stateCode
      type
      zip
    }
    referralCode
    social {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
  }
}
Response
{
  "data": {
    "onboarding": {
      "id": "4",
      "lastName": "xyz789",
      "name": "xyz789",
      "initials": "xyz789",
      "firstName": "abc123",
      "displayName": "abc123",
      "email": "abc123",
      "phone": "xyz789",
      "username": "abc123",
      "userType": "xyz789",
      "country": "abc123",
      "city": "abc123",
      "banned": false,
      "avatar": Attachment,
      "avatarOriginal": "xyz789",
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "profile": Profile,
      "address": [CustomerAddress],
      "referralCode": "abc123",
      "social": SocialAccount
    }
  }
}

onlineStore

Description

Retrieve the online store associated with the specified ID or handle.

Response

Returns an OnlineStore

Arguments
Name Description
id - ID Filter online store by ID equality.
handle - String Filter online store by handle equality.

Example

Query
query OnlineStore(
  $id: ID,
  $handle: String
) {
  onlineStore(
    id: $id,
    handle: $handle
  ) {
    shop {
      id
      name
      handle
      top
      metrics {
        ...ShopMetricsFragment
      }
      logo {
        ...AttachmentFragment
      }
      coverImage {
        ...AttachmentFragment
      }
      sliders {
        ...AttachmentFragment
      }
      description
      seo {
        ...SeoFragment
      }
      status
      createdAt
      social {
        ...SocialAccountFragment
      }
      brand {
        ...BrandingFragment
      }
      products {
        ...ProductPaginatorFragment
      }
    }
  }
}
Variables
{"id": 4, "handle": "abc123"}
Response
{"data": {"onlineStore": {"shop": Shop}}}

page

Description

Retrieves a specific page by ID or handle.

Response

Returns a Page

Arguments
Name Description
id - ID The ID of the page to retrieve.
handle - String The handle of the page to retrieve.

Example

Query
query Page(
  $id: ID,
  $handle: String
) {
  page(
    id: $id,
    handle: $handle
  ) {
    id
    type
    handle
    excerpt
    title
    featuredImage {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    top
    views
    featured
    content
    seo {
      title
      description
      image {
        ...AttachmentFragment
      }
      keywords
    }
    keywords
    updatedAt
  }
}
Variables
{"id": 4, "handle": "abc123"}
Response
{
  "data": {
    "page": {
      "id": "4",
      "type": "PROMOTION",
      "handle": "xyz789",
      "excerpt": "xyz789",
      "title": "xyz789",
      "featuredImage": Attachment,
      "top": true,
      "views": 123,
      "featured": true,
      "content": "xyz789",
      "seo": Seo,
      "keywords": ["abc123"],
      "updatedAt": "2007-12-03T10:15:30Z"
    }
  }
}

pages

Description

Retrieves a list of pages.

Response

Returns a PagePaginator

Arguments
Name Description
orderBy - [QueryPagesOrderByOrderByClause!] Order the pages by specified columns.
keyword - String Filter pages by keyword (title).
type - PageType Filter pages by type.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 24
page - Int The offset from which items are returned.

Example

Query
query Pages(
  $orderBy: [QueryPagesOrderByOrderByClause!],
  $keyword: String,
  $type: PageType,
  $first: Int,
  $page: Int
) {
  pages(
    orderBy: $orderBy,
    keyword: $keyword,
    type: $type,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      type
      handle
      excerpt
      title
      featuredImage {
        ...AttachmentFragment
      }
      top
      views
      featured
      content
      seo {
        ...SeoFragment
      }
      keywords
      updatedAt
    }
  }
}
Variables
{
  "orderBy": [QueryPagesOrderByOrderByClause],
  "keyword": "abc123",
  "type": "PROMOTION",
  "first": 24,
  "page": 123
}
Response
{
  "data": {
    "pages": {
      "paginatorInfo": PaginatorInfo,
      "data": [Page]
    }
  }
}

policies

Description

Retrieves a list of policies.

Response

Returns a PolicyPaginator

Arguments
Name Description
orderBy - [QueryPoliciesOrderByOrderByClause!] Order the policies by specified columns.
keyword - String Filter policies by keyword (title).
type - PolicyType Filter policies by type.
shopId - ID! Filter policies by shop ID.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 15
page - Int The offset from which items are returned.

Example

Query
query Policies(
  $orderBy: [QueryPoliciesOrderByOrderByClause!],
  $keyword: String,
  $type: PolicyType,
  $shopId: ID!,
  $first: Int,
  $page: Int
) {
  policies(
    orderBy: $orderBy,
    keyword: $keyword,
    type: $type,
    shopId: $shopId,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      userId
      title
      handle
      keywords
      status
      type
      name
      content
      updatedAt
    }
  }
}
Variables
{
  "orderBy": [QueryPoliciesOrderByOrderByClause],
  "keyword": "xyz789",
  "type": "OTHER",
  "shopId": "4",
  "first": 15,
  "page": 987
}
Response
{
  "data": {
    "policies": {
      "paginatorInfo": PaginatorInfo,
      "data": [Policy]
    }
  }
}

policy

Description

Retrieves a specific policy by ID or slug.

Response

Returns a Policy

Arguments
Name Description
id - ID The ID of the policy to retrieve.
slug - String The slug of the policy to retrieve.

Example

Query
query Policy(
  $id: ID,
  $slug: String
) {
  policy(
    id: $id,
    slug: $slug
  ) {
    id
    userId
    title
    handle
    keywords
    status
    type
    name
    content
    updatedAt
  }
}
Variables
{"id": 4, "slug": "xyz789"}
Response
{
  "data": {
    "policy": {
      "id": "4",
      "userId": 4,
      "title": "xyz789",
      "handle": "abc123",
      "keywords": ["abc123"],
      "status": "DRAFT",
      "type": "OTHER",
      "name": "abc123",
      "content": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z"
    }
  }
}

product

Description

Retrieve a specific product either by ID or handle.

Response

Returns a Product

Arguments
Name Description
id - ID Filter product by ID .
handle - String Filter product by handle .

Example

Query
query Product(
  $id: ID,
  $handle: String
) {
  product(
    id: $id,
    handle: $handle
  ) {
    approved
    brand {
      id
      name
      description
      logo {
        ...AttachmentFragment
      }
      top
      handle
      countdown
      featured
      seo {
        ...SeoFragment
      }
      productsCount
      images {
        ...AttachmentFragment
      }
      banners {
        ...AttachmentFragment
      }
    }
    brandId
    categories {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ProductCategoryFragment
      }
      children {
        ...ProductCategoryFragment
      }
      childrenCount
      productsCount
      parentMain {
        ...ProductCategoryFragment
      }
      status
      description
    }
    category {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ProductCategoryFragment
      }
      children {
        ...ProductCategoryFragment
      }
      childrenCount
      productsCount
      parentMain {
        ...ProductCategoryFragment
      }
      status
      description
    }
    categoryId
    collections {
      id
      title
      displayTitle
      handle
      sortOrder
      templateSuffix
      metaDescription
      metaTitle
      metaFields
      collectionType
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      featured
      top
      level
      products {
        ...ProductFragment
      }
      productsCount
    }
    compareAtPriceAmount {
      currencyCode
      amount
    }
    currency
    customType
    description
    code
    discount
    discountType
    featured
    id
    image {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    keywords
    name
    options {
      id
      name
      displayName
      showType
      showTypeColor
      isShowTypeColor
      staticValues {
        ...ProductPropertyStaticValueFragment
      }
      values {
        ...ProductPropertyValueFragment
      }
      position
    }
    photos {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    priceAmount {
      currencyCode
      amount
    }
    priceRange
    rating
    refundable
    reviews {
      id
      productId
      rating
      comment
      status
      title
      name
      country
      reviewTime
      tags
      photos {
        ...AttachmentFragment
      }
      createdAt
      updatedAt
    }
    reviewsCount
    seo {
      title
      description
      image {
        ...AttachmentFragment
      }
      keywords
    }
    shop {
      id
      name
      handle
      top
      metrics {
        ...ShopMetricsFragment
      }
      logo {
        ...AttachmentFragment
      }
      coverImage {
        ...AttachmentFragment
      }
      sliders {
        ...AttachmentFragment
      }
      description
      seo {
        ...SeoFragment
      }
      status
      createdAt
      social {
        ...SocialAccountFragment
      }
      brand {
        ...BrandingFragment
      }
      products {
        ...ProductPaginatorFragment
      }
    }
    shopId
    showUnitPrice
    handle
    specifications {
      id
      productId
      staticValue {
        ...SpecificationStaticValueFragment
      }
      addedBy
      shopId
    }
    tags {
      id
      name
      handle
    }
    templateId
    thumbnailImage {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    todaysDeal
    type
    unit
    variants {
      id
      productId
      variant
      sku
      priceAmount {
        ...MoneyV2Fragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      barcode
      weight {
        ...WeightFragment
      }
      quantityAvailable
      image {
        ...AttachmentFragment
      }
      imageSummary {
        ...AttachmentFragment
      }
      requiresShipping
      taxable
      selectedOptions {
        ...SelectedOptionsFragment
      }
      options
      product {
        ...ProductFragment
      }
      minPurchaseQuantity
    }
    variantsCount
    publishedAt
    updatedAt
  }
}
Variables
{"id": 4, "handle": "abc123"}
Response
{
  "data": {
    "product": {
      "approved": true,
      "brand": Brand,
      "brandId": "4",
      "categories": [ProductCategory],
      "category": ProductCategory,
      "categoryId": 4,
      "collections": [Collection],
      "compareAtPriceAmount": MoneyV2,
      "currency": "AED",
      "customType": "xyz789",
      "description": "abc123",
      "code": "xyz789",
      "discount": 987.65,
      "discountType": "PERCENT",
      "featured": false,
      "id": "4",
      "image": [Attachment],
      "keywords": ["xyz789"],
      "name": "abc123",
      "options": [ProductProperty],
      "photos": [Attachment],
      "priceAmount": MoneyV2,
      "priceRange": "xyz789",
      "rating": 987,
      "refundable": false,
      "reviews": [ProductReview],
      "reviewsCount": 987,
      "seo": Seo,
      "shop": Shop,
      "shopId": 4,
      "showUnitPrice": true,
      "handle": "abc123",
      "specifications": [ProductSpecification],
      "tags": [ProductTag],
      "templateId": "4",
      "thumbnailImage": Attachment,
      "todaysDeal": true,
      "type": "PHYSICAL",
      "unit": "abc123",
      "variants": [ProductVariant],
      "variantsCount": 123,
      "publishedAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z"
    }
  }
}

productCategories

Description

Retrieve product categories.

Response

Returns a ProductCategoryPaginator

Arguments
Name Description
orderBy - [QueryProductCategoriesOrderByOrderByClause!] Order the product categories by specified columns.
name - String Filter product categories by name.
keyword - String Filter product categories by keyword (name).
parentId - ID Filter product categories by parent ID .
type - ProductType Filter product categories by type .
featured - Boolean Filter product categories by featured status .
top - Boolean Filter product categories by top status .
level - Int Filter product categories .
global - Boolean Filter product categories by global status.
shopId - ID Filter product categories by shop ID .
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 15
page - Int The offset from which items are returned.

Example

Query
query ProductCategories(
  $orderBy: [QueryProductCategoriesOrderByOrderByClause!],
  $name: String,
  $keyword: String,
  $parentId: ID,
  $type: ProductType,
  $featured: Boolean,
  $top: Boolean,
  $level: Int,
  $global: Boolean,
  $shopId: ID,
  $first: Int,
  $page: Int
) {
  productCategories(
    orderBy: $orderBy,
    name: $name,
    keyword: $keyword,
    parentId: $parentId,
    type: $type,
    featured: $featured,
    top: $top,
    level: $level,
    global: $global,
    shopId: $shopId,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ProductCategoryFragment
      }
      children {
        ...ProductCategoryFragment
      }
      childrenCount
      productsCount
      parentMain {
        ...ProductCategoryFragment
      }
      status
      description
    }
  }
}
Variables
{
  "orderBy": [QueryProductCategoriesOrderByOrderByClause],
  "name": "xyz789",
  "keyword": "abc123",
  "parentId": 4,
  "type": "PHYSICAL",
  "featured": false,
  "top": false,
  "level": 987,
  "global": true,
  "shopId": 4,
  "first": 15,
  "page": 987
}
Response
{
  "data": {
    "productCategories": {
      "paginatorInfo": PaginatorInfo,
      "data": [ProductCategory]
    }
  }
}

productCategoriesAlongChildren

Description

Retrieve product categories along with their children.

Response

Returns [ProductCategory]

Arguments
Name Description
orderBy - [QueryProductCategoriesAlongChildrenOrderByOrderByClause!] Order the product categories along with their children by specified columns.
keyword - String Filter product categories along with their children by keyword (name).
parentId - ID Filter product categories along with their children by parent ID .
type - ProductType Filter product categories along with their children by type .
featured - Boolean Filter product categories along with their children by featured status .
top - Boolean Filter product categories along with their children by top status .
level - Int Filter product categories along with their children .
global - Boolean Filter product categories along with their children by global status.
shopId - ID Filter product categories along with their children by shop ID .

Example

Query
query ProductCategoriesAlongChildren(
  $orderBy: [QueryProductCategoriesAlongChildrenOrderByOrderByClause!],
  $keyword: String,
  $parentId: ID,
  $type: ProductType,
  $featured: Boolean,
  $top: Boolean,
  $level: Int,
  $global: Boolean,
  $shopId: ID
) {
  productCategoriesAlongChildren(
    orderBy: $orderBy,
    keyword: $keyword,
    parentId: $parentId,
    type: $type,
    featured: $featured,
    top: $top,
    level: $level,
    global: $global,
    shopId: $shopId
  ) {
    id
    parentId
    level
    orderLevel
    name
    displayName
    banners {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    image {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    icon {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    top
    featured
    handle
    type
    seo {
      title
      description
      image {
        ...AttachmentFragment
      }
      keywords
    }
    parent {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ProductCategoryFragment
      }
      children {
        ...ProductCategoryFragment
      }
      childrenCount
      productsCount
      parentMain {
        ...ProductCategoryFragment
      }
      status
      description
    }
    children {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ProductCategoryFragment
      }
      children {
        ...ProductCategoryFragment
      }
      childrenCount
      productsCount
      parentMain {
        ...ProductCategoryFragment
      }
      status
      description
    }
    childrenCount
    productsCount
    parentMain {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ProductCategoryFragment
      }
      children {
        ...ProductCategoryFragment
      }
      childrenCount
      productsCount
      parentMain {
        ...ProductCategoryFragment
      }
      status
      description
    }
    status
    description
  }
}
Variables
{
  "orderBy": [
    QueryProductCategoriesAlongChildrenOrderByOrderByClause
  ],
  "keyword": "abc123",
  "parentId": "4",
  "type": "PHYSICAL",
  "featured": false,
  "top": true,
  "level": 987,
  "global": false,
  "shopId": 4
}
Response
{
  "data": {
    "productCategoriesAlongChildren": [
      {
        "id": 4,
        "parentId": 4,
        "level": 987,
        "orderLevel": "abc123",
        "name": "xyz789",
        "displayName": "xyz789",
        "banners": [Attachment],
        "image": Attachment,
        "icon": Attachment,
        "top": false,
        "featured": true,
        "handle": "abc123",
        "type": "PHYSICAL",
        "seo": Seo,
        "parent": ProductCategory,
        "children": [ProductCategory],
        "childrenCount": 987,
        "productsCount": 987,
        "parentMain": ProductCategory,
        "status": "DRAFT",
        "description": "abc123"
      }
    ]
  }
}

productCategory

Description

Retrieve a specific product category either by ID or handle.

Response

Returns a ProductCategory

Arguments
Name Description
id - ID Filter product category by ID .
handle - String Filter product category by handle .

Example

Query
query ProductCategory(
  $id: ID,
  $handle: String
) {
  productCategory(
    id: $id,
    handle: $handle
  ) {
    id
    parentId
    level
    orderLevel
    name
    displayName
    banners {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    image {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    icon {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    top
    featured
    handle
    type
    seo {
      title
      description
      image {
        ...AttachmentFragment
      }
      keywords
    }
    parent {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ProductCategoryFragment
      }
      children {
        ...ProductCategoryFragment
      }
      childrenCount
      productsCount
      parentMain {
        ...ProductCategoryFragment
      }
      status
      description
    }
    children {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ProductCategoryFragment
      }
      children {
        ...ProductCategoryFragment
      }
      childrenCount
      productsCount
      parentMain {
        ...ProductCategoryFragment
      }
      status
      description
    }
    childrenCount
    productsCount
    parentMain {
      id
      parentId
      level
      orderLevel
      name
      displayName
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
      icon {
        ...AttachmentFragment
      }
      top
      featured
      handle
      type
      seo {
        ...SeoFragment
      }
      parent {
        ...ProductCategoryFragment
      }
      children {
        ...ProductCategoryFragment
      }
      childrenCount
      productsCount
      parentMain {
        ...ProductCategoryFragment
      }
      status
      description
    }
    status
    description
  }
}
Variables
{
  "id": "4",
  "handle": "abc123"
}
Response
{
  "data": {
    "productCategory": {
      "id": 4,
      "parentId": "4",
      "level": 123,
      "orderLevel": "xyz789",
      "name": "abc123",
      "displayName": "abc123",
      "banners": [Attachment],
      "image": Attachment,
      "icon": Attachment,
      "top": false,
      "featured": false,
      "handle": "xyz789",
      "type": "PHYSICAL",
      "seo": Seo,
      "parent": ProductCategory,
      "children": [ProductCategory],
      "childrenCount": 987,
      "productsCount": 123,
      "parentMain": ProductCategory,
      "status": "DRAFT",
      "description": "abc123"
    }
  }
}

productKeywordSuggestions

Description

Get keyword suggestions for products based on the provided keyword.

Response

Returns a ProductKeywordSuggestion!

Arguments
Name Description
keyword - String! Filter by keyword.

Example

Query
query ProductKeywordSuggestions($keyword: String!) {
  productKeywordSuggestions(keyword: $keyword) {
    result
    message
    keywords
    query
  }
}
Variables
{"keyword": "abc123"}
Response
{
  "data": {
    "productKeywordSuggestions": {
      "result": false,
      "message": "xyz789",
      "keywords": ["xyz789"],
      "query": "xyz789"
    }
  }
}

productReview

Description

Retrieve a product review by ID.

Response

Returns a ProductReview

Arguments
Name Description
id - ID Filter product review by ID equality.

Example

Query
query ProductReview($id: ID) {
  productReview(id: $id) {
    id
    productId
    rating
    comment
    status
    title
    name
    country
    reviewTime
    tags
    photos {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    createdAt
    updatedAt
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "productReview": {
      "id": "4",
      "productId": 4,
      "rating": 987,
      "comment": "abc123",
      "status": "DRAFT",
      "title": "abc123",
      "name": "xyz789",
      "country": "abc123",
      "reviewTime": "abc123",
      "tags": "abc123",
      "photos": [Attachment],
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z"
    }
  }
}

productReviews

Description

Retrieve a list of product reviews.

Response

Returns a ProductReviewPaginator

Arguments
Name Description
orderBy - [QueryProductReviewsOrderByOrderByClause!] Order the product reviews by specified columns.
keyword - String Filter product reviews by keyword (title) using the LIKE operator.
productId - ID! Filter product reviews by product ID.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 15
page - Int The offset from which items are returned.

Example

Query
query ProductReviews(
  $orderBy: [QueryProductReviewsOrderByOrderByClause!],
  $keyword: String,
  $productId: ID!,
  $first: Int,
  $page: Int
) {
  productReviews(
    orderBy: $orderBy,
    keyword: $keyword,
    productId: $productId,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      productId
      rating
      comment
      status
      title
      name
      country
      reviewTime
      tags
      photos {
        ...AttachmentFragment
      }
      createdAt
      updatedAt
    }
  }
}
Variables
{
  "orderBy": [QueryProductReviewsOrderByOrderByClause],
  "keyword": "xyz789",
  "productId": 4,
  "first": 15,
  "page": 987
}
Response
{
  "data": {
    "productReviews": {
      "paginatorInfo": PaginatorInfo,
      "data": [ProductReview]
    }
  }
}

productVariant

Description

Retrieve a specific product variant by ID or variant code.

Response

Returns a ProductVariant!

Arguments
Name Description
id - ID Filter product variant by ID equality.
variant - String Filter product variant by variant code equality.

Example

Query
query ProductVariant(
  $id: ID,
  $variant: String
) {
  productVariant(
    id: $id,
    variant: $variant
  ) {
    id
    productId
    variant
    sku
    priceAmount {
      currencyCode
      amount
    }
    compareAtPriceAmount {
      currencyCode
      amount
    }
    barcode
    weight {
      unit
      value
    }
    quantityAvailable
    image {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    imageSummary {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    requiresShipping
    taxable
    selectedOptions {
      name
      value
    }
    options
    product {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    minPurchaseQuantity
  }
}
Variables
{
  "id": "4",
  "variant": "abc123"
}
Response
{
  "data": {
    "productVariant": {
      "id": 4,
      "productId": 4,
      "variant": "xyz789",
      "sku": "abc123",
      "priceAmount": MoneyV2,
      "compareAtPriceAmount": MoneyV2,
      "barcode": "abc123",
      "weight": Weight,
      "quantityAvailable": 987,
      "image": Attachment,
      "imageSummary": Attachment,
      "requiresShipping": false,
      "taxable": true,
      "selectedOptions": [SelectedOptions],
      "options": ["abc123"],
      "product": Product,
      "minPurchaseQuantity": 123
    }
  }
}

productVariants

Description

Retrieve all variants of a product based on the provided product ID.

Response

Returns [ProductVariant!]!

Arguments
Name Description
productId - Int!

Example

Query
query ProductVariants($productId: Int!) {
  productVariants(productId: $productId) {
    id
    productId
    variant
    sku
    priceAmount {
      currencyCode
      amount
    }
    compareAtPriceAmount {
      currencyCode
      amount
    }
    barcode
    weight {
      unit
      value
    }
    quantityAvailable
    image {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    imageSummary {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    requiresShipping
    taxable
    selectedOptions {
      name
      value
    }
    options
    product {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    minPurchaseQuantity
  }
}
Variables
{"productId": 123}
Response
{
  "data": {
    "productVariants": [
      {
        "id": "4",
        "productId": 4,
        "variant": "abc123",
        "sku": "abc123",
        "priceAmount": MoneyV2,
        "compareAtPriceAmount": MoneyV2,
        "barcode": "xyz789",
        "weight": Weight,
        "quantityAvailable": 987,
        "image": Attachment,
        "imageSummary": Attachment,
        "requiresShipping": true,
        "taxable": false,
        "selectedOptions": [SelectedOptions],
        "options": ["abc123"],
        "product": Product,
        "minPurchaseQuantity": 987
      }
    ]
  }
}

products

Description

Retrieve a list of products.

Response

Returns a ProductPaginator

Arguments
Name Description
orderBy - [QueryProductsOrderByOrderByClause!] Order the products by specified columns.
brandId - ID Filter products by brand ID .
keyword - String Filter products by keyword (name) .
shopId - ID Filter products by shop ID .
categoryId - ID Filter products by category ID .
type - ProductType Filter products by type .
featured - Boolean Filter products by featured status .
sellerFeatured - Boolean Filter products by seller featured status .
todaysDeal - Boolean Filter products by today's deal status .
minimumRating - Float Filter products by minimum rating .
categoryCondition - QueryProductsCategoryConditionWhereHasConditions Filter products by category condition.
collectionCondition - QueryProductsCollectionConditionWhereHasConditions Filter products by collection condition.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 10
page - Int The offset from which items are returned.

Example

Query
query Products(
  $orderBy: [QueryProductsOrderByOrderByClause!],
  $brandId: ID,
  $keyword: String,
  $shopId: ID,
  $categoryId: ID,
  $type: ProductType,
  $featured: Boolean,
  $sellerFeatured: Boolean,
  $todaysDeal: Boolean,
  $minimumRating: Float,
  $categoryCondition: QueryProductsCategoryConditionWhereHasConditions,
  $collectionCondition: QueryProductsCollectionConditionWhereHasConditions,
  $first: Int,
  $page: Int
) {
  products(
    orderBy: $orderBy,
    brandId: $brandId,
    keyword: $keyword,
    shopId: $shopId,
    categoryId: $categoryId,
    type: $type,
    featured: $featured,
    sellerFeatured: $sellerFeatured,
    todaysDeal: $todaysDeal,
    minimumRating: $minimumRating,
    categoryCondition: $categoryCondition,
    collectionCondition: $collectionCondition,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
  }
}
Variables
{
  "orderBy": [QueryProductsOrderByOrderByClause],
  "brandId": 4,
  "keyword": "xyz789",
  "shopId": "4",
  "categoryId": 4,
  "type": "PHYSICAL",
  "featured": true,
  "sellerFeatured": false,
  "todaysDeal": false,
  "minimumRating": 123.45,
  "categoryCondition": QueryProductsCategoryConditionWhereHasConditions,
  "collectionCondition": QueryProductsCollectionConditionWhereHasConditions,
  "first": 10,
  "page": 123
}
Response
{
  "data": {
    "products": {
      "paginatorInfo": PaginatorInfo,
      "data": [Product]
    }
  }
}

productsList

Description

Retrieve a filtered list of products.

Response

Returns a FilteredProduct!

Arguments
Name Description
orderBy - [QueryProductsListOrderByOrderByClause!] Order the products by specified columns.
minPrice - MoneyV2Input Filter products by minimum price.
maxPrice - MoneyV2Input Filter products by maximum price.
keyword - String Filter products by keyword (name) .
shopId - ID Filter products by shop ID .
categoryId - ID Filter products by category ID .
brandId - ID Filter products by brand ID .
featured - Boolean Filter products by featured status .
todaysDeal - Boolean Filter products by today's deal status .
sortBy - ProductSortField Sort the products by a specified field.
type - ProductType Filter products by type .
page - Int Pagination: specify the page number.
first - Int Pagination: specify the number of items per page.
collectionId - ID Filter products by collection ID.
categoryHandle - ID Filter products by category handle.
attributes - [AttributesFilterInput!] Filter products by attributes.
minimumRating - Float Filter products by minimum rating.

Example

Query
query ProductsList(
  $orderBy: [QueryProductsListOrderByOrderByClause!],
  $minPrice: MoneyV2Input,
  $maxPrice: MoneyV2Input,
  $keyword: String,
  $shopId: ID,
  $categoryId: ID,
  $brandId: ID,
  $featured: Boolean,
  $todaysDeal: Boolean,
  $sortBy: ProductSortField,
  $type: ProductType,
  $page: Int,
  $first: Int,
  $collectionId: ID,
  $categoryHandle: ID,
  $attributes: [AttributesFilterInput!],
  $minimumRating: Float
) {
  productsList(
    orderBy: $orderBy,
    minPrice: $minPrice,
    maxPrice: $maxPrice,
    keyword: $keyword,
    shopId: $shopId,
    categoryId: $categoryId,
    brandId: $brandId,
    featured: $featured,
    todaysDeal: $todaysDeal,
    sortBy: $sortBy,
    type: $type,
    page: $page,
    first: $first,
    collectionId: $collectionId,
    categoryHandle: $categoryHandle,
    attributes: $attributes,
    minimumRating: $minimumRating
  ) {
    products {
      data {
        ...ProductFragment
      }
      paginatorInfo {
        ...PaginatorInfoFragment
      }
    }
    filterValues {
      brandId
      collectionId
      categoryId
      color
      shopId
      sortBy
      keyword
      selectedAttributes {
        ...AttributesFilterFragment
      }
      minPrice {
        ...MoneyV2Fragment
      }
      maxPrice {
        ...MoneyV2Fragment
      }
      featured
      todaysDeal
      minimumRating
    }
    filterCriteria {
      brand {
        ...BrandFragment
      }
      category {
        ...ProductCategoryFragment
      }
      relatedCategories {
        ...RelatedCategoriesPayloadFragment
      }
      shop {
        ...ShopFragment
      }
      collection {
        ...CollectionFragment
      }
      attributes {
        ...ProductFilterCriteriaAttributeFragment
      }
    }
  }
}
Variables
{
  "orderBy": [QueryProductsListOrderByOrderByClause],
  "minPrice": MoneyV2Input,
  "maxPrice": MoneyV2Input,
  "keyword": "xyz789",
  "shopId": "4",
  "categoryId": 4,
  "brandId": "4",
  "featured": true,
  "todaysDeal": false,
  "sortBy": "NAME",
  "type": "PHYSICAL",
  "page": 123,
  "first": 123,
  "collectionId": 4,
  "categoryHandle": 4,
  "attributes": [AttributesFilterInput],
  "minimumRating": 123.45
}
Response
{
  "data": {
    "productsList": {
      "products": PaginatedFilteredProduct,
      "filterValues": ProductFilterValues,
      "filterCriteria": ProductFilterCriteria
    }
  }
}

shop

Description

Retrieve a shop by ID or handle.

Response

Returns a Shop

Arguments
Name Description
id - ID Filter shop by ID equality.
handle - String Filter shop by handle equality.

Example

Query
query Shop(
  $id: ID,
  $handle: String
) {
  shop(
    id: $id,
    handle: $handle
  ) {
    id
    name
    handle
    top
    metrics {
      ratingCount
      rating
      positiveRate
      positiveCount
      ordersCount
    }
    logo {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    coverImage {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    sliders {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    description
    seo {
      title
      description
      image {
        ...AttachmentFragment
      }
      keywords
    }
    status
    createdAt
    social {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
    brand {
      coverImage {
        ...AttachmentFragment
      }
      logo {
        ...AttachmentFragment
      }
      socialLogo {
        ...AttachmentFragment
      }
      slogan
      socialLinks {
        ...SocialLinkFragment
      }
      marketplaceCategoryId
      shortDescription
      productCondition
      description
      website
      isVerified
    }
    products {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...ProductFragment
      }
    }
  }
}
Variables
{
  "id": "4",
  "handle": "abc123"
}
Response
{
  "data": {
    "shop": {
      "id": "4",
      "name": "xyz789",
      "handle": "xyz789",
      "top": "abc123",
      "metrics": ShopMetrics,
      "logo": Attachment,
      "coverImage": Attachment,
      "sliders": [Attachment],
      "description": "abc123",
      "seo": Seo,
      "status": "DRAFT",
      "createdAt": "2007-12-03T10:15:30Z",
      "social": SocialAccount,
      "brand": Branding,
      "products": ProductPaginator
    }
  }
}

shops

Description

Retrieve a list of shops based on specified criteria.

Response

Returns a ShopPaginator

Arguments
Name Description
text - String Text to search for in shop names.
isActive - Boolean Indicates whether the shops are active.
orderBy - String Column to order the shops by.
sortedBy - String Direction to sort the shops by.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 15
page - Int The offset from which items are returned.

Example

Query
query Shops(
  $text: String,
  $isActive: Boolean,
  $orderBy: String,
  $sortedBy: String,
  $first: Int,
  $page: Int
) {
  shops(
    text: $text,
    isActive: $isActive,
    orderBy: $orderBy,
    sortedBy: $sortedBy,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      name
      handle
      top
      metrics {
        ...ShopMetricsFragment
      }
      logo {
        ...AttachmentFragment
      }
      coverImage {
        ...AttachmentFragment
      }
      sliders {
        ...AttachmentFragment
      }
      description
      seo {
        ...SeoFragment
      }
      status
      createdAt
      social {
        ...SocialAccountFragment
      }
      brand {
        ...BrandingFragment
      }
      products {
        ...ProductPaginatorFragment
      }
    }
  }
}
Variables
{
  "text": "abc123",
  "isActive": false,
  "orderBy": "abc123",
  "sortedBy": "abc123",
  "first": 15,
  "page": 123
}
Response
{
  "data": {
    "shops": {
      "paginatorInfo": PaginatorInfo,
      "data": [Shop]
    }
  }
}

socialContentCategories

Description

Fetches a list of social content categories.

Response

Returns a SocialContentCategoryPaginator

Arguments
Name Description
orderBy - [QuerySocialContentCategoriesOrderByOrderByClause!] Specify the order of results based on certain fields.
featured - Boolean Filters the list to include only featured categories.
top - Boolean Filters the list to include only top categories.
keyword - String Filters the list based on a keyword that is similar to the category name.
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 24
page - Int The offset from which items are returned.

Example

Query
query SocialContentCategories(
  $orderBy: [QuerySocialContentCategoriesOrderByOrderByClause!],
  $featured: Boolean,
  $top: Boolean,
  $keyword: String,
  $first: Int,
  $page: Int
) {
  socialContentCategories(
    orderBy: $orderBy,
    featured: $featured,
    top: $top,
    keyword: $keyword,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      name
      description
      handle
      isTop
      isFeatured
      priority
      color
    }
  }
}
Variables
{
  "orderBy": [
    QuerySocialContentCategoriesOrderByOrderByClause
  ],
  "featured": false,
  "top": false,
  "keyword": "xyz789",
  "first": 24,
  "page": 123
}
Response
{
  "data": {
    "socialContentCategories": {
      "paginatorInfo": PaginatorInfo,
      "data": [SocialContentCategory]
    }
  }
}

socialContentCategory

Description

Fetches a single social content category by its ID or handle.

Response

Returns a SocialContentCategory

Arguments
Name Description
id - ID The ID of the social content category to fetch.
handle - String The handle of the social content category to fetch.

Example

Query
query SocialContentCategory(
  $id: ID,
  $handle: String
) {
  socialContentCategory(
    id: $id,
    handle: $handle
  ) {
    id
    name
    description
    handle
    isTop
    isFeatured
    priority
    color
  }
}
Variables
{"id": 4, "handle": "xyz789"}
Response
{
  "data": {
    "socialContentCategory": {
      "id": 4,
      "name": "xyz789",
      "description": "abc123",
      "handle": "xyz789",
      "isTop": false,
      "isFeatured": true,
      "priority": 123,
      "color": "abc123"
    }
  }
}

socialContentItem

Response

Returns a SocialContentItem

Arguments
Name Description
id - ID
handle - String

Example

Query
query SocialContentItem(
  $id: ID,
  $handle: String
) {
  socialContentItem(
    id: $id,
    handle: $handle
  ) {
    id
    uuid
    handle
    contentType
    title
    template
    privacy
    status
    categoryId
    languageCode
    isApproved
    isFlagged
    body
    metadata
    metrics {
      views
      shares
      likes
      bookmarks
      dislikes
      commentsCount
      productsCount
    }
    createdAt
    updatedAt
    category {
      id
      name
      description
      handle
      isTop
      isFeatured
      priority
      color
    }
    post {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      body
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    story {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      description
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    banner {
      id
      uuid
      title
      description
      url
      items {
        ...SocialItemBannerItemFragment
      }
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    legacyProduct {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      description
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    products {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    interaction {
      liked
      disliked
      viewed
      bookmarked
      uninterested
    }
    creator {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
    comments {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...SocialContentCommentFragment
      }
    }
    tags {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...SocialContentTagFragment
      }
    }
  }
}
Variables
{
  "id": "4",
  "handle": "xyz789"
}
Response
{
  "data": {
    "socialContentItem": {
      "id": "4",
      "uuid": "xyz789",
      "handle": "xyz789",
      "contentType": "STORY",
      "title": "abc123",
      "template": "MEDIA_ONLY",
      "privacy": "PUBLIC",
      "status": "DRAFT",
      "categoryId": 4,
      "languageCode": "xyz789",
      "isApproved": false,
      "isFlagged": true,
      "body": "xyz789",
      "metadata": {},
      "metrics": ContentMetrics,
      "createdAt": "abc123",
      "updatedAt": "abc123",
      "category": SocialContentCategory,
      "post": SocialItemPost,
      "story": SocialItemStory,
      "banner": SocialItemBanner,
      "legacyProduct": SocialItemProduct,
      "products": [Product],
      "interaction": SocialContentInteraction,
      "creator": SocialAccount,
      "comments": SocialContentCommentPaginator,
      "tags": SocialContentTagPaginator
    }
  }
}

socialContentItems

Response

Returns a SocialContentItemPaginator

Arguments
Name Description
contentType - SocialContentItemType
creatorType - SocialCreatorType
creatorId - ID
orderBy - [QuerySocialContentItemsOrderByOrderByClause!]
onlyContentTypesOf - [SocialContentItemType!]
excludeIds - [ID!]
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 24
page - Int The offset from which items are returned.

Example

Query
query SocialContentItems(
  $contentType: SocialContentItemType,
  $creatorType: SocialCreatorType,
  $creatorId: ID,
  $orderBy: [QuerySocialContentItemsOrderByOrderByClause!],
  $onlyContentTypesOf: [SocialContentItemType!],
  $excludeIds: [ID!],
  $first: Int,
  $page: Int
) {
  socialContentItems(
    contentType: $contentType,
    creatorType: $creatorType,
    creatorId: $creatorId,
    orderBy: $orderBy,
    onlyContentTypesOf: $onlyContentTypesOf,
    excludeIds: $excludeIds,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      uuid
      handle
      contentType
      title
      template
      privacy
      status
      categoryId
      languageCode
      isApproved
      isFlagged
      body
      metadata
      metrics {
        ...ContentMetricsFragment
      }
      createdAt
      updatedAt
      category {
        ...SocialContentCategoryFragment
      }
      post {
        ...SocialItemPostFragment
      }
      story {
        ...SocialItemStoryFragment
      }
      banner {
        ...SocialItemBannerFragment
      }
      legacyProduct {
        ...SocialItemProductFragment
      }
      products {
        ...ProductFragment
      }
      interaction {
        ...SocialContentInteractionFragment
      }
      creator {
        ...SocialAccountFragment
      }
      comments {
        ...SocialContentCommentPaginatorFragment
      }
      tags {
        ...SocialContentTagPaginatorFragment
      }
    }
  }
}
Variables
{
  "contentType": "STORY",
  "creatorType": "CUSTOMER",
  "creatorId": 4,
  "orderBy": [
    QuerySocialContentItemsOrderByOrderByClause
  ],
  "onlyContentTypesOf": ["STORY"],
  "excludeIds": [4],
  "first": 24,
  "page": 123
}
Response
{
  "data": {
    "socialContentItems": {
      "paginatorInfo": PaginatorInfo,
      "data": [SocialContentItem]
    }
  }
}

socialContentPersonalizedItems

Response

Returns a SocialContentItemPaginator

Arguments
Name Description
contentType - SocialContentItemType
orderBy - [QuerySocialContentPersonalizedItemsOrderByOrderByClause!]
creatorType - SocialCreatorType
creatorId - ID
onlyContentTypesOf - [SocialContentItemType!]
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 24
page - Int The offset from which items are returned.

Example

Query
query SocialContentPersonalizedItems(
  $contentType: SocialContentItemType,
  $orderBy: [QuerySocialContentPersonalizedItemsOrderByOrderByClause!],
  $creatorType: SocialCreatorType,
  $creatorId: ID,
  $onlyContentTypesOf: [SocialContentItemType!],
  $first: Int,
  $page: Int
) {
  socialContentPersonalizedItems(
    contentType: $contentType,
    orderBy: $orderBy,
    creatorType: $creatorType,
    creatorId: $creatorId,
    onlyContentTypesOf: $onlyContentTypesOf,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      uuid
      handle
      contentType
      title
      template
      privacy
      status
      categoryId
      languageCode
      isApproved
      isFlagged
      body
      metadata
      metrics {
        ...ContentMetricsFragment
      }
      createdAt
      updatedAt
      category {
        ...SocialContentCategoryFragment
      }
      post {
        ...SocialItemPostFragment
      }
      story {
        ...SocialItemStoryFragment
      }
      banner {
        ...SocialItemBannerFragment
      }
      legacyProduct {
        ...SocialItemProductFragment
      }
      products {
        ...ProductFragment
      }
      interaction {
        ...SocialContentInteractionFragment
      }
      creator {
        ...SocialAccountFragment
      }
      comments {
        ...SocialContentCommentPaginatorFragment
      }
      tags {
        ...SocialContentTagPaginatorFragment
      }
    }
  }
}
Variables
{
  "contentType": "STORY",
  "orderBy": [
    QuerySocialContentPersonalizedItemsOrderByOrderByClause
  ],
  "creatorType": "CUSTOMER",
  "creatorId": "4",
  "onlyContentTypesOf": ["STORY"],
  "first": 24,
  "page": 987
}
Response
{
  "data": {
    "socialContentPersonalizedItems": {
      "paginatorInfo": PaginatorInfo,
      "data": [SocialContentItem]
    }
  }
}

socialContentTag

Response

Returns a SocialContentTag

Arguments
Name Description
id - ID
handle - String

Example

Query
query SocialContentTag(
  $id: ID,
  $handle: String
) {
  socialContentTag(
    id: $id,
    handle: $handle
  ) {
    id
    name
    handle
    description
    priority
  }
}
Variables
{"id": 4, "handle": "xyz789"}
Response
{
  "data": {
    "socialContentTag": {
      "id": "4",
      "name": "abc123",
      "handle": "abc123",
      "description": "abc123",
      "priority": 123
    }
  }
}

socialContentTags

Response

Returns a SocialContentTagPaginator

Arguments
Name Description
orderBy - [QuerySocialContentTagsOrderByOrderByClause!]
keyword - String
first - Int Limits number of fetched items. Maximum allowed value: 50. Default = 24
page - Int The offset from which items are returned.

Example

Query
query SocialContentTags(
  $orderBy: [QuerySocialContentTagsOrderByOrderByClause!],
  $keyword: String,
  $first: Int,
  $page: Int
) {
  socialContentTags(
    orderBy: $orderBy,
    keyword: $keyword,
    first: $first,
    page: $page
  ) {
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
    data {
      id
      name
      handle
      description
      priority
    }
  }
}
Variables
{
  "orderBy": [QuerySocialContentTagsOrderByOrderByClause],
  "keyword": "xyz789",
  "first": 24,
  "page": 987
}
Response
{
  "data": {
    "socialContentTags": {
      "paginatorInfo": PaginatorInfo,
      "data": [SocialContentTag]
    }
  }
}

stateDataByStateToken

Response

Returns a StateDataByStateToken

Arguments
Name Description
state - String!

Example

Query
query StateDataByStateToken($state: String!) {
  stateDataByStateToken(state: $state) {
    stateData {
      id
      stateToken
      key
      value
      userId
      redirectUri
      expiresIn
      hitCount
      hitCountLimit
      expiresAt
    }
  }
}
Variables
{"state": "xyz789"}
Response
{
  "data": {
    "stateDataByStateToken": {"stateData": StateData}
  }
}

tempAuthSession

Description

Lookup a temporary authentication session.

Response

Returns a TemporaryAuth

Arguments
Name Description
input - LookupTempAuthSessionInput!

Example

Query
query TempAuthSession($input: LookupTempAuthSessionInput!) {
  tempAuthSession(input: $input) {
    uuid
    email
    phone
    gender
    countryCode
    firstName
    lastName
    username
    ipAddress
    userType
    token
    passwordVerified
    verificationCode
    isActive
    lastLogin
    timezone
    language
    profileImage
    additionalInfo
    securityQuestion
    securityAnswer
    city
    address
    zipCode
    phoneExtension
    dob
    occupation
    company
    website
    socialMedia
    interests
    education
    membershipId
    role
    status
    termsAccepted
    newsletterSubscribed
    twoFactorAuth
    expiry
    lastUsed
    primaryMedium
    secondaryMedium
    authType
    isValid
    referralCode
    identityCreated
    avatar {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    avatarOriginal
  }
}
Variables
{"input": LookupTempAuthSessionInput}
Response
{
  "data": {
    "tempAuthSession": {
      "uuid": "abc123",
      "email": "abc123",
      "phone": "abc123",
      "gender": "abc123",
      "countryCode": "abc123",
      "firstName": "abc123",
      "lastName": "xyz789",
      "username": "xyz789",
      "ipAddress": "abc123",
      "userType": "USER",
      "token": "xyz789",
      "passwordVerified": false,
      "verificationCode": "abc123",
      "isActive": false,
      "lastLogin": "2007-12-03T10:15:30Z",
      "timezone": "xyz789",
      "language": "xyz789",
      "profileImage": "abc123",
      "additionalInfo": "abc123",
      "securityQuestion": "xyz789",
      "securityAnswer": "xyz789",
      "city": "xyz789",
      "address": "xyz789",
      "zipCode": "xyz789",
      "phoneExtension": "xyz789",
      "dob": "xyz789",
      "occupation": "abc123",
      "company": "xyz789",
      "website": "xyz789",
      "socialMedia": "abc123",
      "interests": "xyz789",
      "education": "abc123",
      "membershipId": "xyz789",
      "role": "abc123",
      "status": "xyz789",
      "termsAccepted": false,
      "newsletterSubscribed": true,
      "twoFactorAuth": false,
      "expiry": "xyz789",
      "lastUsed": "2007-12-03T10:15:30Z",
      "primaryMedium": "EMAIL",
      "secondaryMedium": "EMAIL",
      "authType": "LOGIN",
      "isValid": false,
      "referralCode": "abc123",
      "identityCreated": true,
      "avatar": Attachment,
      "avatarOriginal": "abc123"
    }
  }
}

upload

Description

Retrieves a specific upload by ID.

Response

Returns an Upload

Arguments
Name Description
id - ID The ID of the upload to retrieve.

Example

Query
query Upload($id: ID) {
  upload(id: $id) {
    id
    url
    src
    uuid
    fileName
    extension
    type
    category
    status
    uploadedTime
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "upload": {
      "id": 4,
      "url": "abc123",
      "src": "xyz789",
      "uuid": "xyz789",
      "fileName": "xyz789",
      "extension": "abc123",
      "type": "abc123",
      "category": "xyz789",
      "status": "xyz789",
      "uploadedTime": "abc123"
    }
  }
}

uploads

Description

Retrieves a list of uploads based on specified filters.

Response

Returns an OtherUploader

Arguments
Name Description
first - Int The number of items to retrieve per page.
page - Int The page number to retrieve.
extension - UploadFileExtension Filter by file extension.
format - UploadFileFormat Filter by file format.
userId - ID Filter by user ID.
sortBy - UploadSortOption Sort the uploads based on a specified option.
keyword - String Filter by keyword.
audience - UploadAudienceType! Specify the audience type for the uploads.
category - String Filter by category.

Example

Query
query Uploads(
  $first: Int,
  $page: Int,
  $extension: UploadFileExtension,
  $format: UploadFileFormat,
  $userId: ID,
  $sortBy: UploadSortOption,
  $keyword: String,
  $audience: UploadAudienceType!,
  $category: String
) {
  uploads(
    first: $first,
    page: $page,
    extension: $extension,
    format: $format,
    userId: $userId,
    sortBy: $sortBy,
    keyword: $keyword,
    audience: $audience,
    category: $category
  ) {
    data {
      id
      url
      src
      uuid
      fileName
      extension
      type
      category
      status
      uploadedTime
    }
    paginatorInfo {
      count
      currentPage
      firstItem
      hasMorePages
      lastItem
      lastPage
      perPage
      total
    }
  }
}
Variables
{
  "first": 987,
  "page": 987,
  "extension": "JPG",
  "format": "IMAGE",
  "userId": "4",
  "sortBy": "NEWEST",
  "keyword": "xyz789",
  "audience": "CUSTOMER",
  "category": "xyz789"
}
Response
{
  "data": {
    "uploads": {
      "data": [Upload],
      "paginatorInfo": PaginatorInfo
    }
  }
}

Mutations

addItemToCart

Description

Add items to the cart.

Response

Returns a Cart!

Arguments
Name Description
input - [addItemToCartInput!]!

Example

Query
mutation AddItemToCart($input: [addItemToCartInput!]!) {
  addItemToCart(input: $input) {
    id
    buyerIdentity {
      countryCode
      customer {
        ...CustomerFragment
      }
      deliveryAddress {
        ...DeliveryAddressFragment
      }
      deliveryLocation {
        ...DeliveryLocationFragment
      }
      email
      phone
      deliveryAddressPreferences {
        ...DeliveryAddressPaginatorFragment
      }
    }
    cost {
      checkoutChargeAmount {
        ...MoneyV2Fragment
      }
      subtotalAmount {
        ...MoneyV2Fragment
      }
      subtotalAmountEstimated
      totalAmount {
        ...MoneyV2Fragment
      }
      totalAmountEstimated
      totalDutyAmount {
        ...MoneyV2Fragment
      }
      totalDutyAmountEstimated
      totalTaxAmount {
        ...MoneyV2Fragment
      }
      totalTaxAmountEstimated
      totalDiscountAmount {
        ...MoneyV2Fragment
      }
    }
    token
    isActive
    currencyCode
    userId
    tempUserId
    country
    addressId
    shippingType
    deliveryType
    discount
    couponCode
    couponApplied
    pickupPoint
    referralCode
    product {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    cartItems {
      id
      cartId
      productId
      variantId
      quantity
      discount {
        ...MoneyV2Fragment
      }
      tax {
        ...MoneyV2Fragment
      }
      shopId
      position
      onSale
      subtotalPrice {
        ...MoneyV2Fragment
      }
      totalPrice {
        ...MoneyV2Fragment
      }
      compareAtPrice {
        ...MoneyV2Fragment
      }
      price {
        ...MoneyV2Fragment
      }
      updatedAt
      createdAt
      variant {
        ...ProductVariantFragment
      }
      merchandise {
        ...ProductVariantFragment
      }
      product {
        ...ProductFragment
      }
      cost {
        ...CartItemCostFragment
      }
      availableForSale
      inStock
      attributes {
        ...AttributeFragment
      }
      attribute {
        ...AttributeFragment
      }
    }
    itemsCount
    operation {
      message
      success
      result
    }
    requiresShipping
  }
}
Variables
{"input": [addItemToCartInput]}
Response
{
  "data": {
    "addItemToCart": {
      "id": 4,
      "buyerIdentity": CartBuyerIdentity,
      "cost": CartCost,
      "token": "xyz789",
      "isActive": false,
      "currencyCode": "AED",
      "userId": "4",
      "tempUserId": 4,
      "country": "xyz789",
      "addressId": 4,
      "shippingType": "FIXED",
      "deliveryType": "PICKUP",
      "discount": 123.45,
      "couponCode": "abc123",
      "couponApplied": false,
      "pickupPoint": "abc123",
      "referralCode": "abc123",
      "product": Product,
      "cartItems": [CartItem],
      "itemsCount": 987,
      "operation": actionResponse,
      "requiresShipping": false
    }
  }
}

addItemToWishlist

Description

Mutation to add items to a wishlist.

Response

Returns a Wishlist

Arguments
Name Description
input - [AddItemToWishlistInput!]!

Example

Query
mutation AddItemToWishlist($input: [AddItemToWishlistInput!]!) {
  addItemToWishlist(input: $input) {
    id
    user {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    sessionId
    userId
    wishlistSlug
    wishlistName
    wishlistToken
    wishlistPrivacy
    isDefault
    expiration
    createdAt
    updatedAt
    itemsCount
    items {
      id
      productId
      quantity
      userId
      wishlistId
      position
      originalPrice
      originalCurrency
      onSale
      createdAt
      updatedAt
      product {
        ...ProductFragment
      }
    }
  }
}
Variables
{"input": [AddItemToWishlistInput]}
Response
{
  "data": {
    "addItemToWishlist": {
      "id": "4",
      "user": Customer,
      "sessionId": "xyz789",
      "userId": 4,
      "wishlistSlug": "abc123",
      "wishlistName": "abc123",
      "wishlistToken": "xyz789",
      "wishlistPrivacy": true,
      "isDefault": true,
      "expiration": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "itemsCount": 987,
      "items": [WishlistItem]
    }
  }
}

capturePaypalOrder

Description

Captures a PayPal order.

Response

Returns a PaymentResponsePayload!

Arguments
Name Description
input - CapturePaypalOrderInput! Input for capturing a PayPal order.

Example

Query
mutation CapturePaypalOrder($input: CapturePaypalOrderInput!) {
  capturePaypalOrder(input: $input) {
    success
    message
    errors
    result {
      code
      status
      orderStatus
      message
      link
      checkoutRequestId
    }
  }
}
Variables
{"input": CapturePaypalOrderInput}
Response
{
  "data": {
    "capturePaypalOrder": {
      "success": false,
      "message": "xyz789",
      "errors": ["xyz789"],
      "result": PaymentResponseResult
    }
  }
}

cartPrimaryAddressUpdate

Description

Update primary address in the cart.

Response

Returns a Cart!

Arguments
Name Description
id - ID! address id.

Example

Query
mutation CartPrimaryAddressUpdate($id: ID!) {
  cartPrimaryAddressUpdate(id: $id) {
    id
    buyerIdentity {
      countryCode
      customer {
        ...CustomerFragment
      }
      deliveryAddress {
        ...DeliveryAddressFragment
      }
      deliveryLocation {
        ...DeliveryLocationFragment
      }
      email
      phone
      deliveryAddressPreferences {
        ...DeliveryAddressPaginatorFragment
      }
    }
    cost {
      checkoutChargeAmount {
        ...MoneyV2Fragment
      }
      subtotalAmount {
        ...MoneyV2Fragment
      }
      subtotalAmountEstimated
      totalAmount {
        ...MoneyV2Fragment
      }
      totalAmountEstimated
      totalDutyAmount {
        ...MoneyV2Fragment
      }
      totalDutyAmountEstimated
      totalTaxAmount {
        ...MoneyV2Fragment
      }
      totalTaxAmountEstimated
      totalDiscountAmount {
        ...MoneyV2Fragment
      }
    }
    token
    isActive
    currencyCode
    userId
    tempUserId
    country
    addressId
    shippingType
    deliveryType
    discount
    couponCode
    couponApplied
    pickupPoint
    referralCode
    product {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    cartItems {
      id
      cartId
      productId
      variantId
      quantity
      discount {
        ...MoneyV2Fragment
      }
      tax {
        ...MoneyV2Fragment
      }
      shopId
      position
      onSale
      subtotalPrice {
        ...MoneyV2Fragment
      }
      totalPrice {
        ...MoneyV2Fragment
      }
      compareAtPrice {
        ...MoneyV2Fragment
      }
      price {
        ...MoneyV2Fragment
      }
      updatedAt
      createdAt
      variant {
        ...ProductVariantFragment
      }
      merchandise {
        ...ProductVariantFragment
      }
      product {
        ...ProductFragment
      }
      cost {
        ...CartItemCostFragment
      }
      availableForSale
      inStock
      attributes {
        ...AttributeFragment
      }
      attribute {
        ...AttributeFragment
      }
    }
    itemsCount
    operation {
      message
      success
      result
    }
    requiresShipping
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "cartPrimaryAddressUpdate": {
      "id": 4,
      "buyerIdentity": CartBuyerIdentity,
      "cost": CartCost,
      "token": "xyz789",
      "isActive": true,
      "currencyCode": "AED",
      "userId": "4",
      "tempUserId": "4",
      "country": "xyz789",
      "addressId": "4",
      "shippingType": "FIXED",
      "deliveryType": "PICKUP",
      "discount": 123.45,
      "couponCode": "abc123",
      "couponApplied": true,
      "pickupPoint": "xyz789",
      "referralCode": "abc123",
      "product": Product,
      "cartItems": [CartItem],
      "itemsCount": 123,
      "operation": actionResponse,
      "requiresShipping": true
    }
  }
}

checkCustomerExistence

Description

Check the existence of a customer based on input data.

Response

Returns a CustomerExistenceResponse!

Arguments
Name Description
input - CustomerExistenceInput! Input for checking customer existence.

Example

Query
mutation CheckCustomerExistence($input: CustomerExistenceInput!) {
  checkCustomerExistence(input: $input) {
    exists
    type
  }
}
Variables
{"input": CustomerExistenceInput}
Response
{"data": {"checkCustomerExistence": {"exists": false, "type": "EMAIL"}}}

checkLipaNaMpesaPaymentStatus

Description

Query the status of a Lipa Na M-Pesa transaction

Response

Returns a LipaNaMpesaPaymentStatus!

Arguments
Name Description
input - CheckLipaNaMpesaPaymentStatusInput!

Example

Query
mutation CheckLipaNaMpesaPaymentStatus($input: CheckLipaNaMpesaPaymentStatusInput!) {
  checkLipaNaMpesaPaymentStatus(input: $input) {
    success
    message
    errors
    result {
      code
      status
      orderStatus
      message
      link
      checkoutRequestId
    }
  }
}
Variables
{"input": CheckLipaNaMpesaPaymentStatusInput}
Response
{
  "data": {
    "checkLipaNaMpesaPaymentStatus": {
      "success": false,
      "message": "xyz789",
      "errors": ["xyz789"],
      "result": LipaNaMpesaTransactionResult
    }
  }
}

checkOtpVerificationStatus

Description

Check the OTP verification status.

Response

Returns an AuthOtpVerificationStatusResponse

Arguments
Name Description
input - OtpVerificationStatusInput! Input for checking OTP verification status.

Example

Query
mutation CheckOtpVerificationStatus($input: OtpVerificationStatusInput!) {
  checkOtpVerificationStatus(input: $input) {
    result
    success
    message
    isVerified
    nextAction
  }
}
Variables
{"input": OtpVerificationStatusInput}
Response
{
  "data": {
    "checkOtpVerificationStatus": {
      "result": false,
      "success": true,
      "message": "abc123",
      "isVerified": true,
      "nextAction": "PROCEED"
    }
  }
}

clearItemsFromCart

Description

Clear all items from the cart.

Response

Returns a Cart

Arguments
Name Description
token - String!

Example

Query
mutation ClearItemsFromCart($token: String!) {
  clearItemsFromCart(token: $token) {
    id
    buyerIdentity {
      countryCode
      customer {
        ...CustomerFragment
      }
      deliveryAddress {
        ...DeliveryAddressFragment
      }
      deliveryLocation {
        ...DeliveryLocationFragment
      }
      email
      phone
      deliveryAddressPreferences {
        ...DeliveryAddressPaginatorFragment
      }
    }
    cost {
      checkoutChargeAmount {
        ...MoneyV2Fragment
      }
      subtotalAmount {
        ...MoneyV2Fragment
      }
      subtotalAmountEstimated
      totalAmount {
        ...MoneyV2Fragment
      }
      totalAmountEstimated
      totalDutyAmount {
        ...MoneyV2Fragment
      }
      totalDutyAmountEstimated
      totalTaxAmount {
        ...MoneyV2Fragment
      }
      totalTaxAmountEstimated
      totalDiscountAmount {
        ...MoneyV2Fragment
      }
    }
    token
    isActive
    currencyCode
    userId
    tempUserId
    country
    addressId
    shippingType
    deliveryType
    discount
    couponCode
    couponApplied
    pickupPoint
    referralCode
    product {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    cartItems {
      id
      cartId
      productId
      variantId
      quantity
      discount {
        ...MoneyV2Fragment
      }
      tax {
        ...MoneyV2Fragment
      }
      shopId
      position
      onSale
      subtotalPrice {
        ...MoneyV2Fragment
      }
      totalPrice {
        ...MoneyV2Fragment
      }
      compareAtPrice {
        ...MoneyV2Fragment
      }
      price {
        ...MoneyV2Fragment
      }
      updatedAt
      createdAt
      variant {
        ...ProductVariantFragment
      }
      merchandise {
        ...ProductVariantFragment
      }
      product {
        ...ProductFragment
      }
      cost {
        ...CartItemCostFragment
      }
      availableForSale
      inStock
      attributes {
        ...AttributeFragment
      }
      attribute {
        ...AttributeFragment
      }
    }
    itemsCount
    operation {
      message
      success
      result
    }
    requiresShipping
  }
}
Variables
{"token": "xyz789"}
Response
{
  "data": {
    "clearItemsFromCart": {
      "id": 4,
      "buyerIdentity": CartBuyerIdentity,
      "cost": CartCost,
      "token": "xyz789",
      "isActive": false,
      "currencyCode": "AED",
      "userId": "4",
      "tempUserId": "4",
      "country": "abc123",
      "addressId": 4,
      "shippingType": "FIXED",
      "deliveryType": "PICKUP",
      "discount": 987.65,
      "couponCode": "xyz789",
      "couponApplied": false,
      "pickupPoint": "abc123",
      "referralCode": "abc123",
      "product": Product,
      "cartItems": [CartItem],
      "itemsCount": 987,
      "operation": actionResponse,
      "requiresShipping": true
    }
  }
}

clearItemsFromWishlist

Description

Mutation to clear all items from a wishlist.

Response

Returns an actionResponse

Arguments
Name Description
wishlistId - ID!

Example

Query
mutation ClearItemsFromWishlist($wishlistId: ID!) {
  clearItemsFromWishlist(wishlistId: $wishlistId) {
    message
    success
    result
  }
}
Variables
{"wishlistId": "4"}
Response
{
  "data": {
    "clearItemsFromWishlist": {
      "message": "xyz789",
      "success": false,
      "result": true
    }
  }
}

createAddress

Description

Creates a new customer address

Response

Returns a CustomerAddress

Arguments
Name Description
input - CustomerAddressInput!

Example

Query
mutation CreateAddress($input: CustomerAddressInput!) {
  createAddress(input: $input) {
    address1
    address2
    city
    cityCode
    company
    country
    countryCode
    firstName
    formatted
    formattedArea
    id
    isDefault
    lastName
    latitude
    longitude
    name
    phone
    province
    provinceCode
    state
    stateCode
    type
    zip
  }
}
Variables
{"input": CustomerAddressInput}
Response
{
  "data": {
    "createAddress": {
      "address1": "abc123",
      "address2": "abc123",
      "city": "abc123",
      "cityCode": 4,
      "company": "xyz789",
      "country": "xyz789",
      "countryCode": "AF",
      "firstName": "xyz789",
      "formatted": "xyz789",
      "formattedArea": "abc123",
      "id": "4",
      "isDefault": false,
      "lastName": "xyz789",
      "latitude": 123.45,
      "longitude": 123.45,
      "name": "abc123",
      "phone": "abc123",
      "province": "xyz789",
      "provinceCode": "abc123",
      "state": "abc123",
      "stateCode": "4",
      "type": "BILLING",
      "zip": "xyz789"
    }
  }
}

createAndPlaceOrder

Description

Creates and places a new order.

Response

Returns an Order!

Arguments
Name Description
input - CreateAndPlaceOrderInput! Input for creating and placing a new order.

Example

Query
mutation CreateAndPlaceOrder($input: CreateAndPlaceOrderInput!) {
  createAndPlaceOrder(input: $input) {
    billingAddress {
      name
      email
      streetAddress
      country
      city
      zip
      phone
    }
    childOrders {
      billingAddress {
        ...BillingAddressFragment
      }
      childOrders {
        ...OrderFragment
      }
      childOrderCount
      itemsCount
      orderCode
      coupon {
        ...CouponFragment
      }
      couponDiscountAmount {
        ...MoneyV2Fragment
      }
      createdAt
      customer {
        ...CustomerFragment
      }
      orderDate
      deliveryFee {
        ...MoneyV2Fragment
      }
      deliveryTime
      deliveryViewed
      guestId
      id
      isManualPayment
      orderCombinedId
      orderDetails {
        ...OrderDetailFragment
      }
      parentOrderDetails {
        ...OrderDetailFragment
      }
      paymentDetails
      paymentId
      paymentStatus
      paymentStatusViewed
      paymentMethod {
        ...PaymentMethodFragment
      }
      receipt
      request
      shippingAddress {
        ...CustomerAddressFragment
      }
      mailingAddress {
        ...MailingAddressFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      status {
        ...OrderStatusFragment
      }
      orderStage
      trackingNumber
      updatedAt
      userId
      viewed
      totals {
        ...OrderTotalsFragment
      }
      orderTimeline {
        ...OrderTimelineFragment
      }
    }
    childOrderCount
    itemsCount
    orderCode
    coupon {
      id
      status
      type
      code
      discount
      discountType
      startDate
      endDate
      description
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
    }
    couponDiscountAmount {
      currencyCode
      amount
    }
    createdAt
    customer {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    orderDate
    deliveryFee {
      currencyCode
      amount
    }
    deliveryTime
    deliveryViewed
    guestId
    id
    isManualPayment
    orderCombinedId
    orderDetails {
      id
      orderId
      userId
      shopId
      productId
      productVariant {
        ...ProductVariantFragment
      }
      price {
        ...MoneyV2Fragment
      }
      tax
      shippingCost {
        ...MoneyV2Fragment
      }
      quantity
      paymentStatus
      shippingType
      pickupPointId
      productReferralCode
    }
    parentOrderDetails {
      id
      orderId
      userId
      shopId
      productId
      productVariant {
        ...ProductVariantFragment
      }
      price {
        ...MoneyV2Fragment
      }
      tax
      shippingCost {
        ...MoneyV2Fragment
      }
      quantity
      paymentStatus
      shippingType
      pickupPointId
      productReferralCode
    }
    paymentDetails
    paymentId
    paymentStatus
    paymentStatusViewed
    paymentMethod {
      id
      name
      description
    }
    receipt
    request
    shippingAddress {
      address1
      address2
      city
      cityCode
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      stateCode
      type
      zip
    }
    mailingAddress {
      address1
      address2
      city
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      type
      zip
    }
    shop {
      id
      name
      handle
      top
      metrics {
        ...ShopMetricsFragment
      }
      logo {
        ...AttachmentFragment
      }
      coverImage {
        ...AttachmentFragment
      }
      sliders {
        ...AttachmentFragment
      }
      description
      seo {
        ...SeoFragment
      }
      status
      createdAt
      social {
        ...SocialAccountFragment
      }
      brand {
        ...BrandingFragment
      }
      products {
        ...ProductPaginatorFragment
      }
    }
    shopId
    status {
      id
      name
      color
      serial
    }
    orderStage
    trackingNumber
    updatedAt
    userId
    viewed
    totals {
      totalPaid {
        ...MoneyV2Fragment
      }
      shippingCost {
        ...MoneyV2Fragment
      }
      subtotal {
        ...MoneyV2Fragment
      }
      totalTax {
        ...MoneyV2Fragment
      }
      totalDiscount {
        ...MoneyV2Fragment
      }
      totalDuty {
        ...MoneyV2Fragment
      }
      netTotal {
        ...MoneyV2Fragment
      }
      grandTotal {
        ...MoneyV2Fragment
      }
      totalRefunded {
        ...MoneyV2Fragment
      }
      discount {
        ...MoneyV2Fragment
      }
    }
    orderTimeline {
      id
      name
      color
      serial
      stagePassed
    }
  }
}
Variables
{"input": CreateAndPlaceOrderInput}
Response
{
  "data": {
    "createAndPlaceOrder": {
      "billingAddress": BillingAddress,
      "childOrders": [Order],
      "childOrderCount": 987,
      "itemsCount": 123,
      "orderCode": "abc123",
      "coupon": Coupon,
      "couponDiscountAmount": MoneyV2,
      "createdAt": "2007-12-03T10:15:30Z",
      "customer": Customer,
      "orderDate": 123,
      "deliveryFee": MoneyV2,
      "deliveryTime": "xyz789",
      "deliveryViewed": true,
      "guestId": "4",
      "id": "4",
      "isManualPayment": false,
      "orderCombinedId": "4",
      "orderDetails": [OrderDetail],
      "parentOrderDetails": [OrderDetail],
      "paymentDetails": "xyz789",
      "paymentId": "abc123",
      "paymentStatus": "UNPAID",
      "paymentStatusViewed": true,
      "paymentMethod": PaymentMethod,
      "receipt": "abc123",
      "request": "abc123",
      "shippingAddress": CustomerAddress,
      "mailingAddress": MailingAddress,
      "shop": Shop,
      "shopId": 4,
      "status": OrderStatus,
      "orderStage": "PENDING",
      "trackingNumber": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "userId": "4",
      "viewed": false,
      "totals": OrderTotals,
      "orderTimeline": [OrderTimeline]
    }
  }
}

createCart

Description

Create a new cart with the provided input.

Response

Returns a Cart!

Arguments
Name Description
input - CreateCartInput! Input type for creating a cart.

Example

Query
mutation CreateCart($input: CreateCartInput!) {
  createCart(input: $input) {
    id
    buyerIdentity {
      countryCode
      customer {
        ...CustomerFragment
      }
      deliveryAddress {
        ...DeliveryAddressFragment
      }
      deliveryLocation {
        ...DeliveryLocationFragment
      }
      email
      phone
      deliveryAddressPreferences {
        ...DeliveryAddressPaginatorFragment
      }
    }
    cost {
      checkoutChargeAmount {
        ...MoneyV2Fragment
      }
      subtotalAmount {
        ...MoneyV2Fragment
      }
      subtotalAmountEstimated
      totalAmount {
        ...MoneyV2Fragment
      }
      totalAmountEstimated
      totalDutyAmount {
        ...MoneyV2Fragment
      }
      totalDutyAmountEstimated
      totalTaxAmount {
        ...MoneyV2Fragment
      }
      totalTaxAmountEstimated
      totalDiscountAmount {
        ...MoneyV2Fragment
      }
    }
    token
    isActive
    currencyCode
    userId
    tempUserId
    country
    addressId
    shippingType
    deliveryType
    discount
    couponCode
    couponApplied
    pickupPoint
    referralCode
    product {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    cartItems {
      id
      cartId
      productId
      variantId
      quantity
      discount {
        ...MoneyV2Fragment
      }
      tax {
        ...MoneyV2Fragment
      }
      shopId
      position
      onSale
      subtotalPrice {
        ...MoneyV2Fragment
      }
      totalPrice {
        ...MoneyV2Fragment
      }
      compareAtPrice {
        ...MoneyV2Fragment
      }
      price {
        ...MoneyV2Fragment
      }
      updatedAt
      createdAt
      variant {
        ...ProductVariantFragment
      }
      merchandise {
        ...ProductVariantFragment
      }
      product {
        ...ProductFragment
      }
      cost {
        ...CartItemCostFragment
      }
      availableForSale
      inStock
      attributes {
        ...AttributeFragment
      }
      attribute {
        ...AttributeFragment
      }
    }
    itemsCount
    operation {
      message
      success
      result
    }
    requiresShipping
  }
}
Variables
{"input": CreateCartInput}
Response
{
  "data": {
    "createCart": {
      "id": 4,
      "buyerIdentity": CartBuyerIdentity,
      "cost": CartCost,
      "token": "abc123",
      "isActive": false,
      "currencyCode": "AED",
      "userId": "4",
      "tempUserId": "4",
      "country": "xyz789",
      "addressId": 4,
      "shippingType": "FIXED",
      "deliveryType": "PICKUP",
      "discount": 123.45,
      "couponCode": "abc123",
      "couponApplied": true,
      "pickupPoint": "xyz789",
      "referralCode": "abc123",
      "product": Product,
      "cartItems": [CartItem],
      "itemsCount": 123,
      "operation": actionResponse,
      "requiresShipping": true
    }
  }
}

createOrder

Description

Creates a new order.

Response

Returns an Order!

Arguments
Name Description
input - CreateOrderInput! Input for creating a new order.

Example

Query
mutation CreateOrder($input: CreateOrderInput!) {
  createOrder(input: $input) {
    billingAddress {
      name
      email
      streetAddress
      country
      city
      zip
      phone
    }
    childOrders {
      billingAddress {
        ...BillingAddressFragment
      }
      childOrders {
        ...OrderFragment
      }
      childOrderCount
      itemsCount
      orderCode
      coupon {
        ...CouponFragment
      }
      couponDiscountAmount {
        ...MoneyV2Fragment
      }
      createdAt
      customer {
        ...CustomerFragment
      }
      orderDate
      deliveryFee {
        ...MoneyV2Fragment
      }
      deliveryTime
      deliveryViewed
      guestId
      id
      isManualPayment
      orderCombinedId
      orderDetails {
        ...OrderDetailFragment
      }
      parentOrderDetails {
        ...OrderDetailFragment
      }
      paymentDetails
      paymentId
      paymentStatus
      paymentStatusViewed
      paymentMethod {
        ...PaymentMethodFragment
      }
      receipt
      request
      shippingAddress {
        ...CustomerAddressFragment
      }
      mailingAddress {
        ...MailingAddressFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      status {
        ...OrderStatusFragment
      }
      orderStage
      trackingNumber
      updatedAt
      userId
      viewed
      totals {
        ...OrderTotalsFragment
      }
      orderTimeline {
        ...OrderTimelineFragment
      }
    }
    childOrderCount
    itemsCount
    orderCode
    coupon {
      id
      status
      type
      code
      discount
      discountType
      startDate
      endDate
      description
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
    }
    couponDiscountAmount {
      currencyCode
      amount
    }
    createdAt
    customer {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    orderDate
    deliveryFee {
      currencyCode
      amount
    }
    deliveryTime
    deliveryViewed
    guestId
    id
    isManualPayment
    orderCombinedId
    orderDetails {
      id
      orderId
      userId
      shopId
      productId
      productVariant {
        ...ProductVariantFragment
      }
      price {
        ...MoneyV2Fragment
      }
      tax
      shippingCost {
        ...MoneyV2Fragment
      }
      quantity
      paymentStatus
      shippingType
      pickupPointId
      productReferralCode
    }
    parentOrderDetails {
      id
      orderId
      userId
      shopId
      productId
      productVariant {
        ...ProductVariantFragment
      }
      price {
        ...MoneyV2Fragment
      }
      tax
      shippingCost {
        ...MoneyV2Fragment
      }
      quantity
      paymentStatus
      shippingType
      pickupPointId
      productReferralCode
    }
    paymentDetails
    paymentId
    paymentStatus
    paymentStatusViewed
    paymentMethod {
      id
      name
      description
    }
    receipt
    request
    shippingAddress {
      address1
      address2
      city
      cityCode
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      stateCode
      type
      zip
    }
    mailingAddress {
      address1
      address2
      city
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      type
      zip
    }
    shop {
      id
      name
      handle
      top
      metrics {
        ...ShopMetricsFragment
      }
      logo {
        ...AttachmentFragment
      }
      coverImage {
        ...AttachmentFragment
      }
      sliders {
        ...AttachmentFragment
      }
      description
      seo {
        ...SeoFragment
      }
      status
      createdAt
      social {
        ...SocialAccountFragment
      }
      brand {
        ...BrandingFragment
      }
      products {
        ...ProductPaginatorFragment
      }
    }
    shopId
    status {
      id
      name
      color
      serial
    }
    orderStage
    trackingNumber
    updatedAt
    userId
    viewed
    totals {
      totalPaid {
        ...MoneyV2Fragment
      }
      shippingCost {
        ...MoneyV2Fragment
      }
      subtotal {
        ...MoneyV2Fragment
      }
      totalTax {
        ...MoneyV2Fragment
      }
      totalDiscount {
        ...MoneyV2Fragment
      }
      totalDuty {
        ...MoneyV2Fragment
      }
      netTotal {
        ...MoneyV2Fragment
      }
      grandTotal {
        ...MoneyV2Fragment
      }
      totalRefunded {
        ...MoneyV2Fragment
      }
      discount {
        ...MoneyV2Fragment
      }
    }
    orderTimeline {
      id
      name
      color
      serial
      stagePassed
    }
  }
}
Variables
{"input": CreateOrderInput}
Response
{
  "data": {
    "createOrder": {
      "billingAddress": BillingAddress,
      "childOrders": [Order],
      "childOrderCount": 123,
      "itemsCount": 123,
      "orderCode": "xyz789",
      "coupon": Coupon,
      "couponDiscountAmount": MoneyV2,
      "createdAt": "2007-12-03T10:15:30Z",
      "customer": Customer,
      "orderDate": 123,
      "deliveryFee": MoneyV2,
      "deliveryTime": "xyz789",
      "deliveryViewed": false,
      "guestId": "4",
      "id": "4",
      "isManualPayment": true,
      "orderCombinedId": 4,
      "orderDetails": [OrderDetail],
      "parentOrderDetails": [OrderDetail],
      "paymentDetails": "xyz789",
      "paymentId": "abc123",
      "paymentStatus": "UNPAID",
      "paymentStatusViewed": true,
      "paymentMethod": PaymentMethod,
      "receipt": "xyz789",
      "request": "xyz789",
      "shippingAddress": CustomerAddress,
      "mailingAddress": MailingAddress,
      "shop": Shop,
      "shopId": "4",
      "status": OrderStatus,
      "orderStage": "PENDING",
      "trackingNumber": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "userId": 4,
      "viewed": false,
      "totals": OrderTotals,
      "orderTimeline": [OrderTimeline]
    }
  }
}

createPaypalOrder

Description

Creates a PayPal order.

Response

Returns a PaymentResponsePayload!

Arguments
Name Description
input - CreatePaypalOrderInput! Input for creating a PayPal order.

Example

Query
mutation CreatePaypalOrder($input: CreatePaypalOrderInput!) {
  createPaypalOrder(input: $input) {
    success
    message
    errors
    result {
      code
      status
      orderStatus
      message
      link
      checkoutRequestId
    }
  }
}
Variables
{"input": CreatePaypalOrderInput}
Response
{
  "data": {
    "createPaypalOrder": {
      "success": false,
      "message": "abc123",
      "errors": ["xyz789"],
      "result": PaymentResponseResult
    }
  }
}

createSocialContentComment

Response

Returns a SocialContentComment!

Arguments
Name Description
input - SocialContentCommentInput!

Example

Query
mutation CreateSocialContentComment($input: SocialContentCommentInput!) {
  createSocialContentComment(input: $input) {
    id
    uuid
    parentCommentId
    contentId
    body
    isApproved
    upvotes
    downvotes
    isFlagged
    metadata
    createdAt
    attachments {
      media {
        ...AttachmentFragment
      }
      upvotes
      downvotes
      isFlagged
    }
    commentator {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
  }
}
Variables
{"input": SocialContentCommentInput}
Response
{
  "data": {
    "createSocialContentComment": {
      "id": "4",
      "uuid": "xyz789",
      "parentCommentId": 4,
      "contentId": 4,
      "body": "xyz789",
      "isApproved": false,
      "upvotes": 987,
      "downvotes": 123,
      "isFlagged": false,
      "metadata": {},
      "createdAt": "2007-12-03T10:15:30Z",
      "attachments": [SocialContentCommentAttachment],
      "commentator": SocialAccount
    }
  }
}

createSocialContentItem

Response

Returns a SocialContentItem

Arguments
Name Description
input - CreateSocialContentItemInput!

Example

Query
mutation CreateSocialContentItem($input: CreateSocialContentItemInput!) {
  createSocialContentItem(input: $input) {
    id
    uuid
    handle
    contentType
    title
    template
    privacy
    status
    categoryId
    languageCode
    isApproved
    isFlagged
    body
    metadata
    metrics {
      views
      shares
      likes
      bookmarks
      dislikes
      commentsCount
      productsCount
    }
    createdAt
    updatedAt
    category {
      id
      name
      description
      handle
      isTop
      isFeatured
      priority
      color
    }
    post {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      body
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    story {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      description
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    banner {
      id
      uuid
      title
      description
      url
      items {
        ...SocialItemBannerItemFragment
      }
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    legacyProduct {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      description
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    products {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    interaction {
      liked
      disliked
      viewed
      bookmarked
      uninterested
    }
    creator {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
    comments {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...SocialContentCommentFragment
      }
    }
    tags {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...SocialContentTagFragment
      }
    }
  }
}
Variables
{"input": CreateSocialContentItemInput}
Response
{
  "data": {
    "createSocialContentItem": {
      "id": 4,
      "uuid": "xyz789",
      "handle": "xyz789",
      "contentType": "STORY",
      "title": "abc123",
      "template": "MEDIA_ONLY",
      "privacy": "PUBLIC",
      "status": "DRAFT",
      "categoryId": "4",
      "languageCode": "abc123",
      "isApproved": false,
      "isFlagged": false,
      "body": "xyz789",
      "metadata": {},
      "metrics": ContentMetrics,
      "createdAt": "xyz789",
      "updatedAt": "xyz789",
      "category": SocialContentCategory,
      "post": SocialItemPost,
      "story": SocialItemStory,
      "banner": SocialItemBanner,
      "legacyProduct": SocialItemProduct,
      "products": [Product],
      "interaction": SocialContentInteraction,
      "creator": SocialAccount,
      "comments": SocialContentCommentPaginator,
      "tags": SocialContentTagPaginator
    }
  }
}

createStateDataToken

Response

Returns a CreateStateDataPayload!

Arguments
Name Description
input - CreateStateDataInput!

Example

Query
mutation CreateStateDataToken($input: CreateStateDataInput!) {
  createStateDataToken(input: $input) {
    stateData {
      id
      stateToken
      key
      value
      userId
      redirectUri
      expiresIn
      hitCount
      hitCountLimit
      expiresAt
    }
  }
}
Variables
{"input": CreateStateDataInput}
Response
{
  "data": {
    "createStateDataToken": {"stateData": StateData}
  }
}

createTicket

Description

Create a new ticket.

Response

Returns a Ticket

Arguments
Name Description
input - CreateTicketInput!

Example

Query
mutation CreateTicket($input: CreateTicketInput!) {
  createTicket(input: $input) {
    attachment {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    clientViewed
    code
    createdAt
    details
    feedbackRating
    feedbackType
    feedbackValue
    id
    notificationAccept
    priority
    replies {
      id
      isClient
      ticketId
      reply
      attachment {
        ...AttachmentFragment
      }
      createdAt
      updatedAt
      responder {
        ...CustomerFragment
      }
      sender {
        ...CustomerFragment
      }
    }
    repliesCount
    sender {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    spam
    status
    subject
    updatedAt
    viewed
  }
}
Variables
{"input": CreateTicketInput}
Response
{
  "data": {
    "createTicket": {
      "attachment": Attachment,
      "clientViewed": true,
      "code": 4,
      "createdAt": "2007-12-03T10:15:30Z",
      "details": "abc123",
      "feedbackRating": 123,
      "feedbackType": "xyz789",
      "feedbackValue": "xyz789",
      "id": "4",
      "notificationAccept": false,
      "priority": "LOW",
      "replies": [TicketReply],
      "repliesCount": 987,
      "sender": Customer,
      "spam": true,
      "status": "CLOSED",
      "subject": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "viewed": true
    }
  }
}

createWishlist

Response

Returns a Wishlist

Arguments
Name Description
input - CreateWishlistInput!

Example

Query
mutation CreateWishlist($input: CreateWishlistInput!) {
  createWishlist(input: $input) {
    id
    user {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    sessionId
    userId
    wishlistSlug
    wishlistName
    wishlistToken
    wishlistPrivacy
    isDefault
    expiration
    createdAt
    updatedAt
    itemsCount
    items {
      id
      productId
      quantity
      userId
      wishlistId
      position
      originalPrice
      originalCurrency
      onSale
      createdAt
      updatedAt
      product {
        ...ProductFragment
      }
    }
  }
}
Variables
{"input": CreateWishlistInput}
Response
{
  "data": {
    "createWishlist": {
      "id": 4,
      "user": Customer,
      "sessionId": "xyz789",
      "userId": "4",
      "wishlistSlug": "abc123",
      "wishlistName": "abc123",
      "wishlistToken": "abc123",
      "wishlistPrivacy": true,
      "isDefault": false,
      "expiration": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "itemsCount": 987,
      "items": [WishlistItem]
    }
  }
}

customerLogin

Description

Perform a customer login and return authentication response.

Response

Returns an AuthResponse

Arguments
Name Description
input - CustomerLoginInput!

Example

Query
mutation CustomerLogin($input: CustomerLoginInput!) {
  customerLogin(input: $input) {
    accessToken {
      token
      expiresAt
    }
    customer {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
  }
}
Variables
{"input": CustomerLoginInput}
Response
{
  "data": {
    "customerLogin": {
      "accessToken": AccessToken,
      "customer": Customer
    }
  }
}

customerLogout

Description

Logout the customer and invalidate the session.

Response

Returns a Boolean

Example

Query
mutation CustomerLogout {
  customerLogout
}
Response
{"data": {"customerLogout": false}}

customerSignUp

Description

Perform customer sign-up and return authentication response.

Response

Returns an AuthResponse

Arguments
Name Description
input - CustomerSignUpInput!

Example

Query
mutation CustomerSignUp($input: CustomerSignUpInput!) {
  customerSignUp(input: $input) {
    accessToken {
      token
      expiresAt
    }
    customer {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
  }
}
Variables
{"input": CustomerSignUpInput}
Response
{
  "data": {
    "customerSignUp": {
      "accessToken": AccessToken,
      "customer": Customer
    }
  }
}

deleteAddress

Description

Deletes a customer address

Response

Returns a CustomerAddress

Arguments
Name Description
id - ID!

Example

Query
mutation DeleteAddress($id: ID!) {
  deleteAddress(id: $id) {
    address1
    address2
    city
    cityCode
    company
    country
    countryCode
    firstName
    formatted
    formattedArea
    id
    isDefault
    lastName
    latitude
    longitude
    name
    phone
    province
    provinceCode
    state
    stateCode
    type
    zip
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "deleteAddress": {
      "address1": "xyz789",
      "address2": "xyz789",
      "city": "abc123",
      "cityCode": "4",
      "company": "abc123",
      "country": "abc123",
      "countryCode": "AF",
      "firstName": "abc123",
      "formatted": "xyz789",
      "formattedArea": "xyz789",
      "id": "4",
      "isDefault": false,
      "lastName": "xyz789",
      "latitude": 123.45,
      "longitude": 123.45,
      "name": "xyz789",
      "phone": "abc123",
      "province": "xyz789",
      "provinceCode": "xyz789",
      "state": "xyz789",
      "stateCode": 4,
      "type": "BILLING",
      "zip": "abc123"
    }
  }
}

deleteSocialContentComment

Response

Returns a SocialContentComment

Arguments
Name Description
id - ID!

Example

Query
mutation DeleteSocialContentComment($id: ID!) {
  deleteSocialContentComment(id: $id) {
    id
    uuid
    parentCommentId
    contentId
    body
    isApproved
    upvotes
    downvotes
    isFlagged
    metadata
    createdAt
    attachments {
      media {
        ...AttachmentFragment
      }
      upvotes
      downvotes
      isFlagged
    }
    commentator {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "deleteSocialContentComment": {
      "id": 4,
      "uuid": "abc123",
      "parentCommentId": "4",
      "contentId": 4,
      "body": "xyz789",
      "isApproved": true,
      "upvotes": 123,
      "downvotes": 123,
      "isFlagged": true,
      "metadata": {},
      "createdAt": "2007-12-03T10:15:30Z",
      "attachments": [SocialContentCommentAttachment],
      "commentator": SocialAccount
    }
  }
}

deleteSocialContentItem

Response

Returns a SocialContentItem

Arguments
Name Description
id - ID!

Example

Query
mutation DeleteSocialContentItem($id: ID!) {
  deleteSocialContentItem(id: $id) {
    id
    uuid
    handle
    contentType
    title
    template
    privacy
    status
    categoryId
    languageCode
    isApproved
    isFlagged
    body
    metadata
    metrics {
      views
      shares
      likes
      bookmarks
      dislikes
      commentsCount
      productsCount
    }
    createdAt
    updatedAt
    category {
      id
      name
      description
      handle
      isTop
      isFeatured
      priority
      color
    }
    post {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      body
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    story {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      description
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    banner {
      id
      uuid
      title
      description
      url
      items {
        ...SocialItemBannerItemFragment
      }
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    legacyProduct {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      description
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    products {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    interaction {
      liked
      disliked
      viewed
      bookmarked
      uninterested
    }
    creator {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
    comments {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...SocialContentCommentFragment
      }
    }
    tags {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...SocialContentTagFragment
      }
    }
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "deleteSocialContentItem": {
      "id": "4",
      "uuid": "abc123",
      "handle": "xyz789",
      "contentType": "STORY",
      "title": "xyz789",
      "template": "MEDIA_ONLY",
      "privacy": "PUBLIC",
      "status": "DRAFT",
      "categoryId": "4",
      "languageCode": "abc123",
      "isApproved": true,
      "isFlagged": false,
      "body": "xyz789",
      "metadata": {},
      "metrics": ContentMetrics,
      "createdAt": "abc123",
      "updatedAt": "abc123",
      "category": SocialContentCategory,
      "post": SocialItemPost,
      "story": SocialItemStory,
      "banner": SocialItemBanner,
      "legacyProduct": SocialItemProduct,
      "products": [Product],
      "interaction": SocialContentInteraction,
      "creator": SocialAccount,
      "comments": SocialContentCommentPaginator,
      "tags": SocialContentTagPaginator
    }
  }
}

deleteTicket

Description

Delete a ticket.

Response

Returns a Ticket!

Arguments
Name Description
id - ID!

Example

Query
mutation DeleteTicket($id: ID!) {
  deleteTicket(id: $id) {
    attachment {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    clientViewed
    code
    createdAt
    details
    feedbackRating
    feedbackType
    feedbackValue
    id
    notificationAccept
    priority
    replies {
      id
      isClient
      ticketId
      reply
      attachment {
        ...AttachmentFragment
      }
      createdAt
      updatedAt
      responder {
        ...CustomerFragment
      }
      sender {
        ...CustomerFragment
      }
    }
    repliesCount
    sender {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    spam
    status
    subject
    updatedAt
    viewed
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "deleteTicket": {
      "attachment": Attachment,
      "clientViewed": true,
      "code": "4",
      "createdAt": "2007-12-03T10:15:30Z",
      "details": "xyz789",
      "feedbackRating": 123,
      "feedbackType": "xyz789",
      "feedbackValue": "abc123",
      "id": 4,
      "notificationAccept": false,
      "priority": "LOW",
      "replies": [TicketReply],
      "repliesCount": 123,
      "sender": Customer,
      "spam": false,
      "status": "CLOSED",
      "subject": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "viewed": false
    }
  }
}

deleteWishlist

Description

Mutation to delete a wishlist.

Response

Returns an actionResponse

Arguments
Name Description
wishlistId - ID!

Example

Query
mutation DeleteWishlist($wishlistId: ID!) {
  deleteWishlist(wishlistId: $wishlistId) {
    message
    success
    result
  }
}
Variables
{"wishlistId": "4"}
Response
{
  "data": {
    "deleteWishlist": {
      "message": "abc123",
      "success": false,
      "result": true
    }
  }
}

followAccount

Response

Returns a FollowResponse!

Arguments
Name Description
socialAccountId - ID!

Example

Query
mutation FollowAccount($socialAccountId: ID!) {
  followAccount(socialAccountId: $socialAccountId) {
    success
    message
  }
}
Variables
{"socialAccountId": 4}
Response
{
  "data": {
    "followAccount": {
      "success": true,
      "message": "xyz789"
    }
  }
}

initiateAuthIntent

Description

Initiate an authentication intent for a temporary authentication session.

Arguments
Name Description
token - String! The token associated with the temporary authentication session.
sessionId - String The session ID associated with the temporary authentication session.
type - AuthIntentType! The type of authentication intent to initiate.

Example

Query
mutation InitiateAuthIntent(
  $token: String!,
  $sessionId: String,
  $type: AuthIntentType!
) {
  initiateAuthIntent(
    token: $token,
    sessionId: $sessionId,
    type: $type
  ) {
    token
    interact {
      redirect
      finish
      start
    }
    continue {
      accessToken {
        ...AccessTokenFragment
      }
      customer {
        ...CustomerFragment
      }
      uri
      wait
    }
  }
}
Variables
{
  "token": "xyz789",
  "sessionId": "abc123",
  "type": "AUTH_TOKEN"
}
Response
{
  "data": {
    "initiateAuthIntent": {
      "token": "abc123",
      "interact": AuthIntentInteract,
      "continue": AuthIntentContinue
    }
  }
}

initiateAuthOTP

Description

Initiate the authentication OTP process.

Response

Returns an AuthRequestOtpResponse!

Arguments
Name Description
input - AuthRequestOtpInput! Input for initiating authentication OTP.

Example

Query
mutation InitiateAuthOTP($input: AuthRequestOtpInput!) {
  initiateAuthOTP(input: $input) {
    result
    success
    message
    nextAction
  }
}
Variables
{"input": AuthRequestOtpInput}
Response
{
  "data": {
    "initiateAuthOTP": {
      "result": true,
      "success": true,
      "message": "xyz789",
      "nextAction": "PROCEED"
    }
  }
}

initiateSocialLogin

Description

Initiate social login process and return necessary payload.

Response

Returns an InitiateSocialLoginPayload

Arguments
Name Description
input - InitiateSocialLoginInput! Input for initiating social login.

Example

Query
mutation InitiateSocialLogin($input: InitiateSocialLoginInput!) {
  initiateSocialLogin(input: $input) {
    redirectUri
    state
  }
}
Variables
{"input": InitiateSocialLoginInput}
Response
{
  "data": {
    "initiateSocialLogin": {
      "redirectUri": "abc123",
      "state": "abc123"
    }
  }
}

initiateTempAuthSession

Description

Initiate a temporary authentication session.

Response

Returns a TemporaryAuth!

Arguments
Name Description
input - InitiateTempAuthSessionInput! Input for initiating a temporary authentication session.

Example

Query
mutation InitiateTempAuthSession($input: InitiateTempAuthSessionInput!) {
  initiateTempAuthSession(input: $input) {
    uuid
    email
    phone
    gender
    countryCode
    firstName
    lastName
    username
    ipAddress
    userType
    token
    passwordVerified
    verificationCode
    isActive
    lastLogin
    timezone
    language
    profileImage
    additionalInfo
    securityQuestion
    securityAnswer
    city
    address
    zipCode
    phoneExtension
    dob
    occupation
    company
    website
    socialMedia
    interests
    education
    membershipId
    role
    status
    termsAccepted
    newsletterSubscribed
    twoFactorAuth
    expiry
    lastUsed
    primaryMedium
    secondaryMedium
    authType
    isValid
    referralCode
    identityCreated
    avatar {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    avatarOriginal
  }
}
Variables
{"input": InitiateTempAuthSessionInput}
Response
{
  "data": {
    "initiateTempAuthSession": {
      "uuid": "xyz789",
      "email": "xyz789",
      "phone": "abc123",
      "gender": "abc123",
      "countryCode": "abc123",
      "firstName": "abc123",
      "lastName": "xyz789",
      "username": "xyz789",
      "ipAddress": "abc123",
      "userType": "USER",
      "token": "xyz789",
      "passwordVerified": true,
      "verificationCode": "abc123",
      "isActive": true,
      "lastLogin": "2007-12-03T10:15:30Z",
      "timezone": "xyz789",
      "language": "abc123",
      "profileImage": "abc123",
      "additionalInfo": "xyz789",
      "securityQuestion": "abc123",
      "securityAnswer": "xyz789",
      "city": "xyz789",
      "address": "abc123",
      "zipCode": "xyz789",
      "phoneExtension": "abc123",
      "dob": "xyz789",
      "occupation": "abc123",
      "company": "abc123",
      "website": "abc123",
      "socialMedia": "abc123",
      "interests": "abc123",
      "education": "xyz789",
      "membershipId": "abc123",
      "role": "abc123",
      "status": "abc123",
      "termsAccepted": true,
      "newsletterSubscribed": false,
      "twoFactorAuth": true,
      "expiry": "xyz789",
      "lastUsed": "2007-12-03T10:15:30Z",
      "primaryMedium": "EMAIL",
      "secondaryMedium": "EMAIL",
      "authType": "LOGIN",
      "isValid": true,
      "referralCode": "abc123",
      "identityCreated": true,
      "avatar": Attachment,
      "avatarOriginal": "xyz789"
    }
  }
}

lipaNaMpesa

Description

initiates lipa na mpesa payment stk

Response

Returns a PaymentResponsePayload!

Arguments
Name Description
input - LipaNaMpesaInput!

Example

Query
mutation LipaNaMpesa($input: LipaNaMpesaInput!) {
  lipaNaMpesa(input: $input) {
    success
    message
    errors
    result {
      code
      status
      orderStatus
      message
      link
      checkoutRequestId
    }
  }
}
Variables
{"input": LipaNaMpesaInput}
Response
{
  "data": {
    "lipaNaMpesa": {
      "success": false,
      "message": "xyz789",
      "errors": ["xyz789"],
      "result": PaymentResponseResult
    }
  }
}

lookupTempAuthSession

Description

Lookup a temporary authentication session.

Response

Returns a TemporaryAuth

Arguments
Name Description
input - LookupTempAuthSessionInput! Input for looking up a temporary authentication session.

Example

Query
mutation LookupTempAuthSession($input: LookupTempAuthSessionInput!) {
  lookupTempAuthSession(input: $input) {
    uuid
    email
    phone
    gender
    countryCode
    firstName
    lastName
    username
    ipAddress
    userType
    token
    passwordVerified
    verificationCode
    isActive
    lastLogin
    timezone
    language
    profileImage
    additionalInfo
    securityQuestion
    securityAnswer
    city
    address
    zipCode
    phoneExtension
    dob
    occupation
    company
    website
    socialMedia
    interests
    education
    membershipId
    role
    status
    termsAccepted
    newsletterSubscribed
    twoFactorAuth
    expiry
    lastUsed
    primaryMedium
    secondaryMedium
    authType
    isValid
    referralCode
    identityCreated
    avatar {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    avatarOriginal
  }
}
Variables
{"input": LookupTempAuthSessionInput}
Response
{
  "data": {
    "lookupTempAuthSession": {
      "uuid": "abc123",
      "email": "abc123",
      "phone": "abc123",
      "gender": "xyz789",
      "countryCode": "xyz789",
      "firstName": "abc123",
      "lastName": "abc123",
      "username": "xyz789",
      "ipAddress": "abc123",
      "userType": "USER",
      "token": "abc123",
      "passwordVerified": false,
      "verificationCode": "abc123",
      "isActive": true,
      "lastLogin": "2007-12-03T10:15:30Z",
      "timezone": "abc123",
      "language": "abc123",
      "profileImage": "abc123",
      "additionalInfo": "xyz789",
      "securityQuestion": "abc123",
      "securityAnswer": "abc123",
      "city": "abc123",
      "address": "xyz789",
      "zipCode": "abc123",
      "phoneExtension": "abc123",
      "dob": "abc123",
      "occupation": "abc123",
      "company": "abc123",
      "website": "xyz789",
      "socialMedia": "abc123",
      "interests": "xyz789",
      "education": "abc123",
      "membershipId": "abc123",
      "role": "xyz789",
      "status": "abc123",
      "termsAccepted": true,
      "newsletterSubscribed": false,
      "twoFactorAuth": true,
      "expiry": "xyz789",
      "lastUsed": "2007-12-03T10:15:30Z",
      "primaryMedium": "EMAIL",
      "secondaryMedium": "EMAIL",
      "authType": "LOGIN",
      "isValid": true,
      "referralCode": "abc123",
      "identityCreated": true,
      "avatar": Attachment,
      "avatarOriginal": "xyz789"
    }
  }
}

passwordChange

Description

Change the password for the authenticated customer.

Response

Returns a PasswordChangeResponse

Arguments
Name Description
input - PasswordChangeInput!

Example

Query
mutation PasswordChange($input: PasswordChangeInput!) {
  passwordChange(input: $input) {
    message
    success
  }
}
Variables
{"input": PasswordChangeInput}
Response
{
  "data": {
    "passwordChange": {
      "message": "abc123",
      "success": false
    }
  }
}

passwordForget

Description

Initiate the password reset process for the customer.

Response

Returns a PasswordChangeResponse

Arguments
Name Description
input - PasswordForgetInput!

Example

Query
mutation PasswordForget($input: PasswordForgetInput!) {
  passwordForget(input: $input) {
    message
    success
  }
}
Variables
{"input": PasswordForgetInput}
Response
{
  "data": {
    "passwordForget": {
      "message": "xyz789",
      "success": false
    }
  }
}

passwordReset

Description

Reset the password for the customer.

Response

Returns a PasswordChangeResponse

Arguments
Name Description
input - PasswordResetInput!

Example

Query
mutation PasswordReset($input: PasswordResetInput!) {
  passwordReset(input: $input) {
    message
    success
  }
}
Variables
{"input": PasswordResetInput}
Response
{
  "data": {
    "passwordReset": {
      "message": "xyz789",
      "success": false
    }
  }
}

passwordTokenVerify

Description

Verify the password reset token sent to the customer.

Response

Returns a PasswordChangeResponse

Arguments
Name Description
input - PasswordTokenVerifyInput!

Example

Query
mutation PasswordTokenVerify($input: PasswordTokenVerifyInput!) {
  passwordTokenVerify(input: $input) {
    message
    success
  }
}
Variables
{"input": PasswordTokenVerifyInput}
Response
{
  "data": {
    "passwordTokenVerify": {
      "message": "xyz789",
      "success": true
    }
  }
}

payOnCash

Description

initiates pay on cash payment

Response

Returns a PaymentResponsePayload!

Arguments
Name Description
input - PayOnCashInput!

Example

Query
mutation PayOnCash($input: PayOnCashInput!) {
  payOnCash(input: $input) {
    success
    message
    errors
    result {
      code
      status
      orderStatus
      message
      link
      checkoutRequestId
    }
  }
}
Variables
{"input": PayOnCashInput}
Response
{
  "data": {
    "payOnCash": {
      "success": false,
      "message": "xyz789",
      "errors": ["abc123"],
      "result": PaymentResponseResult
    }
  }
}

payOnCashComplete

Description

marks the payment as complete

Response

Returns a PaymentResponsePayload!

Arguments
Name Description
input - PayOnCashCompleteInput!

Example

Query
mutation PayOnCashComplete($input: PayOnCashCompleteInput!) {
  payOnCashComplete(input: $input) {
    success
    message
    errors
    result {
      code
      status
      orderStatus
      message
      link
      checkoutRequestId
    }
  }
}
Variables
{"input": PayOnCashCompleteInput}
Response
{
  "data": {
    "payOnCashComplete": {
      "success": false,
      "message": "abc123",
      "errors": ["xyz789"],
      "result": PaymentResponseResult
    }
  }
}

removeItemFromWishlist

Description

Mutation to remove items from a wishlist.

Response

Returns a Wishlist

Arguments
Name Description
input - RemoveItemFromWishlistInput!

Example

Query
mutation RemoveItemFromWishlist($input: RemoveItemFromWishlistInput!) {
  removeItemFromWishlist(input: $input) {
    id
    user {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    sessionId
    userId
    wishlistSlug
    wishlistName
    wishlistToken
    wishlistPrivacy
    isDefault
    expiration
    createdAt
    updatedAt
    itemsCount
    items {
      id
      productId
      quantity
      userId
      wishlistId
      position
      originalPrice
      originalCurrency
      onSale
      createdAt
      updatedAt
      product {
        ...ProductFragment
      }
    }
  }
}
Variables
{"input": RemoveItemFromWishlistInput}
Response
{
  "data": {
    "removeItemFromWishlist": {
      "id": "4",
      "user": Customer,
      "sessionId": "xyz789",
      "userId": 4,
      "wishlistSlug": "abc123",
      "wishlistName": "xyz789",
      "wishlistToken": "xyz789",
      "wishlistPrivacy": true,
      "isDefault": true,
      "expiration": "2007-12-03T10:15:30Z",
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "itemsCount": 987,
      "items": [WishlistItem]
    }
  }
}

removeItemsFromCart

Description

Remove items from the cart.

Response

Returns a Cart!

Arguments
Name Description
input - removeItemsFromCartInput!

Example

Query
mutation RemoveItemsFromCart($input: removeItemsFromCartInput!) {
  removeItemsFromCart(input: $input) {
    id
    buyerIdentity {
      countryCode
      customer {
        ...CustomerFragment
      }
      deliveryAddress {
        ...DeliveryAddressFragment
      }
      deliveryLocation {
        ...DeliveryLocationFragment
      }
      email
      phone
      deliveryAddressPreferences {
        ...DeliveryAddressPaginatorFragment
      }
    }
    cost {
      checkoutChargeAmount {
        ...MoneyV2Fragment
      }
      subtotalAmount {
        ...MoneyV2Fragment
      }
      subtotalAmountEstimated
      totalAmount {
        ...MoneyV2Fragment
      }
      totalAmountEstimated
      totalDutyAmount {
        ...MoneyV2Fragment
      }
      totalDutyAmountEstimated
      totalTaxAmount {
        ...MoneyV2Fragment
      }
      totalTaxAmountEstimated
      totalDiscountAmount {
        ...MoneyV2Fragment
      }
    }
    token
    isActive
    currencyCode
    userId
    tempUserId
    country
    addressId
    shippingType
    deliveryType
    discount
    couponCode
    couponApplied
    pickupPoint
    referralCode
    product {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    cartItems {
      id
      cartId
      productId
      variantId
      quantity
      discount {
        ...MoneyV2Fragment
      }
      tax {
        ...MoneyV2Fragment
      }
      shopId
      position
      onSale
      subtotalPrice {
        ...MoneyV2Fragment
      }
      totalPrice {
        ...MoneyV2Fragment
      }
      compareAtPrice {
        ...MoneyV2Fragment
      }
      price {
        ...MoneyV2Fragment
      }
      updatedAt
      createdAt
      variant {
        ...ProductVariantFragment
      }
      merchandise {
        ...ProductVariantFragment
      }
      product {
        ...ProductFragment
      }
      cost {
        ...CartItemCostFragment
      }
      availableForSale
      inStock
      attributes {
        ...AttributeFragment
      }
      attribute {
        ...AttributeFragment
      }
    }
    itemsCount
    operation {
      message
      success
      result
    }
    requiresShipping
  }
}
Variables
{"input": removeItemsFromCartInput}
Response
{
  "data": {
    "removeItemsFromCart": {
      "id": 4,
      "buyerIdentity": CartBuyerIdentity,
      "cost": CartCost,
      "token": "abc123",
      "isActive": false,
      "currencyCode": "AED",
      "userId": 4,
      "tempUserId": "4",
      "country": "xyz789",
      "addressId": "4",
      "shippingType": "FIXED",
      "deliveryType": "PICKUP",
      "discount": 123.45,
      "couponCode": "xyz789",
      "couponApplied": false,
      "pickupPoint": "abc123",
      "referralCode": "xyz789",
      "product": Product,
      "cartItems": [CartItem],
      "itemsCount": 987,
      "operation": actionResponse,
      "requiresShipping": true
    }
  }
}

replyTicketByClient

Description

Reply to a ticket by a client.

Response

Returns a TicketReply!

Arguments
Name Description
input - ReplyTicketByClientInput!

Example

Query
mutation ReplyTicketByClient($input: ReplyTicketByClientInput!) {
  replyTicketByClient(input: $input) {
    id
    isClient
    ticketId
    reply
    attachment {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    createdAt
    updatedAt
    responder {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    sender {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
  }
}
Variables
{"input": ReplyTicketByClientInput}
Response
{
  "data": {
    "replyTicketByClient": {
      "id": 4,
      "isClient": false,
      "ticketId": "4",
      "reply": "abc123",
      "attachment": Attachment,
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "responder": Customer,
      "sender": Customer
    }
  }
}

replyTicketByManager

Description

Reply to a ticket by a manager.

Response

Returns a TicketReply!

Arguments
Name Description
input - ReplyTicketByManagerInput!

Example

Query
mutation ReplyTicketByManager($input: ReplyTicketByManagerInput!) {
  replyTicketByManager(input: $input) {
    id
    isClient
    ticketId
    reply
    attachment {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    createdAt
    updatedAt
    responder {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    sender {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
  }
}
Variables
{"input": ReplyTicketByManagerInput}
Response
{
  "data": {
    "replyTicketByManager": {
      "id": "4",
      "isClient": true,
      "ticketId": 4,
      "reply": "xyz789",
      "attachment": Attachment,
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "responder": Customer,
      "sender": Customer
    }
  }
}

resendAuthOTP

Description

Resend the authentication OTP.

Response

Returns an AuthRequestOtpResponse!

Arguments
Name Description
input - AuthRequestOtpInput! Input for resending authentication OTP.

Example

Query
mutation ResendAuthOTP($input: AuthRequestOtpInput!) {
  resendAuthOTP(input: $input) {
    result
    success
    message
    nextAction
  }
}
Variables
{"input": AuthRequestOtpInput}
Response
{
  "data": {
    "resendAuthOTP": {
      "result": true,
      "success": true,
      "message": "xyz789",
      "nextAction": "PROCEED"
    }
  }
}

setDefaultAddress

Description

Sets a customer address as default

Response

Returns a CustomerAddress

Arguments
Name Description
id - ID!

Example

Query
mutation SetDefaultAddress($id: ID!) {
  setDefaultAddress(id: $id) {
    address1
    address2
    city
    cityCode
    company
    country
    countryCode
    firstName
    formatted
    formattedArea
    id
    isDefault
    lastName
    latitude
    longitude
    name
    phone
    province
    provinceCode
    state
    stateCode
    type
    zip
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "setDefaultAddress": {
      "address1": "abc123",
      "address2": "xyz789",
      "city": "abc123",
      "cityCode": "4",
      "company": "xyz789",
      "country": "abc123",
      "countryCode": "AF",
      "firstName": "abc123",
      "formatted": "abc123",
      "formattedArea": "xyz789",
      "id": "4",
      "isDefault": true,
      "lastName": "abc123",
      "latitude": 123.45,
      "longitude": 123.45,
      "name": "abc123",
      "phone": "abc123",
      "province": "abc123",
      "provinceCode": "xyz789",
      "state": "abc123",
      "stateCode": 4,
      "type": "BILLING",
      "zip": "xyz789"
    }
  }
}

socialLoginCallback

Description

Handle social login callback and return authentication response.

Response

Returns a SocialLoginCallbackAuthResponse

Arguments
Name Description
input - SocialLoginCallbackInput! Input for handling social login callback.

Example

Query
mutation SocialLoginCallback($input: SocialLoginCallbackInput!) {
  socialLoginCallback(input: $input) {
    accessToken
    user {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
  }
}
Variables
{"input": SocialLoginCallbackInput}
Response
{
  "data": {
    "socialLoginCallback": {
      "accessToken": "xyz789",
      "user": Customer
    }
  }
}

unfollowAccount

Response

Returns an UnfollowResponse!

Arguments
Name Description
socialAccountId - ID!

Example

Query
mutation UnfollowAccount($socialAccountId: ID!) {
  unfollowAccount(socialAccountId: $socialAccountId) {
    success
    message
  }
}
Variables
{"socialAccountId": 4}
Response
{
  "data": {
    "unfollowAccount": {
      "success": true,
      "message": "xyz789"
    }
  }
}

updateAddress

Description

Updates an existing customer address

Response

Returns a CustomerAddress

Arguments
Name Description
id - ID!
input - CustomerAddressUpdateInput!

Example

Query
mutation UpdateAddress(
  $id: ID!,
  $input: CustomerAddressUpdateInput!
) {
  updateAddress(
    id: $id,
    input: $input
  ) {
    address1
    address2
    city
    cityCode
    company
    country
    countryCode
    firstName
    formatted
    formattedArea
    id
    isDefault
    lastName
    latitude
    longitude
    name
    phone
    province
    provinceCode
    state
    stateCode
    type
    zip
  }
}
Variables
{
  "id": "4",
  "input": CustomerAddressUpdateInput
}
Response
{
  "data": {
    "updateAddress": {
      "address1": "abc123",
      "address2": "xyz789",
      "city": "xyz789",
      "cityCode": 4,
      "company": "xyz789",
      "country": "xyz789",
      "countryCode": "AF",
      "firstName": "abc123",
      "formatted": "abc123",
      "formattedArea": "xyz789",
      "id": 4,
      "isDefault": false,
      "lastName": "abc123",
      "latitude": 123.45,
      "longitude": 987.65,
      "name": "xyz789",
      "phone": "abc123",
      "province": "abc123",
      "provinceCode": "abc123",
      "state": "abc123",
      "stateCode": "4",
      "type": "BILLING",
      "zip": "xyz789"
    }
  }
}

updateAudienceSocialContentActivity

Response

Returns a SocialContentItem

Arguments
Name Description
id - ID!
activityType - SocialContentActivityType!

Example

Query
mutation UpdateAudienceSocialContentActivity(
  $id: ID!,
  $activityType: SocialContentActivityType!
) {
  updateAudienceSocialContentActivity(
    id: $id,
    activityType: $activityType
  ) {
    id
    uuid
    handle
    contentType
    title
    template
    privacy
    status
    categoryId
    languageCode
    isApproved
    isFlagged
    body
    metadata
    metrics {
      views
      shares
      likes
      bookmarks
      dislikes
      commentsCount
      productsCount
    }
    createdAt
    updatedAt
    category {
      id
      name
      description
      handle
      isTop
      isFeatured
      priority
      color
    }
    post {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      body
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    story {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      description
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    banner {
      id
      uuid
      title
      description
      url
      items {
        ...SocialItemBannerItemFragment
      }
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    legacyProduct {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      description
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    products {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    interaction {
      liked
      disliked
      viewed
      bookmarked
      uninterested
    }
    creator {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
    comments {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...SocialContentCommentFragment
      }
    }
    tags {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...SocialContentTagFragment
      }
    }
  }
}
Variables
{"id": 4, "activityType": "UP_VOTE"}
Response
{
  "data": {
    "updateAudienceSocialContentActivity": {
      "id": "4",
      "uuid": "xyz789",
      "handle": "abc123",
      "contentType": "STORY",
      "title": "abc123",
      "template": "MEDIA_ONLY",
      "privacy": "PUBLIC",
      "status": "DRAFT",
      "categoryId": "4",
      "languageCode": "abc123",
      "isApproved": true,
      "isFlagged": true,
      "body": "xyz789",
      "metadata": {},
      "metrics": ContentMetrics,
      "createdAt": "xyz789",
      "updatedAt": "abc123",
      "category": SocialContentCategory,
      "post": SocialItemPost,
      "story": SocialItemStory,
      "banner": SocialItemBanner,
      "legacyProduct": SocialItemProduct,
      "products": [Product],
      "interaction": SocialContentInteraction,
      "creator": SocialAccount,
      "comments": SocialContentCommentPaginator,
      "tags": SocialContentTagPaginator
    }
  }
}

updateCartQuantity

Description

Update the quantity of an item in the cart.

Response

Returns a Cart!

Arguments
Name Description
input - updateCartQuantityInput!

Example

Query
mutation UpdateCartQuantity($input: updateCartQuantityInput!) {
  updateCartQuantity(input: $input) {
    id
    buyerIdentity {
      countryCode
      customer {
        ...CustomerFragment
      }
      deliveryAddress {
        ...DeliveryAddressFragment
      }
      deliveryLocation {
        ...DeliveryLocationFragment
      }
      email
      phone
      deliveryAddressPreferences {
        ...DeliveryAddressPaginatorFragment
      }
    }
    cost {
      checkoutChargeAmount {
        ...MoneyV2Fragment
      }
      subtotalAmount {
        ...MoneyV2Fragment
      }
      subtotalAmountEstimated
      totalAmount {
        ...MoneyV2Fragment
      }
      totalAmountEstimated
      totalDutyAmount {
        ...MoneyV2Fragment
      }
      totalDutyAmountEstimated
      totalTaxAmount {
        ...MoneyV2Fragment
      }
      totalTaxAmountEstimated
      totalDiscountAmount {
        ...MoneyV2Fragment
      }
    }
    token
    isActive
    currencyCode
    userId
    tempUserId
    country
    addressId
    shippingType
    deliveryType
    discount
    couponCode
    couponApplied
    pickupPoint
    referralCode
    product {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    cartItems {
      id
      cartId
      productId
      variantId
      quantity
      discount {
        ...MoneyV2Fragment
      }
      tax {
        ...MoneyV2Fragment
      }
      shopId
      position
      onSale
      subtotalPrice {
        ...MoneyV2Fragment
      }
      totalPrice {
        ...MoneyV2Fragment
      }
      compareAtPrice {
        ...MoneyV2Fragment
      }
      price {
        ...MoneyV2Fragment
      }
      updatedAt
      createdAt
      variant {
        ...ProductVariantFragment
      }
      merchandise {
        ...ProductVariantFragment
      }
      product {
        ...ProductFragment
      }
      cost {
        ...CartItemCostFragment
      }
      availableForSale
      inStock
      attributes {
        ...AttributeFragment
      }
      attribute {
        ...AttributeFragment
      }
    }
    itemsCount
    operation {
      message
      success
      result
    }
    requiresShipping
  }
}
Variables
{"input": updateCartQuantityInput}
Response
{
  "data": {
    "updateCartQuantity": {
      "id": "4",
      "buyerIdentity": CartBuyerIdentity,
      "cost": CartCost,
      "token": "abc123",
      "isActive": false,
      "currencyCode": "AED",
      "userId": "4",
      "tempUserId": 4,
      "country": "xyz789",
      "addressId": 4,
      "shippingType": "FIXED",
      "deliveryType": "PICKUP",
      "discount": 123.45,
      "couponCode": "abc123",
      "couponApplied": false,
      "pickupPoint": "abc123",
      "referralCode": "abc123",
      "product": Product,
      "cartItems": [CartItem],
      "itemsCount": 123,
      "operation": actionResponse,
      "requiresShipping": false
    }
  }
}

updateCustomer

Description

Update customer information mutation.

Response

Returns a Customer

Arguments
Name Description
input - UpdateCustomerInput

Example

Query
mutation UpdateCustomer($input: UpdateCustomerInput) {
  updateCustomer(input: $input) {
    id
    lastName
    name
    initials
    firstName
    displayName
    email
    phone
    username
    userType
    country
    city
    banned
    avatar {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    avatarOriginal
    createdAt
    updatedAt
    profile {
      id
      avatar {
        ...AttachmentFragment
      }
      bio
      socials {
        ...SocialFragment
      }
      contact
      locale
      currency
      taxExempt
      acceptsSms
      currencyCode
      countryCode
    }
    address {
      address1
      address2
      city
      cityCode
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      stateCode
      type
      zip
    }
    referralCode
    social {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
  }
}
Variables
{"input": UpdateCustomerInput}
Response
{
  "data": {
    "updateCustomer": {
      "id": "4",
      "lastName": "abc123",
      "name": "abc123",
      "initials": "abc123",
      "firstName": "xyz789",
      "displayName": "xyz789",
      "email": "xyz789",
      "phone": "abc123",
      "username": "abc123",
      "userType": "xyz789",
      "country": "abc123",
      "city": "xyz789",
      "banned": false,
      "avatar": Attachment,
      "avatarOriginal": "abc123",
      "createdAt": "2007-12-03T10:15:30Z",
      "updatedAt": "2007-12-03T10:15:30Z",
      "profile": Profile,
      "address": [CustomerAddress],
      "referralCode": "xyz789",
      "social": SocialAccount
    }
  }
}

updateCustomerDeliveryLocation

Description

Update the delivery location of the customer.

Response

Returns a DeliveryLocation!

Arguments
Name Description
input - CustomerDeliveryLocationInput! Input for updating customer delivery location.

Example

Query
mutation UpdateCustomerDeliveryLocation($input: CustomerDeliveryLocationInput!) {
  updateCustomerDeliveryLocation(input: $input) {
    id
    uuid
    countryId
    countyId
    townId
    stationId
    deliveryType
    country {
      id
      name
      code
      regionId
      region {
        ...DeliveryRegionFragment
      }
      counties {
        ...DeliveryCountyFragment
      }
      cities {
        ...DeliveryCityFragment
      }
      options {
        ...CountryDeliveryOptionFragment
      }
    }
    county {
      id
      name
      code
      capital
      city
      lng
      lat
      zipInfo {
        ...DeliveryCountyZipRangeInfoFragment
      }
      countryId
      country {
        ...DeliveryCountryFragment
      }
      deliveryTowns {
        ...DeliveryTownPaginatorFragment
      }
      zipCodes {
        ...DeliveryCountyZipCodePaginatorFragment
      }
    }
    town {
      id
      name
      code
      countyId
      isPrimary
      county {
        ...DeliveryCountyFragment
      }
      stations {
        ...DeliveryStationFragment
      }
      deliveryOptions {
        ...DeliveryOptionFragment
      }
    }
    station {
      id
      name
      code
      deliveryTownId
      isPrimary
      town {
        ...DeliveryTownFragment
      }
      address {
        ...DeliveryStationAddressFragment
      }
      paymentMethods {
        ...DeliveryStationPaymentMethodFragment
      }
      availableTime {
        ...DeliveryStationAvailableTimeFragment
      }
      options {
        ...DeliveryStationOptionFragment
      }
    }
  }
}
Variables
{"input": CustomerDeliveryLocationInput}
Response
{
  "data": {
    "updateCustomerDeliveryLocation": {
      "id": "4",
      "uuid": "xyz789",
      "countryId": 4,
      "countyId": 4,
      "townId": "4",
      "stationId": 4,
      "deliveryType": "PICKUP",
      "country": DeliveryCountry,
      "county": DeliveryCounty,
      "town": DeliveryTown,
      "station": DeliveryStation
    }
  }
}

updateOrder

Description

Updates an existing order.

Response

Returns an Order!

Arguments
Name Description
input - UpdateOrderInput! Input for updating an existing order.

Example

Query
mutation UpdateOrder($input: UpdateOrderInput!) {
  updateOrder(input: $input) {
    billingAddress {
      name
      email
      streetAddress
      country
      city
      zip
      phone
    }
    childOrders {
      billingAddress {
        ...BillingAddressFragment
      }
      childOrders {
        ...OrderFragment
      }
      childOrderCount
      itemsCount
      orderCode
      coupon {
        ...CouponFragment
      }
      couponDiscountAmount {
        ...MoneyV2Fragment
      }
      createdAt
      customer {
        ...CustomerFragment
      }
      orderDate
      deliveryFee {
        ...MoneyV2Fragment
      }
      deliveryTime
      deliveryViewed
      guestId
      id
      isManualPayment
      orderCombinedId
      orderDetails {
        ...OrderDetailFragment
      }
      parentOrderDetails {
        ...OrderDetailFragment
      }
      paymentDetails
      paymentId
      paymentStatus
      paymentStatusViewed
      paymentMethod {
        ...PaymentMethodFragment
      }
      receipt
      request
      shippingAddress {
        ...CustomerAddressFragment
      }
      mailingAddress {
        ...MailingAddressFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      status {
        ...OrderStatusFragment
      }
      orderStage
      trackingNumber
      updatedAt
      userId
      viewed
      totals {
        ...OrderTotalsFragment
      }
      orderTimeline {
        ...OrderTimelineFragment
      }
    }
    childOrderCount
    itemsCount
    orderCode
    coupon {
      id
      status
      type
      code
      discount
      discountType
      startDate
      endDate
      description
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
    }
    couponDiscountAmount {
      currencyCode
      amount
    }
    createdAt
    customer {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    orderDate
    deliveryFee {
      currencyCode
      amount
    }
    deliveryTime
    deliveryViewed
    guestId
    id
    isManualPayment
    orderCombinedId
    orderDetails {
      id
      orderId
      userId
      shopId
      productId
      productVariant {
        ...ProductVariantFragment
      }
      price {
        ...MoneyV2Fragment
      }
      tax
      shippingCost {
        ...MoneyV2Fragment
      }
      quantity
      paymentStatus
      shippingType
      pickupPointId
      productReferralCode
    }
    parentOrderDetails {
      id
      orderId
      userId
      shopId
      productId
      productVariant {
        ...ProductVariantFragment
      }
      price {
        ...MoneyV2Fragment
      }
      tax
      shippingCost {
        ...MoneyV2Fragment
      }
      quantity
      paymentStatus
      shippingType
      pickupPointId
      productReferralCode
    }
    paymentDetails
    paymentId
    paymentStatus
    paymentStatusViewed
    paymentMethod {
      id
      name
      description
    }
    receipt
    request
    shippingAddress {
      address1
      address2
      city
      cityCode
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      stateCode
      type
      zip
    }
    mailingAddress {
      address1
      address2
      city
      company
      country
      countryCode
      firstName
      formatted
      formattedArea
      id
      isDefault
      lastName
      latitude
      longitude
      name
      phone
      province
      provinceCode
      state
      type
      zip
    }
    shop {
      id
      name
      handle
      top
      metrics {
        ...ShopMetricsFragment
      }
      logo {
        ...AttachmentFragment
      }
      coverImage {
        ...AttachmentFragment
      }
      sliders {
        ...AttachmentFragment
      }
      description
      seo {
        ...SeoFragment
      }
      status
      createdAt
      social {
        ...SocialAccountFragment
      }
      brand {
        ...BrandingFragment
      }
      products {
        ...ProductPaginatorFragment
      }
    }
    shopId
    status {
      id
      name
      color
      serial
    }
    orderStage
    trackingNumber
    updatedAt
    userId
    viewed
    totals {
      totalPaid {
        ...MoneyV2Fragment
      }
      shippingCost {
        ...MoneyV2Fragment
      }
      subtotal {
        ...MoneyV2Fragment
      }
      totalTax {
        ...MoneyV2Fragment
      }
      totalDiscount {
        ...MoneyV2Fragment
      }
      totalDuty {
        ...MoneyV2Fragment
      }
      netTotal {
        ...MoneyV2Fragment
      }
      grandTotal {
        ...MoneyV2Fragment
      }
      totalRefunded {
        ...MoneyV2Fragment
      }
      discount {
        ...MoneyV2Fragment
      }
    }
    orderTimeline {
      id
      name
      color
      serial
      stagePassed
    }
  }
}
Variables
{"input": UpdateOrderInput}
Response
{
  "data": {
    "updateOrder": {
      "billingAddress": BillingAddress,
      "childOrders": [Order],
      "childOrderCount": 123,
      "itemsCount": 987,
      "orderCode": "abc123",
      "coupon": Coupon,
      "couponDiscountAmount": MoneyV2,
      "createdAt": "2007-12-03T10:15:30Z",
      "customer": Customer,
      "orderDate": 123,
      "deliveryFee": MoneyV2,
      "deliveryTime": "abc123",
      "deliveryViewed": false,
      "guestId": 4,
      "id": 4,
      "isManualPayment": false,
      "orderCombinedId": 4,
      "orderDetails": [OrderDetail],
      "parentOrderDetails": [OrderDetail],
      "paymentDetails": "abc123",
      "paymentId": "xyz789",
      "paymentStatus": "UNPAID",
      "paymentStatusViewed": false,
      "paymentMethod": PaymentMethod,
      "receipt": "xyz789",
      "request": "abc123",
      "shippingAddress": CustomerAddress,
      "mailingAddress": MailingAddress,
      "shop": Shop,
      "shopId": 4,
      "status": OrderStatus,
      "orderStage": "PENDING",
      "trackingNumber": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "userId": 4,
      "viewed": true,
      "totals": OrderTotals,
      "orderTimeline": [OrderTimeline]
    }
  }
}

updateShippingAddressLocation

Description

Updates the location of a customer's shipping address

Response

Returns a CustomerAddress

Arguments
Name Description
id - ID!

Example

Query
mutation UpdateShippingAddressLocation($id: ID!) {
  updateShippingAddressLocation(id: $id) {
    address1
    address2
    city
    cityCode
    company
    country
    countryCode
    firstName
    formatted
    formattedArea
    id
    isDefault
    lastName
    latitude
    longitude
    name
    phone
    province
    provinceCode
    state
    stateCode
    type
    zip
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "updateShippingAddressLocation": {
      "address1": "xyz789",
      "address2": "abc123",
      "city": "xyz789",
      "cityCode": "4",
      "company": "xyz789",
      "country": "xyz789",
      "countryCode": "AF",
      "firstName": "xyz789",
      "formatted": "xyz789",
      "formattedArea": "abc123",
      "id": 4,
      "isDefault": false,
      "lastName": "xyz789",
      "latitude": 987.65,
      "longitude": 987.65,
      "name": "abc123",
      "phone": "xyz789",
      "province": "abc123",
      "provinceCode": "xyz789",
      "state": "abc123",
      "stateCode": 4,
      "type": "BILLING",
      "zip": "xyz789"
    }
  }
}

updateSocialContentComment

Response

Returns a SocialContentComment!

Arguments
Name Description
id - ID!
input - SocialContentCommentInput!

Example

Query
mutation UpdateSocialContentComment(
  $id: ID!,
  $input: SocialContentCommentInput!
) {
  updateSocialContentComment(
    id: $id,
    input: $input
  ) {
    id
    uuid
    parentCommentId
    contentId
    body
    isApproved
    upvotes
    downvotes
    isFlagged
    metadata
    createdAt
    attachments {
      media {
        ...AttachmentFragment
      }
      upvotes
      downvotes
      isFlagged
    }
    commentator {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
  }
}
Variables
{"id": 4, "input": SocialContentCommentInput}
Response
{
  "data": {
    "updateSocialContentComment": {
      "id": 4,
      "uuid": "abc123",
      "parentCommentId": 4,
      "contentId": 4,
      "body": "xyz789",
      "isApproved": true,
      "upvotes": 987,
      "downvotes": 123,
      "isFlagged": true,
      "metadata": {},
      "createdAt": "2007-12-03T10:15:30Z",
      "attachments": [SocialContentCommentAttachment],
      "commentator": SocialAccount
    }
  }
}

updateSocialContentItem

Response

Returns a SocialContentItem

Arguments
Name Description
id - ID!
input - UpdateSocialContentItemInput!

Example

Query
mutation UpdateSocialContentItem(
  $id: ID!,
  $input: UpdateSocialContentItemInput!
) {
  updateSocialContentItem(
    id: $id,
    input: $input
  ) {
    id
    uuid
    handle
    contentType
    title
    template
    privacy
    status
    categoryId
    languageCode
    isApproved
    isFlagged
    body
    metadata
    metrics {
      views
      shares
      likes
      bookmarks
      dislikes
      commentsCount
      productsCount
    }
    createdAt
    updatedAt
    category {
      id
      name
      description
      handle
      isTop
      isFeatured
      priority
      color
    }
    post {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      body
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    story {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      description
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    banner {
      id
      uuid
      title
      description
      url
      items {
        ...SocialItemBannerItemFragment
      }
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    legacyProduct {
      id
      uuid
      media {
        ...AttachmentFragment
      }
      title
      description
      url
      products {
        ...ContentProductsPaginatorFragment
      }
    }
    products {
      approved
      brand {
        ...BrandFragment
      }
      brandId
      categories {
        ...ProductCategoryFragment
      }
      category {
        ...ProductCategoryFragment
      }
      categoryId
      collections {
        ...CollectionFragment
      }
      compareAtPriceAmount {
        ...MoneyV2Fragment
      }
      currency
      customType
      description
      code
      discount
      discountType
      featured
      id
      image {
        ...AttachmentFragment
      }
      keywords
      name
      options {
        ...ProductPropertyFragment
      }
      photos {
        ...AttachmentFragment
      }
      priceAmount {
        ...MoneyV2Fragment
      }
      priceRange
      rating
      refundable
      reviews {
        ...ProductReviewFragment
      }
      reviewsCount
      seo {
        ...SeoFragment
      }
      shop {
        ...ShopFragment
      }
      shopId
      showUnitPrice
      handle
      specifications {
        ...ProductSpecificationFragment
      }
      tags {
        ...ProductTagFragment
      }
      templateId
      thumbnailImage {
        ...AttachmentFragment
      }
      todaysDeal
      type
      unit
      variants {
        ...ProductVariantFragment
      }
      variantsCount
      publishedAt
      updatedAt
    }
    interaction {
      liked
      disliked
      viewed
      bookmarked
      uninterested
    }
    creator {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
    comments {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...SocialContentCommentFragment
      }
    }
    tags {
      paginatorInfo {
        ...PaginatorInfoFragment
      }
      data {
        ...SocialContentTagFragment
      }
    }
  }
}
Variables
{"id": 4, "input": UpdateSocialContentItemInput}
Response
{
  "data": {
    "updateSocialContentItem": {
      "id": 4,
      "uuid": "xyz789",
      "handle": "xyz789",
      "contentType": "STORY",
      "title": "xyz789",
      "template": "MEDIA_ONLY",
      "privacy": "PUBLIC",
      "status": "DRAFT",
      "categoryId": 4,
      "languageCode": "xyz789",
      "isApproved": true,
      "isFlagged": false,
      "body": "xyz789",
      "metadata": {},
      "metrics": ContentMetrics,
      "createdAt": "abc123",
      "updatedAt": "abc123",
      "category": SocialContentCategory,
      "post": SocialItemPost,
      "story": SocialItemStory,
      "banner": SocialItemBanner,
      "legacyProduct": SocialItemProduct,
      "products": [Product],
      "interaction": SocialContentInteraction,
      "creator": SocialAccount,
      "comments": SocialContentCommentPaginator,
      "tags": SocialContentTagPaginator
    }
  }
}

updateTempAuthSession

Description

Update a temporary authentication session.

Response

Returns a TemporaryAuth!

Arguments
Name Description
token - String! The token associated with the temporary authentication session.
sessionId - String The session ID associated with the temporary authentication session.
input - TemporaryAuthInput! Input for updating a temporary authentication session.

Example

Query
mutation UpdateTempAuthSession(
  $token: String!,
  $sessionId: String,
  $input: TemporaryAuthInput!
) {
  updateTempAuthSession(
    token: $token,
    sessionId: $sessionId,
    input: $input
  ) {
    uuid
    email
    phone
    gender
    countryCode
    firstName
    lastName
    username
    ipAddress
    userType
    token
    passwordVerified
    verificationCode
    isActive
    lastLogin
    timezone
    language
    profileImage
    additionalInfo
    securityQuestion
    securityAnswer
    city
    address
    zipCode
    phoneExtension
    dob
    occupation
    company
    website
    socialMedia
    interests
    education
    membershipId
    role
    status
    termsAccepted
    newsletterSubscribed
    twoFactorAuth
    expiry
    lastUsed
    primaryMedium
    secondaryMedium
    authType
    isValid
    referralCode
    identityCreated
    avatar {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    avatarOriginal
  }
}
Variables
{
  "token": "xyz789",
  "sessionId": "abc123",
  "input": TemporaryAuthInput
}
Response
{
  "data": {
    "updateTempAuthSession": {
      "uuid": "xyz789",
      "email": "xyz789",
      "phone": "abc123",
      "gender": "xyz789",
      "countryCode": "xyz789",
      "firstName": "xyz789",
      "lastName": "xyz789",
      "username": "abc123",
      "ipAddress": "xyz789",
      "userType": "USER",
      "token": "xyz789",
      "passwordVerified": false,
      "verificationCode": "xyz789",
      "isActive": false,
      "lastLogin": "2007-12-03T10:15:30Z",
      "timezone": "abc123",
      "language": "abc123",
      "profileImage": "xyz789",
      "additionalInfo": "xyz789",
      "securityQuestion": "xyz789",
      "securityAnswer": "abc123",
      "city": "abc123",
      "address": "abc123",
      "zipCode": "abc123",
      "phoneExtension": "xyz789",
      "dob": "xyz789",
      "occupation": "xyz789",
      "company": "xyz789",
      "website": "xyz789",
      "socialMedia": "abc123",
      "interests": "abc123",
      "education": "xyz789",
      "membershipId": "xyz789",
      "role": "abc123",
      "status": "abc123",
      "termsAccepted": true,
      "newsletterSubscribed": false,
      "twoFactorAuth": true,
      "expiry": "abc123",
      "lastUsed": "2007-12-03T10:15:30Z",
      "primaryMedium": "EMAIL",
      "secondaryMedium": "EMAIL",
      "authType": "LOGIN",
      "isValid": false,
      "referralCode": "abc123",
      "identityCreated": false,
      "avatar": Attachment,
      "avatarOriginal": "xyz789"
    }
  }
}

updateTicketByManager

Description

Update a ticket by a manager.

Response

Returns a Ticket!

Arguments
Name Description
input - UpdateTicketByManagerInput!

Example

Query
mutation UpdateTicketByManager($input: UpdateTicketByManagerInput!) {
  updateTicketByManager(input: $input) {
    attachment {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    clientViewed
    code
    createdAt
    details
    feedbackRating
    feedbackType
    feedbackValue
    id
    notificationAccept
    priority
    replies {
      id
      isClient
      ticketId
      reply
      attachment {
        ...AttachmentFragment
      }
      createdAt
      updatedAt
      responder {
        ...CustomerFragment
      }
      sender {
        ...CustomerFragment
      }
    }
    repliesCount
    sender {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    spam
    status
    subject
    updatedAt
    viewed
  }
}
Variables
{"input": UpdateTicketByManagerInput}
Response
{
  "data": {
    "updateTicketByManager": {
      "attachment": Attachment,
      "clientViewed": true,
      "code": "4",
      "createdAt": "2007-12-03T10:15:30Z",
      "details": "xyz789",
      "feedbackRating": 123,
      "feedbackType": "abc123",
      "feedbackValue": "abc123",
      "id": "4",
      "notificationAccept": false,
      "priority": "LOW",
      "replies": [TicketReply],
      "repliesCount": 123,
      "sender": Customer,
      "spam": false,
      "status": "CLOSED",
      "subject": "abc123",
      "updatedAt": "2007-12-03T10:15:30Z",
      "viewed": false
    }
  }
}

updateTicketFeedback

Description

Update feedback for a ticket.

Response

Returns a Ticket!

Arguments
Name Description
input - TicketFeedbackInput!

Example

Query
mutation UpdateTicketFeedback($input: TicketFeedbackInput!) {
  updateTicketFeedback(input: $input) {
    attachment {
      thumbnail
      original
      id
      externalId
      uuid
      type
      fileName
      src
    }
    clientViewed
    code
    createdAt
    details
    feedbackRating
    feedbackType
    feedbackValue
    id
    notificationAccept
    priority
    replies {
      id
      isClient
      ticketId
      reply
      attachment {
        ...AttachmentFragment
      }
      createdAt
      updatedAt
      responder {
        ...CustomerFragment
      }
      sender {
        ...CustomerFragment
      }
    }
    repliesCount
    sender {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
    spam
    status
    subject
    updatedAt
    viewed
  }
}
Variables
{"input": TicketFeedbackInput}
Response
{
  "data": {
    "updateTicketFeedback": {
      "attachment": Attachment,
      "clientViewed": true,
      "code": 4,
      "createdAt": "2007-12-03T10:15:30Z",
      "details": "xyz789",
      "feedbackRating": 987,
      "feedbackType": "xyz789",
      "feedbackValue": "abc123",
      "id": "4",
      "notificationAccept": false,
      "priority": "LOW",
      "replies": [TicketReply],
      "repliesCount": 123,
      "sender": Customer,
      "spam": false,
      "status": "CLOSED",
      "subject": "xyz789",
      "updatedAt": "2007-12-03T10:15:30Z",
      "viewed": false
    }
  }
}

verifyAuthOTP

Description

Verify the authentication OTP.

Response

Returns an AuthRequestOtpResponse!

Arguments
Name Description
input - AuthVerifyOtpInput! Input for verifying authentication OTP.

Example

Query
mutation VerifyAuthOTP($input: AuthVerifyOtpInput!) {
  verifyAuthOTP(input: $input) {
    result
    success
    message
    nextAction
  }
}
Variables
{"input": AuthVerifyOtpInput}
Response
{
  "data": {
    "verifyAuthOTP": {
      "result": false,
      "success": true,
      "message": "abc123",
      "nextAction": "PROCEED"
    }
  }
}

verifyCoupon

Description

Verifies the validity of a coupon with the given code.

Response

Returns a VerifyCouponResponse

Arguments
Name Description
code - String!

Example

Query
mutation VerifyCoupon($code: String!) {
  verifyCoupon(code: $code) {
    isValid
    coupon {
      id
      status
      type
      code
      discount
      discountType
      startDate
      endDate
      description
      banners {
        ...AttachmentFragment
      }
      image {
        ...AttachmentFragment
      }
    }
  }
}
Variables
{"code": "abc123"}
Response
{
  "data": {
    "verifyCoupon": {"isValid": true, "coupon": Coupon}
  }
}

verifyToken

Description

Verify a token and return authentication response.

Response

Returns an AuthResponse

Arguments
Name Description
input - verifyTokenInput! Input for verifying a token.

Example

Query
mutation VerifyToken($input: verifyTokenInput!) {
  verifyToken(input: $input) {
    accessToken {
      token
      expiresAt
    }
    customer {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      username
      userType
      country
      city
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      createdAt
      updatedAt
      profile {
        ...ProfileFragment
      }
      address {
        ...CustomerAddressFragment
      }
      referralCode
      social {
        ...SocialAccountFragment
      }
    }
  }
}
Variables
{"input": verifyTokenInput}
Response
{
  "data": {
    "verifyToken": {
      "accessToken": AccessToken,
      "customer": Customer
    }
  }
}

voteOnSocialContentComment

Response

Returns a SocialContentComment!

Arguments
Name Description
id - ID!
voteType - SocialVoteType!

Example

Query
mutation VoteOnSocialContentComment(
  $id: ID!,
  $voteType: SocialVoteType!
) {
  voteOnSocialContentComment(
    id: $id,
    voteType: $voteType
  ) {
    id
    uuid
    parentCommentId
    contentId
    body
    isApproved
    upvotes
    downvotes
    isFlagged
    metadata
    createdAt
    attachments {
      media {
        ...AttachmentFragment
      }
      upvotes
      downvotes
      isFlagged
    }
    commentator {
      id
      lastName
      name
      initials
      firstName
      displayName
      email
      phone
      bio
      slogan
      username
      banned
      avatar {
        ...AttachmentFragment
      }
      avatarOriginal
      metrics {
        ...SocialAccountMetricsFragment
      }
      audienceInteraction {
        ...AudienceFollowingStatusFragment
      }
      contentItems {
        ...SocialContentItemPaginatorFragment
      }
      following {
        ...SocialAccountConnectionFragment
      }
      followers {
        ...SocialAccountConnectionFragment
      }
    }
  }
}
Variables
{"id": "4", "voteType": "UP_VOTE"}
Response
{
  "data": {
    "voteOnSocialContentComment": {
      "id": 4,
      "uuid": "xyz789",
      "parentCommentId": 4,
      "contentId": "4",
      "body": "xyz789",
      "isApproved": true,
      "upvotes": 123,
      "downvotes": 987,
      "isFlagged": true,
      "metadata": {},
      "createdAt": "2007-12-03T10:15:30Z",
      "attachments": [SocialContentCommentAttachment],
      "commentator": SocialAccount
    }
  }
}

Types

AccessToken

Description

Type representing an access token.

Fields
Field Name Description
token - String! The token value.
expiresAt - String The expiration date and time of the token.
Example
{
  "token": "abc123",
  "expiresAt": "xyz789"
}

AddItemToWishlistInput

Description

Input object for adding an item to a wishlist.

Fields
Input Field Description
productId - ID! The ID of the product to add to the wishlist.
quantity - Int! The quantity of the product to add.
position - Int The position of the item in the wishlist.
originalPrice - MoneyInput The original price of the product.
originalCurrency - CurrencyCode The original currency code of the product.
onSale - Boolean! Indicates whether the product is on sale.
wishlistSlug - String The slug of the wishlist.
wishlistName - String The name of the wishlist.
wishlistPrivacy - Boolean Indicates the privacy status of the wishlist.
wishlistToken - ID The token of the wishlist.
isDefault - Int Indicates whether the wishlist is default.
Example
{
  "productId": 4,
  "quantity": 987,
  "position": 987,
  "originalPrice": MoneyInput,
  "originalCurrency": "AED",
  "onSale": true,
  "wishlistSlug": "xyz789",
  "wishlistName": "xyz789",
  "wishlistPrivacy": true,
  "wishlistToken": 4,
  "isDefault": 987
}

AddressType

Description

Address type

Values
Enum Value Description

BILLING

Billing

SHIPPING

Shipping

CHECKOUT

Checkout
Example
"BILLING"

ApprovalStatus

Description

Approval status

Values
Enum Value Description

REJECTED

Rejected

PENDING

Pending

APPROVED

Approved
Example
"REJECTED"

Article

Description

Type representing an article.

Fields
Field Name Description
id - ID! The ID of the article.
handle - String! The handle of the article.
categoryId - ID! The category ID of the article.
category - ArticleCategory! The category to which the article belongs.
type - ArticleType! The type of the article.
title - String! The title of the article.
tags - [String] The tags associated with the article.
keywords - [String] The keywords associated with the article.
excerpt - String The excerpt of the article.
content - String The content of the article.
featuredImage - Attachment The featured image attached to the article.
seo - Seo The SEO information associated with the article.
banner - Attachment The banner image attached to the article.
featured - Boolean! Indicates whether the article is featured.
top - Boolean! Indicates whether the article is on top.
likes - Int! The number of likes the article has received.
views - Int! The number of views the article has received.
shares - Int The number of shares the article has received.
externalLink - String The external link associated with the article.
productIds - [String] The IDs of the products associated with the article.
createdAt - DateTime! The date and time when the article was created.
updatedAt - DateTime! The date and time when the article was last updated.
Example
{
  "id": "4",
  "handle": "xyz789",
  "categoryId": 4,
  "category": ArticleCategory,
  "type": "BLOG",
  "title": "abc123",
  "tags": ["abc123"],
  "keywords": ["abc123"],
  "excerpt": "xyz789",
  "content": "abc123",
  "featuredImage": Attachment,
  "seo": Seo,
  "banner": Attachment,
  "featured": true,
  "top": false,
  "likes": 987,
  "views": 123,
  "shares": 987,
  "externalLink": "abc123",
  "productIds": ["abc123"],
  "createdAt": "2007-12-03T10:15:30Z",
  "updatedAt": "2007-12-03T10:15:30Z"
}

ArticleCategory

Fields
Field Name Description
id - ID! The unique identifier for the category.
parentId - ID The ID of the parent category, if there is one.
level - Int! The level of the category in the category hierarchy.
orderLevel - String A string representing the order of the category within its level.
name - String! The name of the category.
displayName - String A display name for the category.
banners - [Attachment] An attachment (such as an image) to be used as a banners for the category.
image - Attachment An attachment (such as an image) to be used as a banners for the category.
icon - Attachment An attachment (such as an image) to be used as an icon for the category.
top - Boolean! A boolean indicating whether the category is a top-level category.
featured - Boolean! A boolean indicating whether the category is a featured category.
handle - String! A string representing the URL handle for the category.
type - ArticleType The type of the category (such as "electronics" or "clothing").
seo - Seo The seo for the category in metadata (such as in search engine results).
parent - ArticleCategory The parent category, if there is one.
children - [ArticleCategory] An array of child categories for this category.
childrenCount - Int! The number of child categories for this category.
articlesCount - Int! The number of articles associated with this category.
parentMain - ArticleCategory The top parent of the category
status - ModelStatus!
Example
{
  "id": "4",
  "parentId": 4,
  "level": 987,
  "orderLevel": "xyz789",
  "name": "xyz789",
  "displayName": "abc123",
  "banners": [Attachment],
  "image": Attachment,
  "icon": Attachment,
  "top": false,
  "featured": false,
  "handle": "xyz789",
  "type": "BLOG",
  "seo": Seo,
  "parent": ArticleCategory,
  "children": [ArticleCategory],
  "childrenCount": 123,
  "articlesCount": 987,
  "parentMain": ArticleCategory,
  "status": "DRAFT"
}

ArticleCategoryPaginator

Description

A paginated list of ArticleCategory items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [ArticleCategory!]! A list of ArticleCategory items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [ArticleCategory]
}

ArticlePaginator

Description

A paginated list of Article items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Article!]! A list of Article items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Article]
}

ArticleType

Description

Article type

Values
Enum Value Description

BLOG

Blog

QUESTION

Question

REVIEW

Review

OPINION

Opinion

NEWS

News

SHORTS

Shorts

SPONSORED

Sponsored

INVESTIGATIVE

Investigative

FEATURE

Feature

ESSAY

Essay

LIFESTYLE

Lifestyle

HOW_TO

How to
Example
"BLOG"

Attachment

Fields
Field Name Description
thumbnail - String
original - String
id - ID!
externalId - Int
uuid - String
type - String
fileName - String
src - String
Example
{
  "thumbnail": "xyz789",
  "original": "xyz789",
  "id": "4",
  "externalId": 123,
  "uuid": "xyz789",
  "type": "abc123",
  "fileName": "abc123",
  "src": "xyz789"
}

AttachmentInput

Fields
Input Field Description
id - ID!
src - String
uuid - String!
type - String
fileName - String
category - String
extension - String
dimension - String
file - fileObject
externalId - ID
Example
{
  "id": "4",
  "src": "xyz789",
  "uuid": "abc123",
  "type": "xyz789",
  "fileName": "xyz789",
  "category": "xyz789",
  "extension": "xyz789",
  "dimension": "abc123",
  "file": fileObject,
  "externalId": 4
}

Attribute

Fields
Field Name Description
id - ID! " The ID of the attribute
name - String " The name of the attribute
level - String " The level of the attribute
value - String " The value of the attribute
values - [AttributeValue] " The attribute values for the attribute
Example
{
  "id": "4",
  "name": "xyz789",
  "level": "xyz789",
  "value": "xyz789",
  "values": [AttributeValue]
}

AttributeValue

Fields
Field Name Description
id - ID! " The ID of the attribute value
attributeId - ID! " The ID of the attribute
value - String! " The value
colorCode - String " The color code of the attribute value
Example
{
  "id": 4,
  "attributeId": "4",
  "value": "abc123",
  "colorCode": "xyz789"
}

AttributesFilter

Description

Represents a filter for attributes.

Fields
Field Name Description
attributeId - ID! ID of the attribute.
values - [String!]! Values associated with the attribute filter.
Example
{
  "attributeId": "4",
  "values": ["abc123"]
}

AttributesFilterInput

Description

Input for filtering attributes.

Fields
Input Field Description
attributeId - ID! ID of the attribute.
values - [String!]! Values associated with the attribute filter.
Example
{"attributeId": 4, "values": ["xyz789"]}

AudienceFollowingStatus

Fields
Field Name Description
following - Boolean!
notifications - Boolean!
favorite - Boolean!
Example
{"following": true, "notifications": true, "favorite": true}

AuthAudienceType

Description

Auth audience type

Values
Enum Value Description

USER

User

CUSTOMER

Customer
Example
"USER"

AuthIntentContinue

Description

Type representing the continuation details for authentication intent.

Fields
Field Name Description
accessToken - AccessToken The access token for the authenticated user.
customer - Customer The authenticated customer.
uri - String! The URI associated with the continuation of the authentication intent.
wait - Int Wait time associated with the continuation of the authentication intent.
Example
{
  "accessToken": AccessToken,
  "customer": Customer,
  "uri": "xyz789",
  "wait": 123
}

AuthIntentInteract

Description

Type representing the interaction details for authentication intent.

Fields
Field Name Description
redirect - String Redirect URL for the authentication intent.
finish - String Finish URL for the authentication intent.
start - String Start URL for the authentication intent.
Example
{
  "redirect": "xyz789",
  "finish": "xyz789",
  "start": "xyz789"
}

AuthIntentType

Description

Enum representing different types of authentication intents.

Values
Enum Value Description

AUTH_TOKEN

Authentication intent using an auth token.
Example
"AUTH_TOKEN"

AuthNextActionType

Description

Auth next action type

Values
Enum Value Description

PROCEED

Proceed

ABORT

Abort

RETRY

Retry

WARN

Warn

WAIT

Wait

CHANGE

Change

REGISTER

Register

LOGIN

Login

COMPLETE_REGISTRATION_DETAIL

Complete registration detail
Example
"PROCEED"

AuthOtpVerificationStatusResponse

Description

Type representing the response for OTP verification status.

Fields
Field Name Description
result - Boolean! Indicates the result of the OTP verification status.
success - Boolean! Indicates whether the OTP verification was successful.
message - String! A message providing details about the OTP verification status.
isVerified - Boolean! Indicates whether the OTP is verified.
nextAction - AuthNextActionType! The next action required for authentication.
Example
{
  "result": true,
  "success": true,
  "message": "abc123",
  "isVerified": true,
  "nextAction": "PROCEED"
}

AuthRequestOtpInput

Description

Input type for requesting OTP.

Fields
Input Field Description
phone - String The phone number for OTP request.
email - String The email address for OTP request.
authType - OtpAuthType! The authentication type for OTP request.
Example
{
  "phone": "xyz789",
  "email": "xyz789",
  "authType": "REGISTRATION"
}

AuthRequestOtpResponse

Description

Type representing the response for requesting OTP.

Fields
Field Name Description
result - Boolean! Indicates the result of the OTP request.
success - Boolean! Indicates whether the OTP request was successful.
message - String! A message providing details about the OTP request.
nextAction - AuthNextActionType! The next action required for authentication.
Example
{
  "result": false,
  "success": true,
  "message": "xyz789",
  "nextAction": "PROCEED"
}

AuthResponse

Description

Type representing the authentication response.

Fields
Field Name Description
accessToken - AccessToken The access token associated with the authentication.
customer - Customer The customer associated with the authentication.
Example
{
  "accessToken": AccessToken,
  "customer": Customer
}

AuthVerifyOtpInput

Description

Input type for verifying OTP.

Fields
Input Field Description
phone - String The phone number for OTP verification.
email - String The email address for OTP verification.
authType - OtpAuthType! The authentication type for OTP verification.
code - Int! The OTP code for verification.
Example
{
  "phone": "abc123",
  "email": "xyz789",
  "authType": "REGISTRATION",
  "code": 987
}

BillingAddress

Fields
Field Name Description
name - String The full name of the person associated with the billing address.
email - String The email address associated with the billing address.
streetAddress - String The street address of the billing address, including any apartment or suite numbers.
country - String The name of the country of the billing address.
city - String The name of the city of the billing address.
zip - String The postal code or zip of the billing address.
phone - String The phone number associated with the billing address.
Example
{
  "name": "abc123",
  "email": "abc123",
  "streetAddress": "abc123",
  "country": "abc123",
  "city": "xyz789",
  "zip": "xyz789",
  "phone": "xyz789"
}

Boolean

Description

The Boolean scalar type represents true or false.

Brand

Description

Type representing a brand.

Fields
Field Name Description
id - ID! The unique identifier of the brand.
name - String! The name of the brand.
description - String! The description of the brand.
logo - Attachment The logo of the brand.
top - Boolean! Indicates if the brand is top.
handle - String The handle of the brand.
countdown - Int! The countdown of the brand.
featured - Boolean! Indicates if the brand is featured.
seo - Seo! The SEO information associated with the brand.
productsCount - Int The number of products associated with the brand.
images - Attachment The images associated with the brand.
banners - [Attachment!] The banners associated with the brand.
Example
{
  "id": "4",
  "name": "xyz789",
  "description": "xyz789",
  "logo": Attachment,
  "top": false,
  "handle": "xyz789",
  "countdown": 123,
  "featured": false,
  "seo": Seo,
  "productsCount": 987,
  "images": Attachment,
  "banners": [Attachment]
}

BrandPaginator

Description

A paginated list of Brand items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Brand!]! A list of Brand items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Brand]
}

Branding

Description

Represents the branding information for a marketplace.

Fields
Field Name Description
coverImage - Attachment The cover image of the marketplace.
logo - Attachment The logo of the marketplace.
socialLogo - Attachment The social media logo of the marketplace.
slogan - String! The slogan of the marketplace.
socialLinks - [SocialLink!]! The social media links associated with the marketplace.
marketplaceCategoryId - String! The marketplace category ID.
shortDescription - String The short description of the marketplace.
productCondition - ProductCondition! The condition of products in the marketplace.
description - String The description of the marketplace.
website - String The website URL of the marketplace.
isVerified - ApprovalStatus! The approval status of the marketplace branding.
Example
{
  "coverImage": Attachment,
  "logo": Attachment,
  "socialLogo": Attachment,
  "slogan": "abc123",
  "socialLinks": [SocialLink],
  "marketplaceCategoryId": "abc123",
  "shortDescription": "abc123",
  "productCondition": "new",
  "description": "abc123",
  "website": "abc123",
  "isVerified": "REJECTED"
}

BuyerIdentityInput

Description

Input type for buyer's identity.

Fields
Input Field Description
countryCode - CountryCode! The country code of the buyer.
Example
{"countryCode": "AF"}

CapturePaypalOrderInput

Description

Input for capturing a PayPal order.

Fields
Input Field Description
orderId - ID! The ID of the order to capture.
Example
{"orderId": 4}

CardInput

Fields
Input Field Description
number - String! "The card number.
expiryMonth - String! "The card's expiration month.
expiryYear - String! "The card's expiration year.
cvv - String! "The card's security code.
email - String "The email associated with the card, if applicable.
Example
{
  "number": "xyz789",
  "expiryMonth": "abc123",
  "expiryYear": "abc123",
  "cvv": "abc123",
  "email": "xyz789"
}

Cart

Description

Type representing a shopping cart.

Fields
Field Name Description
id - ID! The unique identifier of the cart.
buyerIdentity - CartBuyerIdentity! The buyer's identity associated with the cart.
cost - CartCost! The cost details of the cart.
token - String! The token associated with the cart.
isActive - Boolean! Indicates if the cart is active.
currencyCode - CurrencyCode! The currency code used in the cart.
userId - ID The ID of the user associated with the cart.
tempUserId - ID The temporary user ID associated with the cart.
country - String! The country associated with the cart.
addressId - ID The ID of the address associated with the cart.
shippingType - ShippingType! The shipping type associated with the cart.
deliveryType - DeliveryType! The delivery type associated with the cart.
discount - Float! The discount applied to the cart.
couponCode - String The coupon code applied to the cart.
couponApplied - Boolean! Indicates if a coupon is applied to the cart.
pickupPoint - String The pickup point associated with the cart.
referralCode - String The referral code associated with the cart.
product - Product! The product associated with the cart.
cartItems - [CartItem!]! The items in the cart.
itemsCount - Int! The total count of items in the cart.
operation - actionResponse! The operation response associated with the cart.
requiresShipping - Boolean! Indicates if the cart requires shipping.
Example
{
  "id": "4",
  "buyerIdentity": CartBuyerIdentity,
  "cost": CartCost,
  "token": "abc123",
  "isActive": true,
  "currencyCode": "AED",
  "userId": "4",
  "tempUserId": "4",
  "country": "xyz789",
  "addressId": 4,
  "shippingType": "FIXED",
  "deliveryType": "PICKUP",
  "discount": 123.45,
  "couponCode": "abc123",
  "couponApplied": false,
  "pickupPoint": "xyz789",
  "referralCode": "xyz789",
  "product": Product,
  "cartItems": [CartItem],
  "itemsCount": 123,
  "operation": actionResponse,
  "requiresShipping": false
}

CartBuyerIdentity

Description

The identity of the buyer associated with the cart, including information about their location, contact details, and delivery preferences.

Fields
Field Name Description
countryCode - CountryCode The two-letter ISO 3166-1 alpha-2 code of the country where the buyer is located.
customer - Customer The customer account associated with the cart, if any.
deliveryAddress - DeliveryAddress Selected DeliveryAddress
deliveryLocation - DeliveryLocation Selected DeliveryAddress
email - String The email address of the buyer that is interacting with the cart, if provided.
phone - String The phone number of the buyer that is interacting with the cart, if provided.
deliveryAddressPreferences - DeliveryAddressPaginator An ordered set of delivery addresses tied to the buyer that is interacting with the cart. The order of the addresses in the array indicates their relative preference.
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 50.

page - Int

The offset from which items are returned.

Example
{
  "countryCode": "AF",
  "customer": Customer,
  "deliveryAddress": DeliveryAddress,
  "deliveryLocation": DeliveryLocation,
  "email": "xyz789",
  "phone": "xyz789",
  "deliveryAddressPreferences": DeliveryAddressPaginator
}

CartCost

Fields
Field Name Description
checkoutChargeAmount - MoneyV2! Total amount the customer will be cahrged
subtotalAmount - MoneyV2! The amount, before taxes and cart-level discounts, for the customer to pay.
subtotalAmountEstimated - Boolean! Whether the subtotal amount is estimated.
totalAmount - MoneyV2! The total amount for the customer to pay.
totalAmountEstimated - Boolean! Whether the total amount is estimated.
totalDutyAmount - MoneyV2! The duty amount for the customer to pay at checkout.
totalDutyAmountEstimated - Boolean! Whether the total duty amount is estimated.
totalTaxAmount - MoneyV2! The tax amount for the customer to pay at checkout.
totalTaxAmountEstimated - Boolean! Whether the total tax amount is estimated.
totalDiscountAmount - MoneyV2! total discount applied
Example
{
  "checkoutChargeAmount": MoneyV2,
  "subtotalAmount": MoneyV2,
  "subtotalAmountEstimated": false,
  "totalAmount": MoneyV2,
  "totalAmountEstimated": true,
  "totalDutyAmount": MoneyV2,
  "totalDutyAmountEstimated": true,
  "totalTaxAmount": MoneyV2,
  "totalTaxAmountEstimated": false,
  "totalDiscountAmount": MoneyV2
}

CartItem

Description

Type representing an item in the cart.

Fields
Field Name Description
id - ID! The unique identifier of the cart item.
cartId - ID! The ID of the cart to which the item belongs.
productId - ID! The ID of the product associated with the cart item.
variantId - ID! The ID of the variant associated with the cart item.
quantity - Int! The quantity of the product in the cart item.
discount - MoneyV2! The discount applied to the cart item.
tax - MoneyV2! The tax applied to the cart item.
shopId - ID! The ID of the shop associated with the cart item.
position - Int! The position of the cart item.
onSale - Boolean! Indicates if the product is on sale.
subtotalPrice - MoneyV2! The subtotal price of the cart item.
totalPrice - MoneyV2! The total price of the cart item.
compareAtPrice - MoneyV2! The compare at price of the cart item.
price - MoneyV2! The price of the cart item.
updatedAt - DateTime! The date and time when the cart item was last updated.
createdAt - DateTime! The date and time when the cart item was created.
variant - ProductVariant! The variant associated with the cart item.
merchandise - ProductVariant! The merchandise associated with the cart item.
product - Product! The product associated with the cart item.
cost - CartItemCost! The cost details of the cart item.
availableForSale - Boolean! Indicates if the cart item is available for sale.
inStock - Boolean! Indicates if the cart item is in stock.
attributes - [Attribute!]! The attributes associated with the cart item.
attribute - Attribute! The attribute associated with the cart item.
Example
{
  "id": 4,
  "cartId": "4",
  "productId": "4",
  "variantId": 4,
  "quantity": 123,
  "discount": MoneyV2,
  "tax": MoneyV2,
  "shopId": "4",
  "position": 123,
  "onSale": true,
  "subtotalPrice": MoneyV2,
  "totalPrice": MoneyV2,
  "compareAtPrice": MoneyV2,
  "price": MoneyV2,
  "updatedAt": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z",
  "variant": ProductVariant,
  "merchandise": ProductVariant,
  "product": Product,
  "cost": CartItemCost,
  "availableForSale": true,
  "inStock": false,
  "attributes": [Attribute],
  "attribute": Attribute
}

CartItemCost

Description

Type representing cost details of a cart item.

Fields
Field Name Description
amountPerQuantity - MoneyV2 The amount per quantity of the cart item.
compareAtAmountPerQuantity - MoneyV2 The compare at amount per quantity of the cart item.
totalAmount - MoneyV2 The total amount of the cart item.
subtotalAmount - MoneyV2 The subtotal amount of the cart item.
Example
{
  "amountPerQuantity": MoneyV2,
  "compareAtAmountPerQuantity": MoneyV2,
  "totalAmount": MoneyV2,
  "subtotalAmount": MoneyV2
}

CartLineInput

Description

Input type for individual cart line item.

Fields
Input Field Description
productId - ID! The ID of the product associated with the cart line.
quantity - Int! The quantity of the product in the cart line.
variantId - ID! The ID of the variant associated with the cart line.
Example
{
  "productId": "4",
  "quantity": 123,
  "variantId": "4"
}

CheckLipaNaMpesaPaymentStatusInput

Fields
Input Field Description
checkoutRequestId - String! The Checkout response ID
Example
{"checkoutRequestId": "abc123"}

CheckoutTransaction

Description

Represents checkout transaction details.

Fields
Field Name Description
orderId - ID! The ID of the order associated with the checkout transaction.
Example
{"orderId": 4}

Collection

Description

Type representing a collection.

Fields
Field Name Description
id - ID! The ID of the collection.
title - String! The title of the collection.
displayTitle - String! The display title of the collection.
handle - String! The handle of the collection.
sortOrder - CollectionSortOrder The sort order of the collection.
templateSuffix - String The template suffix of the collection.
metaDescription - String The meta description of the collection.
metaTitle - String The meta title of the collection.
metaFields - String The meta fields of the collection.
collectionType - String The type of the collection.
image - Attachment The image attached to the collection.
icon - Attachment The icon attached to the collection.
featured - Boolean! Indicates if the collection is featured.
top - Boolean! Indicates if the collection is top.
level - Int! The level of the collection.
products - [Product] The products associated with the collection.
productsCount - Int The count of products associated with the collection.
Example
{
  "id": "4",
  "title": "xyz789",
  "displayTitle": "abc123",
  "handle": "abc123",
  "sortOrder": "ALPHA_ASC",
  "templateSuffix": "abc123",
  "metaDescription": "xyz789",
  "metaTitle": "xyz789",
  "metaFields": "xyz789",
  "collectionType": "abc123",
  "image": Attachment,
  "icon": Attachment,
  "featured": true,
  "top": false,
  "level": 123,
  "products": [Product],
  "productsCount": 987
}

CollectionPaginator

Description

A paginated list of Collection items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Collection!]! A list of Collection items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Collection]
}

CollectionSortOrder

Description

Collection sort order

Values
Enum Value Description

ALPHA_ASC

Alpha asc

ALPHA_DESC

Alpha desc

BEST_SELLING

Best selling

CREATED

Created

CREATED_DESC

Created desc

MANUAL

Manual

PRICE_ASC

Price asc

PRICE_DESC

Price desc
Example
"ALPHA_ASC"

ContentMetrics

Fields
Field Name Description
views - Int!
shares - Int!
likes - Int!
bookmarks - Int!
dislikes - Int!
commentsCount - Int!
productsCount - Int!
Example
{
  "views": 987,
  "shares": 123,
  "likes": 987,
  "bookmarks": 123,
  "dislikes": 123,
  "commentsCount": 123,
  "productsCount": 123
}

ContentProducts

Fields
Field Name Description
product - Product!
Example
{"product": Product}

ContentProductsPaginator

Description

A paginated list of ContentProducts items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [ContentProducts!]! A list of ContentProducts items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [ContentProducts]
}

CountryCode

Description

Country code

Values
Enum Value Description

AF

Af

AL

Al

DZ

Dz

as

As

AD

Ad

AO

Ao

AI

Ai

AQ

Aq

AG

Ag

AR

Ar

AM

Am

AX

Ax

AW

Aw

AU

Au

AT

At

AZ

Az

BS

Bs

BH

Bh

BD

Bd

BB

Bb

BY

By

BE

Be

BZ

Bz

BJ

Bj

BM

Bm

BT

Bt

BO

Bo

BA

Ba

BL

Bl

BW

Bw

BV

Bv

BQ

Bq

BR

Br

IO

Io

BN

Bn

BG

Bg

BF

Bf

BI

Bi

KH

Kh

CM

Cm

CA

Ca

CV

Cv

KY

Ky

CF

Cf

TD

Td

CL

Cl

CN

Cn

CX

Cx

CC

Cc

CO

Co

KM

Km

CG

Cg

CD

Cd

CK

Ck

CR

Cr

CI

Ci

HR

Hr

CU

Cu

CW

Cw

CY

Cy

CZ

Cz

DK

Dk

DJ

Dj

DO

Do

DM

Dm

EC

Ec

EG

Eg

SV

Sv

GQ

Gq

ER

Er

EE

Ee

ET

Et

FK

Fk

FO

Fo

FJ

Fj

FI

Fi

FR

Fr

GF

Gf

PF

Pf

TF

Tf

GA

Ga

GM

Gm

GE

Ge

DE

De

GH

Gh

GI

Gi

GR

Gr

GL

Gl

GD

Gd

GG

Gg

GP

Gp

GU

Gu

GT

Gt

GN

Gn

GW

Gw

GY

Gy

HT

Ht

HM

Hm

VA

Va

HN

Hn

HK

Hk

HU

Hu

IS

Is

IM

Im

IN

In

ID

Id

IR

Ir

IQ

Iq

IE

Ie

IL

Il

IT

It

JM

Jm

JP

Jp

JE

Je

JO

Jo

KZ

Kz

KE

Ke

KI

Ki

KP

Kp

KR

Kr

KW

Kw

KG

Kg

LA

La

LV

Lv

LB

Lb

LS

Ls

LR

Lr

LY

Ly

LI

Li

LT

Lt

LU

Lu

MO

Mo

MK

Mk

MF

Mf

MG

Mg

MW

Mw

MY

My

MV

Mv

ML

Ml

MT

Mt

MH

Mh

MP

Mp

MQ

Mq

MR

Mr

MU

Mu

YT

Yt

MX

Mx

FM

Fm

MD

Md

MC

Mc

MN

Mn

ME

Me

MS

Ms

MA

Ma

MZ

Mz

MM

Mm

NA

Na

NR

Nr

NP

Np

NL

Nl

AN

An

NC

Nc

NZ

Nz

NI

Ni

NE

Ne

NG

Ng

NU

Nu

NF

Nf

NO

No

OM

Om

PK

Pk

PW

Pw

PS

Ps

PA

Pa

PG

Pg

PY

Py

PE

Pe

PH

Ph

PN

Pn

PL

Pl

PT

Pt

PR

Pr

QA

Qa

RE

Re

RO

Ro

RU

Ru

RS

Rs

RW

Rw

SH

Sh

KN

Kn

LC

Lc

PM

Pm

VC

Vc

WS

Ws

SM

Sm

ST

St

SA

Sa

SN

Sn

SX

Sx

CS

Cs

SC

Sc

SL

Sl

SG

Sg

SK

Sk

SI

Si

SB

Sb

SO

So

ZA

Za

GS

Gs

ES

Es

LK

Lk

SD

Sd

SR

Sr

SJ

Sj

SZ

Sz

SE

Se

SS

Ss

CH

Ch

SY

Sy

TW

Tw

TJ

Tj

TZ

Tz

TH

Th

TL

Tl

TG

Tg

TK

Tk

TO

To

TT

Tt

TN

Tn

TR

Tr

TM

Tm

TC

Tc

TV

Tv

UG

Ug

UA

Ua

AE

Ae

GB

Gb

US

Us

UM

Um

UY

Uy

UZ

Uz

VU

Vu

VE

Ve

VN

Vn

VG

Vg

VI

Vi

WF

Wf

EH

Eh

YE

Ye

ZM

Zm

ZW

Zw
Example
"AF"

CountryDeliveryOption

Description

Represents delivery options available for a country.

Fields
Field Name Description
id - ID! Unique identifier of the country delivery option.
townId - ID! ID of the town associated with the country delivery option.
type - DeliveryType! Type of delivery option.
isPrimary - Boolean! Indicates whether the country delivery option is primary.
byAppointmentOnly - Boolean! Indicates whether delivery is available by appointment only.
minimumDeliveryTimeInDays - Boolean! Minimum delivery time in days.
maximumDeliveryTimeInDays - Boolean! Maximum delivery time in days.
chargeAmount - MoneyV2! Amount charged for delivery.
estimatedTransportCost - MoneyV2! Estimated transport cost.
Example
{
  "id": 4,
  "townId": 4,
  "type": "PICKUP",
  "isPrimary": false,
  "byAppointmentOnly": false,
  "minimumDeliveryTimeInDays": true,
  "maximumDeliveryTimeInDays": true,
  "chargeAmount": MoneyV2,
  "estimatedTransportCost": MoneyV2
}

Coupon

Description

Type representing a coupon.

Fields
Field Name Description
id - ID! The ID of the coupon.
status - CouponStatus! The status of the coupon.
type - CouponType The type of the coupon.
code - String! The code of the coupon.
discount - Float! The discount amount of the coupon.
discountType - CouponDiscountType! The type of discount provided by the coupon.
startDate - Int! The start date of the coupon.
endDate - Int! The end date of the coupon.
description - String The description of the coupon.
banners - [Attachment] The banners associated with the coupon.
image - Attachment The image associated with the coupon.
Example
{
  "id": "4",
  "status": "ACTIVE",
  "type": "FIXED_COUPON",
  "code": "abc123",
  "discount": 123.45,
  "discountType": "PERCENT",
  "startDate": 123,
  "endDate": 987,
  "description": "xyz789",
  "banners": [Attachment],
  "image": Attachment
}

CouponDiscountType

Description

Enum representing the type of discount provided by a coupon.

Values
Enum Value Description

PERCENT

Discount is specified as a percentage.

AMOUNT

Discount is specified as a fixed amount.
Example
"PERCENT"

CouponPaginator

Description

A paginated list of Coupon items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Coupon!]! A list of Coupon items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Coupon]
}

CouponStatus

Description

Enum representing the status of a coupon.

Values
Enum Value Description

ACTIVE

The coupon is active.

INACTIVE

The coupon is inactive.
Example
"ACTIVE"

CouponType

Description

Coupon type

Values
Enum Value Description

FIXED_COUPON

Fixed coupon

CART_COUPON

Cart coupon

PRODUCT_COUPON

Product coupon

PERCENTAGE_COUPON

Percentage coupon

FREE_SHIPPING_COUPON

Free shipping coupon

FIXED_COUPON

Fixed coupon
Example
"FIXED_COUPON"

CreateAndPlaceOrderInput

Fields
Input Field Description
customerContact - String! The contact information of the customer.
amount - Float! The total cost of the order before discounts and delivery fees.
total - Float! The total cost of the order after discounts but before delivery fees.
totalPaid - Float! The total amount paid by the customer.
paymentId - String The ID of the payment for the order, if applicable.
paymentGateway - PaymentGatewayType! The payment gateway used for the order.
couponId - Int The ID of the coupon used for the order, if applicable.
shopId - ID The ID of the shop associated with the order.
discount - Float The total discount applied to the order.
deliveryFee - Float The delivery fee for the order.
deliveryTime - String The estimated delivery time for the order.
card - CardInput The credit card information for the payment, if applicable.
cardToken - String The tokenized credit card information for the payment, if applicable.
billingAddress - CustomerAddressInput The billing address for the order.
shippingAddress - CustomerAddressInput The shipping address for the order.
Example
{
  "customerContact": "xyz789",
  "amount": 123.45,
  "total": 987.65,
  "totalPaid": 123.45,
  "paymentId": "abc123",
  "paymentGateway": "STRIPE",
  "couponId": 987,
  "shopId": "4",
  "discount": 987.65,
  "deliveryFee": 123.45,
  "deliveryTime": "xyz789",
  "card": CardInput,
  "cardToken": "abc123",
  "billingAddress": CustomerAddressInput,
  "shippingAddress": CustomerAddressInput
}

CreateCartInput

Description

Input type for creating a cart.

Fields
Input Field Description
lines - [CartLineInput!]! The list of cart line items to be included in the cart.
buyerIdentity - BuyerIdentityInput! Information about the buyer's identity.
Example
{
  "lines": [CartLineInput],
  "buyerIdentity": BuyerIdentityInput
}

CreateOrderInput

Fields
Input Field Description
cartId - ID! Order cart ID.
Example
{"cartId": 4}

CreatePaypalOrderInput

Description

Input for creating a PayPal order.

Fields
Input Field Description
orderId - ID The ID of the order.
cartId - ID The ID of the cart.
Example
{
  "orderId": "4",
  "cartId": "4"
}

CreateSocialContentItemInput

Fields
Input Field Description
title - String!
template - SocialContentTemplateType!
privacy - SocialContentPrivacyType!
status - ModelStatus
categoryId - ID
languageCode - String
body - String
tags - [String!]
metadata - JSON
attachedPost - SocialContentItemPostInput
attachedStory - SocialContentItemStoryInput
attachedBanner - SocialContentItemBannerInput
attachedProduct - SocialContentItemProductInput
Example
{
  "title": "abc123",
  "template": "MEDIA_ONLY",
  "privacy": "PUBLIC",
  "status": "DRAFT",
  "categoryId": 4,
  "languageCode": "abc123",
  "body": "abc123",
  "tags": ["abc123"],
  "metadata": {},
  "attachedPost": SocialContentItemPostInput,
  "attachedStory": SocialContentItemStoryInput,
  "attachedBanner": SocialContentItemBannerInput,
  "attachedProduct": SocialContentItemProductInput
}

CreateStateDataInput

Fields
Input Field Description
key - String!
value - String
redirectUri - String
Example
{
  "key": "xyz789",
  "value": "abc123",
  "redirectUri": "xyz789"
}

CreateStateDataPayload

Fields
Field Name Description
stateData - StateData!
Example
{"stateData": StateData}

CreateTicketInput

Description

Input for creating a new ticket.

Fields
Input Field Description
subject - String! Subject of the ticket.
details - String! Details of the ticket.
attachment - [AttachmentInput] Attachments associated with the ticket.
Example
{
  "subject": "xyz789",
  "details": "xyz789",
  "attachment": [AttachmentInput]
}

CreateWishlistInput

Description

Input object for creating a wishlist.

Fields
Input Field Description
wishlistSlug - String The slug of the wishlist.
wishlistName - String! The name of the wishlist.
wishlistPrivacy - Boolean Indicates the privacy status of the wishlist.
isDefault - Int Indicates whether the wishlist is default.
lines - [WishlistLineInput!]! The lines (items) to add to the wishlist.
buyerIdentity - BuyerIdentityInput! The identity of the buyer.
Example
{
  "wishlistSlug": "xyz789",
  "wishlistName": "xyz789",
  "wishlistPrivacy": true,
  "isDefault": 123,
  "lines": [WishlistLineInput],
  "buyerIdentity": BuyerIdentityInput
}

CurrencyCode

Description

Currency code

Values
Enum Value Description

AED

Aed

AFN

Afn

ALL

All

AMD

Amd

ANG

Ang

AOA

Aoa

ARS

Ars

AUD

Aud

AWG

Awg

AZN

Azn

BAM

Bam

BBD

Bbd

BDT

Bdt

BGN

Bgn

BHD

Bhd

BIF

Bif

BMD

Bmd

BND

Bnd

BOB

Bob

BRL

Brl

BSD

Bsd

BTN

Btn

BWP

Bwp

BYN

Byn

BZD

Bzd

CAD

Cad

CDF

Cdf

CHF

Chf

CLP

Clp

CNY

Cny

COP

Cop

CRC

Crc

CUC

Cuc

CUP

Cup

CVE

Cve

CZK

Czk

DJF

Djf

DKK

Dkk

DOP

Dop

DZD

Dzd

EGP

Egp

ERN

Ern

ETB

Etb

EUR

Eur

FJD

Fjd

FKP

Fkp

GBP

Gbp

GEL

Gel

GHS

Ghs

GIP

Gip

GMD

Gmd

GNF

Gnf

GTQ

Gtq

GYD

Gyd

HKD

Hkd

HNL

Hnl

HRK

Hrk

HTG

Htg

HUF

Huf

IDR

Idr

ILS

Ils

INR

Inr

IQD

Iqd

IRR

Irr

ISK

Isk

JMD

Jmd

JOD

Jod

JPY

Jpy

KES

Kes

KGS

Kgs

KHR

Khr

KMF

Kmf

KPW

Kpw

KRW

Krw

KWD

Kwd

KYD

Kyd

KZT

Kzt

LAK

Lak

LBP

Lbp

LKR

Lkr

LRD

Lrd

LSL

Lsl

LYD

Lyd

MAD

Mad

MDL

Mdl

MGA

Mga

MKD

Mkd

MMK

Mmk

MNT

Mnt

MOP

Mop

MRU

Mru

MUR

Mur

MVR

Mvr

MWK

Mwk

MXN

Mxn

MYR

Myr

MZN

Mzn

NAD

Nad

NGN

Ngn

NIO

Nio

NOK

Nok

NPR

Npr

NZD

Nzd

OMR

Omr

PAB

Pab

PEN

Pen

PGK

Pgk

PHP

Php

PKR

Pkr

PLN

Pln

PYG

Pyg

QAR

Qar

RON

Ron

RSD

Rsd

RUB

Rub

RWF

Rwf

SAR

Sar

SBD

Sbd

SCR

Scr

SDG

Sdg

SEK

Sek

SGD

Sgd

SHP

Shp

SLL

Sll

SOS

Sos

SRD

Srd

SSP

Ssp

STN

Stn

SVC

Svc

SYP

Syp

SZL

Szl

THB

Thb

TJS

Tjs

TMT

Tmt

TND

Tnd

TOP

Top

try

Try

TTD

Ttd

TWD

Twd

TZS

Tzs

UAH

Uah

UGX

Ugx

USD

Usd

UYU

Uyu

UZS

Uzs

VES

Ves

VND

Vnd

VUV

Vuv

WST

Wst

XAF

Xaf

XCD

Xcd

XOF

Xof

XPF

Xpf

YER

Yer

ZAR

Zar

ZMW

Zmw

ZWL

Zwl

USD

Usd
Example
"AED"

Customer

Description

Represents customer information.

Fields
Field Name Description
id - ID The unique identifier of the customer.
lastName - String The last name of the customer.
name - String The full name of the customer.
initials - String The initials of the customer's name.
firstName - String The first name of the customer.
displayName - String The display name of the customer.
email - String The email address of the customer.
phone - String The phone number of the customer.
username - String The username of the customer.
userType - String! The type of the customer.
country - String The country of the customer.
city - String The city of the customer.
banned - Boolean! Indicates if the customer is banned.
avatar - Attachment The avatar of the customer.
avatarOriginal - String The original avatar of the customer.
createdAt - DateTime The creation date of the customer.
updatedAt - DateTime The last update date of the customer.
profile - Profile The profile associated with the customer.
address - [CustomerAddress] The addresses associated with the customer.
referralCode - String
social - SocialAccount
Example
{
  "id": 4,
  "lastName": "xyz789",
  "name": "xyz789",
  "initials": "xyz789",
  "firstName": "abc123",
  "displayName": "abc123",
  "email": "xyz789",
  "phone": "xyz789",
  "username": "abc123",
  "userType": "xyz789",
  "country": "xyz789",
  "city": "xyz789",
  "banned": false,
  "avatar": Attachment,
  "avatarOriginal": "xyz789",
  "createdAt": "2007-12-03T10:15:30Z",
  "updatedAt": "2007-12-03T10:15:30Z",
  "profile": Profile,
  "address": [CustomerAddress],
  "referralCode": "xyz789",
  "social": SocialAccount
}

CustomerAddress

Fields
Field Name Description
address1 - String The first line of the address. Typically the street address or PO Box number.
address2 - String The second line of the address. Typically the number of the apartment, suite, or unit.
city - String The name of the city, district, village, or town.
cityCode - ID The ID code for the city. For example, 102.
company - String The name of the customer's company or organization.
country - String The name of the country.
countryCode - CountryCode The two-letter code for the country of the address. For example, US.
firstName - String The first name of the customer.
formatted - String A formatted version of the address, customized by the provided arguments.
formattedArea - String A comma-separated list of the values for city, province, and country.
id - ID! A globally-unique identifier.
isDefault - Boolean! if the customer has set as the default address.
lastName - String The last name of the customer.
latitude - Float The latitude coordinate of the customer address.
longitude - Float The longitude coordinate of the customer address.
name - String The full name of the customer, based on firstName and lastName.
phone - String A unique phone number for the customer. Formatted using E.164 standard. For example, +2747337.
province - String The region of the address, such as the province, state, or district.
provinceCode - String The two-letter code for the region. For example, UN.
state - String the customer state.
stateCode - ID The ID code for the state. For example, 56.
type - AddressType the type of the address it represents.
zip - String The zip or postal code of the address.
Example
{
  "address1": "abc123",
  "address2": "xyz789",
  "city": "xyz789",
  "cityCode": "4",
  "company": "abc123",
  "country": "xyz789",
  "countryCode": "AF",
  "firstName": "xyz789",
  "formatted": "abc123",
  "formattedArea": "abc123",
  "id": "4",
  "isDefault": true,
  "lastName": "abc123",
  "latitude": 987.65,
  "longitude": 123.45,
  "name": "abc123",
  "phone": "abc123",
  "province": "abc123",
  "provinceCode": "abc123",
  "state": "abc123",
  "stateCode": 4,
  "type": "BILLING",
  "zip": "abc123"
}

CustomerAddressInput

Fields
Input Field Description
address1 - String The first line of the address. Typically the street address or PO Box number.
address2 - String The second line of the address. Typically the number of the apartment, suite, or unit.
city - String The name of the city, district, village, or town.
cityCode - ID The ID code for the city. For example, UN.
company - String The name of the customer's company or organization.
country - String The name of the country.
countryCode - CountryCode! The two-letter code for the country of the address. For example, US.
firstName - String The first name of the customer.
formattedArea - String A comma-separated list of the values for city, province, and country.
isDefault - Boolean if the customer has set as the default address.
lastName - String! The last name of the customer.
latitude - Float The latitude coordinate of the customer address.
longitude - Float The longitude coordinate of the customer address.
name - String The full name of the customer, based on firstName and lastName.
phone - String A unique phone number for the customer. Formatted using E.164 standard. For example, +2747337.
province - String The region of the address, such as the province, state, or district.
provinceCode - String The two-letter code for the region. For example, UN.
state - String the customer state.
stateCode - ID The ID code for the sate. For example, 55.
type - AddressType the type of the address it represents.
zip - String The zip or postal code of the address.
Example
{
  "address1": "xyz789",
  "address2": "abc123",
  "city": "xyz789",
  "cityCode": 4,
  "company": "xyz789",
  "country": "abc123",
  "countryCode": "AF",
  "firstName": "abc123",
  "formattedArea": "xyz789",
  "isDefault": true,
  "lastName": "xyz789",
  "latitude": 987.65,
  "longitude": 123.45,
  "name": "xyz789",
  "phone": "abc123",
  "province": "xyz789",
  "provinceCode": "xyz789",
  "state": "abc123",
  "stateCode": "4",
  "type": "BILLING",
  "zip": "abc123"
}

CustomerAddressPaginator

Description

A paginated list of CustomerAddress items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [CustomerAddress!]! A list of CustomerAddress items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [CustomerAddress]
}

CustomerAddressUpdateInput

Fields
Input Field Description
address1 - String The first line of the address. Typically the street address or PO Box number.
address2 - String The second line of the address. Typically the number of the apartment, suite, or unit.
city - String The name of the city, district, village, or town.
cityCode - ID The ID code for the city. For example, 102.
company - String The name of the customer's company or organization.
country - String The name of the country.
countryCode - CountryCode The two-letter code for the country of the address. For example, US.
firstName - String The first name of the customer.
formattedArea - String A comma-separated list of the values for city, province, and country.
isDefault - Boolean if the customer has set as the default address.
lastName - String The last name of the customer.
latitude - Float The latitude coordinate of the customer address.
longitude - Float The longitude coordinate of the customer address.
name - String The full name of the customer, based on firstName and lastName.
phone - String A unique phone number for the customer. Formatted using E.164 standard. For example, +2747337.
province - String The region of the address, such as the province, state, or district.
provinceCode - String The two-letter code for the region. For example, UN.
state - String the customer state.
stateCode - ID The ID code for the sate. For example, 55.
type - AddressType the type of the address it represents.
zip - String The zip or postal code of the address.
Example
{
  "address1": "abc123",
  "address2": "xyz789",
  "city": "xyz789",
  "cityCode": 4,
  "company": "abc123",
  "country": "xyz789",
  "countryCode": "AF",
  "firstName": "abc123",
  "formattedArea": "abc123",
  "isDefault": false,
  "lastName": "xyz789",
  "latitude": 987.65,
  "longitude": 123.45,
  "name": "abc123",
  "phone": "abc123",
  "province": "abc123",
  "provinceCode": "xyz789",
  "state": "abc123",
  "stateCode": 4,
  "type": "BILLING",
  "zip": "abc123"
}

CustomerDeliveryLocationInput

Description

Input for specifying the customer's delivery location.

Fields
Input Field Description
countryId - ID! ID of the country.
countyId - ID ID of the county (optional).
townId - ID ID of the town (optional).
stationId - ID ID of the station (optional).
deliveryType - DeliveryType! Type of delivery.
Example
{
  "countryId": 4,
  "countyId": "4",
  "townId": 4,
  "stationId": "4",
  "deliveryType": "PICKUP"
}

CustomerExistenceInput

Description

Input type for checking customer existence.

Fields
Input Field Description
email - String The email of the customer.
phone - String The phone number of the customer.
Example
{
  "email": "abc123",
  "phone": "xyz789"
}

CustomerExistenceResponse

Description

Type representing the response for customer existence check.

Fields
Field Name Description
exists - Boolean! Indicates whether the customer exists.
type - CustomerExistenceType! The type of customer existence.
Example
{"exists": false, "type": "EMAIL"}

CustomerExistenceType

Description

Enum for customer existence types.

Values
Enum Value Description

EMAIL

Customer exists with email.

PHONE

Customer exists with phone.

BOTH

Customer exists with both email and phone.
Example
"EMAIL"

CustomerLoginInput

Fields
Input Field Description
loginBy - LoginOrSignUpType! Specifies the type of login (email or phone).
email - String! The email address of the customer.
phone - String The phone number of the customer.
password - String! The password of the customer.
rememberMe - Boolean Indicates whether to remember the customer's login session.
Example
{
  "loginBy": "EMAIL",
  "email": "xyz789",
  "phone": "abc123",
  "password": "abc123",
  "rememberMe": false
}

CustomerSignUpInput

Description

Input type for customer sign-up information.

Fields
Input Field Description
email - String! The email address for the customer sign-up.
phone - String The phone number for the customer sign-up.
signUpBy - LoginOrSignUpType! Specifies whether the sign-up is performed by email or phone.
password - String! The password for the customer sign-up.
firstName - String! The first name of the customer.
lastName - String The last name of the customer.
displayName - String The display name for the customer.
Example
{
  "email": "abc123",
  "phone": "abc123",
  "signUpBy": "EMAIL",
  "password": "xyz789",
  "firstName": "xyz789",
  "lastName": "xyz789",
  "displayName": "xyz789"
}

DateTime

Description

A datetime string with format Y-m-d H:i:s, e.g. 2018-05-23 13:43:32.

Example
"2007-12-03T10:15:30Z"

Decimal

Example
Decimal

DeliveryAddress

Fields
Field Name Description
address1 - String The first line of the address. Typically the street address or PO Box number.
address2 - String The second line of the address. Typically the number of the apartment, suite, or unit.
city - String The name of the city, district, village, or town.
cityCode - ID The ID code for the city. For example, 102.
company - String The name of the customer's company or organization.
country - String The name of the country.
countryCode - CountryCode The two-letter code for the country of the address. For example, US.
firstName - String The first name of the customer.
formatted - String A formatted version of the address, customized by the provided arguments.
formattedArea - String A comma-separated list of the values for city, province, and country.
id - ID! A globally-unique identifier.
isDefault - Boolean! if the customer has set as the default address.
lastName - String The last name of the customer.
latitude - Float The latitude coordinate of the customer address.
longitude - Float The longitude coordinate of the customer address.
name - String The full name of the customer, based on firstName and lastName.
phone - String A unique phone number for the customer. Formatted using E.164 standard. For example, +2747337.
province - String The region of the address, such as the province, state, or district.
provinceCode - String The two-letter code for the region. For example, UN.
state - String the customer state.
stateCode - ID The ID code for the state. For example, 56.
type - AddressType the type of the address it represents.
zip - String The zip or postal code of the address.
Example
{
  "address1": "abc123",
  "address2": "abc123",
  "city": "xyz789",
  "cityCode": 4,
  "company": "xyz789",
  "country": "abc123",
  "countryCode": "AF",
  "firstName": "abc123",
  "formatted": "abc123",
  "formattedArea": "abc123",
  "id": 4,
  "isDefault": false,
  "lastName": "abc123",
  "latitude": 123.45,
  "longitude": 123.45,
  "name": "xyz789",
  "phone": "abc123",
  "province": "xyz789",
  "provinceCode": "xyz789",
  "state": "abc123",
  "stateCode": "4",
  "type": "BILLING",
  "zip": "xyz789"
}

DeliveryAddressPaginator

Description

A paginated list of DeliveryAddress items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [DeliveryAddress!]! A list of DeliveryAddress items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [DeliveryAddress]
}

DeliveryCity

Description

Represents a delivery city.

Fields
Field Name Description
id - ID! Unique identifier of the delivery city.
name - String! Name of the delivery city.
code - String! Code of the delivery city.
countryId - ID! ID of the country associated with the delivery city.
country - DeliveryCountry! Country associated with the delivery city.
Example
{
  "id": "4",
  "name": "abc123",
  "code": "xyz789",
  "countryId": "4",
  "country": DeliveryCountry
}

DeliveryContinent

Description

Represents a delivery continent.

Fields
Field Name Description
id - ID! Unique identifier of the delivery continent.
name - String! Name of the delivery continent.
code - String! Code of the delivery continent.
Example
{
  "id": 4,
  "name": "abc123",
  "code": "xyz789"
}

DeliveryCountry

Description

Represents a delivery country.

Fields
Field Name Description
id - ID! Unique identifier of the delivery country.
name - String! Name of the delivery country.
code - CountryCode! Code of the delivery country.
regionId - ID! ID of the region associated with the delivery country.
region - DeliveryRegion! Region associated with the delivery country.
counties - [DeliveryCounty!]! Counties within the delivery country.
cities - [DeliveryCity!]! Cities within the delivery country.
options - [CountryDeliveryOption!]! Delivery options for the country.
Example
{
  "id": "4",
  "name": "abc123",
  "code": "AF",
  "regionId": 4,
  "region": DeliveryRegion,
  "counties": [DeliveryCounty],
  "cities": [DeliveryCity],
  "options": [CountryDeliveryOption]
}

DeliveryCountryPaginator

Description

A paginated list of DeliveryCountry items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [DeliveryCountry!]! A list of DeliveryCountry items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [DeliveryCountry]
}

DeliveryCounty

Description

Represents a delivery county.

Fields
Field Name Description
id - ID! Unique identifier of the delivery county.
name - String! Name of the delivery county.
code - String! Code of the delivery county.
capital - String! Capital city of the delivery county.
city - String! Main city of the delivery county.
lng - String! Longitude of the delivery county.
lat - String! Latitude of the delivery county.
zipInfo - DeliveryCountyZipRangeInfo! Information about zip code ranges within the delivery county.
countryId - ID! ID of the country associated with the delivery county.
country - DeliveryCountry! Country associated with the delivery county.
deliveryTowns - DeliveryTownPaginator Towns within the delivery county.
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 50.

page - Int

The offset from which items are returned.

zipCodes - DeliveryCountyZipCodePaginator Zip codes within the delivery county.
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 50.

page - Int

The offset from which items are returned.

Example
{
  "id": "4",
  "name": "abc123",
  "code": "xyz789",
  "capital": "abc123",
  "city": "abc123",
  "lng": "xyz789",
  "lat": "xyz789",
  "zipInfo": DeliveryCountyZipRangeInfo,
  "countryId": "4",
  "country": DeliveryCountry,
  "deliveryTowns": DeliveryTownPaginator,
  "zipCodes": DeliveryCountyZipCodePaginator
}

DeliveryCountyZipCode

Description

Represents a zip code within a delivery county.

Fields
Field Name Description
id - ID! Unique identifier of the zip code.
name - String! Name of the zip code.
zipInfo - DeliveryCountyZipRangeInfo! Information about the zip code range.
latitude - String Latitude of the zip code.
longitude - String Longitude of the zip code.
countyId - ID! ID of the county associated with the zip code.
isPrimary - Boolean! Indicates whether the zip code is primary.
Example
{
  "id": "4",
  "name": "abc123",
  "zipInfo": DeliveryCountyZipRangeInfo,
  "latitude": "xyz789",
  "longitude": "abc123",
  "countyId": "4",
  "isPrimary": false
}

DeliveryCountyZipCodePaginator

Description

A paginated list of DeliveryCountyZipCode items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [DeliveryCountyZipCode!]! A list of DeliveryCountyZipCode items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [DeliveryCountyZipCode]
}

DeliveryCountyZipRangeInfo

Description

Represents information about a zip code range within a delivery county.

Fields
Field Name Description
zipCode - ID Zip code of the range.
zipRangeStart - ID! Start of the zip code range.
zipRangeEnd - ID! End of the zip code range.
zipQuantity - Int! Quantity of zip codes in the range.
Example
{
  "zipCode": 4,
  "zipRangeStart": 4,
  "zipRangeEnd": "4",
  "zipQuantity": 987
}

DeliveryLocation

Description

Represents a delivery location.

Fields
Field Name Description
id - ID! Unique identifier of the delivery location.
uuid - String! Universally unique identifier of the delivery location.
countryId - ID! ID of the country associated with the delivery location.
countyId - ID ID of the county associated with the delivery location.
townId - ID ID of the town associated with the delivery location.
stationId - ID ID of the station associated with the delivery location.
deliveryType - DeliveryType! Type of delivery for the location.
country - DeliveryCountry! Country associated with the delivery location.
county - DeliveryCounty County associated with the delivery location.
town - DeliveryTown Town associated with the delivery location.
station - DeliveryStation Station associated with the delivery location.
Example
{
  "id": 4,
  "uuid": "xyz789",
  "countryId": "4",
  "countyId": 4,
  "townId": 4,
  "stationId": "4",
  "deliveryType": "PICKUP",
  "country": DeliveryCountry,
  "county": DeliveryCounty,
  "town": DeliveryTown,
  "station": DeliveryStation
}

DeliveryOption

Description

Represents delivery options available for a specific town.

Fields
Field Name Description
id - ID! Unique identifier of the delivery option.
townId - ID! ID of the town associated with the delivery option.
type - DeliveryType! Type of delivery option.
isPrimary - Boolean! Indicates whether the delivery option is primary.
byAppointmentOnly - Boolean Indicates whether delivery is available by appointment only.
minimumDeliveryTimeInDays - Boolean! Minimum delivery time in days.
maximumDeliveryTimeInDays - Boolean! Maximum delivery time in days.
chargeAmount - MoneyV2! Amount charged for delivery.
estimatedTransportCost - MoneyV2! Estimated transport cost.
Example
{
  "id": 4,
  "townId": "4",
  "type": "PICKUP",
  "isPrimary": false,
  "byAppointmentOnly": false,
  "minimumDeliveryTimeInDays": false,
  "maximumDeliveryTimeInDays": true,
  "chargeAmount": MoneyV2,
  "estimatedTransportCost": MoneyV2
}

DeliveryRegion

Description

Represents a delivery region.

Fields
Field Name Description
id - ID! Unique identifier of the delivery region.
name - String! Name of the delivery region.
code - String! Code of the delivery region.
continentId - ID! ID of the continent associated with the delivery region.
continent - DeliveryContinent! Continent associated with the delivery region.
Example
{
  "id": "4",
  "name": "xyz789",
  "code": "abc123",
  "continentId": "4",
  "continent": DeliveryContinent
}

DeliveryStation

Description

Represents a delivery station.

Fields
Field Name Description
id - ID! Unique identifier of the delivery station.
name - String! Name of the delivery station.
code - String Code of the delivery station.
deliveryTownId - ID! ID of the town associated with the delivery station.
isPrimary - Boolean! Indicates whether the delivery station is primary.
town - DeliveryTown! Town associated with the delivery station.
address - DeliveryStationAddress! Address of the delivery station.
paymentMethods - [DeliveryStationPaymentMethod!]! Payment methods available at the delivery station.
availableTime - [DeliveryStationAvailableTime]! Available times for deliveries at the station.
options - [DeliveryStationOption!]! Options available at the delivery station.
Example
{
  "id": 4,
  "name": "xyz789",
  "code": "xyz789",
  "deliveryTownId": 4,
  "isPrimary": false,
  "town": DeliveryTown,
  "address": DeliveryStationAddress,
  "paymentMethods": [DeliveryStationPaymentMethod],
  "availableTime": [DeliveryStationAvailableTime],
  "options": [DeliveryStationOption]
}

DeliveryStationAddress

Description

Represents the address of a delivery station.

Fields
Field Name Description
id - ID! Unique identifier of the delivery station address.
address - String Address of the delivery station.
stationId - ID! ID of the station associated with the address.
agentName - String! Name of the agent.
zip - String Zip code of the delivery station address.
phone - String Phone number of the delivery station.
company - String Company associated with the delivery station address.
city - String City of the delivery station address.
state - String State of the delivery station address.
verified - Boolean! Indicates whether the address is verified.
latitude - String Latitude of the delivery station address.
longitude - String Longitude of the delivery station address.
Example
{
  "id": "4",
  "address": "xyz789",
  "stationId": "4",
  "agentName": "xyz789",
  "zip": "abc123",
  "phone": "xyz789",
  "company": "xyz789",
  "city": "xyz789",
  "state": "xyz789",
  "verified": true,
  "latitude": "abc123",
  "longitude": "xyz789"
}

DeliveryStationAvailableTime

Description

Represents available delivery times at a delivery station.

Fields
Field Name Description
id - ID! Unique identifier of the available delivery time.
stationId - ID! ID of the delivery station associated with the available time.
day - String Day of the week for the available delivery time.
hours - String Hours of operation for the available delivery time.
alwaysOpen - Boolean! Indicates whether the station is always open for delivery.
byAppointmentOnly - Boolean Indicates whether the station is available for delivery by appointment only.
Example
{
  "id": 4,
  "stationId": "4",
  "day": "xyz789",
  "hours": "xyz789",
  "alwaysOpen": true,
  "byAppointmentOnly": true
}

DeliveryStationOption

Description

Represents options available at a delivery station.

Fields
Field Name Description
id - ID! Unique identifier of the delivery station option.
stationId - ID! ID of the delivery station associated with the option.
type - String! Type of the station option.
instantDelivery - Boolean! Indicates whether instant delivery is available.
isAvailable - Boolean! Indicates whether the option is available.
isPrimary - Boolean! Indicates whether the option is primary.
byAppointmentOnly - Boolean! Indicates whether delivery is available by appointment only.
minDeliveryTimeInDays - Boolean! Minimum delivery time in days.
maxDeliveryTimeInDays - Boolean! Maximum delivery time in days.
chargeAmount - MoneyV2! Amount charged for delivery.
estimatedTransportCost - MoneyV2! Estimated transport cost.
Example
{
  "id": "4",
  "stationId": 4,
  "type": "xyz789",
  "instantDelivery": false,
  "isAvailable": false,
  "isPrimary": true,
  "byAppointmentOnly": false,
  "minDeliveryTimeInDays": false,
  "maxDeliveryTimeInDays": false,
  "chargeAmount": MoneyV2,
  "estimatedTransportCost": MoneyV2
}

DeliveryStationPaymentMethod

Description

Represents a payment method available at a delivery station.

Fields
Field Name Description
id - ID! Unique identifier of the delivery station payment method.
stationId - ID! ID of the delivery station associated with the payment method.
billingAccountId - ID! ID of the billing account associated with the payment method.
paymentMethodId - ID! ID of the payment method.
details - String Additional details about the payment method.
instructions - String! Instructions for using the payment method.
isActive - Boolean! Indicates whether the payment method is active.
isVerified - Boolean! Indicates whether the payment method is verified.
longitude - String Longitude of the delivery station.
Example
{
  "id": 4,
  "stationId": "4",
  "billingAccountId": 4,
  "paymentMethodId": "4",
  "details": "abc123",
  "instructions": "abc123",
  "isActive": true,
  "isVerified": false,
  "longitude": "abc123"
}

DeliveryTown

Description

Represents a delivery town.

Fields
Field Name Description
id - ID! Unique identifier of the delivery town.
name - String! Name of the delivery town.
code - String Code of the delivery town.
countyId - ID! ID of the county associated with the delivery town.
isPrimary - Boolean! Indicates whether the delivery town is primary.
county - DeliveryCounty! County associated with the delivery town.
stations - [DeliveryStation!]! Stations within the delivery town.
deliveryOptions - [DeliveryOption!]! Delivery options for the town.
Example
{
  "id": "4",
  "name": "abc123",
  "code": "abc123",
  "countyId": 4,
  "isPrimary": true,
  "county": DeliveryCounty,
  "stations": [DeliveryStation],
  "deliveryOptions": [DeliveryOption]
}

DeliveryTownPaginator

Description

A paginated list of DeliveryTown items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [DeliveryTown!]! A list of DeliveryTown items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [DeliveryTown]
}

DeliveryType

Description

Delivery type

Values
Enum Value Description

PICKUP

Customers opt to collect their items from a designated location, often a store or depot.

DOOR

Items are delivered directly to the customer's doorstep or a specified location near their residence.

HOME

Delivery personnel bring the items directly to the customer's home address. This may involve additional services such as unpacking or installation.
Example
"PICKUP"

DiscountType

Values
Enum Value Description

PERCENT

AMOUNT

Example
"PERCENT"

FilteredProduct

Description

Represents a filtered list of products along with filter values and criteria.

Fields
Field Name Description
products - PaginatedFilteredProduct Paginated list of filtered products.
filterValues - ProductFilterValues Filter values used for filtering products.
filterCriteria - ProductFilterCriteria Filter criteria used for filtering products.
Example
{
  "products": PaginatedFilteredProduct,
  "filterValues": ProductFilterValues,
  "filterCriteria": ProductFilterCriteria
}

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
987.65

FollowResponse

Fields
Field Name Description
success - Boolean!
message - String!
Example
{"success": false, "message": "xyz789"}

ID

Description

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

Example
"4"

InitiateSocialLoginInput

Description

Input type for initiating social login.

Fields
Input Field Description
provider - LoginProviderType! The login provider for social login initiation.
name - String The name associated with the social login provider.
redirectUri - String! The redirect URI for social login initiation.
audience - SocialLoginAudienceType! The audience type for social login initiation.
Example
{
  "provider": "GOOGLE",
  "name": "xyz789",
  "redirectUri": "abc123",
  "audience": "CUSTOMER"
}

InitiateSocialLoginPayload

Description

Type representing the payload for initiating social login.

Fields
Field Name Description
redirectUri - String! The redirect URI for social login initiation.
state - String An optional state parameter for additional information.
Example
{
  "redirectUri": "abc123",
  "state": "xyz789"
}

InitiateTempAuthSessionInput

Description

Input type for initiating a temporary authentication session.

Fields
Input Field Description
audienceType - AuthAudienceType! The audience type for the temporary authentication session.
sessionId - String! The session ID for the temporary authentication session.
ipAddress - String The IP address associated with the temporary authentication session.
redirectUri - URL! The redirect URI for the temporary authentication session.
hostUri - URL! The host URI for the temporary authentication session.
Example
{
  "audienceType": "USER",
  "sessionId": "abc123",
  "ipAddress": "abc123",
  "redirectUri": "http://www.test.com/",
  "hostUri": "http://www.test.com/"
}

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
987

JSON

Example
{}

LipaNaMpesaInput

Fields
Input Field Description
accountReference - String Account reference, e.g. Githeri LTD
cartId - ID The customer's cart ID
orderId - ID The customer's order ID
phoneNumber - String! Phone number to charge the amount
Example
{
  "accountReference": "abc123",
  "cartId": "4",
  "orderId": 4,
  "phoneNumber": "abc123"
}

LipaNaMpesaPaymentStatus

Fields
Field Name Description
success - Boolean! A Boolean field indicating whether the M-Pesa transaction was successful (true) or not (false).
message - String! A human-readable message providing details about the status of the M-Pesa transaction.
errors - [String!] An array of strings that contains any error messages that occurred during the M-Pesa transaction process. If there were no errors, this field may be an empty array.
result - LipaNaMpesaTransactionResult The merchant response for the M-Pesa transaction
Example
{
  "success": true,
  "message": "xyz789",
  "errors": ["abc123"],
  "result": LipaNaMpesaTransactionResult
}

LipaNaMpesaTransactionResult

Description

The M-Pesa lipaNaMpesaQuery Response

Fields
Field Name Description
code - String! The M-Pesa transaction result code
status - String! The status of the M-Pesa transaction
orderStatus - String! The status of the M-Pesa order
message - String! The message returned by M-Pesa
link - String The message returned by M-Pesa
checkoutRequestId - String! The checkout request id
Example
{
  "code": "xyz789",
  "status": "xyz789",
  "orderStatus": "abc123",
  "message": "abc123",
  "link": "abc123",
  "checkoutRequestId": "abc123"
}

LoginOrSignUpType

Description

Enum for login or sign-up types.

Values
Enum Value Description

EMAIL

Login or sign-up with email.

PHONE

Login or sign-up with phone.
Example
"EMAIL"

LoginProviderType

Description

Enum representing different types of login providers.

Values
Enum Value Description

GOOGLE

Google login provider.

GITHUB

GitHub login provider.

FACEBOOK

Facebook login provider.

TWITTER

Twitter login provider.
Example
"GOOGLE"

LookupTempAuthSessionInput

Description

Input type for looking up a temporary authentication session.

Fields
Input Field Description
token - String! The token associated with the temporary authentication session.
sessionId - String The session ID associated with the temporary authentication session.
Example
{
  "token": "xyz789",
  "sessionId": "xyz789"
}

MailingAddress

Fields
Field Name Description
address1 - String The first line of the address. Typically the street address or PO Box number.
address2 - String The second line of the address. Typically the number of the apartment, suite, or unit.
city - String The name of the city, district, village, or town.
company - String The name of the customer's company or organization.
country - String The name of the country.
countryCode - CountryCode The two-letter code for the country of the address. For example, US.
firstName - String The first name of the customer.
formatted - String A formatted version of the address, customized by the provided arguments.
formattedArea - String A comma-separated list of the values for city, province, and country.
id - ID! A globally-unique identifier.
isDefault - Boolean! if the customer has set as the default address.
lastName - String The last name of the customer.
latitude - Float The latitude coordinate of the customer address.
longitude - Float The longitude coordinate of the customer address.
name - String The full name of the customer, based on firstName and lastName.
phone - String A unique phone number for the customer. Formatted using E.164 standard. For example, +2747337.
province - String The region of the address, such as the province, state, or district.
provinceCode - String The two-letter code for the region. For example, UN.
state - String the customer state.
type - AddressType the type of the address it represents.
zip - String The zip or postal code of the address.
Possible Types
MailingAddress Types

DeliveryAddress

Example
{
  "address1": "xyz789",
  "address2": "abc123",
  "city": "abc123",
  "company": "xyz789",
  "country": "xyz789",
  "countryCode": "AF",
  "firstName": "xyz789",
  "formatted": "abc123",
  "formattedArea": "abc123",
  "id": "4",
  "isDefault": false,
  "lastName": "abc123",
  "latitude": 987.65,
  "longitude": 123.45,
  "name": "abc123",
  "phone": "abc123",
  "province": "xyz789",
  "provinceCode": "xyz789",
  "state": "xyz789",
  "type": "BILLING",
  "zip": "xyz789"
}

Mixed

Description

Loose type that allows any value. Be careful when passing in large Int or Float literals, as they may not be parsed correctly on the server side. Use String literals if you are dealing with really large numbers to be on the safe side.

Example
Mixed

ModelStatus

Description

Model status

Values
Enum Value Description

DRAFT

Draft

PUBLISHED

Published

ARCHIVED

Archived

PENDING

Pending
Example
"DRAFT"

MoneyInput

Fields
Input Field Description
amount - Float!
currencyCode - CurrencyCode!
Example
{"amount": 987.65, "currencyCode": "AED"}

MoneyV2

Fields
Field Name Description
currencyCode - String!
amount - Decimal!
Example
{
  "currencyCode": "abc123",
  "amount": Decimal
}

MoneyV2Input

Description

Input type for money with currency information.

Fields
Input Field Description
amount - Float! The amount of money.
currencyCode - CurrencyCode! The currency code.
Example
{"amount": 987.65, "currencyCode": "AED"}

OnlineStore

Description

Represents an online store.

Fields
Field Name Description
shop - Shop Shop associated with the online store.
Example
{"shop": Shop}

Order

Fields
Field Name Description
billingAddress - BillingAddress The billing address for this order
childOrders - [Order] Child orders associated with this order
childOrderCount - Int The number of child orders associated with this order
itemsCount - Int The number of items associated with this order
orderCode - String The unique identifier code for this order
coupon - Coupon The coupon applied to this order
couponDiscountAmount - MoneyV2! The discount amount applied by the coupon to this order
createdAt - DateTime! The date and time that this order was created
customer - Customer The customer who placed this order
orderDate - Int! The date that this order was placed
deliveryFee - MoneyV2 The delivery fee for this order
deliveryTime - String The delivery time for the order
deliveryViewed - Boolean! Indicates whether the order has been viewed by the user
guestId - ID The ID of the guest who placed the order
id - ID! The unique identifier for the order
isManualPayment - Boolean! Indicates whether the order was paid using a manual payment method
orderCombinedId - ID! The combined ID of this order and its parent order, if applicable
orderDetails - [OrderDetail!] Details of the items included in the order
parentOrderDetails - [OrderDetail!] Details of the items included in the parent order, if applicable
paymentDetails - String Details of the payment for the order
paymentId - String The ID of the payment for the order
paymentStatus - PaymentStatus The payment status for the order
paymentStatusViewed - Boolean! Indicates whether the payment status has been viewed by the user
paymentMethod - PaymentMethod The type of payment used for the order
receipt - String The receipt for the order
request - String The request associated with the order
shippingAddress - CustomerAddress The shipping address for the order
mailingAddress - MailingAddress The maillin address same as shipping address for the order
shop - Shop The shop that the order was placed from
shopId - ID The ID of the shop that the order was placed from
status - OrderStatus The status of the order
orderStage - OrderStatusType! The current order sttus stage
trackingNumber - String The tracking number for the order
updatedAt - DateTime! The date and time that the order was last updated
userId - ID The ID of the user who placed the order
viewed - Boolean! Indicates whether the order has been viewed by the user
totals - OrderTotals! The totals for the order
orderTimeline - [OrderTimeline!]! The order timeline and stage
Example
{
  "billingAddress": BillingAddress,
  "childOrders": [Order],
  "childOrderCount": 123,
  "itemsCount": 987,
  "orderCode": "xyz789",
  "coupon": Coupon,
  "couponDiscountAmount": MoneyV2,
  "createdAt": "2007-12-03T10:15:30Z",
  "customer": Customer,
  "orderDate": 123,
  "deliveryFee": MoneyV2,
  "deliveryTime": "abc123",
  "deliveryViewed": false,
  "guestId": 4,
  "id": 4,
  "isManualPayment": false,
  "orderCombinedId": 4,
  "orderDetails": [OrderDetail],
  "parentOrderDetails": [OrderDetail],
  "paymentDetails": "xyz789",
  "paymentId": "xyz789",
  "paymentStatus": "UNPAID",
  "paymentStatusViewed": false,
  "paymentMethod": PaymentMethod,
  "receipt": "xyz789",
  "request": "xyz789",
  "shippingAddress": CustomerAddress,
  "mailingAddress": MailingAddress,
  "shop": Shop,
  "shopId": "4",
  "status": OrderStatus,
  "orderStage": "PENDING",
  "trackingNumber": "abc123",
  "updatedAt": "2007-12-03T10:15:30Z",
  "userId": "4",
  "viewed": true,
  "totals": OrderTotals,
  "orderTimeline": [OrderTimeline]
}

OrderDetail

Fields
Field Name Description
id - ID! The unique ID of the order detail.
orderId - ID! The ID of the order that this detail belongs to.
userId - ID The ID of the user who placed the order.
shopId - ID The ID of the shop associated with the order.
productId - ID! The ID of the product that this order detail represents.
productVariant - ProductVariant The variant of the product that was ordered, if applicable.
price - MoneyV2! The price of the product, excluding tax and shipping.
tax - Float! The amount of tax charged on the product.
shippingCost - MoneyV2! The cost of shipping the product.
quantity - Int The quantity of the product ordered.
paymentStatus - PaymentStatus! The payment status of the order detail.
shippingType - String The type of shipping used for the order.
pickupPointId - Int The ID of the pickup point used for the order.
productReferralCode - String The referral code associated with the product.
Example
{
  "id": 4,
  "orderId": 4,
  "userId": "4",
  "shopId": "4",
  "productId": "4",
  "productVariant": ProductVariant,
  "price": MoneyV2,
  "tax": 987.65,
  "shippingCost": MoneyV2,
  "quantity": 987,
  "paymentStatus": "UNPAID",
  "shippingType": "abc123",
  "pickupPointId": 123,
  "productReferralCode": "xyz789"
}

OrderPaginator

Description

A paginated list of Order items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Order!]! A list of Order items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Order]
}

OrderStatus

Fields
Field Name Description
id - ID! The unique identifier of the order status.
name - String The name of the order status
color - String The color associated with the order status
serial - Int A serial number assigned to the order status
Example
{
  "id": 4,
  "name": "xyz789",
  "color": "abc123",
  "serial": 987
}

OrderStatusType

Description

Order status type

Values
Enum Value Description

PENDING

Order Received but not yet processed

CONFIRMED

Order confirmed and Processing

READY_TO_DISPATCH

Order is Ready to Dispatch

DISPATCHED

Order Dispatched

AT_LOCAL_FACILITY

Order is at Local Facility

OUT_FOR_DELIVERY

Order is Out for Delivery

DELIVERED

Order Delivered

PAYMENT_FAILED

Failed to Collect Payment

CONTACT_FAILED

Failed to Contact Consignee

SHIPMENT_REFUSED

Shipment Refused by Consignee

RETURN_PROCESSING

Return being Processed

RETURN_COMPLETE

Order return completed

REJECTED

The order has been rejected by the seller or the system for some reason

CANCELLED

The customer has cancelled the order before it was shipped or picked up.
Example
"PENDING"

OrderTimeline

Fields
Field Name Description
id - ID! The unique identifier of the order status.
name - String The name of the order status
color - String The color associated with the order status
serial - Int A serial number assigned to the order status
stagePassed - Boolean! A boolean indicating whether each status in the timeline has been passed.
Example
{
  "id": 4,
  "name": "xyz789",
  "color": "abc123",
  "serial": 123,
  "stagePassed": false
}

OrderTotals

Fields
Field Name Description
totalPaid - MoneyV2! The total amount the customer has paid.
shippingCost - MoneyV2! The subtotal of the order before any taxes or discounts are applied.
subtotal - MoneyV2! The cost of shipping for the order.
totalTax - MoneyV2! The total amount of tax applied to the order.
totalDiscount - MoneyV2! The total amount of discounts applied to the order.
totalDuty - MoneyV2 The total amount of duties applied to the order (if applicable).
netTotal - MoneyV2! The total amount of the order after taxes and discounts are applied, but before any shipping costs or duties.
grandTotal - MoneyV2! The total amount of the order including taxes, discounts, shipping costs, and duties (if applicable).
totalRefunded - MoneyV2! The total amount refunded for the order (if applicable).
discount - MoneyV2 The total discount for the order.
Example
{
  "totalPaid": MoneyV2,
  "shippingCost": MoneyV2,
  "subtotal": MoneyV2,
  "totalTax": MoneyV2,
  "totalDiscount": MoneyV2,
  "totalDuty": MoneyV2,
  "netTotal": MoneyV2,
  "grandTotal": MoneyV2,
  "totalRefunded": MoneyV2,
  "discount": MoneyV2
}

OtherUploader

Description

Represents the response structure for uploads.

Fields
Field Name Description
data - [Upload] The list of uploads.
paginatorInfo - PaginatorInfo Information about the pagination.
Example
{
  "data": [Upload],
  "paginatorInfo": PaginatorInfo
}

OtpAuthType

Description

Otp auth type

Values
Enum Value Description

REGISTRATION

OTP used for user registration.

LOGIN_AUTHENTICATION

OTP used for user login/authentication.

PASSWORD_RESET

OTP used for password reset.
Example
"REGISTRATION"

OtpVerificationActionType

Description

Otp verification action type

Values
Enum Value Description

VERIFY_BY_CHECK

Verify by checking the provided OTP.

PROMPT_FOR_VERIFICATION

Prompt for OTP verification.
Example
"VERIFY_BY_CHECK"

OtpVerificationStatusInput

Description

Input type for OTP verification status.

Fields
Input Field Description
action - OtpVerificationActionType The action for OTP verification status.
Example
{"action": "VERIFY_BY_CHECK"}

Page

Description

Type representing a page.

Fields
Field Name Description
id - ID! The ID of the page.
type - PageType! The type of the page.
handle - String! The handle of the page.
excerpt - String! The excerpt of the page.
title - String! The title of the page.
featuredImage - Attachment The featured image of the page.
top - Boolean! Indicates whether the page is at the top.
views - Int! The number of views the page has received.
featured - Boolean! Indicates whether the page is featured.
content - String! The content of the page.
seo - Seo! The SEO metadata of the page.
keywords - [String!]! The keywords associated with the page.
updatedAt - DateTime! The date and time when the page was last updated.
Example
{
  "id": "4",
  "type": "PROMOTION",
  "handle": "abc123",
  "excerpt": "xyz789",
  "title": "xyz789",
  "featuredImage": Attachment,
  "top": false,
  "views": 987,
  "featured": false,
  "content": "abc123",
  "seo": Seo,
  "keywords": ["xyz789"],
  "updatedAt": "2007-12-03T10:15:30Z"
}

PageInfo

Description

Information about pagination using a Relay style cursor connection.

Fields
Field Name Description
hasNextPage - Boolean! When paginating forwards, are there more items?
hasPreviousPage - Boolean! When paginating backwards, are there more items?
startCursor - String The cursor to continue paginating backwards.
endCursor - String The cursor to continue paginating forwards.
total - Int! Total number of nodes in the paginated connection.
count - Int! Number of nodes in the current page.
currentPage - Int! Index of the current page.
lastPage - Int! Index of the last available page.
Example
{
  "hasNextPage": true,
  "hasPreviousPage": true,
  "startCursor": "xyz789",
  "endCursor": "abc123",
  "total": 987,
  "count": 123,
  "currentPage": 987,
  "lastPage": 987
}

PagePaginator

Description

A paginated list of Page items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Page!]! A list of Page items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Page]
}

PageType

Description

Page type

Values
Enum Value Description

PROMOTION

Promotion

CUSTOM

Custom

NATIVE

Native
Example
"PROMOTION"

PaginatedFilteredProduct

Description

Represents a paginated list of filtered products.

Fields
Field Name Description
data - [Product!] List of filtered products.
paginatorInfo - PaginatorInfo! Information about pagination.
Example
{
  "data": [Product],
  "paginatorInfo": PaginatorInfo
}

PaginatorInfo

Description

Information about pagination using a fully featured paginator.

Fields
Field Name Description
count - Int! Number of items in the current page.
currentPage - Int! Index of the current page.
firstItem - Int Index of the first item in the current page.
hasMorePages - Boolean! Are there more pages after this one?
lastItem - Int Index of the last item in the current page.
lastPage - Int! Index of the last available page.
perPage - Int! Number of items per page.
total - Int! Number of total available items.
Example
{
  "count": 987,
  "currentPage": 987,
  "firstItem": 123,
  "hasMorePages": true,
  "lastItem": 987,
  "lastPage": 123,
  "perPage": 123,
  "total": 123
}

PasswordChangeInput

Description

Input type for changing password.

Fields
Input Field Description
oldPassword - String! The old password for verification.
newPassword - String! The new password to be set.
Example
{
  "oldPassword": "xyz789",
  "newPassword": "xyz789"
}

PasswordChangeResponse

Description

Type representing the response for changing password.

Fields
Field Name Description
message - String A message indicating the outcome of the password change operation.
success - Boolean Indicates whether the password change operation was successful.
Example
{"message": "abc123", "success": true}

PasswordForgetInput

Description

Input type for requesting password reset.

Fields
Input Field Description
email - String! The email address associated with the account for password reset.
resetBy - String! The method by which the password reset is requested.
phone - String The phone number associated with the account for password reset.
Example
{
  "email": "abc123",
  "resetBy": "xyz789",
  "phone": "xyz789"
}

PasswordResetInput

Description

Input type for resetting password.

Fields
Input Field Description
token - String! The token sent for password reset verification.
email - String! The email address associated with the account for password reset.
password - String! The new password to be set.
phone - String The phone number associated with the account for password reset.
resetBy - String! The method by which the password reset is requested.
Example
{
  "token": "xyz789",
  "email": "abc123",
  "password": "xyz789",
  "phone": "abc123",
  "resetBy": "abc123"
}

PasswordTokenVerifyInput

Description

Input type for verifying password reset token.

Fields
Input Field Description
token - String! The token sent for password reset verification.
email - String! The email address associated with the account for password reset.
phone - String The phone number associated with the account for password reset.
resetBy - String! The method by which the password reset is requested.
Example
{
  "token": "abc123",
  "email": "abc123",
  "phone": "abc123",
  "resetBy": "abc123"
}

PayOnCashCompleteInput

Fields
Input Field Description
checkoutRequestId - String! The Checkout response ID
amount - Float! the a mount of money paid
currencyCode - CurrencyCode! The currency code of the amount
Example
{
  "checkoutRequestId": "abc123",
  "amount": 987.65,
  "currencyCode": "AED"
}

PayOnCashInput

Fields
Input Field Description
cartId - ID The customer cartID
orderId - ID The customer OrderID
phoneNumber - String! Phone number to charge the amount
Example
{
  "cartId": 4,
  "orderId": 4,
  "phoneNumber": "abc123"
}

PaymentGatewayType

Description

Enum representing different types of payment gateways.

Values
Enum Value Description

STRIPE

Payment via Stripe.

CASH_ON_DELIVERY

Cash on delivery payment method.
Example
"STRIPE"

PaymentMethod

Fields
Field Name Description
id - ID!
name - String! The name of the payment method.
description - String A description of the payment method.
Example
{
  "id": "4",
  "name": "xyz789",
  "description": "xyz789"
}

PaymentResponse

Fields
Field Name Description
success - Boolean! A Boolean field indicating whether the payment was successful (true) or not (false).
message - String! A string field providing a human-readable message about the payment status.
errors - [String!] An optional array of strings that contains any error messages that occurred during the payment process. If there were no errors, this field may be an empty array.
Possible Types
PaymentResponse Types

PaymentResponsePayload

LipaNaMpesaPaymentStatus

Example
{
  "success": true,
  "message": "abc123",
  "errors": ["xyz789"]
}

PaymentResponsePayload

Fields
Field Name Description
success - Boolean! A Boolean field indicating whether the M-Pesa transaction was successful (true) or not (false).
message - String! A human-readable message providing details about the status of the M-Pesa transaction.
errors - [String!] An array of strings that contains any error messages that occurred during the M-Pesa transaction process. If there were no errors, this field may be an empty array.
result - PaymentResponseResult The merchant response for the M-Pesa transaction
Example
{
  "success": false,
  "message": "abc123",
  "errors": ["abc123"],
  "result": PaymentResponseResult
}

PaymentResponseResult

Fields
Field Name Description
code - String! The M-Pesa transaction result code
status - String The status of the M-Pesa transaction
orderStatus - String! The status of the M-Pesa order
message - String! The message returned by M-Pesa
link - String Link provieded by the merchant
checkoutRequestId - String the id provided by the merchant
Example
{
  "code": "xyz789",
  "status": "abc123",
  "orderStatus": "abc123",
  "message": "xyz789",
  "link": "xyz789",
  "checkoutRequestId": "xyz789"
}

PaymentResult

Description

The M-Pesa lipaNaMpesaQuery Response

Fields
Field Name Description
code - String! The M-Pesa transaction result code
status - String! The status of the M-Pesa transaction
orderStatus - String! The status of the M-Pesa order
message - String! The message returned by M-Pesa
link - String Link provieded by the merchant
checkoutRequestId - String the id provided by the merchant
Possible Types
PaymentResult Types

LipaNaMpesaTransactionResult

Example
{
  "code": "abc123",
  "status": "abc123",
  "orderStatus": "abc123",
  "message": "xyz789",
  "link": "xyz789",
  "checkoutRequestId": "xyz789"
}

PaymentStatus

Description

Payment status

Values
Enum Value Description

UNPAID

The payment has not been made yet.

PENDING

The payment is pending approval.

PROCESSING

The payment is being processed.

PAID

The payment has been successfully paid.

FAILED

The payment has failed.

REFUNDED

The payment has been refunded.

CHARGEBACK

The payment has been charged back.

CANCELLED

The payment has been cancelled.

HELD

The payment has been held.

AUTHORIZED

The payment has been authorized.

VOIDED

The payment has been voided.
Example
"UNPAID"

Policy

Description

Type representing a policy.

Fields
Field Name Description
id - ID! The ID of the policy.
userId - ID! The ID of the user associated with the policy.
title - String! The title of the policy.
handle - String! The handle of the policy.
keywords - [String] The keywords associated with the policy.
status - ModelStatus! The status of the policy.
type - PolicyType! The type of the policy.
name - String! The name of the policy.
content - String! The content of the policy.
updatedAt - DateTime! The date and time when the policy was last updated.
Example
{
  "id": 4,
  "userId": 4,
  "title": "abc123",
  "handle": "xyz789",
  "keywords": ["abc123"],
  "status": "DRAFT",
  "type": "OTHER",
  "name": "abc123",
  "content": "xyz789",
  "updatedAt": "2007-12-03T10:15:30Z"
}

PolicyPaginator

Description

A paginated list of Policy items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Policy!]! A list of Policy items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Policy]
}

PolicyType

Description

Policy type

Values
Enum Value Description

OTHER

Other

RETURN

Return

SUPPORT

Support

PRIVACY

Privacy
Example
"OTHER"

Product

Description

Represents a product.

Fields
Field Name Description
approved - Boolean! Indicates whether the product is approved.
brand - Brand Brand associated with the product.
brandId - ID ID of the brand associated with the product.
categories - [ProductCategory!]! Categories associated with the product.
category - ProductCategory! Category associated with the product.
categoryId - ID! ID of the category associated with the product.
collections - [Collection!]! Collections associated with the product.
compareAtPriceAmount - MoneyV2! Amount representing the compare at price of the product.
currency - CurrencyCode! Currency code of the product.
customType - String Custom type of the product.
description - String Description of the product.
code - String! Code of the product.
discount - Float Discount amount of the product.
discountType - DiscountType Type of discount applied to the product.
featured - Boolean! Indicates whether the product is featured.
id - ID ID of the product.
image - [Attachment!]! Images associated with the product.
keywords - [String!]! Keywords associated with the product.
name - String! Name of the product.
options - [ProductProperty!]! Options associated with the product.
photos - [Attachment!]! Photos associated with the product.
priceAmount - MoneyV2! Amount representing the price of the product.
priceRange - String Price range of the product.
rating - Int! Rating of the product.
refundable - Boolean! Indicates whether the product is refundable.
reviews - [ProductReview!]! Reviews associated with the product.
reviewsCount - Int! Count of reviews associated with the product.
seo - Seo! SEO information associated with the product.
shop - Shop! Shop associated with the product.
shopId - ID! ID of the shop associated with the product.
showUnitPrice - Boolean! Indicates whether to show unit price of the product.
handle - String! Handle of the product.
specifications - [ProductSpecification!]! Specifications associated with the product.
tags - [ProductTag!]! Tags associated with the product.
templateId - ID ID of the template associated with the product.
thumbnailImage - Attachment Thumbnail image of the product.
todaysDeal - Boolean! Indicates whether the product is today's deal.
type - ProductType! Type of the product.
unit - String! Unit of the product.
variants - [ProductVariant!]! Variants associated with the product.
variantsCount - Int! Count of variants associated with the product.
publishedAt - DateTime! Date and time when the product was published.
updatedAt - DateTime! Date and time when the product was last updated.
Example
{
  "approved": true,
  "brand": Brand,
  "brandId": "4",
  "categories": [ProductCategory],
  "category": ProductCategory,
  "categoryId": "4",
  "collections": [Collection],
  "compareAtPriceAmount": MoneyV2,
  "currency": "AED",
  "customType": "xyz789",
  "description": "abc123",
  "code": "abc123",
  "discount": 123.45,
  "discountType": "PERCENT",
  "featured": true,
  "id": 4,
  "image": [Attachment],
  "keywords": ["abc123"],
  "name": "xyz789",
  "options": [ProductProperty],
  "photos": [Attachment],
  "priceAmount": MoneyV2,
  "priceRange": "abc123",
  "rating": 123,
  "refundable": true,
  "reviews": [ProductReview],
  "reviewsCount": 987,
  "seo": Seo,
  "shop": Shop,
  "shopId": 4,
  "showUnitPrice": true,
  "handle": "xyz789",
  "specifications": [ProductSpecification],
  "tags": [ProductTag],
  "templateId": "4",
  "thumbnailImage": Attachment,
  "todaysDeal": true,
  "type": "PHYSICAL",
  "unit": "xyz789",
  "variants": [ProductVariant],
  "variantsCount": 987,
  "publishedAt": "2007-12-03T10:15:30Z",
  "updatedAt": "2007-12-03T10:15:30Z"
}

ProductCategory

Fields
Field Name Description
id - ID! The unique identifier for the category.
parentId - ID The ID of the parent category, if there is one.
level - Int! The level of the category in the category hierarchy.
orderLevel - String A string representing the order of the category within its level.
name - String! The name of the category.
displayName - String A display name for the category.
banners - [Attachment] An attachment (such as an image) to be used as a banners for the category.
image - Attachment An attachment (such as an image) to be used as a banners for the category.
icon - Attachment An attachment (such as an image) to be used as an icon for the category.
top - Boolean! A boolean indicating whether the category is a top-level category.
featured - Boolean! A boolean indicating whether the category is a featured category.
handle - String! A string representing the URL ,for the category.
type - ProductType The type of the category (such as "electronics" or "clothing").
seo - Seo The seo for the category in metadata (such as in search engine results).
parent - ProductCategory The parent category, if there is one.
children - [ProductCategory] An array of child categories for this category.
childrenCount - Int! The number of child categories for this category.
productsCount - Int! The number of products associated with this category.
parentMain - ProductCategory The top parent of the category
status - ModelStatus!
description - String brief description of the category
Example
{
  "id": "4",
  "parentId": 4,
  "level": 987,
  "orderLevel": "abc123",
  "name": "xyz789",
  "displayName": "xyz789",
  "banners": [Attachment],
  "image": Attachment,
  "icon": Attachment,
  "top": false,
  "featured": true,
  "handle": "abc123",
  "type": "PHYSICAL",
  "seo": Seo,
  "parent": ProductCategory,
  "children": [ProductCategory],
  "childrenCount": 123,
  "productsCount": 123,
  "parentMain": ProductCategory,
  "status": "DRAFT",
  "description": "abc123"
}

ProductCategoryPaginator

Description

A paginated list of ProductCategory items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [ProductCategory!]! A list of ProductCategory items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [ProductCategory]
}

ProductCondition

Description

Product condition

Values
Enum Value Description

new

New

REFURBISHED

Refurbished

USED

Used
Example
"new"

ProductFilterCriteria

Description

Contains filter criteria for filtering products.

Fields
Field Name Description
brand - Brand Brand filter criteria.
category - ProductCategory Category filter criteria.
relatedCategories - RelatedCategoriesPayload Related categories payload.
shop - Shop Shop filter criteria.
collection - Collection Collection filter criteria.
attributes - [ProductFilterCriteriaAttribute]! List of attributes used for filtering.
Example
{
  "brand": Brand,
  "category": ProductCategory,
  "relatedCategories": RelatedCategoriesPayload,
  "shop": Shop,
  "collection": Collection,
  "attributes": [ProductFilterCriteriaAttribute]
}

ProductFilterCriteriaAttribute

Description

Represents an attribute used for filtering products.

Fields
Field Name Description
id - ID! ID of the attribute.
name - String! Name of the attribute.
value - String! Value of the attribute.
attributeValues - [ProductFilterCriteriaAttributeValues]! List of attribute values.
Example
{
  "id": 4,
  "name": "xyz789",
  "value": "abc123",
  "attributeValues": [
    ProductFilterCriteriaAttributeValues
  ]
}

ProductFilterCriteriaAttributeValues

Description

Represents a value of an attribute used for filtering products.

Fields
Field Name Description
id - ID! ID of the attribute value.
name - String! Name of the attribute value.
value - String! Value of the attribute value.
colorCode - String Color code of the attribute value.
Example
{
  "id": 4,
  "name": "abc123",
  "value": "xyz789",
  "colorCode": "abc123"
}

ProductFilterValues

Description

Contains filter values for filtering products.

Fields
Field Name Description
brandId - ID ID of the brand used for filtering.
collectionId - ID ID of the collection used for filtering.
categoryId - ID ID of the category used for filtering.
color - String Color used for filtering.
shopId - ID ID of the shop used for filtering.
sortBy - ProductSortField Field used for sorting products.
keyword - String Keyword used for filtering.
selectedAttributes - [AttributesFilter] Selected attributes used for filtering.
minPrice - MoneyV2 Minimum price used for filtering.
maxPrice - MoneyV2 Maximum price used for filtering.
featured - Boolean Boolean indicating if the product is featured.
todaysDeal - Boolean Boolean indicating if the product is today's deal.
minimumRating - Float Minimum rating used for filtering.
Example
{
  "brandId": 4,
  "collectionId": 4,
  "categoryId": "4",
  "color": "abc123",
  "shopId": 4,
  "sortBy": "NAME",
  "keyword": "abc123",
  "selectedAttributes": [AttributesFilter],
  "minPrice": MoneyV2,
  "maxPrice": MoneyV2,
  "featured": true,
  "todaysDeal": true,
  "minimumRating": 123.45
}

ProductKeywordSuggestion

Description

Represents product keyword suggestions.

Fields
Field Name Description
result - Boolean! Indicates if the suggestion was successful.
message - String Message associated with the suggestion.
keywords - [String] List of suggested keywords.
query - String Original query keyword.
Example
{
  "result": true,
  "message": "abc123",
  "keywords": ["abc123"],
  "query": "xyz789"
}

ProductPaginator

Description

A paginated list of Product items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Product!]! A list of Product items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Product]
}

ProductProperty

Description

Represents a property of a product.

Fields
Field Name Description
id - ID! ID of the product property.
name - String! Name of the product property.
displayName - String! Display name of the product property.
showType - ProductPropertyShowType! Type of display for the product property.
showTypeColor - Boolean! Indicates whether the display type is color.
isShowTypeColor - Boolean! Indicates whether the property values have color.
staticValues - [ProductPropertyStaticValue!]! Static values associated with the product property.
values - [ProductPropertyValue!]! Values associated with the product property.
position - Int! Position of the product property.
Example
{
  "id": 4,
  "name": "abc123",
  "displayName": "abc123",
  "showType": "NONE",
  "showTypeColor": true,
  "isShowTypeColor": false,
  "staticValues": [ProductPropertyStaticValue],
  "values": [ProductPropertyValue],
  "position": 987
}

ProductPropertyShowType

Description

Enumerates the show types for product properties.

Values
Enum Value Description

NONE

No display type.

IMAGE

Display type is image.

COLOUR_ALTA

Display type is color (alta).

COLOUR_IMAGE

Display type is color image.
Example
"NONE"

ProductPropertyStaticValue

Description

Represents a static value of a product property.

Fields
Field Name Description
id - ID! ID of the static value.
value - String! Value of the static value.
displayName - String! Display name of the static value.
colorCode - String Color code associated with the static value.
image - Attachment Image associated with the static value.
imageSummary - Attachment Summary image associated with the static value.
Example
{
  "id": "4",
  "value": "xyz789",
  "displayName": "xyz789",
  "colorCode": "xyz789",
  "image": Attachment,
  "imageSummary": Attachment
}

ProductPropertyValue

Description

Represents a value of a product property.

Fields
Field Name Description
id - ID! ID of the property value.
value - String! Value of the property.
displayName - String! Display name of the property value.
colorCode - String Color code associated with the property value.
image - Attachment Image associated with the property value.
imageSummary - Attachment Summary image associated with the property value.
Example
{
  "id": 4,
  "value": "abc123",
  "displayName": "xyz789",
  "colorCode": "abc123",
  "image": Attachment,
  "imageSummary": Attachment
}

ProductReview

Description

Represents a product review.

Fields
Field Name Description
id - ID! ID of the product review.
productId - ID! ID of the product associated with the review.
rating - Int! Rating given in the review.
comment - String! Comment provided in the review.
status - ModelStatus! Status of the review.
title - String Title of the review.
name - String Name of the reviewer.
country - String Country of the reviewer.
reviewTime - String Time when the review was made.
tags - String Tags associated with the review.
photos - [Attachment!]! Photos attached to the review.
createdAt - DateTime! Date and time when the review was created.
updatedAt - DateTime! Date and time when the review was last updated.
Example
{
  "id": "4",
  "productId": 4,
  "rating": 987,
  "comment": "xyz789",
  "status": "DRAFT",
  "title": "abc123",
  "name": "abc123",
  "country": "abc123",
  "reviewTime": "abc123",
  "tags": "xyz789",
  "photos": [Attachment],
  "createdAt": "2007-12-03T10:15:30Z",
  "updatedAt": "2007-12-03T10:15:30Z"
}

ProductReviewPaginator

Description

A paginated list of ProductReview items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [ProductReview!]! A list of ProductReview items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [ProductReview]
}

ProductSortField

Description

Enumerates the fields used for sorting products.

Values
Enum Value Description

NAME

Sort products by name.

NEWEST

Sort products by newest.

OLDEST

Sort products by oldest.

LOWEST_PRICE

Sort products by lowest price.

HIGHEST_PRICE

Sort products by highest price.

RELEVANCE

Sort products by relevance.

POPULARITY

Sort products by popularity.

BEST_SELLING

Sort products by best selling.
Example
"NAME"

ProductSpecification

Description

Represents a product specification.

Fields
Field Name Description
id - ID! ID of the product specification.
productId - ID! ID of the product associated with the specification.
staticValue - SpecificationStaticValue Static value associated with the specification.
addedBy - ID ID of the user who added the specification.
shopId - ID! ID of the shop associated with the specification.
Example
{
  "id": 4,
  "productId": 4,
  "staticValue": SpecificationStaticValue,
  "addedBy": "4",
  "shopId": 4
}

ProductTag

Description

Represents a product tag.

Fields
Field Name Description
id - ID! ID of the product tag.
name - String! Name of the product tag.
handle - String! Handle of the product tag.
Example
{
  "id": "4",
  "name": "abc123",
  "handle": "abc123"
}

ProductType

Description

Product type

Values
Enum Value Description

PHYSICAL

A physical product that has a tangible form. Example categories: furniture, clothing, books.

DIGITAL

A digital product that is downloaded or accessed online. Example categories: software, ebooks, music downloads.

VIRTUAL

A virtual product that is experienced in a virtual environment. Example categories: virtual events, online courses, virtual reality games.

SUBSCRIPTION

A product that is offered on a recurring basis. Example categories: magazine subscriptions, streaming services, membership clubs.

SERVICE

A product that primarily provides a service or performs a task. Example categories: haircuts, consulting services, car repairs.

BUNDLED

A product that includes multiple items or services bundled together. Example categories: software suites, vacation packages, meal kits.
Example
"PHYSICAL"

ProductVariant

Description

Represents a product variant.

Fields
Field Name Description
id - ID! ID of the product variant.
productId - ID! ID of the product associated with the variant.
variant - String Variant code of the product.
sku - String! Stock keeping unit (SKU) of the variant.
priceAmount - MoneyV2! Price amount of the variant.
compareAtPriceAmount - MoneyV2! Compare at price amount of the variant.
barcode - String Barcode of the variant.
weight - Weight Weight of the variant.
quantityAvailable - Int! Quantity available for the variant.
image - Attachment Image of the variant.
imageSummary - Attachment Summary image of the variant.
requiresShipping - Boolean Indicates whether the variant requires shipping.
taxable - Boolean! Indicates whether the variant is taxable.
selectedOptions - [SelectedOptions!]! Selected options associated with the variant.
options - [String!]! Options associated with the variant.
product - Product! Product associated with the variant.
minPurchaseQuantity - Int! Minimum purchase quantity for the variant.
Example
{
  "id": 4,
  "productId": "4",
  "variant": "abc123",
  "sku": "abc123",
  "priceAmount": MoneyV2,
  "compareAtPriceAmount": MoneyV2,
  "barcode": "xyz789",
  "weight": Weight,
  "quantityAvailable": 123,
  "image": Attachment,
  "imageSummary": Attachment,
  "requiresShipping": false,
  "taxable": true,
  "selectedOptions": [SelectedOptions],
  "options": ["xyz789"],
  "product": Product,
  "minPurchaseQuantity": 123
}

Profile

Description

Represents a user profile.

Fields
Field Name Description
id - ID ID of the profile.
avatar - Attachment Avatar attached to the profile.
bio - String Biography of the user.
socials - [Social] Social media accounts associated with the profile.
contact - String Contact information of the user.
locale - String Locale setting of the user.
currency - String Currency setting of the user.
taxExempt - Boolean! Indicates whether the user is tax exempt.
acceptsSms - Boolean Indicates whether the user accepts SMS notifications.
currencyCode - CurrencyCode Currency code associated with the user's currency.
countryCode - CountryCode Country code associated with the user's country.
Example
{
  "id": 4,
  "avatar": Attachment,
  "bio": "abc123",
  "socials": [Social],
  "contact": "xyz789",
  "locale": "xyz789",
  "currency": "xyz789",
  "taxExempt": false,
  "acceptsSms": true,
  "currencyCode": "AED",
  "countryCode": "AF"
}

ProfileInput

Description

Input for updating a user profile.

Fields
Input Field Description
avatar - [AttachmentInput] Avatar input to update.
bio - String Biography to update.
socials - [SocialInput] Social media accounts to update.
contact - String Contact information to update.
locale - String Locale setting to update.
currency - String Currency setting to update.
acceptsSms - Boolean Indicates whether the user accepts SMS notifications.
marketingConsent - Boolean Indicates whether the user consents to marketing.
Example
{
  "avatar": [AttachmentInput],
  "bio": "abc123",
  "socials": [SocialInput],
  "contact": "abc123",
  "locale": "xyz789",
  "currency": "abc123",
  "acceptsSms": false,
  "marketingConsent": false
}

QueryAllBrandsOrderByColumn

Description

Allowed column names for Query.allBrands.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

UPDATED_AT

Example
"CREATED_AT"

QueryAllBrandsOrderByOrderByClause

Description

Order by clause for Query.allBrands.orderBy.

Fields
Input Field Description
column - QueryAllBrandsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryArticleCategoriesOrderByColumn

Description

Allowed column names for Query.articleCategories.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

UPDATED_AT

TYPE

FEATURED

Example
"CREATED_AT"

QueryArticleCategoriesOrderByOrderByClause

Description

Order by clause for Query.articleCategories.orderBy.

Fields
Input Field Description
column - QueryArticleCategoriesOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryArticlesCategoryHandleColumn

Description

Allowed column names for Query.articles.categoryHandle.

Values
Enum Value Description

HANDLE

Example
"HANDLE"

QueryArticlesCategoryHandleWhereHasConditions

Description

Dynamic WHERE conditions for the categoryHandle argument on the query articles.

Fields
Input Field Description
column - QueryArticlesCategoryHandleColumn The column that is used for the condition.
operator - SQLOperator The operator that is used for the condition. Default = EQ
value - Mixed The value that is used for the condition.
AND - [QueryArticlesCategoryHandleWhereHasConditions!] A set of conditions that requires all conditions to match.
OR - [QueryArticlesCategoryHandleWhereHasConditions!] A set of conditions that requires at least one condition to match.
HAS - QueryArticlesCategoryHandleWhereHasConditionsRelation Check whether a relation exists. Extra conditions or a minimum amount can be applied.
Example
{
  "column": "HANDLE",
  "operator": "EQ",
  "value": Mixed,
  "AND": [QueryArticlesCategoryHandleWhereHasConditions],
  "OR": [QueryArticlesCategoryHandleWhereHasConditions],
  "HAS": QueryArticlesCategoryHandleWhereHasConditionsRelation
}

QueryArticlesCategoryHandleWhereHasConditionsRelation

Description

Dynamic HAS conditions for WHERE conditions for the categoryHandle argument on the query articles.

Fields
Input Field Description
relation - String! The relation that is checked.
operator - SQLOperator The comparison operator to test against the amount. Default = GTE
amount - Int The amount to test. Default = 1
condition - QueryArticlesCategoryHandleWhereHasConditions Additional condition logic.
Example
{
  "relation": "xyz789",
  "operator": "EQ",
  "amount": 987,
  "condition": QueryArticlesCategoryHandleWhereHasConditions
}

QueryArticlesOrderByColumn

Description

Allowed column names for Query.articles.orderBy.

Values
Enum Value Description

CREATED_AT

TITLE

UPDATED_AT

Example
"CREATED_AT"

QueryArticlesOrderByOrderByClause

Description

Order by clause for Query.articles.orderBy.

Fields
Input Field Description
column - QueryArticlesOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryBrandsOrderByColumn

Description

Allowed column names for Query.brands.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

UPDATED_AT

Example
"CREATED_AT"

QueryBrandsOrderByOrderByClause

Description

Order by clause for Query.brands.orderBy.

Fields
Input Field Description
column - QueryBrandsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryCollectionsOrderByColumn

Description

Allowed column names for Query.collections.orderBy.

Values
Enum Value Description

CREATED_AT

TITLE

UPDATED_AT

SORT_ORDER

FEATURED

Example
"CREATED_AT"

QueryCollectionsOrderByOrderByClause

Description

Order by clause for Query.collections.orderBy.

Fields
Input Field Description
column - QueryCollectionsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryCouponsOrderByColumn

Description

Allowed column names for Query.coupons.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

UPDATED_AT

Example
"CREATED_AT"

QueryCouponsOrderByOrderByClause

Description

Order by clause for Query.coupons.orderBy.

Fields
Input Field Description
column - QueryCouponsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryCustomerAddressesOrderByColumn

Description

Allowed column names for Query.customerAddresses.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

UPDATED_AT

Example
"CREATED_AT"

QueryCustomerAddressesOrderByOrderByClause

Description

Order by clause for Query.customerAddresses.orderBy.

Fields
Input Field Description
column - QueryCustomerAddressesOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryCustomerOrdersOrderByColumn

Description

Allowed column names for Query.customerOrders.orderBy.

Values
Enum Value Description

CREATED_AT

UPDATED_AT

Example
"CREATED_AT"

QueryCustomerOrdersOrderByOrderByClause

Description

Order by clause for Query.customerOrders.orderBy.

Fields
Input Field Description
column - QueryCustomerOrdersOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryCustomerTicketsOrderByColumn

Description

Allowed column names for Query.customerTickets.orderBy.

Values
Enum Value Description

CREATED_AT

VIEWED

UPDATED_AT

Example
"CREATED_AT"

QueryCustomerTicketsOrderByOrderByClause

Description

Order by clause for Query.customerTickets.orderBy.

Fields
Input Field Description
column - QueryCustomerTicketsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryCustomerWishlistsOrderByColumn

Description

Allowed column names for Query.customerWishlists.orderBy.

Values
Enum Value Description

CREATED_AT

WISHLIST_NAME

UPDATED_AT

Example
"CREATED_AT"

QueryCustomerWishlistsOrderByOrderByClause

Description

Order by clause for Query.customerWishlists.orderBy.

Fields
Input Field Description
column - QueryCustomerWishlistsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryDeliveryCountriesOrderByColumn

Description

Allowed column names for Query.deliveryCountries.orderBy.

Values
Enum Value Description

NAME

ID

CODE

Example
"NAME"

QueryDeliveryCountriesOrderByOrderByClause

Description

Order by clause for Query.deliveryCountries.orderBy.

Fields
Input Field Description
column - QueryDeliveryCountriesOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "NAME", "order": "ASC"}

QueryPagesOrderByColumn

Description

Allowed column names for Query.pages.orderBy.

Values
Enum Value Description

CREATED_AT

TITLE

UPDATED_AT

Example
"CREATED_AT"

QueryPagesOrderByOrderByClause

Description

Order by clause for Query.pages.orderBy.

Fields
Input Field Description
column - QueryPagesOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryPoliciesOrderByColumn

Description

Allowed column names for Query.policies.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

STATUS

UPDATED_AT

Example
"CREATED_AT"

QueryPoliciesOrderByOrderByClause

Description

Order by clause for Query.policies.orderBy.

Fields
Input Field Description
column - QueryPoliciesOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryProductCategoriesAlongChildrenOrderByColumn

Description

Allowed column names for Query.productCategoriesAlongChildren.orderBy.

Values
Enum Value Description

NAME

LEVEL

Example
"NAME"

QueryProductCategoriesAlongChildrenOrderByOrderByClause

Description

Order by clause for Query.productCategoriesAlongChildren.orderBy.

Fields
Input Field Description
column - QueryProductCategoriesAlongChildrenOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "NAME", "order": "ASC"}

QueryProductCategoriesOrderByColumn

Description

Allowed column names for Query.productCategories.orderBy.

Values
Enum Value Description

NAME

LEVEL

Example
"NAME"

QueryProductCategoriesOrderByOrderByClause

Description

Order by clause for Query.productCategories.orderBy.

Fields
Input Field Description
column - QueryProductCategoriesOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "NAME", "order": "ASC"}

QueryProductReviewsOrderByColumn

Description

Allowed column names for Query.productReviews.orderBy.

Values
Enum Value Description

CREATED_AT

TITLE

RATING

COUNTRY

UPDATED_AT

Example
"CREATED_AT"

QueryProductReviewsOrderByOrderByClause

Description

Order by clause for Query.productReviews.orderBy.

Fields
Input Field Description
column - QueryProductReviewsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryProductsCategoryConditionColumn

Description

Allowed column names for Query.products.categoryCondition.

Values
Enum Value Description

ID

HANDLE

TITLE

PARENT_ID

Example
"ID"

QueryProductsCategoryConditionWhereHasConditions

Description

Dynamic WHERE conditions for the categoryCondition argument on the query products.

Fields
Input Field Description
column - QueryProductsCategoryConditionColumn The column that is used for the condition.
operator - SQLOperator The operator that is used for the condition. Default = EQ
value - Mixed The value that is used for the condition.
AND - [QueryProductsCategoryConditionWhereHasConditions!] A set of conditions that requires all conditions to match.
OR - [QueryProductsCategoryConditionWhereHasConditions!] A set of conditions that requires at least one condition to match.
HAS - QueryProductsCategoryConditionWhereHasConditionsRelation Check whether a relation exists. Extra conditions or a minimum amount can be applied.
Example
{
  "column": "ID",
  "operator": "EQ",
  "value": Mixed,
  "AND": [
    QueryProductsCategoryConditionWhereHasConditions
  ],
  "OR": [
    QueryProductsCategoryConditionWhereHasConditions
  ],
  "HAS": QueryProductsCategoryConditionWhereHasConditionsRelation
}

QueryProductsCategoryConditionWhereHasConditionsRelation

Description

Dynamic HAS conditions for WHERE conditions for the categoryCondition argument on the query products.

Fields
Input Field Description
relation - String! The relation that is checked.
operator - SQLOperator The comparison operator to test against the amount. Default = GTE
amount - Int The amount to test. Default = 1
condition - QueryProductsCategoryConditionWhereHasConditions Additional condition logic.
Example
{
  "relation": "abc123",
  "operator": "EQ",
  "amount": 987,
  "condition": QueryProductsCategoryConditionWhereHasConditions
}

QueryProductsCollectionConditionColumn

Description

Allowed column names for Query.products.collectionCondition.

Values
Enum Value Description

ID

HANDLE

NAME

Example
"ID"

QueryProductsCollectionConditionWhereHasConditions

Description

Dynamic WHERE conditions for the collectionCondition argument on the query products.

Fields
Input Field Description
column - QueryProductsCollectionConditionColumn The column that is used for the condition.
operator - SQLOperator The operator that is used for the condition. Default = EQ
value - Mixed The value that is used for the condition.
AND - [QueryProductsCollectionConditionWhereHasConditions!] A set of conditions that requires all conditions to match.
OR - [QueryProductsCollectionConditionWhereHasConditions!] A set of conditions that requires at least one condition to match.
HAS - QueryProductsCollectionConditionWhereHasConditionsRelation Check whether a relation exists. Extra conditions or a minimum amount can be applied.
Example
{
  "column": "ID",
  "operator": "EQ",
  "value": Mixed,
  "AND": [
    QueryProductsCollectionConditionWhereHasConditions
  ],
  "OR": [
    QueryProductsCollectionConditionWhereHasConditions
  ],
  "HAS": QueryProductsCollectionConditionWhereHasConditionsRelation
}

QueryProductsCollectionConditionWhereHasConditionsRelation

Description

Dynamic HAS conditions for WHERE conditions for the collectionCondition argument on the query products.

Fields
Input Field Description
relation - String! The relation that is checked.
operator - SQLOperator The comparison operator to test against the amount. Default = GTE
amount - Int The amount to test. Default = 1
condition - QueryProductsCollectionConditionWhereHasConditions Additional condition logic.
Example
{
  "relation": "abc123",
  "operator": "EQ",
  "amount": 987,
  "condition": QueryProductsCollectionConditionWhereHasConditions
}

QueryProductsListOrderByColumn

Description

Allowed column names for Query.productsList.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

UPDATED_AT

UNIT_PRICE

PURCHASE_PRICE

ORDERS

RATING

NUM_OF_SALE

QUANTITY_AVAILABLE

PRICE

TYPE

Example
"CREATED_AT"

QueryProductsListOrderByOrderByClause

Description

Order by clause for Query.productsList.orderBy.

Fields
Input Field Description
column - QueryProductsListOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QueryProductsOrderByColumn

Description

Allowed column names for Query.products.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

UPDATED_AT

PRICE

RATING

Example
"CREATED_AT"

QueryProductsOrderByOrderByClause

Description

Order by clause for Query.products.orderBy.

Fields
Input Field Description
column - QueryProductsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QuerySocialContentCategoriesOrderByColumn

Description

Allowed column names for Query.socialContentCategories.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

PRIORITY

Example
"CREATED_AT"

QuerySocialContentCategoriesOrderByOrderByClause

Description

Order by clause for Query.socialContentCategories.orderBy.

Fields
Input Field Description
column - QuerySocialContentCategoriesOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QuerySocialContentItemsOrderByColumn

Description

Allowed column names for Query.socialContentItems.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

Example
"CREATED_AT"

QuerySocialContentItemsOrderByOrderByClause

Description

Order by clause for Query.socialContentItems.orderBy.

Fields
Input Field Description
column - QuerySocialContentItemsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QuerySocialContentPersonalizedItemsOrderByColumn

Description

Allowed column names for Query.socialContentPersonalizedItems.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

Example
"CREATED_AT"

QuerySocialContentPersonalizedItemsOrderByOrderByClause

Description

Order by clause for Query.socialContentPersonalizedItems.orderBy.

Fields
Input Field Description
column - QuerySocialContentPersonalizedItemsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

QuerySocialContentTagsOrderByColumn

Description

Allowed column names for Query.socialContentTags.orderBy.

Values
Enum Value Description

CREATED_AT

NAME

Example
"CREATED_AT"

QuerySocialContentTagsOrderByOrderByClause

Description

Order by clause for Query.socialContentTags.orderBy.

Fields
Input Field Description
column - QuerySocialContentTagsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

RelatedCategoriesPayload

Description

Represents a payload containing related categories.

Fields
Field Name Description
data - [ProductCategory] List of related product categories.
paginatorInfo - PaginatorInfo! Information about pagination.
Example
{
  "data": [ProductCategory],
  "paginatorInfo": PaginatorInfo
}

RemoveItemFromWishlistInput

Description

Input object for removing an item from a wishlist.

Fields
Input Field Description
token - ID! The token of the wishlist.
wishlistId - ID! The ID of the wishlist.
wishlistItemIds - [ID!] The IDs of the wishlist items to remove.
Example
{
  "token": 4,
  "wishlistId": "4",
  "wishlistItemIds": [4]
}

ReplyTicketByClientInput

Description

Input for replying to a ticket by a client.

Fields
Input Field Description
ticketId - ID! ID of the ticket to reply to.
reply - String! Text content of the reply.
Example
{"ticketId": 4, "reply": "abc123"}

ReplyTicketByManagerInput

Description

Input for replying to a ticket by a manager.

Fields
Input Field Description
ticketId - ID! ID of the ticket to reply to.
reply - String! Text content of the reply.
status - TicketStatus! Status of the ticket after the reply.
priority - TicketPriority! Priority of the ticket after the reply.
Example
{
  "ticketId": "4",
  "reply": "abc123",
  "status": "CLOSED",
  "priority": "LOW"
}

SQLOperator

Description

The available SQL operators that are used to filter query results.

Values
Enum Value Description

EQ

Equal operator (=)

NEQ

Not equal operator (!=)

GT

Greater than operator (>)

GTE

Greater than or equal operator (>=)

LT

Less than operator (<)

LTE

Less than or equal operator (<=)

LIKE

Simple pattern matching (LIKE)

NOT_LIKE

Negation of simple pattern matching (NOT LIKE)

IN

Whether a value is within a set of values (IN)

NOT_IN

Whether a value is not within a set of values (NOT IN)

BETWEEN

Whether a value is within a range of values (BETWEEN)

NOT_BETWEEN

Whether a value is not within a range of values (NOT BETWEEN)

IS_NULL

Whether a value is null (IS NULL)

IS_NOT_NULL

Whether a value is not null (IS NOT NULL)
Example
"EQ"

SelectedOptions

Description

Represents selected options for a product variant.

Fields
Field Name Description
name - String Name of the option.
value - String Value of the option.
Example
{
  "name": "xyz789",
  "value": "abc123"
}

Seo

Description

Type representing SEO data.

Fields
Field Name Description
title - String! Title of the SEO content.
description - String! Description of the SEO content.
image - Attachment Image related to the SEO content.
keywords - [String] Keywords related to the SEO content.
Example
{
  "title": "abc123",
  "description": "xyz789",
  "image": Attachment,
  "keywords": ["abc123"]
}

ShippingType

Description

Shipping type

Values
Enum Value Description

FIXED

Fixed

PERCENTAGE

Percentage

FREE

Free

FIXED

Fixed
Example
"FIXED"

Shop

Description

Represents a shop.

Fields
Field Name Description
id - ID! ID of the shop.
name - String Name of the shop.
handle - String! Handle of the shop.
top - String Top attribute of the shop.
metrics - ShopMetrics! Metrics associated with the shop.
logo - Attachment Logo of the shop.
coverImage - Attachment Cover image of the shop.
sliders - [Attachment] Sliders associated with the shop.
description - String Description of the shop.
seo - Seo SEO settings for the shop.
status - ShopStatus Status of the shop.
createdAt - DateTime! Date and time when the shop was created.
social - SocialAccount! Social account associated with the shop.
brand - Branding! Branding details of the shop.
products - ProductPaginator List of products associated with the shop.
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 50.

page - Int

The offset from which items are returned.

Example
{
  "id": "4",
  "name": "xyz789",
  "handle": "abc123",
  "top": "abc123",
  "metrics": ShopMetrics,
  "logo": Attachment,
  "coverImage": Attachment,
  "sliders": [Attachment],
  "description": "xyz789",
  "seo": Seo,
  "status": "DRAFT",
  "createdAt": "2007-12-03T10:15:30Z",
  "social": SocialAccount,
  "brand": Branding,
  "products": ProductPaginator
}

ShopMetrics

Description

Metrics associated with a shop.

Fields
Field Name Description
ratingCount - Int! Count of ratings received by the shop.
rating - Int! Average rating of the shop.
positiveRate - Int Positive rate of the shop.
positiveCount - Int Count of positive ratings received by the shop.
ordersCount - Int! Count of orders associated with the shop.
Example
{
  "ratingCount": 987,
  "rating": 987,
  "positiveRate": 987,
  "positiveCount": 123,
  "ordersCount": 987
}

ShopPaginator

Description

A paginated list of Shop items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Shop!]! A list of Shop items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Shop]
}

ShopStatus

Description

Enumeration of shop statuses.

Values
Enum Value Description

DRAFT

Shop is in draft mode.

PUBLISHED

Shop is published.

SUSPENDED

Shop is suspended.

BANNED

Shop is banned.

DELETED

Shop is deleted.
Example
"DRAFT"

Social

Fields
Field Name Description
type - String
link - String
Example
{
  "type": "xyz789",
  "link": "abc123"
}

SocialAccount

Fields
Field Name Description
id - ID!
lastName - String
name - String
initials - String
firstName - String
displayName - String
email - String
phone - String
bio - String
slogan - String
username - String!
banned - Boolean!
avatar - Attachment
avatarOriginal - String
metrics - SocialAccountMetrics!
audienceInteraction - AudienceFollowingStatus
contentItems - SocialContentItemPaginator
Arguments
keyword - String
contentType - SocialContentItemType
first - Int

Limits number of fetched items. Maximum allowed value: 50.

page - Int

The offset from which items are returned.

following - SocialAccountConnection
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 24.

after - String

A cursor after which elements are returned.

followers - SocialAccountConnection
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 24.

after - String

A cursor after which elements are returned.

Example
{
  "id": 4,
  "lastName": "xyz789",
  "name": "abc123",
  "initials": "xyz789",
  "firstName": "abc123",
  "displayName": "xyz789",
  "email": "abc123",
  "phone": "abc123",
  "bio": "xyz789",
  "slogan": "xyz789",
  "username": "abc123",
  "banned": true,
  "avatar": Attachment,
  "avatarOriginal": "xyz789",
  "metrics": SocialAccountMetrics,
  "audienceInteraction": AudienceFollowingStatus,
  "contentItems": SocialContentItemPaginator,
  "following": SocialAccountConnection,
  "followers": SocialAccountConnection
}

SocialAccountConnection

Description

A paginated list of SocialAccount edges.

Fields
Field Name Description
pageInfo - PageInfo! Pagination information about the list of edges.
edges - [SocialAccountEdge!]! A list of SocialAccount edges.
Example
{
  "pageInfo": PageInfo,
  "edges": [SocialAccountEdge]
}

SocialAccountEdge

Description

An edge that contains a node of type SocialAccount and a cursor.

Fields
Field Name Description
node - SocialAccount! The SocialAccount node.
cursor - String! A unique cursor that can be used for pagination.
Example
{
  "node": SocialAccount,
  "cursor": "abc123"
}

SocialAccountMetrics

Fields
Field Name Description
followersCount - Int!
followingCount - Int!
contentItemsCount - Int
Arguments
contentType - SocialContentItemType
Example
{"followersCount": 987, "followingCount": 123, "contentItemsCount": 123}

SocialContentActivityType

Description

Social content activity type

Values
Enum Value Description

UP_VOTE

Represents a vote

DOWN_VOTE

Down vote

VIEW

View

UNINTERESTED

Uninterested

UN_VIEW

Un view

LIKE

Like

DISLIKE

Dislike

BOOKMARK

Bookmark

SHARE

Share

REPORT

Report
Example
"UP_VOTE"

SocialContentCategory

Description

Represents a social content category.

Fields
Field Name Description
id - ID! The unique identifier for the category.
name - String! The name of the category.
description - String A brief description of the category.
handle - String! A unique identifier used for categorization.
isTop - Boolean! Indicates whether the category is a top category.
isFeatured - Boolean! Indicates whether the category is featured.
priority - Int! The priority of the category.
color - String The color associated with the category.
Example
{
  "id": 4,
  "name": "abc123",
  "description": "xyz789",
  "handle": "xyz789",
  "isTop": false,
  "isFeatured": false,
  "priority": 987,
  "color": "abc123"
}

SocialContentCategoryPaginator

Description

A paginated list of SocialContentCategory items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [SocialContentCategory!]! A list of SocialContentCategory items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [SocialContentCategory]
}

SocialContentComment

Fields
Field Name Description
id - ID!
uuid - String!
parentCommentId - ID
contentId - ID!
body - String!
isApproved - Boolean
upvotes - Int!
downvotes - Int!
isFlagged - Boolean!
metadata - JSON
createdAt - DateTime!
attachments - [SocialContentCommentAttachment!]
commentator - SocialAccount!
Example
{
  "id": 4,
  "uuid": "abc123",
  "parentCommentId": "4",
  "contentId": "4",
  "body": "xyz789",
  "isApproved": false,
  "upvotes": 123,
  "downvotes": 987,
  "isFlagged": true,
  "metadata": {},
  "createdAt": "2007-12-03T10:15:30Z",
  "attachments": [SocialContentCommentAttachment],
  "commentator": SocialAccount
}

SocialContentCommentAttachment

Fields
Field Name Description
media - Attachment
upvotes - Int!
downvotes - Int!
isFlagged - Boolean!
Example
{
  "media": Attachment,
  "upvotes": 987,
  "downvotes": 123,
  "isFlagged": false
}

SocialContentCommentAttachmentInput

Fields
Input Field Description
media - [AttachmentInput!]
metadata - JSON
Example
{"media": [AttachmentInput], "metadata": {}}

SocialContentCommentInput

Fields
Input Field Description
parentCommentId - ID
contentId - ID!
body - String
userIp - String
metadata - JSON
attachments - [SocialContentCommentAttachmentInput!]
Example
{
  "parentCommentId": 4,
  "contentId": 4,
  "body": "abc123",
  "userIp": "xyz789",
  "metadata": {},
  "attachments": [SocialContentCommentAttachmentInput]
}

SocialContentCommentPaginator

Description

A paginated list of SocialContentComment items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [SocialContentComment!]! A list of SocialContentComment items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [SocialContentComment]
}

SocialContentInteraction

Fields
Field Name Description
liked - Boolean!
disliked - Boolean!
viewed - Boolean!
bookmarked - Boolean!
uninterested - Boolean!
Example
{
  "liked": true,
  "disliked": false,
  "viewed": true,
  "bookmarked": false,
  "uninterested": false
}

SocialContentItem

Fields
Field Name Description
id - ID!
uuid - String!
handle - String!
contentType - SocialContentItemType!
title - String!
template - SocialContentTemplateType!
privacy - SocialContentPrivacyType!
status - ModelStatus
categoryId - ID
languageCode - String!
isApproved - Boolean!
isFlagged - Boolean!
body - String
metadata - JSON
metrics - ContentMetrics!
createdAt - String!
updatedAt - String!
category - SocialContentCategory
post - SocialItemPost
story - SocialItemStory
banner - SocialItemBanner
legacyProduct - SocialItemProduct
products - [Product!]
interaction - SocialContentInteraction!
creator - SocialAccount!
comments - SocialContentCommentPaginator
Arguments
keyword - String
first - Int

Limits number of fetched items. Maximum allowed value: 24.

page - Int

The offset from which items are returned.

tags - SocialContentTagPaginator
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 24.

page - Int

The offset from which items are returned.

Example
{
  "id": "4",
  "uuid": "xyz789",
  "handle": "abc123",
  "contentType": "STORY",
  "title": "xyz789",
  "template": "MEDIA_ONLY",
  "privacy": "PUBLIC",
  "status": "DRAFT",
  "categoryId": 4,
  "languageCode": "xyz789",
  "isApproved": true,
  "isFlagged": false,
  "body": "xyz789",
  "metadata": {},
  "metrics": ContentMetrics,
  "createdAt": "abc123",
  "updatedAt": "abc123",
  "category": SocialContentCategory,
  "post": SocialItemPost,
  "story": SocialItemStory,
  "banner": SocialItemBanner,
  "legacyProduct": SocialItemProduct,
  "products": [Product],
  "interaction": SocialContentInteraction,
  "creator": SocialAccount,
  "comments": SocialContentCommentPaginator,
  "tags": SocialContentTagPaginator
}

SocialContentItemBannerInput

Fields
Input Field Description
banner - SocialItemBannerInput!
productIds - [String!]
Example
{
  "banner": SocialItemBannerInput,
  "productIds": ["abc123"]
}

SocialContentItemCommentsOrderByColumn

Description

Allowed column names for SocialContentItem.comments.orderBy.

Values
Enum Value Description

CREATED_AT

UPVOTES

DOWNVOTES

Example
"CREATED_AT"

SocialContentItemCommentsOrderByOrderByClause

Description

Order by clause for SocialContentItem.comments.orderBy.

Fields
Input Field Description
column - SocialContentItemCommentsOrderByColumn! The column that is used for ordering.
order - SortOrder! The direction that is used for ordering.
Example
{"column": "CREATED_AT", "order": "ASC"}

SocialContentItemPaginator

Description

A paginated list of SocialContentItem items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [SocialContentItem!]! A list of SocialContentItem items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [SocialContentItem]
}

SocialContentItemPostInput

Fields
Input Field Description
post - SocialItemPostInput!
productIds - [String!]
Example
{
  "post": SocialItemPostInput,
  "productIds": ["xyz789"]
}

SocialContentItemProductInput

Fields
Input Field Description
post - SocialItemProductInput!
productIds - [String!]
Example
{
  "post": SocialItemProductInput,
  "productIds": ["xyz789"]
}

SocialContentItemStoryInput

Fields
Input Field Description
story - SocialItemStoryInput!
productIds - [String!]
Example
{
  "story": SocialItemStoryInput,
  "productIds": ["abc123"]
}

SocialContentItemType

Description

Social content item type

Values
Enum Value Description

STORY

Represents a story content type.

POST

Represents a post content type.

BANNER

Represents a banner content type.

PRODUCT

Represents a product content type.

MEDIA

Represents a media content type.
Example
"STORY"

SocialContentPrivacyType

Values
Enum Value Description

PUBLIC

For all the public.

CUSTOMERS_ONLY

Only for customers.
Example
"PUBLIC"

SocialContentTag

Fields
Field Name Description
id - ID!
name - String!
handle - String!
description - String
priority - Int
Example
{
  "id": 4,
  "name": "xyz789",
  "handle": "abc123",
  "description": "abc123",
  "priority": 987
}

SocialContentTagPaginator

Description

A paginated list of SocialContentTag items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [SocialContentTag!]! A list of SocialContentTag items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [SocialContentTag]
}

SocialContentTemplateType

Values
Enum Value Description

MEDIA_ONLY

Content item with only media and no additional resources.

RESOURCE_ONLY

Content item with only resources and no media.

MEDIA_WITH_RESOURCES

Content item with both media and additional resources.
Example
"MEDIA_ONLY"

SocialCreatorType

Description

Social creator type

Values
Enum Value Description

CUSTOMER

Represents a customer

SHOP

Represents a shop or store

USER

Represents a common user

INFLUENCER

Represents a registered influencer
Example
"CUSTOMER"

SocialInput

Fields
Input Field Description
type - String
link - String
Example
{
  "type": "xyz789",
  "link": "abc123"
}

SocialItemBanner

Fields
Field Name Description
id - ID!
uuid - ID!
title - String
description - String!
url - URL
items - [SocialItemBannerItem!]!
products - ContentProductsPaginator
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 50.

page - Int

The offset from which items are returned.

Example
{
  "id": "4",
  "uuid": "4",
  "title": "abc123",
  "description": "xyz789",
  "url": "http://www.test.com/",
  "items": [SocialItemBannerItem],
  "products": ContentProductsPaginator
}

SocialItemBannerInput

Fields
Input Field Description
media - [AttachmentInput!]
title - String
description - String!
url - URL
items - [SocialItemBannerItemInput!]!
Example
{
  "media": [AttachmentInput],
  "title": "xyz789",
  "description": "abc123",
  "url": "http://www.test.com/",
  "items": [SocialItemBannerItemInput]
}

SocialItemBannerItem

Fields
Field Name Description
id - ID!
title - String
description - String!
media - Attachment
url - URL
products - ContentProductsPaginator
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 50.

page - Int

The offset from which items are returned.

Example
{
  "id": "4",
  "title": "xyz789",
  "description": "xyz789",
  "media": Attachment,
  "url": "http://www.test.com/",
  "products": ContentProductsPaginator
}

SocialItemBannerItemInput

Fields
Input Field Description
media - [AttachmentInput!]!
title - String!
description - String!
url - URL!
Example
{
  "media": [AttachmentInput],
  "title": "abc123",
  "description": "xyz789",
  "url": "http://www.test.com/"
}

SocialItemPost

Fields
Field Name Description
id - ID!
uuid - ID!
media - Attachment
title - String
body - String!
url - URL
products - ContentProductsPaginator
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 50.

page - Int

The offset from which items are returned.

Example
{
  "id": "4",
  "uuid": "4",
  "media": Attachment,
  "title": "abc123",
  "body": "abc123",
  "url": "http://www.test.com/",
  "products": ContentProductsPaginator
}

SocialItemPostInput

Fields
Input Field Description
media - [AttachmentInput!]
title - String
body - String!
url - URL
Example
{
  "media": [AttachmentInput],
  "title": "xyz789",
  "body": "abc123",
  "url": "http://www.test.com/"
}

SocialItemProduct

Fields
Field Name Description
id - ID!
uuid - ID!
media - Attachment!
title - String
description - String!
url - URL
products - ContentProductsPaginator
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 50.

page - Int

The offset from which items are returned.

Example
{
  "id": "4",
  "uuid": "4",
  "media": Attachment,
  "title": "abc123",
  "description": "abc123",
  "url": "http://www.test.com/",
  "products": ContentProductsPaginator
}

SocialItemProductInput

Fields
Input Field Description
media - [AttachmentInput!]!
title - String
description - String!
url - URL
Example
{
  "media": [AttachmentInput],
  "title": "xyz789",
  "description": "abc123",
  "url": "http://www.test.com/"
}

SocialItemStory

Fields
Field Name Description
id - ID!
uuid - ID!
media - Attachment
title - String
description - String!
url - URL
products - ContentProductsPaginator
Arguments
first - Int

Limits number of fetched items. Maximum allowed value: 50.

page - Int

The offset from which items are returned.

Example
{
  "id": 4,
  "uuid": 4,
  "media": Attachment,
  "title": "xyz789",
  "description": "abc123",
  "url": "http://www.test.com/",
  "products": ContentProductsPaginator
}

SocialItemStoryInput

Fields
Input Field Description
media - [AttachmentInput!]
title - String
description - String!
url - URL
Example
{
  "media": [AttachmentInput],
  "title": "abc123",
  "description": "xyz789",
  "url": "http://www.test.com/"
}

SocialLoginAudienceType

Description

Enum representing different types of social login audiences.

Values
Enum Value Description

CUSTOMER

Audience type for regular customers.

MERCHANT

Audience type for merchants.

STAFF

Audience type for staff members.
Example
"CUSTOMER"

SocialLoginCallbackAuthResponse

Description

Type representing the response for social login callback authentication.

Fields
Field Name Description
accessToken - String! The access token for the authenticated user.
user - Customer! The authenticated user.
Example
{
  "accessToken": "abc123",
  "user": Customer
}

SocialLoginCallbackInput

Description

Input type for handling social login callback.

Fields
Input Field Description
uri - String! The URI containing the callback information.
Example
{"uri": "abc123"}

SocialVoteType

Description

Social vote type

Values
Enum Value Description

UP_VOTE

Represents a up vote content type.

DOWN_VOTE

Represents a down vote content type.
Example
"UP_VOTE"

SortOrder

Description

Directions for ordering a list of records.

Values
Enum Value Description

ASC

Sort records in ascending order.

DESC

Sort records in descending order.
Example
"ASC"

SpecificationStaticValue

Description

Represents a static value for a specification.

Fields
Field Name Description
attrName - String Name of the attribute.
attrNameId - ID ID of the attribute name.
attrValue - String Value of the attribute.
attrValueId - ID ID of the attribute value.
Example
{
  "attrName": "abc123",
  "attrNameId": "4",
  "attrValue": "xyz789",
  "attrValueId": "4"
}

StateData

Fields
Field Name Description
id - ID!
stateToken - String!
key - String!
value - String!
userId - ID
redirectUri - String
expiresIn - Int!
hitCount - Int!
hitCountLimit - Int!
expiresAt - String!
Example
{
  "id": 4,
  "stateToken": "abc123",
  "key": "abc123",
  "value": "xyz789",
  "userId": 4,
  "redirectUri": "abc123",
  "expiresIn": 123,
  "hitCount": 987,
  "hitCountLimit": 123,
  "expiresAt": "xyz789"
}

StateDataByStateToken

Fields
Field Name Description
stateData - StateData
Example
{"stateData": StateData}

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"abc123"

TempAuthSessionAuthIntentResponse

Description

Type representing the response for temporary authentication session authentication intent.

Fields
Field Name Description
token - String! The token associated with the authentication intent response.
interact - AuthIntentInteract! Interaction details for authentication intent.
continue - AuthIntentContinue! Continuation details for authentication intent.
Example
{
  "token": "xyz789",
  "interact": AuthIntentInteract,
  "continue": AuthIntentContinue
}

TemporaryAuth

Description

Type representing a temporary authentication session.

Fields
Field Name Description
uuid - String! The UUID associated with the temporary authentication session.
email - String The email address associated with the temporary authentication session.
phone - String The phone number associated with the temporary authentication session.
gender - String The gender associated with the temporary authentication session.
countryCode - String The country code associated with the temporary authentication session.
firstName - String The first name associated with the temporary authentication session.
lastName - String The last name associated with the temporary authentication session.
username - String The username associated with the temporary authentication session.
ipAddress - String The IP address associated with the temporary authentication session.
userType - AuthAudienceType! The user type associated with the temporary authentication session.
token - String! The token associated with the temporary authentication session.
passwordVerified - Boolean! Indicates whether the password has been verified for the temporary authentication session.
verificationCode - String The verification code associated with the temporary authentication session.
isActive - Boolean! Indicates whether the temporary authentication session is active.
lastLogin - DateTime The date and time of the last login associated with the temporary authentication session.
timezone - String The timezone associated with the temporary authentication session.
language - String The language associated with the temporary authentication session.
profileImage - String The profile image associated with the temporary authentication session.
additionalInfo - String Additional information associated with the temporary authentication session.
securityQuestion - String The security question associated with the temporary authentication session.
securityAnswer - String The security answer associated with the temporary authentication session.
city - String The city associated with the temporary authentication session.
address - String The address associated with the temporary authentication session.
zipCode - String The zip code associated with the temporary authentication session.
phoneExtension - String The phone extension associated with the temporary authentication session.
dob - String The date of birth associated with the temporary authentication session.
occupation - String The occupation associated with the temporary authentication session.
company - String The company associated with the temporary authentication session.
website - String The website associated with the temporary authentication session.
socialMedia - String The social media information associated with the temporary authentication session.
interests - String The interests associated with the temporary authentication session.
education - String The education associated with the temporary authentication session.
membershipId - String The membership ID associated with the temporary authentication session.
role - String The role associated with the temporary authentication session.
status - String The status associated with the temporary authentication session.
termsAccepted - Boolean! Indicates whether the terms have been accepted for the temporary authentication session.
newsletterSubscribed - Boolean! Indicates whether newsletter subscription is active for the temporary authentication session.
twoFactorAuth - Boolean! Indicates whether two-factor authentication is enabled for the temporary authentication session.
expiry - String The expiry date associated with the temporary authentication session.
lastUsed - DateTime The date and time of the last usage associated with the temporary authentication session.
primaryMedium - LoginOrSignUpType! The primary login or sign-up medium associated with the temporary authentication session.
secondaryMedium - LoginOrSignUpType! The secondary login or sign-up medium associated with the temporary authentication session.
authType - TemporaryAuthType! The authentication type associated with the temporary authentication session.
isValid - Boolean! Indicates whether the temporary authentication session is valid.
referralCode - String The referral code associated with the temporary authentication session.
identityCreated - Boolean! Indicates whether an identity has been created for the temporary authentication session.
avatar - Attachment The avatar associated with the temporary authentication session.
avatarOriginal - String The original avatar associated with the temporary authentication session.
Example
{
  "uuid": "xyz789",
  "email": "abc123",
  "phone": "xyz789",
  "gender": "xyz789",
  "countryCode": "abc123",
  "firstName": "abc123",
  "lastName": "xyz789",
  "username": "xyz789",
  "ipAddress": "abc123",
  "userType": "USER",
  "token": "xyz789",
  "passwordVerified": true,
  "verificationCode": "abc123",
  "isActive": false,
  "lastLogin": "2007-12-03T10:15:30Z",
  "timezone": "abc123",
  "language": "xyz789",
  "profileImage": "abc123",
  "additionalInfo": "abc123",
  "securityQuestion": "abc123",
  "securityAnswer": "abc123",
  "city": "abc123",
  "address": "xyz789",
  "zipCode": "xyz789",
  "phoneExtension": "xyz789",
  "dob": "xyz789",
  "occupation": "abc123",
  "company": "xyz789",
  "website": "abc123",
  "socialMedia": "xyz789",
  "interests": "abc123",
  "education": "xyz789",
  "membershipId": "abc123",
  "role": "xyz789",
  "status": "xyz789",
  "termsAccepted": false,
  "newsletterSubscribed": false,
  "twoFactorAuth": false,
  "expiry": "abc123",
  "lastUsed": "2007-12-03T10:15:30Z",
  "primaryMedium": "EMAIL",
  "secondaryMedium": "EMAIL",
  "authType": "LOGIN",
  "isValid": true,
  "referralCode": "abc123",
  "identityCreated": true,
  "avatar": Attachment,
  "avatarOriginal": "abc123"
}

TemporaryAuthInput

Description

Input type for temporary authentication data.

Fields
Input Field Description
email - String The email address for the temporary authentication session.
phone - String The phone number for the temporary authentication session.
gender - String The gender for the temporary authentication session.
countryCode - String The country code for the temporary authentication session.
firstName - String The first name for the temporary authentication session.
lastName - String The last name for the temporary authentication session.
username - String The username for the temporary authentication session.
ipAddress - String The IP address for the temporary authentication session.
password - String The password for the temporary authentication session.
passwordConfirmation - String The password confirmation for the temporary authentication session.
timezone - String The timezone for the temporary authentication session.
language - String The language for the temporary authentication session.
profileImage - String The profile image for the temporary authentication session.
additionalInfo - String Additional information for the temporary authentication session.
securityQuestion - String The security question for the temporary authentication session.
securityAnswer - String The security answer for the temporary authentication session.
city - String The city for the temporary authentication session.
address - String The address for the temporary authentication session.
zipCode - String The ZIP code for the temporary authentication session.
dob - String The date of birth for the temporary authentication session.
occupation - String The occupation for the temporary authentication session.
company - String The company for the temporary authentication session.
website - String The website for the temporary authentication session.
socialMedia - String The social media information for the temporary authentication session.
interests - String The interests for the temporary authentication session.
education - String The education for the temporary authentication session.
termsAccepted - Boolean Indicates whether terms have been accepted for the temporary authentication session.
newsletterSubscribed - Boolean Indicates whether newsletter subscription is active for the temporary authentication session.
twoFactorAuth - Boolean Indicates whether two-factor authentication is enabled for the temporary authentication session.
primaryMedium - LoginOrSignUpType The primary medium for login or sign-up for the temporary authentication session.
secondaryMedium - LoginOrSignUpType The secondary medium for login or sign-up for the temporary authentication session.
authType - TemporaryAuthType The authentication type for the temporary authentication session.
Example
{
  "email": "abc123",
  "phone": "xyz789",
  "gender": "xyz789",
  "countryCode": "xyz789",
  "firstName": "abc123",
  "lastName": "abc123",
  "username": "abc123",
  "ipAddress": "abc123",
  "password": "abc123",
  "passwordConfirmation": "xyz789",
  "timezone": "xyz789",
  "language": "abc123",
  "profileImage": "xyz789",
  "additionalInfo": "abc123",
  "securityQuestion": "xyz789",
  "securityAnswer": "abc123",
  "city": "abc123",
  "address": "xyz789",
  "zipCode": "xyz789",
  "dob": "xyz789",
  "occupation": "xyz789",
  "company": "xyz789",
  "website": "abc123",
  "socialMedia": "xyz789",
  "interests": "xyz789",
  "education": "xyz789",
  "termsAccepted": true,
  "newsletterSubscribed": false,
  "twoFactorAuth": false,
  "primaryMedium": "EMAIL",
  "secondaryMedium": "EMAIL",
  "authType": "LOGIN"
}

TemporaryAuthType

Description

Enum representing different types of temporary authentication sessions.

Values
Enum Value Description

LOGIN

Temporary authentication session type for login.

REGISTER

Temporary authentication session type for registration.
Example
"LOGIN"

Ticket

Description

Represents a customer support ticket.

Fields
Field Name Description
attachment - Attachment Attachment associated with the ticket.
clientViewed - Boolean! Indicates whether the ticket has been viewed by the client.
code - ID! Unique code of the ticket.
createdAt - DateTime! Date and time when the ticket was created.
details - String Details of the ticket.
feedbackRating - Int! Feedback rating associated with the ticket.
feedbackType - String Type of feedback associated with the ticket.
feedbackValue - String Value of feedback associated with the ticket.
id - ID! ID of the ticket.
notificationAccept - Boolean! Indicates whether the user accepts notifications for the ticket.
priority - TicketPriority! Priority of the ticket.
replies - [TicketReply!] Replies associated with the ticket.
repliesCount - Int Count of replies associated with the ticket.
sender - Customer Sender of the ticket.
spam - Boolean! Indicates whether the ticket is marked as spam.
status - TicketStatus! Status of the ticket.
subject - String! Subject of the ticket.
updatedAt - DateTime! Date and time when the ticket was last updated.
viewed - Boolean! Indicates whether the ticket has been viewed.
Example
{
  "attachment": Attachment,
  "clientViewed": false,
  "code": "4",
  "createdAt": "2007-12-03T10:15:30Z",
  "details": "abc123",
  "feedbackRating": 123,
  "feedbackType": "xyz789",
  "feedbackValue": "abc123",
  "id": 4,
  "notificationAccept": true,
  "priority": "LOW",
  "replies": [TicketReply],
  "repliesCount": 987,
  "sender": Customer,
  "spam": true,
  "status": "CLOSED",
  "subject": "abc123",
  "updatedAt": "2007-12-03T10:15:30Z",
  "viewed": false
}

TicketFeedbackInput

Description

Input for providing feedback on a ticket.

Fields
Input Field Description
feedbackRating - Int Rating for the ticket feedback.
feedbackType - String Type of feedback for the ticket.
feedbackValue - String Value of feedback for the ticket.
Example
{
  "feedbackRating": 987,
  "feedbackType": "xyz789",
  "feedbackValue": "xyz789"
}

TicketPaginator

Description

A paginated list of Ticket items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Ticket!]! A list of Ticket items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Ticket]
}

TicketPriority

Description

Enumeration of ticket priorities.

Values
Enum Value Description

LOW

Low priority.

MEDIUM

Medium priority.

HIGH

High priority.
Example
"LOW"

TicketReply

Description

Represents a reply to a ticket.

Fields
Field Name Description
id - ID! ID of the ticket reply.
isClient - Boolean! Indicates whether the reply is from the client.
ticketId - ID! ID of the ticket associated with the reply.
reply - String! Text content of the reply.
attachment - Attachment Attachment associated with the reply.
createdAt - DateTime! Date and time when the reply was created.
updatedAt - DateTime! Date and time when the reply was last updated.
responder - Customer Responder of the reply.
sender - Customer Sender of the reply.
Example
{
  "id": 4,
  "isClient": true,
  "ticketId": "4",
  "reply": "xyz789",
  "attachment": Attachment,
  "createdAt": "2007-12-03T10:15:30Z",
  "updatedAt": "2007-12-03T10:15:30Z",
  "responder": Customer,
  "sender": Customer
}

TicketStatus

Description

Enumeration of ticket statuses.

Values
Enum Value Description

CLOSED

Ticket is closed.

OPEN

Ticket is open.
Example
"CLOSED"

URL

Example
"http://www.test.com/"

UnfollowResponse

Fields
Field Name Description
success - Boolean!
message - String!
Example
{"success": false, "message": "xyz789"}

UpdateCustomerInput

Description

Input type for updating customer information.

Fields
Input Field Description
id - ID! The unique identifier of the customer.
email - String The email address of the customer.
lastName - String The last name of the customer.
firstName - String The first name of the customer.
displayName - String The display name of the customer.
phone - String The phone number of the customer.
username - String The username of the customer.
profile - ProfileInput The profile information of the customer.
avatar - [AttachmentInput] The avatar attachments of the customer.
Example
{
  "id": 4,
  "email": "abc123",
  "lastName": "xyz789",
  "firstName": "abc123",
  "displayName": "xyz789",
  "phone": "xyz789",
  "username": "xyz789",
  "profile": ProfileInput,
  "avatar": [AttachmentInput]
}

UpdateOrderInput

Fields
Input Field Description
id - ID!
Example
{"id": 4}

UpdateSocialContentItemInput

Fields
Input Field Description
title - String!
template - SocialContentTemplateType!
privacy - SocialContentPrivacyType!
status - ModelStatus
categoryId - ID
languageCode - String
body - String
tags - [String!]
metadata - JSON
Example
{
  "title": "xyz789",
  "template": "MEDIA_ONLY",
  "privacy": "PUBLIC",
  "status": "DRAFT",
  "categoryId": 4,
  "languageCode": "abc123",
  "body": "xyz789",
  "tags": ["xyz789"],
  "metadata": {}
}

UpdateTicketByManagerInput

Description

Input for updating a ticket by a manager.

Fields
Input Field Description
id - ID! ID of the ticket to update.
attachment - [AttachmentInput] Attachments to update for the ticket.
status - TicketStatus! Status of the ticket.
viewed - Boolean Indicates whether the ticket has been viewed.
priority - TicketPriority! Priority of the ticket.
Example
{
  "id": "4",
  "attachment": [AttachmentInput],
  "status": "CLOSED",
  "viewed": false,
  "priority": "LOW"
}

Upload

Description

Represents an uploaded file.

Fields
Field Name Description
id - ID! The unique identifier of the upload.
url - String The URL of the uploaded file.
src - String! The source of the uploaded file.
uuid - String The UUID of the uploaded file.
fileName - String The file name of the uploaded file.
extension - String The extension of the uploaded file.
type - String The type of the uploaded file.
category - String The category of the uploaded file.
status - String The status of the uploaded file.
uploadedTime - String The time when the file was uploaded.
Example
{
  "id": "4",
  "url": "xyz789",
  "src": "xyz789",
  "uuid": "xyz789",
  "fileName": "xyz789",
  "extension": "xyz789",
  "type": "xyz789",
  "category": "xyz789",
  "status": "abc123",
  "uploadedTime": "abc123"
}

UploadAudienceType

Description

Enumeration representing the audience type for uploads.

Values
Enum Value Description

CUSTOMER

Uploads intended for customers.

MERCHANT

Uploads intended for merchants.

USER

Uploads intended for users.
Example
"CUSTOMER"

UploadFileExtension

Description

Supported file extensions for upload.

Values
Enum Value Description

JPG

Joint Photographic Experts Group format.

JPEG

Joint Photographic Experts Group format.

PNG

Portable Network Graphics format.

SVG

Scalable Vector Graphics format.

WEBP

WebP image format.

GIF

Graphics Interchange Format.

MP4

MPEG-4 Part 14 format.

MPG

Moving Picture Experts Group format.

MPEG

Moving Picture Experts Group format.

WEBM

WebM video format.

OGG

Ogg format.

AVI

Audio Video Interleave format.

MOV

QuickTime Movie format.

FLV

Flash Video format.

SWF

Shockwave Flash format.

MKV

Matroska Multimedia Container format.

WMV

Windows Media Video format.

WMA

Windows Media Audio format.

AAC

Advanced Audio Coding format.

WAV

Waveform Audio File format.

MP3

MPEG-1 or MPEG-2 Audio Layer III format.

ZIP

ZIP archive format.

RAR

RAR archive format.

DOC

Microsoft Word Document format.

TXT

Plain Text format.

DOCX

Office Open XML Document format.

PDF

Portable Document Format.

CSV

Comma-Separated Values format.

XML

Extensible Markup Language format.

ODS

OpenDocument Spreadsheet format.

XLR

Microsoft Works Spreadsheet format.

XLS

Microsoft Excel Spreadsheet format.

XLSX

Microsoft Excel Spreadsheet format.
Example
"JPG"

UploadFileFormat

Description

A type for different file formats that can be uploaded

Values
Enum Value Description

IMAGE

An image file format (e.g. JPEG, PNG, GIF)

VIDEO

A video file format (e.g. MP4, MOV, AVI)

AUDIO

An audio file format (e.g. MP3, WAV, FLAC)

ARCHIVE

An archive file format (e.g. ZIP, TAR, GZIP)

DOCUMENT

A document file format (e.g. PDF, DOC, PPT, XLS)
Example
"IMAGE"

UploadSortOption

Description

Provide uploads sorts options

Values
Enum Value Description

NEWEST

Sort by newest first

OLDEST

" Sort by oldest first

SMALLEST

Sort by smallest first

LARGEST

Sort by largest firs

A_TO_Z

Sort alphabetically from A to Z

Z_TO_A

Sort alphabetically from Z to A
Example
"NEWEST"

VerifyCouponResponse

Description

Type representing the response when verifying a coupon.

Fields
Field Name Description
isValid - Boolean! Indicates whether the coupon is valid or not.
coupon - Coupon The coupon information if it is valid.
Example
{"isValid": false, "coupon": Coupon}

Weight

Fields
Field Name Description
unit - WeightUnit!
value - Float!
Example
{"unit": "KILOGRAMS", "value": 987.65}

WeightUnit

Description

Weight unit

Values
Enum Value Description

KILOGRAMS

Kilograms

GRAMS

Grams

OUNCES

Ounces

POUNDS

Pounds
Example
"KILOGRAMS"

WhereConditions

Description

Dynamic WHERE conditions for queries.

Fields
Input Field Description
column - String The column that is used for the condition.
operator - SQLOperator The operator that is used for the condition. Default = EQ
value - Mixed The value that is used for the condition.
AND - [WhereConditions!] A set of conditions that requires all conditions to match.
OR - [WhereConditions!] A set of conditions that requires at least one condition to match.
HAS - WhereConditionsRelation Check whether a relation exists. Extra conditions or a minimum amount can be applied.
Example
{
  "column": "abc123",
  "operator": "EQ",
  "value": Mixed,
  "AND": [WhereConditions],
  "OR": [WhereConditions],
  "HAS": WhereConditionsRelation
}

WhereConditionsRelation

Description

Dynamic HAS conditions for WHERE condition queries.

Fields
Input Field Description
relation - String! The relation that is checked.
operator - SQLOperator The comparison operator to test against the amount. Default = GTE
amount - Int The amount to test. Default = 1
condition - WhereConditions Additional condition logic.
Example
{
  "relation": "abc123",
  "operator": "EQ",
  "amount": 987,
  "condition": WhereConditions
}

Wishlist

Description

Represents a customer wishlist.

Fields
Field Name Description
id - ID! The unique identifier of the wishlist.
user - Customer The user who owns the wishlist.
sessionId - String The session ID associated with the wishlist.
userId - ID The user ID associated with the wishlist.
wishlistSlug - String! The slug of the wishlist.
wishlistName - String The name of the wishlist.
wishlistToken - String! The token of the wishlist.
wishlistPrivacy - Boolean! The privacy status of the wishlist.
isDefault - Boolean! Indicates whether the wishlist is the default one.
expiration - DateTime The expiration time of the wishlist.
createdAt - DateTime The creation time of the wishlist.
updatedAt - DateTime! The last update time of the wishlist.
itemsCount - Int! The number of items in the wishlist.
items - [WishlistItem] The items in the wishlist.
Example
{
  "id": "4",
  "user": Customer,
  "sessionId": "xyz789",
  "userId": "4",
  "wishlistSlug": "xyz789",
  "wishlistName": "abc123",
  "wishlistToken": "abc123",
  "wishlistPrivacy": true,
  "isDefault": false,
  "expiration": "2007-12-03T10:15:30Z",
  "createdAt": "2007-12-03T10:15:30Z",
  "updatedAt": "2007-12-03T10:15:30Z",
  "itemsCount": 987,
  "items": [WishlistItem]
}

WishlistItem

Description

Represents an item in a customer wishlist.

Fields
Field Name Description
id - ID! The unique identifier of the wishlist item.
productId - ID! The product ID associated with the wishlist item.
quantity - Int! The quantity of the product in the wishlist.
userId - ID The user ID associated with the wishlist item.
wishlistId - ID! The ID of the wishlist associated with the item.
position - Int The position of the item in the wishlist.
originalPrice - Float The original price of the product.
originalCurrency - CurrencyCode The original currency code of the product.
onSale - Boolean Indicates whether the product is on sale.
createdAt - DateTime The creation time of the wishlist item.
updatedAt - DateTime! The last update time of the wishlist item.
product - Product! The product associated with the wishlist item.
Example
{
  "id": "4",
  "productId": 4,
  "quantity": 987,
  "userId": "4",
  "wishlistId": 4,
  "position": 123,
  "originalPrice": 123.45,
  "originalCurrency": "AED",
  "onSale": true,
  "createdAt": "2007-12-03T10:15:30Z",
  "updatedAt": "2007-12-03T10:15:30Z",
  "product": Product
}

WishlistLineInput

Description

Input object for adding a line (item) to a wishlist.

Fields
Input Field Description
productId - ID! The ID of the product to add to the wishlist.
quantity - Int! The quantity of the product to add.
variantId - ID The ID of the variant of the product.
Example
{
  "productId": 4,
  "quantity": 123,
  "variantId": "4"
}

WishlistPaginator

Description

A paginated list of Wishlist items.

Fields
Field Name Description
paginatorInfo - PaginatorInfo! Pagination information about the list of items.
data - [Wishlist!]! A list of Wishlist items.
Example
{
  "paginatorInfo": PaginatorInfo,
  "data": [Wishlist]
}

actionResponse

Fields
Field Name Description
message - String
success - Boolean
result - Boolean
Example
{
  "message": "xyz789",
  "success": false,
  "result": true
}

addItemToCartInput

Description

Input type for adding an item to the cart.

Fields
Input Field Description
productId - ID! The ID of the product to be added to the cart.
variantId - ID The ID of the variant of the product (optional).
quantity - Int! The quantity of the product to be added to the cart.
Example
{
  "productId": "4",
  "variantId": "4",
  "quantity": 123
}

fileObject

Fields
Input Field Description
url - String
id - Int
Example
{"url": "xyz789", "id": 123}

removeItemsFromCartInput

Description

Input type for removing items from the cart.

Fields
Input Field Description
token - String! The token associated with the cart.
cartId - ID! The ID of the cart from which items will be removed.
cartItemIds - [ID!]! The IDs of the cart items to be removed.
Example
{
  "token": "abc123",
  "cartId": "4",
  "cartItemIds": [4]
}

updateCartQuantityInput

Description

Input type for updating the quantity of an item in the cart.

Fields
Input Field Description
token - String! The token associated with the cart.
cartItemId - ID! The ID of the cart item to update.
quantity - Int! The new quantity of the cart item.
Example
{
  "token": "xyz789",
  "cartItemId": "4",
  "quantity": 987
}

verifyTokenInput

Description

Input type for verifying a token.

Fields
Input Field Description
token - String! The token to verify.
Example
{"token": "xyz789"}