Automate · Integrate · GrowTaking on two projects this quarter

I build the part of a business that answers.

Calls picked up, messages replied to, leads qualified, bookings written to the calendar and follow-up that never forgets. Built in GoHighLevel and n8n, tested before handover, running on your own accounts.

8Systems documented here
2 yrsBuilding client automations
100%On your accounts and keys
Tools & platforms
n8nGoHighLevelMakeClaudeOpenAIVAPIWhatsApp APIAirtableHubSpotNotionPythonn8nGoHighLevelMakeClaudeOpenAIVAPIWhatsApp APIAirtableHubSpotNotionPython
Featured builds

Real systems, running for real people.

Four in detail below, with screenshots from the actual accounts. Where a build has not been run against a live client account, it says so.

ClinicFlow360 — patient operating system

Live with patients Client work, shown with permission

A full GoHighLevel build for a healthcare practice running three locations. A patient fills in one intake form and everything after that is decided by what they entered: which tags they get, which calendar they are sent to, which provider, which follow-up sequence, and what happens if they do not show.

Platform
GoHighLevel
Locations
Three
Published workflows
15
Build time
Under a month
What was complex

The branching is driven by custom fields on the intake form, not by separate workflows per case. Visit type and insurance type come off the form, get written to tags in a single namespace, and every downstream workflow reads those tags rather than re-deriving anything. That is what keeps fifteen workflows readable instead of fifteen copies of the same logic with small differences. Location tagging removes the old tag before it adds the new one, so a patient who switches clinics does not end up enrolled in two places at once.

Tagging & Escalation — conditional branches on replied message content, each ending in a tag, an SMS or an opportunity.
Intake: Tagging + Onboarding — form submission routed by clinic location, insurance type and pain level.
Intake Calendar Redirect — visit type decides which calendar link the patient receives by email and SMS.
The intake form. Visit Type and Insurance Type are custom fields; every branch downstream reads them.
One tag namespace. Location, provider, referral source, campaign state and booking state all live here.
Published workflows: booked handler, intake lanes, education campaign, no-show follow up, reactivation.
Second page — patient education drip, tagging and escalation, winback, FAQ auto reply.
Two pipelines: a nine-stage patient journey and a separate winback pipeline.
Calendars grouped by tier and provider, so routing by visit type has somewhere real to send people.
Conversation AI on auto pilot across SMS, Instagram, Facebook, chat widget, live chat and WhatsApp.
Dashboard reporting off the patient journey pipeline.

WhatsApp booking assistant

Live in production Studio name withheld

A tattoo studio in Singapore takes its bookings through WhatsApp. This handles the conversation end to end: reads the message, holds the history so the thread makes sense, works out whether the person is ready to book, writes the calendar event, and hands off to the owner when it should not decide alone. A second lane chases leads that went cold after three days.

Stack
n8n, Claude, Airtable, Google Calendar
Channel
Meta WhatsApp Business API
Status
Running for the client
What went wrong, and what I changed because of it

Early on the assistant kept forgetting people mid-conversation. Someone would answer a question and it would ask the same thing again. The memory write was failing quietly, so every inbound message reached the model with no history. I moved the write to after the reply goes out and added a fallback parse on every AI response, so a malformed output degrades instead of killing the run. Every build I ship now has an error trigger lane before it has a feature.

Main lane, error lane and two scheduled lanes: daily reminders and a three-day cold-lead follow up.

AI voice receptionist for an eye clinic

Self-initiated build

A voice agent that answers the phone, checks availability, books, takes messages and logs the call. The clinic name and provider names shown here are fictional. The architecture, the code and the call handling are real and were tested end to end.

Stack
VAPI, n8n, Gmail, Sheets
Webhook lanes
Four
Tests
Node-level suite, 45 assertions
The part that matters in healthcare

It knows when not to book. Urgency triage runs before scheduling, so a caller describing sudden flashes and floaters is escalated rather than slotted three weeks out, and the agent is fenced against inventing prices, hours or insurance acceptance. A tool that fails returns an instruction to the agent, never an error the caller hears.

Four lanes: check availability, book appointment, take voicemail, end-of-call report.
Assistant config — transcriber, model and voice chosen against cost and latency, not left on defaults.

Generative nature footage from a Python pipeline

Delivered Client work, brand withheld

Short nature films where an animal visibly does something over time — a woodpecker cutting a nest cavity into a trunk. Text-to-video on its own will not do this. Ask a model for “a woodpecker excavating a nest” and it gives you a bird pecking at a tree that never changes. This is a Python pipeline that builds the change frame by frame first, then animates between the frames it already trusts.

Language
Python
Models
Gemini for stills, Veo for motion
Output
Three clips, stitched
Self-checks
Step size, lighting, growth
Why each frame is generated from the last one

Every state is produced from the state before it, not from the prompt, which is the only way the cavity keeps the shape it had in the previous frame instead of being reinvented. That chaining is also the problem: one badly lit frame poisons everything after it. So the pipeline self-checks each step for step size, background consistency and growth, and a --resume flag rebuilds from the last good state rather than from zero — the difference between six generation calls and sixteen. Retries are capped and reported at the end, so a run tells you what it redid and why instead of quietly burning credit.

Five states from one run. The cavity deepens left to right and the bird settles into it at the end — each frame generated from the one before, not from the prompt.
The finished piece. Three Veo clips joined whole, animating between states the pipeline had already checked.
Also built

Other systems from the same two years

Shorter versions of the same discipline: a scheduled trigger, real API calls, an LLM in the middle with its output parsed defensively, and an error lane that tells someone when it breaks.

Google review request workflow in n8n

Google review request with a sentiment gate

Job marked complete in GoHighLevel fires the request. A happy answer goes to the Google review link, an unhappy one goes to a private feedback form and alerts the owner. Contacts are tagged on send and the tag is checked on entry, so nobody is asked twice.

n8n · GHL webhooks · Claude · SMS + email
Shopify daily marketing brief workflow

Daily marketing brief for a Shopify brand

Loops per store, pulls Shopify orders, Meta Ads, Google Ads, GA4 and Klaviyo, normalises the day into one record and has Claude write the brief. Demo mode swaps live calls for mock data so the workflow can be shown before credentials exist.

n8n · Shopify · Meta · GA4 · Klaviyo · Claude
Coverage to Notion sync workflow

Press coverage into a Notion hub

Watches feeds each morning, merges and deduplicates against what is already logged, classifies each hit against the team's narratives, then writes a coverage record and posts a digest. Nothing is logged twice because the URLs already in Notion are fetched first.

n8n · Notion · Claude · Slack
AI avatar content pipeline workflow

AI avatar content pipeline

Pulls the next topic off a queue, writes the script, renders an avatar video, polls until the render finishes, publishes and marks the topic done. Render failures stop the run and alert rather than publishing something broken.

n8n · Airtable · OpenAI · HeyGen · Slack
What I automate

Solutions for every part of the customer journey

From the first enquiry to the follow-up six months later. Every item below appears in a build on this page.

01

Lead response & qualification

Capture the enquiry, classify it, ask the follow-up questions and route it to the right person before it goes cold.

02

CRM & sales automation

Pipelines, triggered workflows, tagging in a single namespace, and nurture sequences that stop when someone books.

03

AI voice agents

Answer the phone after hours, check availability, book, take messages, and escalate anything urgent to a human.

04

Messaging assistants

WhatsApp, Instagram DM and web chat answered in the brand's voice, with real conversation memory behind it.

05

Content & reporting pipelines

Scheduled briefs, coverage tracking, and content generation with a human approval gate before anything publishes.

06

Integrations & APIs

REST and webhook integrations, OAuth, custom Python and Code nodes for everything the visual tools cannot reach.

How I work

Four things I do on every build

01

Your accounts, your keys

Credentials, sub-accounts and API keys live under the client. Nothing important sits in a personal account I control.

02

Failure path first

Error triggers, retries and logging go in before features. A silent failure costs more than a missing one.

03

Templates, not rebuilds

Snapshots, custom values and reusable sub-workflows, so improving one client's system rolls out to the rest.

04

Written down

Setup order, per-tool config, test scripts and a pre-launch checklist. Another builder should be able to open it and follow it.

About

One builder, start to finish

$5per 30 minutes

Start with a 30-minute consultation

Thirty minutes, five dollars. Walk me through the system that is dropping the ball and leave with a straight answer on whether it is a rebuild or a fix, plus the shape of what it would take. If you go ahead with a build, it comes off the first invoice.

Book 30 minutes →

I'm Abubakri Abdulhameed, a freelance automation engineer in Lagos. I work across both halves of this work: GoHighLevel for the CRM, calendars and follow-up, and n8n and the API layer for everything GoHighLevel cannot reach on its own.

The person who scopes your build is the person who writes it, tests it and hands it over. No account manager in the middle, nobody to re-explain your business to. If you have a system that half works, tell me where it drops the ball and half an hour is usually enough for me to say whether it is a rebuild or a fix.

Fixed-price milestones 2–3 weeks to handover Documented on the canvas US, UK, EU, Gulf, SEA & AU hours
Email
Message me
WhatsApp
+234 805 467 4818
Based
Lagos, Nigeria
Engagement
Freelance, direct
Start a conversation →