naftiko: 1.0.0-alpha2 info: label: Shopify Admin REST API — Product Images description: 'Shopify Admin REST API — Product Images. 6 operations. Lead operation: Shopify Retrieve a list of product images. Self-contained Naftiko capability covering one Shopify business surface.' tags: - Shopify - Product Images created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SHOPIFY_API_KEY: SHOPIFY_API_KEY capability: consumes: - type: http namespace: admin-rest-product-images baseUri: https://{store}.myshopify.com/admin/api/2025-01 description: Shopify Admin REST API — Product Images business capability. Self-contained, no shared references. resources: - name: products-product_id-images.json path: /products/{product_id}/images.json operations: - name: listproductimages method: GET description: Shopify Retrieve a list of product images outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: since_id in: query type: integer description: Return images after the specified ID - name: fields in: query type: string description: Comma-separated list of fields to include - name: createproductimage method: POST description: Shopify Create a product image outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: products-product_id-images-count.json path: /products/{product_id}/images/count.json operations: - name: getproductimagecount method: GET description: Shopify Retrieve a count of product images outputRawFormat: json outputParameters: - name: result type: object value: $. - name: products-product_id-images-image_id}.json path: /products/{product_id}/images/{image_id}.json operations: - name: getproductimage method: GET description: Shopify Retrieve a single product image outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateproductimage method: PUT description: Shopify Update a product image outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteproductimage method: DELETE description: Shopify Delete a product image outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: apikey key: X-Shopify-Access-Token value: '{{env.SHOPIFY_API_KEY}}' placement: header exposes: - type: rest namespace: admin-rest-product-images-rest port: 8080 description: REST adapter for Shopify Admin REST API — Product Images. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/products/{product-id}/images-json name: products-product-id-images-json description: REST surface for products-product_id-images.json. operations: - method: GET name: listproductimages description: Shopify Retrieve a list of product images call: admin-rest-product-images.listproductimages with: since_id: rest.since_id fields: rest.fields outputParameters: - type: object mapping: $. - method: POST name: createproductimage description: Shopify Create a product image call: admin-rest-product-images.createproductimage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/products/{product-id}/images/count-json name: products-product-id-images-count-json description: REST surface for products-product_id-images-count.json. operations: - method: GET name: getproductimagecount description: Shopify Retrieve a count of product images call: admin-rest-product-images.getproductimagecount outputParameters: - type: object mapping: $. - path: /v1/products/{product-id}/images/image-id-json name: products-product-id-images-image-id-json description: REST surface for products-product_id-images-image_id}.json. operations: - method: GET name: getproductimage description: Shopify Retrieve a single product image call: admin-rest-product-images.getproductimage outputParameters: - type: object mapping: $. - method: PUT name: updateproductimage description: Shopify Update a product image call: admin-rest-product-images.updateproductimage with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteproductimage description: Shopify Delete a product image call: admin-rest-product-images.deleteproductimage outputParameters: - type: object mapping: $. - type: mcp namespace: admin-rest-product-images-mcp port: 9090 transport: http description: MCP adapter for Shopify Admin REST API — Product Images. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: shopify-retrieve-list-product-images description: Shopify Retrieve a list of product images hints: readOnly: true destructive: false idempotent: true call: admin-rest-product-images.listproductimages with: since_id: tools.since_id fields: tools.fields outputParameters: - type: object mapping: $. - name: shopify-create-product-image description: Shopify Create a product image hints: readOnly: false destructive: false idempotent: false call: admin-rest-product-images.createproductimage with: body: tools.body outputParameters: - type: object mapping: $. - name: shopify-retrieve-count-product-images description: Shopify Retrieve a count of product images hints: readOnly: true destructive: false idempotent: true call: admin-rest-product-images.getproductimagecount outputParameters: - type: object mapping: $. - name: shopify-retrieve-single-product-image description: Shopify Retrieve a single product image hints: readOnly: true destructive: false idempotent: true call: admin-rest-product-images.getproductimage outputParameters: - type: object mapping: $. - name: shopify-update-product-image description: Shopify Update a product image hints: readOnly: false destructive: false idempotent: true call: admin-rest-product-images.updateproductimage with: body: tools.body outputParameters: - type: object mapping: $. - name: shopify-delete-product-image description: Shopify Delete a product image hints: readOnly: false destructive: true idempotent: true call: admin-rest-product-images.deleteproductimage outputParameters: - type: object mapping: $.