arazzo: 1.0.1 info: title: Salla Catalog Taxonomy Setup summary: Create a brand and category, then create a product assigned to both. description: >- A catalog scaffolding flow for a new Salla store. A brand is created, a category is created, and a product is then created and assigned to the new category so the taxonomy and the product land together in one pass. Each step spells out its request inline so the flow can be read and executed without opening the underlying OpenAPI description. version: 1.0.0 sourceDescriptions: - name: merchantApi url: ../openapi/salla-merchant-api-openapi.yml type: openapi workflows: - workflowId: setup-catalog-taxonomy summary: Create a brand and category, then a product placed in that category. description: >- Creates a brand, creates a category, and creates a product assigned to the new category and brand. inputs: type: object required: - brandPayload - categoryPayload - productName - productPrice - productType properties: brandPayload: type: object description: The brand body (name, logo, description) to create. categoryPayload: type: object description: The category body (name, parent, status) to create. productName: type: string description: Display name of the product to create. productPrice: type: number description: Base price of the product. productType: type: string description: Product type (e.g. product, service, digital). steps: - stepId: createBrand description: >- Create the brand the new product will belong to. operationId: createBrand requestBody: contentType: application/json payload: $inputs.brandPayload successCriteria: - condition: $statusCode == 201 outputs: brandId: $response.body#/data/id - stepId: createCategory description: >- Create the category the new product will be placed in. operationId: createCategory requestBody: contentType: application/json payload: $inputs.categoryPayload successCriteria: - condition: $statusCode == 201 outputs: categoryId: $response.body#/data/id - stepId: createProduct description: >- Create the product, assigning it to the freshly created brand and category. operationId: createProduct requestBody: contentType: application/json payload: name: $inputs.productName price: $inputs.productPrice product_type: $inputs.productType brand_id: $steps.createBrand.outputs.brandId categories: - $steps.createCategory.outputs.categoryId successCriteria: - condition: $statusCode == 201 outputs: productId: $response.body#/data/id outputs: brandId: $steps.createBrand.outputs.brandId categoryId: $steps.createCategory.outputs.categoryId productId: $steps.createProduct.outputs.productId