Sign inTry it

Search Amica Farmacia pharmacy products.

Searches the Amica Farmacia online pharmacy like its search page: product name, vendor (brand), price in euros, whether it is on sale, and link. First page of results (about 16 products), read from the product list only, not the recommendations. Returns an empty list when nothing matches.

No reports yetRead-only, no login
Site
Amica Farmacia, Italy
Version
v1
Runs, last 7 days
No reports yet
sha256
13525829d1f1…

Run it with your agent

after installing Wield

Ask in plain words. Your agent finds this recipe and calls it:

“Search Amica Farmacia pharmacy products.”

Read-only: it changes nothing on the site. No login needed.

{
  "tool": "run",
  "arguments": {
    "recipe_id": "amicafarmacia.com/search-products",
    "params": {
      "query": "integratore magnesio"
    }
  }
}

Requests

sent from your browser, in order
  1. 1GET/search?qServer-rendered Shopify search page /search?q=… (read-only GET). Product cards are div.product-card.

Parameters

from your agent
querystringrequiredProduct, brand or ingredient term, e.g. 'integratore magnesio', 'crema solare', 'shampoo'

Returns

to your agent
productsobject[]name, on_sale, price_eur, regular_price_eur, url, vendor
querystring

Where it can send

  • www.amicafarmacia.com

Anything else is blocked by the extension.

Reads from your session

Nothing. Your browser attaches the site's cookies by itself.

Used only in requests to the addresses on the left. Never sent to wield.run or your agent.

Checks

a run passes when
  • length(output.products) > `0`
  • length(output.products[?starts_with(url, 'https://www.amicafarmacia.com/products/')]) == length(output.products)
  • length(output.products[?name != `null`]) == length(output.products)

Raw recipe

Served as canonical JSON from /api/v1/recipes/amicafarmacia.com/search-products, so its sha256 matches the ETag and the index.

Check it yourself
curl -s https://wield.run/api/v1/recipes/amicafarmacia.com/search-products | shasum -a 256
# 13525829d1f1e7ea80d84fa6333a941551da47c44db5dae21414e563aea73f77
amicafarmacia.com/search-products.json, v1
{
  "description": "Searches the Amica Farmacia online pharmacy like its search page: product name, vendor (brand), price in euros, whether it is on sale, and link. First page of results (about 16 products), read from the product list only, not the recommendations. Returns an empty list when nothing matches.",
  "effect": "read",
  "id": "amicafarmacia.com/search-products",
  "keywords": [
    "amica farmacia",
    "amicafarmacia",
    "farmacia",
    "parafarmacia",
    "integratori",
    "cosmesi",
    "farmaci",
    "magnesio",
    "crema solare",
    "shampoo",
    "pharmacy",
    "supplements",
    "cosmetics",
    "italia"
  ],
  "output": {
    "schema": {
      "properties": {
        "products": {
          "items": {
            "properties": {
              "name": {
                "type": "string"
              },
              "on_sale": {
                "type": "boolean"
              },
              "price_eur": {
                "description": "Current price in euros (the sale price when on sale)",
                "type": [
                  "number",
                  "null"
                ]
              },
              "regular_price_eur": {
                "description": "Regular price in euros when the product is on sale, else null",
                "type": [
                  "number",
                  "null"
                ]
              },
              "url": {
                "type": "string"
              },
              "vendor": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "name",
              "url"
            ],
            "type": "object"
          },
          "type": "array"
        },
        "query": {
          "type": "string"
        }
      },
      "required": [
        "query",
        "products"
      ],
      "type": "object"
    },
    "value": "{query: params.query, products: steps.search.products[?name != `null` && href != `null`].{name: name, vendor: vendor, price_eur: (price_sale && to_number(replace(replace(trim(price_sale), '€', ''), ',', '.'))) || `null`, regular_price_eur: (contains(price_block || '', 'f-price--on-sale') && struck && to_number(replace(replace(trim(struck), '€', ''), ',', '.'))) || `null`, on_sale: contains(price_block || '', 'f-price--on-sale'), url: join('', ['https://www.amicafarmacia.com', split(href, '?')[0]])}}"
  },
  "params": {
    "additionalProperties": false,
    "properties": {
      "query": {
        "description": "Product, brand or ingredient term, e.g. 'integratore magnesio', 'crema solare', 'shampoo'",
        "maxLength": 100,
        "minLength": 2,
        "type": "string"
      }
    },
    "required": [
      "query"
    ],
    "type": "object"
  },
  "provenance": {
    "method": "har",
    "notes": "GET /search?q=…: the HTML already contains the first page of product cards (div.product-card, Shopify theme). Name from the product title heading, vendor from the vendor line, price from the f-price item (sale price when on sale, regular price struck through), URL from the title link with the tracking query removed. Selectors use semantic theme classes only. Results are read from the products list (#ProductsList) only, not the recommendation block.",
    "recorded_at": "2026-11-08T15:26:07.000Z",
    "recorded_by": "wield-forge (claude-haiku agent)"
  },
  "requires_login": false,
  "schema": "https://wield.run/schema/recipe/v1.json",
  "site": {
    "country": "IT",
    "id": "amicafarmacia.com",
    "language": "it",
    "name": "Amica Farmacia",
    "origin": "https://www.amicafarmacia.com",
    "origins": [
      "https://www.amicafarmacia.com"
    ]
  },
  "steps": [
    {
      "description": "Server-rendered Shopify search page /search?q=… (read-only GET). Product cards are div.product-card.",
      "expect": {
        "content_type": "html",
        "status": [
          200
        ]
      },
      "extract": {
        "html_items": {
          "products": {
            "fields": {
              "href": {
                "attr": "href",
                "selector": "h3.product-card__title a"
              },
              "name": {
                "selector": "h3.product-card__title"
              },
              "price_block": {
                "attr": "class",
                "selector": ".f-price"
              },
              "price_sale": {
                "selector": ".f-price-item--sale"
              },
              "struck": {
                "selector": ".f-price s"
              },
              "vendor": {
                "selector": ".product-card__vendor"
              }
            },
            "max": 60,
            "selector": "#ProductsList div.product-card"
          }
        }
      },
      "id": "search",
      "request": {
        "headers": {
          "Accept": "text/html"
        },
        "method": "GET",
        "query": {
          "q": "{{params.query}}"
        },
        "url": "/search"
      }
    }
  ],
  "task": "Search Amica Farmacia pharmacy products",
  "tos": {
    "notes": "Not reviewed. One search page per call, the same page a visitor loads. The site's terms on automated access were not checked.",
    "reviewed": false
  },
  "verify": {
    "checks": [
      "length(output.products) > `0`",
      "length(output.products[?starts_with(url, 'https://www.amicafarmacia.com/products/')]) == length(output.products)",
      "length(output.products[?name != `null`]) == length(output.products)"
    ],
    "example_params": {
      "query": "integratore magnesio"
    },
    "max_ms": 8000
  },
  "version": 1
}