{"key":"LEADS_DISCOVER_PLACES","type":"fn","target":"leadsDiscoverPlaces","auth":"","content":"# WHAT: Discover B2B leads via Google Places API (New) — med-spas/clinics/longevity by segment + city, with website/phone/rating. Better coverage than the Overpass source. Inserts into the leads table.\n# WHEN_TO_USE: \"find medspas in Newport Beach\", building the wholesale target list.\n# ARGS: $1=segment free text (e.g. \"medical spa\",\"longevity clinic\"), $2=city, $3=limit (default 40).\n# EX: [LEADS_DISCOVER_PLACES]medical spa|Newport Beach|40[/LEADS_DISCOVER_PLACES]\n[\"$1\",\"$2\",\"$3\"]","updated_at":"2026-07-12 17:08:46","category":"leads","allowed_categories":null,"seq":null,"enabled":1,"planner_visible":1,"planner_rank":20,"input_schema":null,"examples":null,"sensitive":0,"runner":null,"includes":null,"created_at":"2026-07-12 17:08:46","price_usd":0.25,"meter_unit":"organization","row_num":524,"_rest":{"read":"GET /api/directory/LEADS_DISCOVER_PLACES","update":"PUT /api/directory/LEADS_DISCOVER_PLACES","patch":"PATCH /api/directory/LEADS_DISCOVER_PLACES","delete":"DELETE /api/directory/LEADS_DISCOVER_PLACES","invoke":"POST /api/dispatch {\"key\":\"LEADS_DISCOVER_PLACES\",\"body\":\"<args>\"}"},"_schema":{"key":"string · primary key · the invocation name","type":"fn | http | agent | flow","target":"fn: FN_MAP name · http: \"METHOD url\" (e.g. \"GET https://…/$1\") · agent: model id · flow: \"\" (content holds the DSL)","auth":"http only: \"bearer:ENV_VAR\" | \"headers:{...}\" | \"query:k=$ENV\" | \"\"","content":"fn/http: \"# docs\\n<arg template>\" · agent: the system prompt body · flow: the DSL","includes":"agent only: comma-separated prompt_block keys (e.g. BLOCK_VOICE,BLOCK_ROUTING) composed before content at runtime","category":"string tag","allowed_categories":"csv of categories, or \"*\"","seq":"int (sort)","enabled":"1|0","planner_visible":"1|0","planner_rank":"int","input_schema":"optional JSON string","examples":"optional JSON string","row_num":"int · computed · 1-based position in the canonical directory list (stable for a given ordering)"},"_object":{"identity":"directory:LEADS_DISCOVER_PLACES","object_type":"directory-object","representations":{"article":"/a/directory/LEADS_DISCOVER_PLACES","json":"/api/directory/LEADS_DISCOVER_PLACES","skill":"/api/directory/LEADS_DISCOVER_PLACES?format=skill","oip_contract":"/api/dispatch?key=LEADS_DISCOVER_PLACES"},"ontology":{"parent":"category:leads","siblings":[{"id":"directory:CONTACTS_LIST","key":"CONTACTS_LIST","relation":"shares_capability_family","article":"/a/directory/CONTACTS_LIST","skill":"/api/directory/CONTACTS_LIST?format=skill"},{"id":"directory:CONTACT_GET","key":"CONTACT_GET","relation":"shares_capability_family","article":"/a/directory/CONTACT_GET","skill":"/api/directory/CONTACT_GET?format=skill"},{"id":"directory:EMAILS_SENT","key":"EMAILS_SENT","relation":"shares_capability_family","article":"/a/directory/EMAILS_SENT","skill":"/api/directory/EMAILS_SENT?format=skill"},{"id":"directory:EMAIL_SEND_TRACKED","key":"EMAIL_SEND_TRACKED","relation":"shares_capability_family","article":"/a/directory/EMAIL_SEND_TRACKED","skill":"/api/directory/EMAIL_SEND_TRACKED?format=skill"},{"id":"directory:LEADS_DISCOVER_NPI","key":"LEADS_DISCOVER_NPI","relation":"shares_capability_family","article":"/a/directory/LEADS_DISCOVER_NPI","skill":"/api/directory/LEADS_DISCOVER_NPI?format=skill"},{"id":"directory:LEADS_RESOLVE_SITES","key":"LEADS_RESOLVE_SITES","relation":"shares_capability_family","article":"/a/directory/LEADS_RESOLVE_SITES","skill":"/api/directory/LEADS_RESOLVE_SITES?format=skill"}]},"law":"This directory definition is also a human article, model Skill, and invocable OIP object under one identity."}}