Skip to main content

SCAYLE actions

The SCAYLE extension provides actions for retrieving product and category data from SCAYLE within Workforce Flows. Use these actions to fetch individual products or search and browse products by keyword or category as part of your automated content processes.

The SCAYLE action extension can be installed from the Workforce integration marketplace.

See SCAYLE configuration for details of how to obtain the credentials you need to configure the SCAYLE action extension.

Tip

These action descriptions cover the most commonly used inputs and outputs. When designing flows, you may also notice additional input and output variables.

Shared inputs
Link copied!

Several actions support the following optional inputs.

Shop and pricing inputs
Link copied!

InputTypeDescription
shopIdstringShop ID to query. Defaults to the SCAYLE_SHOP_ID environment variable if not provided
campaignKeystringAdjusts prices based on the specified campaign key. If the campaign does not exist, the default price is returned
pricePromotionKeystringAdjusts variant prices based on the specified price promotion key. If a variant has no matching promotion, the default price is returned

Include and filter inputs
Link copied!

InputTypeDescription
withstringSpecifies related data to include. For example, with=attributes, with=attributes:key(plusSize), with=variants.attributes. Multiple values are comma-separated, for example with=siblings,variants
includeSoldOutbooleanWhen set to true, includes sold out products in results. Default: false
referenceKeystringFetches products by reference key (e.g. 014901100002-Blue)
disableFuzzinessbooleanDisables typo tolerance for search. When not provided, typo tolerance is applied according to the SCAYLE panel configuration. Default: false

Pagination inputs
Link copied!

InputTypeDescription
pagination.pagestringPage number. Default: 1
pagination.perPagestringNumber of products per page. Default: 20. Values above 20 are ignored
pagination.sortstringSort field. When not specified, results are sorted by productId
pagination.sortDirstringSort direction. Accepted values: asc, desc
pagination.sortingKeystringOverrides sort and sorts results by the specified sorting key instead. Accepts a comma-separated list of predefined Smart Sorting Keys and custom sorting values

Get product by ID
Link copied!

Retrieves full product data for a single product by its ID from SCAYLE.

Inputs

InputTypeRequiredDescription
idstringYesThe unique identifier of the product
shopIdstringNoSee shared inputs
withstringNoSee shared inputs
campaignKeystringNoSee shared inputs
pricePromotionKeystringNoSee shared inputs

Outputs

OutputTypeDescription
productobjectThe full product object. See product object below

Get basic product by ID
Link copied!

Retrieves a simplified set of product data for a single product by its ID from SCAYLE. Intended for use with commerce repositories.

Inputs

InputTypeRequiredDescription
idstringYesThe unique identifier of the product
shopIdstringNoSee shared inputs

Outputs

OutputTypeDescription
product.idstringProduct ID
product.namestringProduct name
product.descriptionstringProduct description
product.imagesarrayList of image objects, each with a url field

Get products by search term
Link copied!

Retrieves a paginated list of products matching a search term from SCAYLE. Products whose names or attribute values match the provided text are returned.

Inputs

InputTypeRequiredDescription
searchTermstringYesSearch term used to return products whose names or attribute values match the provided text
shopIdstringNoSee shared inputs
withstringNoSee shared inputs
campaignKeystringNoSee shared inputs
pricePromotionKeystringNoSee shared inputs
includeSoldOutbooleanNoSee shared inputs. Default: false
referenceKeystringNoSee shared inputs
disableFuzzinessbooleanNoSee shared inputs. Default: false
paginationobjectNoSee shared inputs

Outputs

OutputTypeDescription
totalnumberTotal number of matching products
perPagenumberNumber of products per page
pagenumberCurrent page number
sortstringSort field applied
sortDirstringSort direction applied
sortingKeystringSorting key applied
nextPagenumberNext page number
productsarrayList of full product objects. See product object below

Get basic products by keyword
Link copied!

Retrieves a cursor-paginated list of products matching an optional keyword from SCAYLE. Intended for use with commerce repositories.

Inputs

InputTypeRequiredDescription
keywordstringNoThe search phrase used to find matching products. If omitted, returns all products
beforestringNoA Base64-encoded pagination cursor to retrieve the page of products before a given position. Use the startCursor value from a previous response
afterstringNoA Base64-encoded pagination cursor to retrieve the page of products after a given position. Use the endCursor value from a previous response

Outputs

OutputTypeDescription
productsarrayList of basic product objects, each with id, name, description, and images (array of objects with a url field)
pageInfo.startCursorstringCursor for the first item in the current page
pageInfo.endCursorstringCursor for the last item in the current page
pageInfo.hasPreviousPagebooleanWhether a previous page exists
pageInfo.hasNextPagebooleanWhether a next page exists

Get products by category ID
Link copied!

Retrieves a paginated list of products belonging to a category from SCAYLE.

Inputs

InputTypeRequiredDescription
idstringYesThe unique identifier of the category
shopIdstringNoSee shared inputs
withstringNoSee shared inputs
campaignKeystringNoSee shared inputs
pricePromotionKeystringNoSee shared inputs
includeSoldOutbooleanNoSee shared inputs. Default: false
referenceKeystringNoSee shared inputs
disableFuzzinessbooleanNoSee shared inputs. Default: false
paginationobjectNoSee shared inputs

Outputs

OutputTypeDescription
totalnumberTotal number of matching products
perPagenumberNumber of products per page
pagenumberCurrent page number
sortstringSort field applied
sortDirstringSort direction applied
sortingKeystringSorting key applied
nextPagenumberNext page number
productsarrayList of full product objects. See product object below

Product object
Link copied!

The full product object returned by Get product by ID, Get products by search term, and Get products by category ID contains the following fields.

Core fields
Link copied!

FieldTypeDescription
idstringProduct ID
isActivebooleanWhether the product is active
isSoldOutbooleanWhether the product is sold out
isNewbooleanWhether the product is new
createdAtstringCreated date
updatedAtstringLast updated date
indexedAtstringLast indexed date
firstLiveAtstringDate the product first went live
masterKeystringMaster key
referenceKeystringReference key
customDataobjectCustom data
sellableTimeFrame.sellableFromstringStart of the sellable time frame
sellableTimeFrame.sellableTostringEnd of the sellable time frame

Attributes
Link copied!

The attributes object contains localized product attributes. The standard attributes are:

FieldTypeDescription
attributes.nameobjectName attribute with id, key, label, type, multiSelect, and values (id, label, value)
attributes.descriptionobjectDescription attribute with id, key, label, type, multiSelect, and values (id, label, value)
advancedAttributesobjectAdditional advanced attributes

Images
Link copied!

The images array contains image objects, each with:

FieldTypeDescription
hashstringImage hash
attributesobjectImage attributes
customDataobjectCustom data
Note

SCAYLE images are identified by a hash rather than a direct URL. The image URL is constructed using the hash and your SCAYLE CDN configuration.

Variants
Link copied!

The variants array contains variant objects, each with:

FieldTypeDescription
idnumberVariant ID
referenceKeystringReference key
firstLiveAtstringDate the variant first went live
createdAtstringCreated date
updatedAtstringLast updated date
customDataobjectCustom data

Variant price fields (price object):

FieldTypeDescription
price.currencyCodestringCurrency code
price.withTaxnumberPrice including tax
price.withoutTaxnumberPrice excluding tax
price.recommendedRetailPricenumberRecommended retail price
price.tax.vat.amountnumberVAT amount
price.tax.vat.ratenumberVAT rate
price.appliedReductionsarrayApplied price reductions, each with category (sale, campaign, or promotion), type, and amount (absoluteWithTax, relative)

Variant stock fields (stock object):

FieldTypeDescription
stock.supplierIdnumberSupplier ID
stock.warehouseIdnumberWarehouse ID
stock.quantitynumberStock quantity
stock.isSellableWithoutStockbooleanWhether the variant can be sold without stock
stock.expectedAvailabilityAtstringExpected restocking date

Variant merchant fields (merchant object):

FieldTypeDescription
merchant.idnumberMerchant ID
merchant.keystringMerchant key
merchant.namestringMerchant name
merchant.customDataobjectCustom data
merchant.legalobjectLegal information

Categories
Link copied!

FieldTypeDescription
categoriesarray of arraysEach entry is a category path array. Each item in the path is a category object with categoryId, categoryHidden, categoryName, categoryUrl, and categorySlug
masterCategoriesarrayMaster categories, each with categoryId and categoryName
baseCategoriesarrayBase categories, each with categoryId and categoryName
searchCategoryIdsarray of numbersIDs of searchable categories

Pricing summary
Link copied!

FieldTypeDescription
priceRange.minobjectMinimum price in the product's price range
priceRange.maxobjectMaximum price in the product's price range
reductionRange.minobjectMinimum reduction applied across variants
reductionRange.maxobjectMaximum reduction applied across variants
lowestPriorPrice.withTaxnumberLowest prior price including tax
lowestPriorPrice.relativeDifferenceToPricenumberRelative difference between the lowest prior price and the current price

Siblings
Link copied!

FieldTypeDescription
siblingsarraySimplified references to sibling products (other colour or style variants of the same master product). Only populated when with=siblings is specified

Adding actions to flows

Inputs, outputs and ports

Input field variables

Developing extensions