{"description":"Searches The Noun Project icon library like its icon search page: icon title, link, preview image, creator name and license. First page of results (about 140 icons). Returns an empty list when nothing matches.","effect":"read","id":"thenounproject.com/search-icons","keywords":["noun project","thenounproject","icons","icon","symbols","pictograms","svg","vector","glyph","graphics","design","clipart"],"output":{"schema":{"properties":{"icons":{"items":{"properties":{"creator":{"type":["string","null"]},"license":{"type":["string","null"]},"thumbnail_url":{"type":["string","null"]},"title":{"type":"string"},"url":{"type":"string"}},"required":["title","url"],"type":"object"},"type":"array"},"query":{"type":"string"}},"required":["query","icons"],"type":"object"},"value":"{query: params.query, icons: steps.search.icons[?title != `null` && url != `null`].{title: title, url: join('', ['https://thenounproject.com', url]), thumbnail_url: thumbnails.thumbnail200 || `null`, creator: creator.name || `null`, license: (license && replace(license, 'License.', '')) || `null`}}"},"params":{"additionalProperties":false,"properties":{"query":{"description":"Icon term, e.g. 'coffee', 'bicycle', 'leaf'","maxLength":100,"minLength":2,"type":"string"}},"required":["query"],"type":"object"},"provenance":{"method":"har","notes":"GET /search/icons/?q=<query> returns server-rendered HTML with a __NEXT_DATA__ script holding the first page of icon results (id, url, title, thumbnails, tags, creator, license). Values are read from the embedded JSON; no hashed CSS classes are used. The recipe does not call other hosts.","recorded_at":"2026-11-08T16:38:16.000Z","recorded_by":"wield-forge (claude-haiku agent)"},"requires_login":false,"schema":"https://wield.run/schema/recipe/v1.json","site":{"country":"US","id":"thenounproject.com","language":"en","name":"The Noun Project","origin":"https://thenounproject.com","origins":["https://thenounproject.com"]},"steps":[{"description":"Server-rendered icon search page /search/icons/?q=...; read-only GET. The results are in script#__NEXT_DATA__ under props.pageProps.initialState.browse.allIconsData[].results[].","expect":{"content_type":"html","status":[200]},"extract":{"embedded_json":{"required":true,"selector":"script#__NEXT_DATA__","vars":{"icons":"props.pageProps.initialState.browse.allIconsData[].results[]"}}},"id":"search","request":{"headers":{"Accept":"text/html"},"method":"GET","query":{"q":"{{params.query}}"},"url":"/search/icons/"}}],"task":"Search icons on The Noun Project","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.icons) > `0`","length(output.icons[?starts_with(url, 'https://thenounproject.com/icon/')]) == length(output.icons)","length(output.icons[?title != `null`]) == length(output.icons)"],"example_params":{"query":"coffee"},"max_ms":5000},"version":1}