{"p":"media","persona":["media","Media, newsrooms & publishing","Newsrooms, broadcasters, publishers and media sales teams who need local stories, audiences and advertisers first."],"industry":{"slug":"media-publishing","name":"Media & publishing"},"templates":{"media_traffic_bulletin":{"name":"Traffic bulletin for the radio, every 30 minutes","desc":"Every 30 minutes in the rush hours: road closures, roadworks and incidents across your city, turned by xMap AI into a 20-second traffic bulletin the presenter can read, posted to the newsroom channel.","n":[["sched","Every 30 minutes",{"freq":"Every 30 minutes","tz":"Africa/Lagos","days":["Mon","Tue","Wed","Thu","Fri"],"hours":"Between","start":"06:00","end":"10:00"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Lagos","label":"Lagos","lat":6.5244,"lng":3.3792}]}],["incidents","Closures and incidents now",{"where":"Area of interest","types":["Road closures","Roadworks","Other incidents"]}],["llm","Write the bulletin",{"scope":"The whole list","task":"Write summary","prompt":"Write a 20-second radio traffic bulletin (about 55 words): the worst three problems with the road names, what to avoid and one alternative. Calm, clear, no jargon.","out":"report"}],["ap_slack","Post it to #newsdesk",{"action":"send_channel_message","per":"Once per run","inputs":{"channel":"","text":""}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[3,5]]},"media_weather_script":{"name":"Morning weather script for every region","desc":"Every day at 5:00: the forecast for each city of your coverage area, written by xMap AI as a 40-second weather script for radio and TV, with a note on anything unusual, saved to Google Drive and emailed to the presenters.","n":[["sched","Every morning",{"time":"05:00","tz":"America/Mexico_City"}],["aoi","Our regions",{"mode":"Cities","cities":[{"kind":"city","name":"Mexico City","label":"Mexico City","lat":19.4326,"lng":-99.1332},{"kind":"city","name":"Guadalajara","label":"Guadalajara","lat":20.6597,"lng":-103.3496},{"kind":"city","name":"Monterrey","label":"Monterrey","lat":25.6866,"lng":-100.3161}]}],["weather","Forecast for 2 days",{"where":"Area of interest","days":"2","what":["Temperature","Rain","Wind"]}],["llm","Write the weather script",{"scope":"The whole list","task":"Write summary","prompt":"Write a 40-second weather script for radio and TV (about 100 words): city by city, today and tomorrow, temperatures and rain, and one line on anything unusual. Friendly, no jargon.","out":"report"}],["ap_google-drive","Save the script to Google Drive",{"action":"create_new_gdrive_file","per":"Once per run","inputs":{"fileName":"","text":"","fileType":"text/csv"}}],["email","Email me the list",{"kind":"One email per run","subj":"Weather script for this morning"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5]]},"media_new_in_town":{"name":"New in town: a weekly column draft","desc":"Every Thursday: restaurants, cafes and shops that opened in your city this week, the best-rated first, written up by xMap AI as a draft for the weekly \"new in town\" column, saved to Google Drive for the editor.","n":[["sched","Every Thursday",{"freq":"Every week","weekday":"Thursday","time":"10:00","tz":"Europe/London"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Manchester","label":"Manchester","lat":53.4808,"lng":-2.2426}]}],["nearby","Places that opened this month",{"types":["Restaurant","Coffee shop","Clothing store","Bakery"],"where":"Area of interest","order":"Best rated first","max":"40","since":"Last 6 months"}],["onlynew","Only new ones",null],["sort","Best 8 first",{"by":"Rating","dir":"Highest first (Z to A)","keep":"A number I choose","n":"8"}],["llm","Write the column draft",{"scope":"The whole list","task":"Write summary","prompt":"Write a 300-word \"new in town\" column for a local paper: the 8 places, one or two lines each on what they are and why to go, in a warm local voice. Do not invent dishes or prices.","out":"report"}],["ap_google-drive","Save the draft to Google Drive",{"action":"create_new_gdrive_file","per":"Once per run","inputs":{"fileName":"","text":"","fileType":"text/csv"}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6],[5,7]]},"media_ad_sales_openings":{"name":"Newly opened businesses for my advertising sales team","desc":"Every weekday: businesses that opened in your coverage area in the last 30 days, scored by xMap AI as advertisers for local radio and print, with the owner from Apollo, into HubSpot for the sales team.","n":[["sched","Every weekday morning",{"days":["Mon","Tue","Wed","Thu","Fri"],"time":"08:00","tz":"Asia/Manila"}],["aoi","Our coverage area",{"mode":"Cities","cities":[{"kind":"city","name":"Manila","label":"Manila","lat":14.5995,"lng":120.9842}]}],["gscan","New businesses",{"cats":["Restaurants","Retail stores","Gyms","Salons","Clinics"],"area":"Area of interest","opened":"Last 30 days","max":"50"}],["onlynew","Only new ones",null],["llm","Score each one as an advertiser with xMap AI",{"task":"Score & rank","prompt":"Score each new business from 0 to 100 as a buyer of local radio and print ads: its type, whether it is independent, and how much it needs to be known fast. Explain in one sentence.","out":"fit_score, reason"}],["filter","Fit score \u2265 60",{"field":"Fit score","op":"\u2265","val":"60"}],["apollo","Owner from Apollo",{"task":"Contacts at each company","titles":["Owner","Marketing Manager","General Manager"],"per":"1"}],["ap_hubspot","Add them to HubSpot",{"action":"create-company","per":"Once per item","inputs":{"objectProperties":{"name":"{{name}}","city":"{{city}}","phone":"{{phone}}","domain":"{{website}}"}}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6],[6,7],[6,8]]},"media_billboard_sites":{"name":"Where to put the next billboard","desc":"Every quarter: the blocks of your city with the most residents and the most shops and malls within 500 m, ranked by xMap AI as roadside billboard spots for an outdoor media company, emailed and mapped.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Australia/Sydney"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Sydney","label":"Sydney","lat":-33.8688,"lng":151.2093}]}],["demog","People in every block of the city",{"where":"Area of interest","out":"Every hexagon (about 0.1 km\u00b2)"}],["sort","Best 40 first",{"by":"Another field","fname":"population","dir":"Highest first (Z to A)","keep":"A number I choose","n":"40"}],["nearby","Shops and malls nearby",{"types":["Shopping mall","Supermarket","Gas station"],"where":"Each incoming place","radius":"500 m","give":"Each incoming place, with counts"}],["llm","Score each spot with xMap AI",{"task":"Score & rank","prompt":"Score each block from 0 to 100 as a billboard site: many residents, many shops and a fuel station nearby (traffic). Explain in one sentence.","out":"fit_score, reason"}],["sort","Best 10 first",{"by":"Fit score","dir":"Highest first (Z to A)","keep":"The first 10"}],["map","Show them on a map",{"name":"Billboard spots","color":"Fit score"}],["email","Email me the list",{"kind":"One email per run","subj":"Best billboard spots this quarter"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6],[6,7],[7,8]]},"media_port_desk":{"name":"Ships arriving at the port, for the business desk","desc":"Every hour: cargo and passenger ships entering your port area (live AIS), each described by xMap AI in one newsy line (what it is, where it is from, where it is going), posted to the business desk channel.","n":[["sched","Every hour",{"freq":"Every hour","every":"1 hour","minute":"00"}],["aoi","The port",{"mode":"Cities","cities":[{"kind":"city","name":"Rotterdam","label":"Rotterdam","lat":51.9244,"lng":4.4777}]}],["ships","Ships in the port area",{"where":"Area of interest","listen":"30 seconds","types":["Cargo","Tanker","Passenger"]}],["zone","Ships that entered",{"zone":"The Area of interest","event":"Entered or crossed it"}],["llm","Describe each ship with xMap AI",{"task":"Write summary","prompt":"One newsy line for a business reporter: the ship\u2019s type and name, where it is heading, and why it might matter.","out":"line"}],["ap_slack","Post them to #business-desk",{"action":"send_channel_message","per":"Once per run","inputs":{"channel":"","text":""}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[4,6]]},"media_build_story":{"name":"A construction site from space, for a follow-up story","desc":"Every month: every clear satellite picture of a site you are following (a stadium, a new district) in the last 30 days, with a note by xMap AI on what changed, emailed to the reporter.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Europe/Rome"}],["aoi","The site",{"mode":"Cities","cities":[{"kind":"city","name":"Milan","label":"Milan","lat":45.4642,"lng":9.19}]}],["satellite","Pictures of the site",{"where":"Area of interest","radius":"1500","period":"Last 30 days","cloud":"20","pick":"Every one in the period"}],["llm","Note what changed with xMap AI",{"task":"Write summary","prompt":"One line for the reporter on what each picture shows and how it differs from the month before.","out":"note"}],["email","Email me the list",{"kind":"One email per run","subj":"This month\u2019s pictures of the site"}]],"e":[[0,1],[1,2],[2,3],[3,4]]},"media_jobs_story":{"name":"Monthly jobs story: who is hiring and what","desc":"On the 1st of the month: job postings in your city, sorted by xMap AI into sectors, with the numbers and the biggest hirers, written as a short data story for the economy page.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Asia/Jakarta"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Jakarta","label":"Jakarta","lat":-6.2088,"lng":106.8456}]}],["jobs","Job postings this month",{"kw":"staff","where":"Area of interest","posted":"Last 30 days","limit":"100","details":true,"each":false}],["classify","Sort them into sectors",{"tax":"Custom list","labels":"Retail, Food and drink, Technology, Health, Logistics, Finance, Education, Other"}],["llm","Write the data story",{"scope":"The whole list","task":"Write summary","prompt":"Write a 250-word data story for the economy page: how many postings, which sectors hire most, the biggest hirers, and what it says about the city. Only use the numbers in the list.","out":"report"}],["email","Email me the list",{"kind":"One email per run","subj":"Jobs story for the economy page"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5]]},"media_reader_chat":{"name":"A local guide chat for your news site","desc":"A chat for your readers: an AI agent that answers \"what is near me\", \"is the road closed\", \"will it rain\" with live places, road incidents and the forecast, in the paper\u2019s friendly voice.","n":[["chat","Chat",{"title":"Ask the city desk","welcome":"Hi! Ask me what is open near you, whether a road is closed, or what the weather will do."}],["agent","City desk assistant",{"goal":"You are the friendly city guide of a local newspaper. Use Places nearby for \"where\" questions, Road problems for traffic, and The forecast for weather. Answer in two or three lines with names and distances. Never make up news."}],["nearby","Places nearby",{"where":"A point","center":"{{agent: where to look, as the place the person named}}","types":["Restaurant","Pharmacy","Coffee shop","Park"],"radius":"2 km","order":"Best rated first","max":"20"}],["incidents","Road problems",{"where":"Around a point","center":"{{agent: the place the reader named}}","radius":"3000"}],["weather","The forecast",{"where":"A point","center":"{{agent: the place the reader named}}","days":"2","what":["Temperature","Rain","Wind"]}]],"e":[[0,1],[1,2,"tool"],[1,3,"tool"],[1,4,"tool"]]},"media_venue_listings":{"name":"New venues for the events listings","desc":"Every month: concert halls, live music venues, galleries and event venues that opened or appeared in your city, with phone and website, added to the listings team\u2019s Google Sheet.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"America/Buenos_Aires"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Buenos Aires","label":"Buenos Aires","lat":-34.6037,"lng":-58.3816}]}],["nearby","Venues",{"types":["Concert hall","Live music venue","Art gallery","Event venue"],"where":"Area of interest","order":"Best rated first","max":"120","contact":true}],["onlynew","Only venues not listed yet",null],["classify","Sort by kind",{"tax":"Custom list","labels":"Music, Art, Theatre, Events, Other"}],["ap_google-sheets","Add them to the listings sheet",{"action":"insert_row","per":"Once per item","inputs":{"spreadsheetId":"","sheetId":"","first_row_headers":true,"values":{}}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[4,6]]},"media_critic_shortlist":{"name":"Restaurants worth reviewing this month","desc":"On the 1st of the month: restaurants that opened in the last six months in your city, rated 4.5 or better by enough people, the 10 most talked about first, for the food critic\u2019s list.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Asia/Seoul"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Seoul","label":"Seoul","lat":37.5665,"lng":126.978}]}],["nearby","Young restaurants",{"types":["Restaurant","Korean restaurant","Fine dining restaurant"],"where":"Area of interest","order":"Best rated first","max":"200","since":"Last 6 months","rating":"4.5"}],["filter","At least 50 reviews",{"field":"A number field","fname":"reviews","op":"\u2265","val":"50"}],["sort","Best 10 first",{"by":"Reviews","dir":"Highest first (Z to A)","keep":"The first 10"}],["email","Email me the list",{"kind":"One email per run","subj":"Restaurants to review this month"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5]]},"media_bookshop_distribution":{"name":"Independent bookshops and libraries for my publishing house","desc":"Every quarter: independent bookshops and public libraries in your country\u2019s main cities, the new ones only, with the owner or buyer from Apollo, into HubSpot for the distribution team.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Africa/Nairobi"}],["aoi","Main cities",{"mode":"Cities","cities":[{"kind":"city","name":"Nairobi","label":"Nairobi","lat":-1.2921,"lng":36.8219},{"kind":"city","name":"Mombasa","label":"Mombasa","lat":-4.0435,"lng":39.6682},{"kind":"city","name":"Kampala","label":"Kampala","lat":0.3476,"lng":32.5825}]}],["nearby","Bookshops and libraries",{"types":["Bookstore (all 12 types)","Public library"],"where":"Area of interest","order":"Best rated first","max":"150","chain":"Only independents","contact":true}],["onlynew","Only new ones",null],["apollo","Buyer from Apollo",{"task":"Contacts at each company","titles":["Owner","Buyer","Librarian","Manager"],"per":"1"}],["ap_hubspot","Add them to HubSpot",{"action":"create-contact","per":"Once per item","inputs":{"objectProperties":{"firstname":"{{contact_name}}","jobtitle":"{{contact_title}}","email":"{{contact_email}}","company":"{{name}}"}}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[4,6]]},"media_station_stockists":{"name":"Newsstands near stations, for magazine distribution","desc":"Every month: newsstands and convenience stores within 300 m of each train and bus station in your city, checked for whether they are still open, for the magazine distributor\u2019s route list.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Europe/Madrid"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Barcelona","label":"Barcelona","lat":41.3874,"lng":2.1686}]}],["nearby","Stations",{"types":["Train station","Bus station","Subway station"],"where":"Area of interest","order":"Best rated first","max":"60"}],["nearby","Newsstands near each station",{"types":["Newsstand","Convenience store"],"where":"Each incoming place","radius":"250 m","give":"The places found","max":"10"}],["dedupe","Each shop once",{"by":"Same place, job or incident (recommended)"}],["ap_google-sheets","Add them to the route sheet",{"action":"insert_row","per":"Once per item","inputs":{"spreadsheetId":"","sheetId":"","first_row_headers":true,"values":{}}}],["map","Show them on a map",{"name":"Stockists near stations","color":"Category"}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6],[4,7]]},"media_flood_watch_desk":{"name":"Heavy rain by district, for the live news desk","desc":"Every hour on rainy days: the hour-by-hour rain forecast for your city\u2019s districts, the ones expecting the most rain first, sent to the live desk on WhatsApp so crews can be ready.","n":[["sched","Every hour",{"freq":"Every hour","every":"1 hour","minute":"00"}],["aoi","Our districts",{"mode":"Cities","cities":[{"kind":"city","name":"Mumbai","label":"Mumbai","lat":19.076,"lng":72.8777},{"kind":"city","name":"Pune","label":"Pune","lat":18.5204,"lng":73.8567}]}],["weather","Rain hour by hour",{"where":"Area of interest","days":"1","step":"Hour by hour","what":["Rain","Wind"]}],["sort","Best 6 first",{"by":"Another field","fname":"rain_mm","dir":"Highest first (Z to A)","keep":"A number I choose","n":"6"}],["llm","Write a desk note with xMap AI",{"task":"Write summary","prompt":"One line for the live desk: where and when the heaviest rain is expected in the next hours.","out":"desk_note"}],["ap_whatsapp","Send it to the live desk",{"action":"sendMessage","per":"Once per run","inputs":{"phone_number_id":"","to":"","text":"Rain watch: {{items}}"}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[4,6]]},"media_school_data_story":{"name":"Children per school, district by district","desc":"Every year before school starts: how many children live in each part of your city and how many schools are within 2 km, with the most crowded areas written up by xMap AI as a data story, emailed and mapped.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Africa/Cairo"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Cairo","label":"Cairo","lat":30.0444,"lng":31.2357}]}],["demog","People in every block of the city",{"where":"Area of interest","out":"Every hexagon (about 0.1 km\u00b2)"}],["sort","Best 60 first",{"by":"Another field","fname":"children_0_19","dir":"Highest first (Z to A)","keep":"A number I choose","n":"60"}],["nearby","Schools within 2 km",{"types":["School"],"where":"Each incoming place","radius":"2 km","give":"Each incoming place, with counts"}],["calc","Children per school",{"lines":"per_school = children_0_19 / (nearby_count + 1)"}],["sort","Best 15 first",{"by":"Another field","fname":"per_school","dir":"Highest first (Z to A)","keep":"A number I choose","n":"15"}],["llm","Write the data story",{"scope":"The whole list","task":"Write summary","prompt":"Write a 250-word data story: where the most children live far from a school, how many, and what families there say they need. Only use the numbers in the list.","out":"report"}],["map","Show them on a map",{"name":"Children per school","color":"One color"}],["email","Email me the list",{"kind":"One email per run","subj":"Children per school, story draft"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6],[6,7],[7,8],[8,9]]},"media_podcast_experts":{"name":"Local experts to invite on the podcast","desc":"Every month: the best-rated clinics, law firms and independent businesses in your city, their founders or lead experts from Apollo, and a one-line episode idea by xMap AI, for the podcast producer.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"America/Toronto"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Toronto","label":"Toronto","lat":43.6532,"lng":-79.3832}]}],["nearby","Best-rated businesses",{"types":["Medical clinic","Law firm","Bakery","Coffee shop"],"where":"Area of interest","order":"Best rated first","max":"60","rating":"4.7"}],["apollo","Founder from Apollo",{"task":"Contacts at each company","titles":["Founder","Owner","Director"],"per":"1"}],["llm","Write an episode idea with xMap AI",{"task":"Write summary","prompt":"One line: an episode idea with this person that local listeners would want to hear.","out":"episode"}],["ap_google-sheets","Add them to the guest sheet",{"action":"insert_row","per":"Once per item","inputs":{"spreadsheetId":"","sheetId":"","first_row_headers":true,"values":{}}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[4,6]]},"media_weekend_guide":{"name":"What to do this weekend: a guide draft with the forecast","desc":"Every Thursday: museums, galleries, concert halls and parks in your city, the best rated first, with the weekend forecast at each, written up by xMap AI as a weekend guide (indoor picks first when rain is due), saved to Google Drive and emailed to the editor.","n":[["sched","Every Thursday",{"freq":"Every week","weekday":"Thursday","time":"10:00","tz":"Europe/Lisbon"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Lisbon","label":"Lisbon","lat":38.7223,"lng":-9.1393}]}],["nearby","Museums, galleries, halls and parks",{"types":["Museum","Art gallery","Concert hall","City park"],"where":"Area of interest","order":"Best rated first","max":"40"}],["weather","Forecast for 3 days",{"where":"Each incoming place","days":"3","what":["Temperature","Rain","Wind"]}],["llm","Write the weekend guide",{"scope":"The whole list","task":"Write summary","prompt":"A weekend guide of about 250 words for readers: eight picks across museums, galleries, concerts and parks, indoor ones first if rain is expected on Saturday or Sunday, outdoor ones if it stays dry. Name each place and say in a few words why. Only use the places in the list.","out":"report"}],["ap_google-drive","Save the guide to Google Drive",{"action":"create_new_gdrive_file","per":"Once per run","inputs":{"fileName":"","text":"","fileType":"text/csv"}}],["email","Email me the list",{"kind":"One email per run","subj":"Weekend guide draft"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[4,6]]},"media_store_closures":{"name":"Shops that closed this month, for the high street story","desc":"Every month: the chain stores and restaurants in your city\u2019s high streets that closed since last month, with what the space was, for the retail reporter\u2019s high street story.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Europe/London"}],["aoi","High streets",{"mode":"Cities","cities":[{"kind":"city","name":"London","label":"London","lat":51.5074,"lng":-0.1278}]}],["nearby","High street stores",{"types":["Clothing store","Restaurant","Shoe store","Coffee shop"],"where":"Area of interest","order":"Best rated first","max":"300","chain":"Only chains"}],["changes","Closed since last month",{"watch":["Closed"]}],["llm","Write the story notes",{"scope":"The whole list","task":"Write summary","prompt":"In about 150 words for the retail reporter: how many shops closed, which brands, where, and any pattern.","out":"report"}],["email","Email me the list",{"kind":"One email per run","subj":"High street closures this month"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5]]},"media_screens_distribution":{"name":"New cinema screens for my film distribution team","desc":"Every quarter: movie theaters in your region, the new ones only, grouped by chain or independent, with the programming manager from Apollo, for the film distributor\u2019s bookings team.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Asia/Dubai"}],["aoi","Our region",{"mode":"Cities","cities":[{"kind":"city","name":"Dubai","label":"Dubai","lat":25.2048,"lng":55.2708},{"kind":"city","name":"Abu Dhabi","label":"Abu Dhabi","lat":24.4539,"lng":54.3773},{"kind":"city","name":"Doha","label":"Doha","lat":25.2854,"lng":51.531}]}],["nearby","Movie theaters",{"types":["Movie theater"],"where":"Area of interest","order":"Best rated first","max":"100","contact":true}],["onlynew","Only new ones",null],["classify","Chain or independent",{"tax":"Custom list","labels":"Chain multiplex, Independent cinema"}],["apollo","Programming manager from Apollo",{"task":"Contacts at each company","titles":["Programming Manager","General Manager","Owner"],"per":"1"}],["ap_hubspot","Add them to HubSpot",{"action":"create-company","per":"Once per item","inputs":{"objectProperties":{"name":"{{name}}","city":"{{city}}","phone":"{{phone}}","domain":"{{website}}"}}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6],[5,7]]},"media_sponsor_brands":{"name":"Brands opening many branches, for sponsorship sales","desc":"Every month: brands that opened several new branches in your country in the last six months, one per brand, with their marketing director from Apollo and a sponsorship angle by xMap AI, for the broadcaster\u2019s sponsorship team.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Asia/Karachi"}],["aoi","Main cities",{"mode":"Cities","cities":[{"kind":"city","name":"Karachi","label":"Karachi","lat":24.8607,"lng":67.0011},{"kind":"city","name":"Lahore","label":"Lahore","lat":31.5204,"lng":74.3587},{"kind":"city","name":"Islamabad","label":"Islamabad","lat":33.6844,"lng":73.0479}]}],["nearby","New chain branches",{"types":["Restaurant","Coffee shop","Clothing store","Supermarket"],"where":"Area of interest","order":"Best rated first","max":"300","chain":"Only chains","since":"Last 6 months"}],["dedupe","One per brand",{"by":"Another field","fname":"brand"}],["apollo","Marketing director from Apollo",{"task":"Contacts at each company","titles":["Marketing Director","Head of Marketing","Brand Manager"],"per":"1"}],["llm","Write a sponsorship angle with xMap AI",{"task":"Write summary","prompt":"One sentence: a programme or segment this brand could sponsor, given it is opening new branches.","out":"angle"}],["ap_hubspot","Add them to HubSpot",{"action":"create-contact","per":"Once per item","inputs":{"objectProperties":{"firstname":"{{contact_name}}","jobtitle":"{{contact_title}}","email":"{{contact_email}}","company":"{{name}}"}}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5],[5,6],[5,7]]},"media_traffic_desk_chat":{"name":"Traffic desk assistant for presenters","desc":"A chat for presenters and producers: ask about any road or area and an AI agent answers from live road incidents and the weather, ready to read on air.","n":[["chat","Chat",{"title":"Traffic desk","welcome":"Ask me about any road or area: I check live closures, roadworks and the weather."}],["agent","Traffic desk",{"goal":"You help radio presenters. For the area they ask about, use Road incidents and The weather, then answer in one sentence they can read on air, with road names. Never guess."}],["incidents","Road incidents",{"where":"Around a point","center":"{{agent: the road or area named}}","radius":"5000"}],["weather","The forecast there",{"where":"Each incoming place","days":"3","what":["Temperature","Rain","Wind"]}],["reply","Reply",{"text":"{{reply}}","give":"The answer only"}]],"e":[[0,1],[1,2,"tool"],[1,3,"tool"],[1,4]]},"media_openings_press":{"name":"Business openings in the news, for the business desk","desc":"Every morning: the business news feed you follow, read by xMap AI for stories about companies opening, expanding or closing sites, each placed on the map where it happens, only the stories not seen before, emailed to the business desk.","n":[["sched","Every morning",{"time":"07:00","tz":"Europe/London"}],["news","Openings and closures in the news",{"src":"Feeds (RSS or Atom)","urls":"https://feeds.bbci.co.uk/news/business/rss.xml","ai":"a company opening, expanding, moving or closing stores, offices, factories or other sites","since":"Last 24 hours","max":"40","places":true}],["onlynew","Only new ones",null],["map","Show them on a map",{"name":"Where the news is","color":"Category"}],["email","Email me the list",{"kind":"One email per run","subj":"Openings and closures in this morning\u2019s news"}]],"e":[[0,1],[1,2],[2,3],[3,4]]},"media_audience_profile":{"name":"Who lives in my station\u2019s coverage area","desc":"Every quarter: the people living in your station\u2019s coverage area (men, women, ages), block by block, summed up by xMap AI as an audience profile for the advertising sales deck, emailed.","n":[["sched","On the 1st of every month",{"freq":"Every month","monthday":"1","time":"08:00","tz":"Africa/Accra"}],["aoi","Coverage area",{"mode":"Cities","cities":[{"kind":"city","name":"Accra","label":"Accra","lat":5.6037,"lng":-0.187}]}],["demog","People in every block of the area",{"where":"Area of interest","out":"Every hexagon (about 0.1 km\u00b2)"}],["calc","Work out the age groups",{"lines":"young_adults = age_20_29 + age_30_39\nfamilies = age_0_9 + age_10_19"}],["llm","Write the audience profile",{"scope":"The whole list","task":"Write summary","prompt":"Write the audience profile for an advertising sales deck in about 150 words: how many people, the age and gender mix, and the districts where young adults and families live. Only use the numbers in the list.","out":"report"}],["email","Email me the list",{"kind":"One email per run","subj":"Audience profile for the sales deck"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5]]},"media_heat_story":{"name":"Heatwave ahead: story pitches for the editors","desc":"Every morning in summer: the cities in your region expecting the hottest days this week, with the highest temperatures, turned by xMap AI into three story pitches for the morning editorial meeting.","n":[["sched","Every morning",{"time":"06:00","tz":"Europe/Athens"}],["aoi","Our cities",{"mode":"Cities","cities":[{"kind":"city","name":"Athens","label":"Athens","lat":37.9838,"lng":23.7275},{"kind":"city","name":"Rome","label":"Rome","lat":41.9028,"lng":12.4964},{"kind":"city","name":"Madrid","label":"Madrid","lat":40.4168,"lng":-3.7038},{"kind":"city","name":"Lisbon","label":"Lisbon","lat":38.7223,"lng":-9.1393}]}],["weather","Forecast for 5 days",{"where":"Area of interest","days":"5","what":["Temperature","Rain","Wind"]}],["sort","Best 4 first",{"by":"Another field","fname":"temp_max","dir":"Highest first (Z to A)","keep":"A number I choose","n":"4"}],["llm","Write three pitches",{"scope":"The whole list","task":"Write summary","prompt":"Write three short story pitches for the editors about the heat this week: where it will be hottest, who is most affected, and a practical angle for readers.","out":"report"}],["email","Email me the list",{"kind":"One email per run","subj":"Heat story pitches"}]],"e":[[0,1],[1,2],[2,3],[3,4],[4,5]]},"media_morning_newsletter":{"name":"Morning city newsletter: roads, weather and what opened","desc":"Every weekday at 6:00: three things in one newsletter draft: road closures today, the weather, and places that opened this week, joined by xMap AI into a short morning newsletter and sent from your Gmail to the editor.","n":[["sched","Every weekday morning",{"days":["Mon","Tue","Wed","Thu","Fri"],"time":"06:00","tz":"America/Bogota"}],["aoi","My city",{"mode":"Cities","cities":[{"kind":"city","name":"Bogota","label":"Bogota","lat":4.711,"lng":-74.0721}]}],["incidents","Closures today",{"where":"Area of interest","types":["Road closures","Roadworks","Other incidents"]}],["weather","Forecast for 1 days",{"where":"Area of interest","days":"1","what":["Temperature","Rain","Wind"]}],["nearby","Opened this week",{"types":["Restaurant","Coffee shop","Clothing store"],"where":"Area of interest","order":"Best rated first","max":"20","since":"Last 6 months"}],["llm","Write the newsletter",{"scope":"The whole list","task":"Write summary","prompt":"Write a short morning newsletter for city readers: three road problems to avoid, the weather in one line, and three new places worth a visit. Friendly, about 200 words.","out":"report"}],["ap_gmail","Send the draft to the editor",{"action":"send_email","per":"Once per run","inputs":{"receiver":[],"subject":"Morning newsletter draft","body_type":"plain_text","body":"{{report}}"}}],["email","Email me the results",{"kind":"One email per run"}]],"e":[[0,1],[1,2],[1,3],[1,4],[2,5],[3,5],[4,5],[5,6],[5,7]]}},"info":{"media_traffic_bulletin":{"p":"media","ind":["Media","Public sector"],"goals":["ops"],"promise":"A ready-to-read traffic bulletin every 30 minutes in the rush hours.","why":"Producers spend the morning stitching traffic updates by hand. This flow writes the bulletin from live incidents, so the presenter only has to read it.","uses":["A radio station\u2019s traffic desk","A TV breakfast show","A city transport channel"],"gets":["A Slack post every 30 minutes"],"min":15,"runs":160},"media_weather_script":{"p":"media","ind":["Media"],"goals":["ops"],"promise":"A 40-second weather script for every region, every morning.","why":"The weather slot airs every day and someone writes it at dawn. This flow writes it from the forecast, city by city, and flags anything unusual.","uses":["A regional radio network","A TV news programme","A news website\u2019s weather page"],"gets":["A script in Google Drive","An email"],"min":20},"media_new_in_town":{"p":"media","ind":["Media","Food and drink","Retail"],"goals":["data"],"promise":"A draft \"new in town\" column every Thursday, from what opened this week.","why":"Readers love to know what opened near them. The column almost writes itself when the list of new places arrives with a first draft.","uses":["A local newspaper","A city magazine","A neighbourhood newsletter"],"gets":["A draft in Google Drive"],"min":90,"runs":4},"media_ad_sales_openings":{"p":"media","ind":["Media","Marketing"],"goals":["leads"],"promise":"New businesses scored as advertisers, with the owner, every weekday.","why":"A new business needs to be known fast and has a launch budget. Being the first media seller at the door wins the campaign.","uses":["A local radio station\u2019s sales team","A newspaper\u2019s ad sales","A digital city guide"],"gets":["New leads in HubSpot"],"min":60},"media_billboard_sites":{"p":"media","ind":["Media","Marketing"],"goals":["sites"],"promise":"Blocks with many residents and shops, ranked as billboard sites.","why":"A billboard is only worth what passes in front of it. This flow points to the blocks where people live and shop, so the next site is a good one.","uses":["An outdoor media company","A brand planning a poster campaign","A city planning ad concessions"],"gets":["A map","An email"],"min":240,"runs":4},"media_port_desk":{"p":"media","ind":["Media","Logistics"],"goals":["ops"],"promise":"Ships entering the port each hour, each in one newsy line.","why":"Trade stories start at the port. The desk sees what arrives as it arrives, with a line it can use.","uses":["A business newsroom","A shipping trade magazine","A port city\u2019s news site"],"gets":["A Slack post every hour"],"min":15},"media_build_story":{"p":"media","ind":["Media","Construction"],"goals":["data"],"promise":"Every clear satellite picture of a site you follow, monthly, with notes.","why":"Big projects are slow and their progress is easy to miss. Pictures from above show what changed, ready for a follow-up story.","uses":["An investigations desk","A construction trade paper","A city affairs reporter"],"gets":["An email with the pictures"],"min":60,"runs":1},"media_jobs_story":{"p":"media","ind":["Media","Recruiting"],"goals":["data","hiring"],"promise":"A monthly jobs data story, sector by sector.","why":"Official jobs numbers come late. Job postings show who is hiring now, and the story is ready on the 1st.","uses":["An economy desk","A business magazine","A city development agency\u2019s blog"],"gets":["An email with the story"],"min":120,"runs":1},"media_reader_chat":{"p":"media","ind":["Media"],"goals":["chat"],"promise":"A chat for readers: what is near them, the roads and the weather, live.","why":"Readers come back to the site that answers their everyday questions. The chat keeps them on your pages with live answers.","uses":["A local news website","A city magazine\u2019s app","A community radio\u2019s site"],"gets":["A chat page you can embed"],"min":5,"runs":300},"media_venue_listings":{"p":"media","ind":["Media","Events"],"goals":["data"],"promise":"New venues for the events listings, in a sheet every month.","why":"An events guide is only as good as its list of venues. New venues are added the month they appear.","uses":["An events listings site","A city magazine","A ticketing platform"],"gets":["A Google Sheet"],"min":60,"runs":1},"media_critic_shortlist":{"p":"media","ind":["Media","Food and drink"],"goals":["data"],"promise":"Young, well-loved restaurants worth reviewing, every month.","why":"Critics want places that are new and talked about. This list finds them before everyone else has written about them.","uses":["A food critic","A food magazine","A restaurant guide"],"gets":["An email with the shortlist"],"min":60,"runs":1},"media_bookshop_distribution":{"p":"media","ind":["Media","Retail"],"goals":["leads"],"promise":"Independent bookshops and libraries with their buyers, every quarter.","why":"Independent bookshops and libraries choose books themselves. Reaching the buyer directly gets your titles on their shelves.","uses":["A publishing house","A book distributor","An educational publisher"],"gets":["New leads in HubSpot"],"min":90,"runs":4},"media_station_stockists":{"p":"media","ind":["Media","Retail","Distribution"],"goals":["ops"],"promise":"Newsstands near every station, for the magazine route list.","why":"Magazines sell where people wait. A current list of shops near every station keeps the routes efficient.","uses":["A magazine distributor","A newspaper\u2019s circulation team","A snack brand selling at stations"],"gets":["A Google Sheet","A map"],"min":60,"runs":1},"media_flood_watch_desk":{"p":"media","ind":["Media","Public sector"],"goals":["ops"],"promise":"Where the heaviest rain is coming, hour by hour, for the live desk.","why":"Crews in the right place get the pictures and keep people informed. The desk knows where the rain will hit before it does.","uses":["A TV live news desk","A radio newsroom","A public broadcaster in monsoon season"],"gets":["A WhatsApp message"],"min":15},"media_school_data_story":{"p":"media","ind":["Media","Education","Public sector"],"goals":["data"],"promise":"Where children live far from a school, as a ready data story.","why":"School places are a story every year. This flow does the counting so the reporter can do the interviews.","uses":["An education reporter","A data journalism team","A parents\u2019 publication"],"gets":["A map","An email with the draft"],"min":240,"runs":1},"media_podcast_experts":{"p":"media","ind":["Media"],"goals":["data"],"promise":"Local experts and founders with an episode idea for each.","why":"Good guests are the hardest part of a local podcast. A monthly list of respected local experts, with an idea each, fills the calendar.","uses":["A podcast producer","A radio talk show","A business magazine\u2019s interviews"],"gets":["A Google Sheet"],"min":60,"runs":1},"media_weekend_guide":{"p":"media","ind":["Media","Tourism"],"goals":["data"],"promise":"A weekend guide draft every Thursday, with indoor picks when rain is due.","why":"Weekend guides are read most on Friday. A draft that already knows the forecast saves the desk a morning.","uses":["A city news site","A lifestyle magazine","A local radio station\u2019s website"],"gets":["A document in Google Drive","An email"],"min":90,"runs":4},"media_store_closures":{"p":"media","ind":["Media","Retail"],"goals":["data","competitors"],"promise":"Chain stores that closed this month, for the high street story.","why":"Empty shops tell the story of a high street. This flow counts them every month so the reporter starts with the facts.","uses":["A retail reporter","A business newspaper","A city centre partnership"],"gets":["An email"],"min":120,"runs":1},"media_screens_distribution":{"p":"media","ind":["Media","Events"],"goals":["leads"],"promise":"Cinemas in your region, chain or independent, with the programmer.","why":"Getting a film on screens means knowing who programmes each cinema. The list stays current as new cinemas open.","uses":["A film distributor","A festival booking films","An ad agency selling cinema ads"],"gets":["New leads in HubSpot"],"min":60,"runs":4},"media_sponsor_brands":{"p":"media","ind":["Media","Marketing","Retail"],"goals":["leads"],"promise":"Brands opening many branches, with a sponsorship angle each.","why":"A brand opening branches needs reach in new cities. That is the moment to offer a sponsorship that fits.","uses":["A broadcaster\u2019s sponsorship team","A sports league selling partnerships","An events company"],"gets":["New leads in HubSpot"],"min":90,"runs":1},"media_traffic_desk_chat":{"p":"media","ind":["Media"],"goals":["chat","ops"],"promise":"A traffic assistant presenters can ask about any road, live.","why":"Producers should not have to search five apps for one road. The assistant answers in a sentence ready to read.","uses":["A radio traffic desk","A TV news producer","A city information line"],"gets":["A chat"],"min":5,"runs":300},"media_openings_press":{"p":"media","ind":["Media","Retail"],"goals":["competitors","data"],"promise":"Companies opening, expanding or closing sites, from the news, on a map.","why":"Openings and closures are business stories, and they are spread over many headlines. xMap AI reads the feed every morning and keeps only those, each placed where it happens.","uses":["A business desk","A local news site","A trade magazine"],"gets":["An email","A map"],"min":30,"runs":30},"media_audience_profile":{"p":"media","ind":["Media","Marketing"],"goals":["data"],"promise":"Who lives in your coverage area, ready for the sales deck.","why":"Advertisers buy audiences. A clear profile of the people in your area, block by block, makes every pitch stronger.","uses":["A radio station\u2019s sales team","A regional TV channel","A community newspaper"],"gets":["An email with the profile"],"min":120,"runs":4},"media_heat_story":{"p":"media","ind":["Media"],"goals":["ops"],"promise":"Where it will be hottest this week, with three story pitches.","why":"Heatwaves are a story every summer. Editors get the facts and three angles before the morning meeting.","uses":["A national newsroom","A weather channel","A health desk"],"gets":["An email with pitches"],"min":30},"media_morning_newsletter":{"p":"media","ind":["Media"],"goals":["data","ops"],"promise":"Roads, weather and new places in one morning newsletter draft.","why":"Morning newsletters are read but take an hour to make. Three live sources joined into a draft cut that to a quick edit.","uses":["A local news site\u2019s newsletter","A city app\u2019s morning brief","A community radio\u2019s website"],"gets":["A draft from your Gmail"],"min":60}}}
