---
title: "Connect ServiceM8 and Smartsheet - APIANT.ai"
description: "When \"Job Queued\" fires in ServiceM8, your agent runs \"Find single row by column value\" in Smartsheet."
canonical: "https://apiant.ai/connect/servicem8-to-smartsheet"
---

# Connect ServiceM8 and Smartsheet

When **Job Queued** fires in [ServiceM8](https://apiant.ai/connections/servicem8), your agent runs **Find single row by column value** in [Smartsheet](https://apiant.ai/connections/smartsheet), or **New row** in Smartsheet to **Add company contact** in ServiceM8. Describe the whole flow and it is built, tested on every scenario and kept running.

ServiceM8 **2** triggers ServiceM8 **23** actions Smartsheet **3** triggers Smartsheet **26** actions

What the catalog holds today. Ask for anything missing and your agent reads the API documentation and adds it.

## What do you want ServiceM8 and Smartsheet to do together?

Give your AI client this address.

`https://mcp.apiant.ai`

One connection does both: ask your client to act in an app once, or have it build an automation that keeps running. Any client that takes a remote MCP server. Nothing to install. Create your free account, then sign in once in your browser.

### Set it up in your client

### Claude Code

Run this in the directory you want to work in.

`claude mcp add --transport http -s project apiant-ai https://mcp.apiant.ai`

Start Claude Code there, approve the server, and sign in in the browser page it opens.

[Claude Code guide (opens in a new tab)](https://apiant.ai/docs/mcp/claude-code)

### Claude, web and desktop

Open Customize, then Connectors, then Add custom connector, and paste the address. On Team and Enterprise an owner adds it first.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Cursor

Add the address to your MCP configuration as a server URL. Cursor signs you in in your browser.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Zed

Open Settings, then AI, then MCP Servers, then Add Server, then Add Remote Server.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Codex and the ChatGPT desktop app

Open Settings, then MCP servers, then Add server, and choose Streamable HTTP. From the terminal, Codex takes the address with its own add command and then signs you in.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

### Any other MCP client

Paste the address where the client asks for a remote MCP server URL, and name the server apiant-ai where it lets you. APIANT's skills reach the client over the same connection.

[Setup guide (opens in a new tab)](https://apiant.ai/docs/mcp)

ServiceM8 holds the jobs, clients and staff allocations; Smartsheet holds the sheets your office and project people actually work from. Connecting them means a new job in ServiceM8 can land as a row in Smartsheet, and an approved request row in Smartsheet can become a real ServiceM8 job with notes and an allocated technician.

Example flows

## What ServiceM8 and Smartsheet can do together

### From ServiceM8 to Smartsheet

- When **Job Queued** in ServiceM8 then **Find single row by column value** in Smartsheet
- When **New Job** in ServiceM8 then **Update row** in Smartsheet

### From Smartsheet to ServiceM8

- When **New row** in Smartsheet then **Add company contact** in ServiceM8
- When **New sheet** in Smartsheet then **Add job payment** in ServiceM8

Starting points drawn from the triggers and actions in the catalog today. Describe the flow you need, at any depth, and your agent builds it and tests every scenario before it ships.

Everything your agent can do with ServiceM8 and Smartsheet

## Triggers and actions 5 triggers · 49 actions

- Trigger

**Job Queued**

Triggers when a Job is assigned to a Queue.

- Trigger

**New Job**

Triggers when a new job is created.

- Action

**Add attachment**

Uploads a file and attaches it to a job (or another ServiceM8 record), so it appears in that record's diary.

- Action

**Add company contact**

Creates a new contact person on a ServiceM8 client (company), such as a billing or job contact.

- Action

**Add job allocation**

Allocates a ServiceM8 job to a staff member, optionally with a scheduled date and allocation window.

- Action

**Add job material**

Adds a material line item to a ServiceM8 job, with quantity, pricing and tax details.

- Action

**Add job payment**

Records a payment against a ServiceM8 job, with its amount, method, date and optional note.

- Action

**Add note**

Adds a note to a job, client or other ServiceM8 record.

- Action

**Create Client**

Creates a new client (company) record in ServiceM8.

- Action

**Create Job**

Creates a new job in ServiceM8, optionally linked to a client, category and queue, and returns the new job's UUID.

- Action

**Delete client**

Deletes (archives) a client in ServiceM8.

- Action

**Delete job**

Deletes (archives) a job in ServiceM8. The job is hidden in the app and can be restored later.

- Action

**Get attachment**

Returns the details of a single file attachment (photo, PDF or other file) by its UUID.

- Action

**Get client**

Returns one ServiceM8 client (company) record by its UUID, including its name, address and billing details.

- Action

**Get job**

Returns a single ServiceM8 job by its UUID, including its status, client, address and totals.

- Action

**Get Job Allocation**

Returns a single job allocation — which staff member a job is allocated to, its window, dates and status.

- Action

**List clients**

Returns the clients (companies) in your ServiceM8 account, optionally narrowed by a filter.

- Action

**List job materials**

Returns the materials (line items) recorded on jobs, optionally filtered, for example to a single job.

- Action

**List job payments**

Returns the payments recorded against jobs, optionally filtered (for example to a single job).

- Action

**List Job Queues**

Returns the job queues set up in the ServiceM8 account.

- Action

**List jobs**

Returns the jobs in your ServiceM8 account, optionally narrowed by a filter.

- Action

**List notes**

Returns the notes in your ServiceM8 account, optionally filtered and sorted.

- Action

**List staff members**

Returns the staff members in your ServiceM8 account, optionally narrowed by a filter.

- Action

**Update client**

Updates an existing client (company) in ServiceM8. Only the fields you fill in are changed.

- Action

**Update job**

Updates an existing job in ServiceM8, changing only the fields you fill in.

- Trigger

**New row**

Triggered when a new row is added to the specified sheet. Polls rows modified since the last check and emits new ones.

- Trigger

**New sheet**

Triggered when a new sheet is created. Polls the list of sheets and emits newly seen ones.

- Trigger

**Updated row**

Triggered when any row is updated in the specified sheet. Polls rows modified since the last check and emits updated ones.

- Action

**Add column**

/sheets/{sheetId}/columns - add columns to a sheet.

- Action

**Add comment**

/sheets/{sheetId}/discussions/{discussionId}/comments - add a comment to a discussion.

- Action

**Add discussion**

Starts a new discussion on a sheet with a first comment, and returns the discussion.

- Action

**Add folder**

/folders/{folderId}/folders or /home/folders - create a folder.

- Action

**Add home folder**

Creates a folder at the top level of your Sheets home and returns it.

- Action

**Add row**

Adds a new row to the specified sheet. Provide cells as an array of {columnId, value}. Set location to Top or Bottom.

- Action

**Add row attachment**

/sheets/{sheetId}/rows/{rowId}/attachments - attach file or URL to a row.

- Action

**Add sheet**

/sheets - create a sheet with columns.

- Action

**Copy row to another sheet**

Copies a row from one sheet to another sheet. The placement of the cells in the destination sheet is determined by Smartsheet's logic.

- Action

**Copy sheet**

/sheets/{sheetId}/copy - copy a sheet to a folder/workspace.

- Action

**Delete row**

Deletes a row from a sheet given its Row ID.

- Action

**Delete row if deal does not exist in ActiveCampaign (Cisco)**

Compares deals from ActiveCampaign with the Smartsheet 'ActiveCampaign Deal ID' column. Deletes rows whose deal ID is not present in the supplied list of existing ActiveCampaign deal IDs. Built from intent against Smartsheet API 2.0.

- Action

**Find rows**

Searches for rows in a specified sheet containing the specified value (in any column). Returns zero or more row IDs. Use the 'Get row' action within a Loop to fetch each row's contents.

- Action

**Find rows by column value**

Searches for rows in a specified sheet having the specified value in a specified column. Zero, one, or multiple row IDs may be returned.

- Action

**Find sheets by keyword**

Returns the sheets that match the specified keyword.

- Action

**Find single row**

Searches for a single row in a specified sheet matching the specified value (in any column). If zero or multiple rows are found, an error occurs.

- Action

**Find single row by column value**

Searches for a single row in a specified sheet having the specified value in a specified column. If zero or multiple rows are found, an error occurs.

- Action

**Get discussion**

Returns a sheet discussion with its title and comments.

- Action

**Get folder**

Returns a folder with the folders and sheets directly inside it.

- Action

**Get row**

Returns the column data for the specified row. An error occurs if the row is not found.

- Action

**Get sheet**

Fetches a sheet by ID, including its columns and rows. An error occurs if the sheet is not found.

- Action

**List row attachments**

Returns the attachments on a row of a Smartsheet sheet, such as files and links, with their names, types and addresses.

- Action

**Move row to another sheet**

Moves a row from one sheet to another sheet. The placement of the cells in the destination sheet is determined by Smartsheet's logic.

- Action

**Two-way sync add or update a row**

Creates or updates a row in a sheet. For use only with two-way sync triggers. If a Row ID is supplied the row is updated; otherwise a new row is added.

- Action

**Update row**

Updates a row in a specified sheet. Provide the Row ID and cells as an array of {columnId, value}.

- Action

**Update sheet**

/sheets/{sheetId} - update sheet properties (name, project settings).

## Each app on its own

- [ **ServiceM8** ServiceM8 is a field service app and small business management platform for your computer, iPhone and iPad.](https://apiant.ai/connections/servicem8)
- [ **Smartsheet** Smartsheet is a work execution platform for managing sheets, rows, and columns.](https://apiant.ai/connections/smartsheet)

Reviews

## What our customers say

## More from ServiceM8

- [ **ServiceM8 to Slack** Slack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...](https://apiant.ai/connect/servicem8-to-slack)
- [ **ServiceM8 to Stripe** Stripe is a payment processing platform for online businesses.](https://apiant.ai/connect/servicem8-to-stripe)
- [ **ServiceM8 to Shopify** Shopify is a commerce platform for online stores and retail point-of-sale.](https://apiant.ai/connect/servicem8-to-shopify)
- [ **ServiceM8 to Trello** Trello is a visual collaboration tool that organizes projects into boards, lists, and cards.](https://apiant.ai/connect/servicem8-to-trello)
- [ **ServiceM8 to Zoom** Zoom unifies cloud video conferencing, simple online meetings, group messaging, and a software-based...](https://apiant.ai/connect/servicem8-to-zoom)
- [ **ServiceM8 to Twilio** Cloud communications platform for sending SMS/MMS messages, making and managing voice calls, and looking up...](https://apiant.ai/connect/servicem8-to-twilio)

## More into Smartsheet

- [ **Salesforce to Smartsheet** Salesforce is a leading enterprise customer relationship management (CRM) platform.](https://apiant.ai/connect/salesforce-to-smartsheet)
- [ **Mailchimp to Smartsheet** Mailchimp marketing automation and email platform.](https://apiant.ai/connect/mailchimp-to-smartsheet)
- [ **HubSpot to Smartsheet** HubSpot is your all-in-one stop for all of your marketing software needs.](https://apiant.ai/connect/hubspot-to-smartsheet)
- [ **Slack to Smartsheet** Slack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...](https://apiant.ai/connect/slack-to-smartsheet)
- [ **Google Sheets to Smartsheet** Google Sheets](https://apiant.ai/connect/google-sheets-to-smartsheet)
- [ **Gmail to Smartsheet** Gmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...](https://apiant.ai/connect/gmail-to-smartsheet)

Questions

## ServiceM8 and Smartsheet, answered

###

### Can a Smartsheet row create the job in ServiceM8, not just record it?

Yes. The New row trigger in Smartsheet can run Create Job in ServiceM8, and an Updated row can follow up with Update job or Add job allocation so a technician is assigned. The agent tests each scenario with your own sheet before it goes live.

###

### How does a ServiceM8 job find the right row in Smartsheet?

Use Find single row by column value or Find rows by column value to match on a field you already keep in the sheet, such as the client name or job number. If the row exists the run can update it or add a comment; if not, it can add a new row instead.

###

### What can start an automation from ServiceM8?

Any of ServiceM8's 2 triggers in the catalog, including Job Queued and New Job. Describe the moment in plain language and your agent picks the right one.

###

### What can your agent do in Smartsheet when something happens in ServiceM8?

Any of Smartsheet's 26 actions, including Find single row by column value, Update row, Update sheet and Add column. Your agent maps the data both ways and tests every scenario before it ships.

###

### Can it also run from Smartsheet to ServiceM8?

Yes. When something happens in Smartsheet, your agent can act in ServiceM8 too. This page covers both directions: Smartsheet's triggers and ServiceM8's actions are listed here as well.

###

### Do I have to build a connector for ServiceM8 or Smartsheet?

No. Both are in the catalog with their triggers and actions. You describe the automation; your agent builds it, tests every scenario and keeps it running.

###

### Can my AI client use ServiceM8 and Smartsheet without building an automation?

Yes. With your AI client connected to APIANT, ask it to do something in either app once and it runs that action on the spot. Ask for an automation and your agent builds it, tests every scenario and keeps it running. One connection covers both.

###

### What happens when something fails?

Your agent works that out for you. It plans the failure paths along with the happy path, then tests every scenario before it ships.

###

### Is there a free plan?

Yes. Every plan includes the agent, including free, and building from your own AI client spends no assistant credits.
