io.zenwave360.sdk.resources.asyncapi.v2.asyncapi-circular-refs.yml Maven / Gradle / Ivy
The newest version!
asyncapi: "2.0.0"
info:
title: Product operations
version: "0.1.0"
defaultContentType: application/json
channels:
createProductNotification:
subscribe:
summary: Create a new Product (Async Command)
operationId: doCreateProduct
message:
$ref: "#/components/messages/createProductMsg"
bindings:
kafka:
bindingVersion: "latest"
components:
messages:
createProductMsg:
name: createProductMsg
title: Create product message
summary: Requred info to create a product in a marketplace
contentType: application/json
headers:
properties:
messageType:
type: string
enum:
- create-product
destinationSystem:
type: string
enum:
- MPS
- BLINK
brandId:
type: number
description: "Brand ID according masters, eg: 14 Zara Home, 18 Uterque, 1 Zara..."
payload:
$ref: "#/components/schemas/CreateProductPayload"
schemas:
CreateProductPayload:
type: object
properties:
storeId:
type: integer
format: int64
product:
$ref: "#/components/schemas/ProductLocaleMsg"
ProductLocaleMsg:
type: object
properties:
productCode:
type: string
productName:
type: array
items:
$ref: "#/components/schemas/ProductLocaleNameMsg"
productDescription:
type: array
items:
$ref: "#/components/schemas/ProductLocaleDescriptionMsg"
productLongDescription:
type: array
items:
$ref: "#/components/schemas/ProductLocaleDescriptionMsg"
categoryName:
type: string
productCategories:
type: array
items:
type: string
productType:
type: integer
subBrandCode:
type: string
sellerPoint:
type: string
productMaterialProperties:
type: array
items:
$ref: "#/components/schemas/PropertiesLocaleMsg"
productProperties:
type: array
items:
$ref: "#/components/schemas/PropertiesLocaleMsg"
productSkus:
type: array
items:
$ref: "#/components/schemas/ProductLocaleSkuMsg"
productImages:
type: array
items:
$ref: "#/components/schemas/ImageMsg"
productSellerCategories:
type: array
items:
$ref: "#/components/schemas/ProductSellerCategoriesLocaleMsg"
productCustomSellerCategories:
type: array
items:
$ref: "#/components/schemas/ProductCustomSellerCategoriesLocaleMsg"
descLocaleModules:
type: array
items:
$ref: "#/components/schemas/ModuleDescriptionLocaleMsg"
relatedLocaleColors:
type: array
items:
$ref: "#/components/schemas/ColorsRelatedLocaleMsg"
wirelessDescModules:
type: array
items:
$ref: "#/components/schemas/WirelessModuleDescriptionMsg"
ProductLocaleNameMsg:
type: object
properties:
locale:
type: string
name:
type: string
ProductLocaleDescriptionMsg:
type: object
properties:
locale:
type: string
description:
type: string
PropertiesLocaleMsg:
type: object
properties:
locale:
type: array
items:
type: string
propertyNames:
type: array
items:
type: string
properties:
type: array
items:
$ref: "#/components/schemas/PropertyMsg"
PropertyMsg:
type: object
properties:
propertyId:
type: string
propertyName:
type: string
propertyDef:
type: string
enum:
- item
- product
propertyType:
type: string
enum:
- input
- multiInput
- multiCheck
- singleCheck
- complex
- multiComplex
- label
innerProperties:
type: array
items:
type: object
$ref: "#/components/schemas/PropertyMsg"
propertyRules:
type: array
items:
$ref: "#/components/schemas/PropertyRuleMsg"
propertyOptions:
type: array
items:
$ref: "#/components/schemas/PropertyOptionMsg"
propertyValues:
type: array
items:
type: string
propertyDefaultValue:
type: string
propertyMultipleDefaultValues:
type: object
properties:
defaultComplexValues:
type: array
items:
$ref: "#/components/schemas/FieldMsg"
defaultMultiComplexValues:
type: array
items:
$ref: "#/components/schemas/DefaultMultiComplexFieldMsg"
defaultValues:
type: array
items:
type: string
PropertyRuleMsg:
type: object
properties:
ruleName:
type: string
ruleType:
type: string
enum:
- maxLengthRule
- minLengthRule
- maxValueRule
- minValueRule
- maxInputNumRule
- minInputNumRule
- valueTypeRule
- requiredRule
- disableRule
- maxDecimalDigitsRule
- minDecimalDigitsRule
- regexRule
- setRule
- tipRule
- devTipRule
- readOnlyRule
- maxTargetSizeRule
- minTargetSizeRule
- maxImageSizeRule
- minImageSizeRule
ruleValue:
type: string
exProperty:
type: string
dependencyGroup:
type: object
properties:
dependencyOperator:
type: string
enum:
- and
- or
dependencyList:
type: array
items:
$ref: "#/components/schemas/PropertyDependencyMsg"
PropertyDependencyMsg:
type: object
properties:
dependantPropertyId:
type: string
dependencySymbol:
type: string
enum:
- gt
- ge
- included_in_options
- is_null
- lt
- not_contains
- contains
- distinct
- not_included_in_options
- eq
dependencyValue:
type: string
PropertyOptionMsg:
type: object
properties:
propertyOptionName:
type: string
propertyOptionValue:
type: string
FieldMsg:
type: object
properties:
propertyId:
type: string
propertyName:
type: string
propertyType:
type: string
complexFields:
type: array
items:
$ref: "#/components/schemas/ComplexFieldMsg"
values:
type: array
items:
type: string
value:
type: string
ComplexFieldMsg:
type: object
properties:
fields:
type: array
items:
type: object
#$ref: "#/components/schemas/FieldMsg" # CIRCULAR
DefaultMultiComplexFieldMsg:
type: object
properties:
defaultValues:
type: array
items:
type: object
#$ref: "#/components/schemas/FieldMsg" # CIRCULAR
ProductLocaleSkuMsg:
type: object
properties:
skuCode:
type: string
twinnedExcluded:
type: string
twinnedSkus:
type: array
items:
type: string
relatedSkus:
type: array
items:
type: string
colorCode:
type: string
sizeCode:
type: string
storeExclusions:
type: array
items:
type: integer
format: int64
skuProperties:
type: array
items:
$ref: "#/components/schemas/PropertiesLocaleMsg"
ImageMsg:
type: object
properties:
imageURL:
type: string
isMain:
type: boolean
isColor:
type: boolean
isVertical:
type: boolean
colorCode:
type: string
order:
type: integer
forceUpdate:
type: boolean
isBackground:
type: boolean
ProductSellerCategoriesLocaleMsg:
type: object
properties:
locale:
type: string
sellerCategories:
type: array
items:
type: string
ProductCustomSellerCategoriesLocaleMsg:
type: object
properties:
locale:
type: string
customSellerCategories:
type: array
items:
type: string
ModuleDescriptionLocaleMsg:
type: object
properties:
locale:
type: string
descModules:
type: array
items:
$ref: "#/components/schemas/ModuleDescriptionMsg"
ModuleDescriptionMsg:
type: object
properties:
moduleDescriptionId:
type: string
moduleName:
type: string
required:
type: boolean
content:
type: string
ColorsRelatedLocaleMsg:
type: object
properties:
locale:
type: string
colorsRelated:
type: array
items:
$ref: "#/components/schemas/ColorRelatedMsg"
ColorRelatedMsg:
type: object
properties:
relatedProductCode:
type: string
content:
type: string
WirelessModuleDescriptionMsg:
type: object
properties:
moduleDescriptionId:
type: string
moduleName:
type: string
content:
type: array
items:
$ref: "#/components/schemas/WirelessModuleContentMsg"
WirelessModuleContentMsg:
type: object
properties:
imagen:
type: string
texto:
type: string
link:
type: string