The ServiceM8 Developer Portal

Welcome to the ServiceM8 developer portal. You'll find comprehensive guides and documentation to help you start working with ServiceM8 as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started

Addon Store Requirements

Before you submit

Before you submit your app, make sure that you've tested it thoroughly. It should have functional links, a functioning interface, and be scrubbed for any unintended behaviors. Faulty design or an obvious lack of testing will cause an Add-on to be rejected during the review process.

Before you submit your add-on for review, you should first:

  • Test the add-on for bugs and errors.
  • Make sure the add-on listing meets all the requirements. The listing introduces ServiceM8 customers to your add-on, and a well laid out listing will lead to a higher number of activations.
  • Make sure your contact information in your partner account is up to date.

Add-on Listing Basics

  • Your Addon’s name may not contain “ServiceM8”, “M8” or “Mate”
  • Your Addon’s name may not be a generic feature name such as “Task List”, as these names are reserved for Addons developed by ServiceM8. In such cases you may include your company name in the title, e.g. “Task List by MyCompany” is acceptable.
  • Do not include descriptions or subtitles in your Addon name. These should be added to the description.
  • Your listing details must not portray your Addon as being developed or supported by ServiceM8 itself
  • Your Addon Store listing must include:
    • a description which summarises the purpose and features of your Addon
    • an Add-on Icon
    • at least 3 screenshots which show the user interface of your Addon
    • an email address which customers can use to contact you for support
    • a link to help documentation
    • a link to your Privacy Policy, which must describe how you will use data from the user's ServiceM8 account
  • Your description and screenshots will be the main thing that potential users will look at when deciding whether to activate your Addon. Ensure that the description is checked for spelling and grammatical errors, and accurately conveys your Addon’s purpose to potential customers.


  • Your Addon Store listing must include an email address and/or phone number for users to contact you with support enquiries
  • It is recommended that you provide a link to a URL with documentation describing how to use your Addon
  • You must respond within a reasonable time to enquiries and support requests regarding your addon. Addon developers who do not respond to enquiries and support requests may have thier addons de-listed from the Addon Store.


  • You may decide to charge for your Addon through ServiceM8’s billing system or manage billing yourself
  • If your Addon Store listing is marked as “Free”, but you charge for your Addon externally (i.e. the integration is free, but your product is not), then you must make this clear in the Addon description

Activation & Onboarding

  • In order to be listed on the ServiceM8 Addon Store, Addons must authenticate using OAuth 2.0. Addons which use HTTP Basic Auth will not be listed.
  • The ideal new-user experience is one in which the customer clicks “Connect” to activate your Addon, consents to allowing your Addon to access their account, and can then begin using your Addon immediately without creating a separate username/password.
  • Serverless Addons (Lambda Functions)
    • The activation process is completely managed within ServiceM8, and your Addon receives temporary OAuth tokens for each event.
  • Web Service Hosted Addons
    • When the user clicks Connect, they are redirected to your Activation URL which initiates the OAuth process
    • After your Addon obtains an OAuth token, you can inspect the Vendor and Staff endpoints to obtain details about the account and its users, and create an account (if required) based on these details
    • You should redirect the user back to ServiceM8 after you have obtained an OAuth token
    • Each time ServiceM8 calls your addon for relevant events, you can inspect the Account UUID and Staff UUID contained in the event data to determine the account on your side
    • If your Addon requires that the user creates a separate account in order to access your Addon, then follow the guidelines for External Integrations.
  • External Integrations
    • For external integrations, the user will usually need to have a separate account in order to use your Addon.
    • When the user clicks Connect from your Addon’s store page, they will be sent to your configured Activation URL.
    • Your Activation URL should direct the user to an endpoint which begins the OAuth flow so your Addon can obtain an OAuth token
    • If the user is not logged in to your Addon when they reach this page, you should display a Login/Signup page to allow them to login or create a new account. You must ensure that the OAuth flow is started immediately after the user has authenticated. Do not redirect the user to a dashboard or welcome page.
    • After your Addon has obtained an OAuth token, you may redirect the user back to ServiceM8 or continue inside your Addon.
    • If you’re listing an integration with ServiceM8 on another website it must be clear that your business developed the integration.

Reservation of Rights

  • ServiceM8 is constantly improving & enhancing its platform, and reserves the right to develop any improvement, enhancement or addon to the core ServiceM8 platform, regardless of any actual or perceived similarities to any Addon you may have submitted to the Addon Store.
  • ServiceM8 does not grant any exclusive rights to listing in the ServiceM8 Addon Store for the particular feature set or benefits your Addon provides. ServiceM8 may approve similar or identical Addons from other developers. ServiceM8 will not enter into correspondence or mediation to resolve disputes of this nature between developers.

Addon Store Requirements

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.