arazzo: 1.0.1 info: title: Etsy Shop Reviews Overview summary: Resolve the authenticated seller's shop and pull its reviews. description: >- A read-only reputation flow. It calls users/me to identify the authenticated user, resolves the owner's shop record, and retrieves the reviews left on that shop with paging controls. Every step spells out its request inline — including the x-api-key and OAuth bearer headers — so the flow can be read and executed without opening the underlying OpenAPI description. version: 1.0.0 sourceDescriptions: - name: etsyApi url: ../openapi/etsy-openapi-original.yml type: openapi workflows: - workflowId: shop-reviews-overview summary: Pull the authenticated seller's shop reviews starting from their token. description: >- Identifies the authenticated user, resolves their shop, and retrieves the shop's reviews. inputs: type: object required: - apiKey - accessToken properties: apiKey: type: string description: The Etsy app API key sent in the x-api-key header. accessToken: type: string description: The OAuth 2.0 bearer token for the authenticated seller. limit: type: integer description: The maximum number of reviews to return. default: 25 offset: type: integer description: The number of records to skip before the first result. default: 0 steps: - stepId: whoAmI description: Fetch the authenticated user's own user and shop IDs. operationId: getMe parameters: - name: x-api-key in: header value: $inputs.apiKey - name: Authorization in: header value: "Bearer $inputs.accessToken" successCriteria: - condition: $statusCode == 200 outputs: userId: $response.body#/user_id - stepId: resolveShop description: Resolve the shop record for the authenticated owner's user ID. operationId: getShopByOwnerUserId parameters: - name: x-api-key in: header value: $inputs.apiKey - name: Authorization in: header value: "Bearer $inputs.accessToken" - name: user_id in: path value: $steps.whoAmI.outputs.userId successCriteria: - condition: $statusCode == 200 outputs: shopId: $response.body#/shop_id reviewCount: $response.body#/review_count reviewAverage: $response.body#/review_average - stepId: getReviews description: Retrieve the reviews left on the resolved shop. operationId: getReviewsByShop parameters: - name: x-api-key in: header value: $inputs.apiKey - name: Authorization in: header value: "Bearer $inputs.accessToken" - name: shop_id in: path value: $steps.resolveShop.outputs.shopId - name: limit in: query value: $inputs.limit - name: offset in: query value: $inputs.offset successCriteria: - condition: $statusCode == 200 outputs: count: $response.body#/count reviews: $response.body#/results outputs: shopId: $steps.resolveShop.outputs.shopId reviewAverage: $steps.resolveShop.outputs.reviewAverage count: $steps.getReviews.outputs.count reviews: $steps.getReviews.outputs.reviews