ServiceM8
Field service operations platform for jobs, customers, schedules, payments, staff, tasks, notes, and materials
Tools
| Name | Description |
|---|---|
list_jobsList ServiceM8 jobs with cursor pagination and optional OData-style filtering. | List ServiceM8 jobs with cursor pagination and optional OData-style filtering. |
get_jobRetrieve a ServiceM8 job by UUID. | Retrieve a ServiceM8 job by UUID. |
create_jobCreate a ServiceM8 job using the documented request body. | Create a ServiceM8 job using the documented request body. |
update_jobUpdate a ServiceM8 job by UUID. | Update a ServiceM8 job by UUID. |
delete_jobSoft-delete a ServiceM8 job by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 job by exact UUID. ServiceM8 sets active to 0. |
list_companiesList ServiceM8 companies with cursor pagination and optional OData-style filtering. | List ServiceM8 companies with cursor pagination and optional OData-style filtering. |
get_companyRetrieve a ServiceM8 company by UUID. | Retrieve a ServiceM8 company by UUID. |
create_companyCreate a ServiceM8 company using the documented request body. | Create a ServiceM8 company using the documented request body. |
update_companyUpdate a ServiceM8 company by UUID. | Update a ServiceM8 company by UUID. |
delete_companySoft-delete a ServiceM8 company by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 company by exact UUID. ServiceM8 sets active to 0. |
list_company_contactsList ServiceM8 company contacts with cursor pagination and optional OData-style filtering. | List ServiceM8 company contacts with cursor pagination and optional OData-style filtering. |
get_company_contactRetrieve a ServiceM8 company contact by UUID. | Retrieve a ServiceM8 company contact by UUID. |
create_company_contactCreate a ServiceM8 company contact using the documented request body. | Create a ServiceM8 company contact using the documented request body. |
update_company_contactUpdate a ServiceM8 company contact by UUID. | Update a ServiceM8 company contact by UUID. |
delete_company_contactSoft-delete a ServiceM8 company contact by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 company contact by exact UUID. ServiceM8 sets active to 0. |
list_staff_membersList ServiceM8 staff members with cursor pagination and optional OData-style filtering. | List ServiceM8 staff members with cursor pagination and optional OData-style filtering. |
get_staff_memberRetrieve a ServiceM8 staff member by UUID. | Retrieve a ServiceM8 staff member by UUID. |
create_staff_memberCreate a ServiceM8 staff member using the documented request body. | Create a ServiceM8 staff member using the documented request body. |
update_staff_memberUpdate a ServiceM8 staff member by UUID. | Update a ServiceM8 staff member by UUID. |
delete_staff_memberSoft-delete a ServiceM8 staff member by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 staff member by exact UUID. ServiceM8 sets active to 0. |
list_job_paymentsList ServiceM8 job payments with cursor pagination and optional OData-style filtering. | List ServiceM8 job payments with cursor pagination and optional OData-style filtering. |
get_job_paymentRetrieve a ServiceM8 job payment by UUID. | Retrieve a ServiceM8 job payment by UUID. |
create_job_paymentCreate a ServiceM8 job payment using the documented request body. | Create a ServiceM8 job payment using the documented request body. |
update_job_paymentUpdate a ServiceM8 job payment by UUID. | Update a ServiceM8 job payment by UUID. |
delete_job_paymentSoft-delete a ServiceM8 job payment by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 job payment by exact UUID. ServiceM8 sets active to 0. |
list_notesList ServiceM8 notes with cursor pagination and optional OData-style filtering. | List ServiceM8 notes with cursor pagination and optional OData-style filtering. |
get_noteRetrieve a ServiceM8 note by UUID. | Retrieve a ServiceM8 note by UUID. |
create_noteCreate a ServiceM8 note using the documented request body. | Create a ServiceM8 note using the documented request body. |
update_noteUpdate a ServiceM8 note by UUID. | Update a ServiceM8 note by UUID. |
delete_noteSoft-delete a ServiceM8 note by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 note by exact UUID. ServiceM8 sets active to 0. |
list_tasksList ServiceM8 tasks with cursor pagination and optional OData-style filtering. | List ServiceM8 tasks with cursor pagination and optional OData-style filtering. |
get_taskRetrieve a ServiceM8 task by UUID. | Retrieve a ServiceM8 task by UUID. |
create_taskCreate a ServiceM8 task using the documented request body. | Create a ServiceM8 task using the documented request body. |
update_taskUpdate a ServiceM8 task by UUID. | Update a ServiceM8 task by UUID. |
delete_taskSoft-delete a ServiceM8 task by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 task by exact UUID. ServiceM8 sets active to 0. |
list_materialsList ServiceM8 materials with cursor pagination and optional OData-style filtering. | List ServiceM8 materials with cursor pagination and optional OData-style filtering. |
get_materialRetrieve a ServiceM8 material by UUID. | Retrieve a ServiceM8 material by UUID. |
create_materialCreate a ServiceM8 material using the documented request body. | Create a ServiceM8 material using the documented request body. |
update_materialUpdate a ServiceM8 material by UUID. | Update a ServiceM8 material by UUID. |
delete_materialSoft-delete a ServiceM8 material by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 material by exact UUID. ServiceM8 sets active to 0. |
list_categoriesList ServiceM8 job categories with cursor pagination and optional OData-style filtering. | List ServiceM8 job categories with cursor pagination and optional OData-style filtering. |
get_categoryRetrieve a ServiceM8 job category by UUID. | Retrieve a ServiceM8 job category by UUID. |
create_categoryCreate a ServiceM8 job category using the documented request body. | Create a ServiceM8 job category using the documented request body. |
update_categoryUpdate a ServiceM8 job category by UUID. | Update a ServiceM8 job category by UUID. |
delete_categorySoft-delete a ServiceM8 job category by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 job category by exact UUID. ServiceM8 sets active to 0. |
list_job_activitiesList ServiceM8 job activities with cursor pagination and optional OData-style filtering. | List ServiceM8 job activities with cursor pagination and optional OData-style filtering. |
get_job_activityRetrieve a ServiceM8 job activity by UUID. | Retrieve a ServiceM8 job activity by UUID. |
create_job_activityCreate a ServiceM8 job activity using the documented request body. | Create a ServiceM8 job activity using the documented request body. |
update_job_activityUpdate a ServiceM8 job activity by UUID. | Update a ServiceM8 job activity by UUID. |
delete_job_activitySoft-delete a ServiceM8 job activity by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 job activity by exact UUID. ServiceM8 sets active to 0. |
list_job_queuesList ServiceM8 job queues with cursor pagination and optional OData-style filtering. | List ServiceM8 job queues with cursor pagination and optional OData-style filtering. |
get_job_queueRetrieve a ServiceM8 job queue by UUID. | Retrieve a ServiceM8 job queue by UUID. |
create_job_queueCreate a ServiceM8 job queue using the documented request body. | Create a ServiceM8 job queue using the documented request body. |
update_job_queueUpdate a ServiceM8 job queue by UUID. | Update a ServiceM8 job queue by UUID. |
delete_job_queueSoft-delete a ServiceM8 job queue by exact UUID. ServiceM8 sets active to 0. | Soft-delete a ServiceM8 job queue by exact UUID. ServiceM8 sets active to 0. |
searchSearch ServiceM8 jobs, companies, materials, attachments, form responses, assets, and knowledge articles. | Search ServiceM8 jobs, companies, materials, attachments, form responses, assets, and knowledge articles. |
create_webhook_subscriptionCreate or update a ServiceM8 webhook subscription for a callback URL. OAuth public apps must handle ServiceM8 challenge verification. | Create or update a ServiceM8 webhook subscription for a callback URL. OAuth public apps must handle ServiceM8 challenge verification. |
list_webhook_subscriptionsList active, inactive, or all ServiceM8 webhook subscriptions. | List active, inactive, or all ServiceM8 webhook subscriptions. |
delete_webhook_subscriptionDelete a ServiceM8 webhook subscription by ID. | Delete a ServiceM8 webhook subscription by ID. |
send_emailSend an email through ServiceM8 Messaging. This can externally notify customers or staff. | Send an email through ServiceM8 Messaging. This can externally notify customers or staff. |
send_smsSend an SMS through ServiceM8 Messaging. ServiceM8 states this endpoint incurs SMS charges and promotional SMS is not permitted. | Send an SMS through ServiceM8 Messaging. ServiceM8 states this endpoint incurs SMS charges and promotional SMS is not permitted. |
Triggers
| Name | Description |
|---|---|
job_changedPoll ServiceM8 jobs after an initial baseline. | Poll ServiceM8 jobs after an initial baseline. |
company_changedPoll ServiceM8 companies after an initial baseline. | Poll ServiceM8 companies after an initial baseline. |
job_payment_changedPoll ServiceM8 job payments after an initial baseline. | Poll ServiceM8 job payments after an initial baseline. |
note_changedPoll ServiceM8 notes after an initial baseline. | Poll ServiceM8 notes after an initial baseline. |
task_changedPoll ServiceM8 tasks after an initial baseline. | Poll ServiceM8 tasks after an initial baseline. |
Quick Start
import { WeavzClient } from '@weavz-io/sdk'
const weavz = new WeavzClient({ apiKey: 'wvz_...' })
const result = await weavz.actions.execute('servicem8', 'list_jobs', {
workspaceId: '550e8400-e29b-41d4-a716-446655440000',
integrationAlias: 'servicem8',
input: { /* ... */ },
})Related Integrations
Works well with
Frequently Asked Questions
How do I connect ServiceM8 to my app?
Use Weavz Hosted Connect for OAuth2 authentication. Install the SDK, create a connection through the connect portal or API, then execute tools programmatically.
What tools does ServiceM8 support?
ServiceM8 supports 61 tools including List Jobs, Get Job, Create Job, Update Job, Delete Job, and more.
Can I use ServiceM8 with AI agents?
Yes. Add ServiceM8 to an MCP server in Tool Mode or Code Mode. Code Mode provides 3 meta-tools with on-demand API discovery so agents can compose stateful workflows without loading every action schema up front.
Can ServiceM8 be used in stateful agent workflows?
Yes. Agents can combine ServiceM8 tools with Filesystem, State KV, Human Gates, input partials, and other workspace integrations while keeping execution scoped to the selected workspace or end user.
What authentication does ServiceM8 use?
ServiceM8 uses OAuth2. Weavz stores OAuth credentials securely and refreshes tokens when supported by the provider.
How much does the ServiceM8 integration cost?
The ServiceM8 integration is included on all Weavz plans including the free tier with 20,000 actions per month. No credit card required.
What triggers does ServiceM8 support?
ServiceM8 supports 5 triggers including Job Changed, Company Changed, Job Payment Changed, Note Changed, Task Changed.
Connect ServiceM8 in minutes
Get 20,000 free action executions every month. No credit card required.