{"description":"Opens the meinestadt.de homepage with the search term and returns the site's navigation links (Jobs, Immobilien, Freizeit, Aktuelles …) whose text contains the term, with absolute URLs. It does not return job or property listings; it points to the right section.","effect":"read","id":"meinestadt.de/search-directories","keywords":["meinestadt","meinestadt.de","stellenangebote","jobs","immobilien","freizeit","aktuelles","prospekte","lokale infos","local info","listings","navigation"],"output":{"schema":{"properties":{"links":{"items":{"properties":{"title":{"type":"string"},"url":{"type":"string"}},"type":"object"},"type":"array"},"query":{"type":"string"}},"required":["query","links"],"type":"object"},"value":"let $q = lower(trim(params.query)) in {query: params.query, links: map(&{title: text, url: href}, (steps.page.links || `[]`)[?contains(lower(text), $q)])}"},"params":{"additionalProperties":false,"properties":{"query":{"description":"Term to look for in the site's section names, e.g. 'stellenangebote', 'wohnung', 'prospekte'","maxLength":60,"minLength":2,"type":"string"}},"required":["query"],"type":"object"},"provenance":{"method":"har","notes":"Only call recorded: GET /?s=<term>. The response is the static homepage; it carries no search results, so the recipe reads the navigation links (a.ms-offcanvasNav__link) and filters them by the term. Known limit: no listings, only section links. The listing channels live on other meinestadt.de subdomains (jobs., tourismus., aktuell.), which are not called. Builder notes: The recorded call is the homepage with `?s=…`, and the page it returns holds no search results (no listings, no JSON). The only data that reflects the typed term is the site's navigation links, such as \"Stellenangebote\" under Jobs. So this recipe returns the meinestadt.de section links whose text matches the query, not actual job or property listings. To get real listings you would need a second recording on a city or channel page (jobs.meinestadt.de or a city's immobilien page).","recorded_at":"2026-11-08T14:55:45.713Z","recorded_by":"wield-build (claude-sonnet-5-5)"},"requires_login":false,"schema":"https://wield.run/schema/recipe/v1.json","site":{"country":"DE","id":"meinestadt.de","language":"de","name":"meinestadt.de","origin":"https://www.meinestadt.de","origins":["https://www.meinestadt.de"]},"steps":[{"description":"Homepage with the search term as the site's own s parameter (server-rendered); the off-canvas navigation links are read from the HTML.","expect":{"content_type":"html","status":[200]},"extract":{"html_items":{"links":{"fields":{"href":{"attr":"href","selector":":scope"},"text":{"selector":":scope"}},"max":100,"selector":"a.ms-offcanvasNav__link[href]"}}},"id":"page","request":{"headers":{"Accept":"text/html"},"method":"GET","query":{"s":"{{params.query}}"},"url":"/"}}],"task":"Find meinestadt.de sections and channel links matching a search term","tos":{"notes":"One page request per call, the same page a person sees; no login, no listing or contact actions.","reviewed":false},"verify":{"checks":["length(output.links) > `0`","length(output.links[?starts_with(url, 'http')]) == length(output.links)","length(output.links[?title != null]) == length(output.links)"],"example_params":{"query":"immobilien"},"max_ms":5000},"version":1}