SearchOps + Make
See every client's health on one board, name the rival who just took the Map Pack, and assemble monthly report packs without touching a spreadsheet.
Make suits agencies that run a whole portfolio from one place. Its Iterator walks every location through the SearchOps API, its Router sends each event where it belongs, and credit-based pricing keeps big portfolios cheap.
Portfolio health in one view
Every Monday, each client's calls, Map Pack coverage and open work land on one board, sorted by who needs attention.
Know who took the top spot
When a client loses ground, Make looks up the scan and names the rival now ranking above them, area by area.
Report packs on the 1st
Profile results, grid history and AI visibility per client, assembled into a document for a person to check.
Cheap at scale
Make bills in credits, so walking hundreds of locations every week stays affordable.
Recipes
What agencies build with Make
Monday health board across every client
GET /locations, /weekAgency owners who want the whole book on one screen
- 1Schedule the scenario weekly; HTTP: Make a request, GET /api/v1/locations with your API key as a Bearer header, Parse response on.
- 2Iterator over data, then HTTP GET /api/v1/locations/{id}/week for each.
- 3monday.com (or Google Sheets): create or update an item per client with calls and direction requests against last week, tasks done and tasks open.
- 4Sort by the biggest fall in calls: that's this week's call list.
Rival watch: who took the Map Pack
geo_grid.movedAccount managers who need the "why" before the client asks
- 1Custom webhook fed geo_grid.moved; filter direction equals down.
- 2HTTP GET /api/v1/scans/{scan_id} returns the top three businesses at every grid point.
- 3Text aggregator: count which business holds the top spot where the client lost ground.
- 4Slack or email to the account manager: "{{data.keyword}}: Fosse Heating now leads 12 of the points you lost."
Monthly report pack per client
GET /profile/performance, /ai-visibilityAgencies that send a monthly PDF
- 1Monthly schedule and Iterator over the client's locations.
- 2HTTP GET profile/performance?months=1, keywords/{keywordId}/grid-history and ai-visibility?engine=chatgpt.
- 3Fill your Google Docs report template with the numbers and save it to the client's folder for review.
Setup
Connect Make, step by step
- 1
Add a Custom webhook or a schedule
In a new scenario, add Webhooks, Custom webhook, then Add, and copy the address (switch on Get request headers if you'll verify our signature). For report scenarios, start with a schedule and the HTTP module instead.
- 2
Add the webhook in SearchOps
In SearchOps, open Developers, then Webhooks, and choose Add webhook. Paste the URL from Make, tick the events you want and, for a client-specific workflow, pick that client's locations. Save, and copy the signing secret somewhere safe: it is shown once.
- 3
Send a test event
Back in SearchOps, press Send test on the endpoint. The test event has the same envelope as real events but a short sample body. To map review or scan fields, wait for a real event of that type or replay one from Deliveries, then use that as your sample.
- 4
Let Make learn the structure
Make reads the test and learns the fields. When you add a new event type later, choose Detect new values on the webhook and send another sample.
- 5
Call the SearchOps API
HTTP, Make a request: method GET, a URL under https://searchops.co/api/v1, a header Authorization set to Bearer and your API key, Parse response on. Lists come back as data with limit and offset paging.
- 6
Keep the webhook active
Make retires a webhook that receives nothing for five days (it then answers 410). Include scan.completed in its events so it stays in use.
Field reference
The fields you'll map most
From the SearchOps webhook payload. Every event also carries type, id, created_at and the location's id and business name.
| Field | Use it for |
|---|---|
| type | Route by event: geo_grid.moved, scan.completed, profile.changed, task.created, task.planned, task.completed, review.created |
| location.business_name | Which client or branch it is about |
| data.direction | up or down: a grid move beyond normal re-run swing (geo_grid.moved) |
| data.points_gained / data.points_lost | How many grid points entered or left the top 3 (geo_grid.moved) |
| data.keyword / data.engine_label | The keyword and engine: Google Maps, Google Search or AI Mode |
| data.share / data.share_low / data.share_high | Share of answered grid points in the top 3 (or named, for AI Mode), with its likely range |
| data.keyword_url / data.scan_url | Open the keyword's grid history or the scan in SearchOps |
| data.field_label / data.before / data.after | What changed on the Business Profile (profile.changed) |
| data.changed_by | google or someone_else: who changed the profile |
| data.kind / data.severity | verification or duplicate, and how serious the change is |
| data.title / data.completed_at / data.task_url | A task and when it was done: your proof of work (task.created, task.planned, task.completed) |
What you need
- SearchOps Pro, Agency or Enterprise. Webhooks and the API are included; an owner or admin sets them up.
- Make: billing is in credits (one per module run). The free plan includes 1,000 credits a month; a weekly walk of 100 locations uses a few hundred.
- SearchOps allows 120 API requests a minute per key; add a short Sleep in big iterations.
Steps checked against the vendor's own documentation on 12 October 2026. Tools change their menus often; if a step no longer matches, the help article has the latest.
Works well alongside
FAQ
SearchOps and Make
Can Make tell me which competitor took the Map Pack?
Yes. A scan from the SearchOps API includes the top three businesses at every grid point, so a scenario triggered by a confirmed loss can count who now holds the top spot where the client fell.
Is there a SearchOps app in Make?
Not yet. The Custom webhook module receives every event and the HTTP module calls the API, which covers what an app would.
Why did my webhook stop working?
Make retires webhooks that receive nothing for five days. Recreate it, paste the new address into SearchOps, and replay anything you missed from Deliveries.