Alokai

upsellProducts

Get upsell products for a given product.

Signature

declare function upsellProducts(
	context: Context,
	searchParams?: GetProductSearchParams,
	customQuery?: CustomQuery,
	customHeaders?: CustomHeaders
): Promise<ApolloQueryResult<Products>>;

Parameters

NameRequiredTypeDescription
contextRequiredContext
searchParamsOptionalGetProductSearchParams
customQueryOptionalCustomQuery
customHeadersOptionalCustomHeaders

Referenced Types

Examples

Simple usage without filters, sorting or pagination:

import { sdk } from '~/sdk.config.ts';

// fetch list of upsell-products with default parameters
const upsellProducts = await sdk.magento.upsellProducts({});

Usage with filters, sorting and pagination:

import { sdk } from '~/sdk.config.ts';

// make a request to fetch list of products with upsell products
const upsellProducts = await sdk.magento.upsellProducts({
 pageSize: 20,
 currentPage: 1,
 filter: {
   sku: {
     eq: PRODUCT_SKU
   }
 }
});

Creating a custom GraphQL query for getting upsellProducts.

module.exports = {
  integrations: {
    magento: {
      customQueries: {
        'upsell-products-custom-query': ({ variables, metadata }) => ({
           variables,
           query: `
             query upsellProducts(
               $search: String = "",
               $filter: ProductAttributeFilterInput,
               $pageSize: Int = 10,
               $currentPage: Int = 1,
               $sort: ProductAttributeSortInput
             ) {
               products(search: $search, filter: $filter, sort: $sort, pageSize: $pageSize, currentPage: $currentPage) {
                 ${metadata.fields}
               }
             }
           `
        }),
      },
    }
  }
};

Using a custom GraphQL query to fetch upsell-products.

import { sdk } from '~/sdk.config.ts';
const customQuery = {
 upsellProducts: 'upsell-products-custom-query',
   metadata: {
     fields: 'items { sku name upsell_products { sku } }'
   }
};

const upsellProducts = await sdk.magento.upsellProducts({
 filter: {
   sku: {
     eq: 'some-sku' // optional SKU filter
   }
 }
}, customQuery);

// upsellProducts will contain only the fields specified in the custom query.

On this page