Agent setup guide
Service Request Intake for Jobber
Classifies each web or ad lead by job type and urgency, adds the client and a request in Jobber, alerts Slack and emails the customer.
What it does
Classifies each web or ad lead by job type and urgency, adds the client and a request in Jobber, alerts Slack and emails the customer.
- Receives each new service request from your website, landing page or ad lead forms through a webhook.
- AI picks the job type from your services, rates urgency (emergency / urgent / routine), checks your service area, drops spam and writes a summary with a call-back tip.
- Finds the customer among your Jobber clients (by email, phone or name), adds them when they're new, and creates a Jobber request titled with the job type, urgency and summary.
- Posts the full details of every real request to your dispatch channel in Slack, with emergencies marked “call back now”.
- Emails the customer an acknowledgement that says only what you promise (your call-back times), with replies to your office inbox.
What it needs
- A paid plan (agents run live on paid plans).
- An AI provider key (Settings → AI Providers).
- Jobber and Slack, connected in Settings → Integrations. Jobber is waiting for vendor approval, so this agent switches on once it's live.
- Forms that can send new requests to a webhook URL.
What it doesn't do
- Jobber's create-request action takes only a title, so the full details go to Slack and the email, not into the request.
- It doesn't schedule visits, assign technicians or quote prices.
- It doesn't call or text the customer back.
- A customer found by name only may match the wrong client: check the Slack details when there's no email or phone.
Availability and plans
Coming soon — waiting for Jobber approval
The agent is built, but Jobber is still waiting for the vendor's approval. It becomes available on its own once that app is live; until then it can't be bought or set up.
Included free on the Enterprise plan; on other paid plans it's a one-time purchase per workspace (the price is on the Agents page). The Agents page in the app always shows its current status.
Before you start
- A paid plan: agents run live, and the Free plan only runs Dry Runs.
- An AI provider key (OpenAI, Anthropic, Google and more) in Settings → AI Providers. AI usage is billed by your provider.
- These apps, connected in Settings → Integrations: Jobber and Slack.
- A form, app or system that can send each new item to a webhook URL (the agent starts from a webhook).
- About 20 minutes.
Set it up step by step
Get the agent first (buy it, or it's already yours when your plan includes it), then in Agents → My agents press “Set up this agent”. That creates the agent's workflow in your workspace (it counts towards your plan's workflow limit) and opens the canvas with a setup checklist above it. Each item links to the exact place to go and ticks itself off when it's done.
1. Connect your AI provider
The AI steps run on your own key (OpenAI, Anthropic, Google and more). Add one in Settings → AI Providers.
2. Connect Jobber
Connect Jobber (Settings → Integrations → Jobber).
3. Connect Slack
Connect the Slack workspace your dispatchers and CSRs use (Settings → Integrations → Slack).
4. List your services and emergencies
Open “Classify the request” and replace the placeholder with your services, service area and emergencies.
| Setting | What to enter | In step |
|---|---|---|
| Your services and emergencies | Replace the placeholder with your trades and services, the ZIP codes or cities you serve, and what you treat as an emergency. It starts as “[LIST YOUR TRADES, SERVICES, SERVICE AREA AND WHAT COUNTS AS AN EMERGENCY]” until you replace it. | “Classify the request” |
5. Add your business details
Open “Write the request title and replies” and replace the placeholder with your business name, call-back times, emergency line and sign-off.
| Setting | What to enter | In step |
|---|---|---|
| Your business details | Replace the placeholder with your business name, how fast you call back (normal and emergency), your emergency phone line and your sign-off. It starts as “[YOUR BUSINESS NAME, HOW FAST YOU CALL BACK (NORMAL AND EMERGENCY), YOUR EMERGENCY PHONE LINE AND YOUR SIGN-OFF HERE]” until you replace it. | “Write the request title and replies” |
6. Pick the dispatch channel
Open “Post the request in Slack” and pick your account and channel. Invite the app to private channels first (/invite @Fluxo Flow).
| Setting | What to enter | In step |
|---|---|---|
| Slack account | The Slack workspace your dispatchers and CSRs use. Pick your connected Slack account. | “Post the request in Slack” |
| Dispatch channel | Where every request (and emergencies first) is posted, e.g. #dispatch. | “Post the request in Slack” |
7. Pick your Jobber account
Pick your Jobber account in “Find the client in Jobber”, both “Create the request” steps and “Add the client”.
| Setting | What to enter | In step |
|---|---|---|
| Jobber account (find clients) | Your Jobber account. Pick your connected Jobber account. | “Find the client in Jobber” |
| Jobber account (request, existing client) | The same Jobber account. Pick your connected Jobber account. | “Create the request” |
| Jobber account (new client) | The same Jobber account. Pick your connected Jobber account. | “Add the client” |
| Jobber account (request, new client) | The same Jobber account. Pick your connected Jobber account. | “Create the request” |
8. Add your office inbox
Open “Email the acknowledgement” and enter the address customers' replies should go to.
| Setting | What to enter | In step |
|---|---|---|
| Your office inbox (Reply-to) | Customers' replies to the acknowledgement come back to this address. | “Email the acknowledgement” |
9. Test it with Dry Run
Press Dry Run: the agent runs on sample data with no messages sent and nothing written to your apps.
10. Switch the trigger on
Open the trigger, switch the webhook on and copy its URL into your website and ad lead forms.
How it works
The agent is a normal workflow with 18 steps (2 AI steps). You can open, edit and monitor it like any other workflow.
- New service request — Starts when your form or app sends data to the agent's webhook URL. Your website form, landing page or ad lead form posts each new service request to the workflow's webhook URL.
- Classify the request — AI step (runs on your AI provider key). AI reads the request, picks the job type from your services, rates the urgency, checks the service area, spots spam and writes a summary for your CSRs.
- Spam? — Decision: picks the branch to follow. Spam is dropped; every real request goes on.
- Spam dropped — Kept in the run history. Branch: Spam. Spam stays in the run history only; nothing is sent to Jobber.
- Write the request title and replies — AI step (runs on your AI provider key). Branch: Real request. AI writes the Jobber request title (type, urgency and summary), the full details for Slack and the acknowledgement email to the customer.
- Post the request in Slack — Slack: Post a message. Posts every real request with the full details to your dispatch channel; emergencies are marked “call back now”.
- Team told — Kept in the run history. The run history keeps the Slack message.
- Find the client in Jobber — Jobber: Find clients. Searches your Jobber clients by the customer's email (or phone, or name).
- Existing client? — Decision: picks the branch to follow. A customer already in Jobber gets the request on their client; a new customer is added first.
- Create the request — Jobber: Create a request. Branch: Existing client. Creates a service request on the existing client, titled with the job type, urgency and summary.
- Request created — Kept in the run history. The run history keeps the Jobber request link.
- Add the client — Jobber: Create a client. Branch: New client. Adds the customer to Jobber with their name, email and phone.
- Create the request — Jobber: Create a request. Creates a service request on the new client, titled with the job type, urgency and summary.
- Client and request created — Kept in the run history. The run history keeps the Jobber client and request links.
- Email address? — Decision: picks the branch to follow. Customers with an email address get the acknowledgement; the rest are called back from the Slack details.
- No acknowledgement — Kept in the run history. Branch: No email. No email address; the team calls back from the Slack details.
- Email the acknowledgement — Sends an email from your workspace's sender. Branch: Has email. Thanks the customer and says what happens next (your call-back times), with replies going to your office inbox.
- Acknowledged — Kept in the run history. The run history keeps the acknowledgement email.
Test it with Dry Run
Press Dry Run in the canvas. The agent runs on the sample data stored on its trigger (the “Sample data for Dry Run” box), so you can check every step's output before anything is live. Edit the sample to match the fields your own form or app sends.
Sample data fields
name, phone, email, address, service, message, source, submitted_at.
- Nothing is sent or written: app actions, emails and Slack posts are simulated, and AI steps don't call your AI provider.
Go live
- Open the trigger, switch the webhook on and copy its URL into your website and ad lead forms.
- The webhook is protected by a secret: send it in the header shown in the Activation panel (requests without it are refused with 403). Each request starts one run.
- The setup checklist adds a “paid plan” item before activation: live runs need a paid plan (the Free plan only runs Dry Runs).
- When every checklist item is done and the trigger is on, the checklist says “Live — this agent is running”. Follow its runs in the workflow's History tab and in Analytics → Agents.
Questions
Does it schedule the job?
No. It creates a request in Jobber for your team to assess, quote or schedule.
Why are the details in Slack and not Jobber?
Jobber's create-request action takes only a title, so the title carries the job type, urgency and summary and the full details go to Slack and the customer's email.
Troubleshooting
- “No AI provider connected” or a rejected key: connect or fix the key in Settings → AI Providers, then press Test there.
- A checklist item stays unticked: the setting is still empty or still contains its placeholder text. Open the step from the checklist and fill it in.
- An app step fails with “Needs reconnect”: the account's access was revoked or expired. Reconnect it in Settings → Integrations.
- Slack says the app isn't in the channel: in Slack, type /invite @Fluxo Flow in that channel (always needed for private channels).
- Nothing happens when your form sends data: check the webhook is switched on and the request carries the secret header (403 means it's missing or wrong).
- A step failed: open the run in History and check that step in the Trace tab for the error and what it received.
Generated from the agent's own workflow, so it always matches what the agent does. Last updated .