Simpro API integration, without the build.
The Simpro API reaches nearly every record in your build. This guide covers what it exposes, how authentication, rate limits and webhooks work, and what a do-it-yourself integration takes. Then how Sprigr does that work for you, so your team describes the outcome instead of writing code.
- Simpro REST API v1.0
- OAuth, client credentials or API key
- 10 requests a second per build
- Signed webhooks
What the Simpro API exposes
A summary of Simpro's public developer documentation at developer.simprogroup.com. Check the linked pages for the current detail before you build against it.
-
A REST API scoped by company
Simpro publishes one REST API, version 1.0, described with an OpenAPI 2.0 specification you can download. Every route sits under
/api/v1.0/companies/{companyID}/on your own build's address, and a single-company build uses company ID 0. Source: Simpro API overview. -
Almost every record in the build
People (customers, sites, contacts, employees, contractors, vendors, timesheets), projects (leads, quotes, jobs, recurring jobs, cost centres), materials (catalogues, stock, prebuilds, vendor orders), invoicing (invoices, payments, credit notes, recurring invoices), setup data, schedules, assets, work orders and job reports.
-
Five ways to authenticate
Authorisation code, implicit, resource owner password, client credentials and API key. Access tokens last 3,600 seconds, an authorisation code must be exchanged within three minutes, and an API key is a single token that does not expire. Sources: authentication methods, tokens.
-
A rate limit of 10 requests a second
Above 10 requests a second from one integration to a single build, Simpro answers every further request with HTTP 429 until the rate falls back under the limit. Simpro suggests bulk routes,
display=alland pagination to stay under it. Source: rate limits. -
Webhooks that carry IDs
Webhook subscriptions are set up in Simpro or through the API. Each delivery is signed with an HMAC-SHA1 of the body in the
X-Response-Signatureheader and carries the IDs of what changed, so you call the API back for the full record. Sources: webhooks, event list. -
Pages of up to 250 records
List routes return 30 records a page by default and up to 250 with
pageSize, with the totals inResult-TotalandResult-Pagesheaders.If-Modified-Sincefetches only changed records. Source: Simpro API overview.
What a do-it-yourself Simpro API integration involves
None of this is hard on its own. Together it is a small product your business has to keep running.
-
Getting API access
A Simpro admin requests access for your application in the build's setup, or a vendor registers at partner level so Simpro adds its credentials to client builds after reviewing the sign-in flow, branding and multi-company support. Source: building integrations.
-
Tokens for every user
Hourly access tokens to refresh, refresh tokens to store securely and rotate, and a plan for when one is revoked and every call for that person starts failing.
-
Multi-company builds
Working out which companies a login can reach, letting someone choose, and putting the right company ID on every request.
-
Nested writes
A priced job is a job, its sections, the cost centres in each section, and every labour, catalogue and one-off line in each cost centre. Building one by hand is a chain of calls, each needing the ID from the one before.
-
Staying under the limit
Pacing bulk reads, retrying 429 responses with back-off, and batching writes, so an overnight sync does not starve the calls your office is waiting on.
-
A webhook receiver
A public endpoint that checks each signature, fetches the record behind the ID, ignores repeats, and keeps the subscriptions registered when they drift.
How Sprigr handles the Simpro API for you
The same API, already wrapped, kept in sync and guarded.
-
Connected in minutes, per person
Install the Simpro app and enter your build address. Each person connects their own Simpro login by OAuth sign-in, client credentials or an API key, and Sprigr refreshes tokens on a schedule. Simpro's permissions decide what each person's agent can see.
-
More than 300 actions, ready to call
Jobs, quotes, invoices, schedules, customers, purchasing, people and setup are wrapped as named actions. Composite actions build a whole priced job or quote, with sections, cost centres and lines, in one call.
-
References that just resolve
Ask for "job J00123", a customer name or a purchase order number and Sprigr finds the record. A synced index is kept current by webhooks and a 15-minute incremental sync, and live detail is read from Simpro by ID.
-
Webhooks handled for you
Sprigr registers Simpro webhooks when a person connects, verifies every signature, and turns each delivery into one of 29 events your workflows can start from.
-
Rate limits respected
Bulk sync is paced, and rate-limited reads are retried with back-off, so you never write throttling code yourself.
-
Guardrails on writes
Invoices, payments, credit notes, receipts, quote-to-job conversion and destructive deletes wait for a person to approve. Deletes offer an archive first, and reversible changes can be undone for seven days.
From API docs to a working integration
No code to write or host.
- 01
Install the Simpro app
An admin installs Simpro from the Sprigr app marketplace and enters your build address, plus OAuth client details from Simpro if you connect with OAuth or client credentials.
- 02
Connect and pick a company
Each person connects their own login and chooses their Simpro company if the build has more than one. Webhooks register on that choice.
- 03
Describe what should happen
Ask in plain English for a lookup, a report or a standing workflow. Sprigr picks the Simpro actions; you approve anything that moves money.
What is the Simpro API?
The Simpro API is Simpro's public REST API, version 1.0. It gives software access to the records in a Simpro build: customers, sites, jobs, quotes, cost centres, invoices, payments, schedules, employees, stock, purchasing and setup data. Routes are scoped to a company inside your build.
How do I get access to the Simpro API?
Simpro documents two paths. A Simpro admin can request access for an application in the build's setup, or a software vendor can register at partner level, where Simpro reviews the integration and adds its credentials to client builds. Simpro also supports API keys. With Sprigr you install the Simpro app and connect, so you do not write any API code.
What are the Simpro API rate limits?
Simpro's documentation sets a limit of 10 requests a second from one integration to a single build. Above that, Simpro returns HTTP 429 until the rate drops back under the limit, so an integration has to pace and batch its calls.
Does the Simpro API support webhooks?
Yes. Simpro webhooks cover jobs and job stages, quotes, leads, customers, sites, contacts, invoices, payments, schedules, purchase orders and more. Deliveries are signed with HMAC-SHA1 and carry the IDs of what changed. Sprigr registers and verifies them for you and emits 29 Simpro event types to workflows.
Which authentication method does Sprigr use with Simpro?
Each person chooses: OAuth sign-in (the default), client credentials, or an API key. Sprigr stores the credentials encrypted, refreshes OAuth tokens on a schedule, and scopes every call to the company the person picked.
Should I build my own Simpro API integration?
If you have a developer and one fixed job to do, such as copying new jobs into a data warehouse each night, a small script against the Simpro API can be the right answer. If you want many workflows that read whole jobs, act across your inbox and Xero, and stop for approval, Sprigr gives you that without code to maintain.
Can Sprigr call any Simpro API endpoint?
Sprigr wraps more than 300 Simpro actions as named, validated calls rather than passing raw requests through, which is how approvals, undo and audit work on every write. If you need a part of the Simpro API that is not covered, tell us.
The Simpro API, already built. You just describe the work.
Connect Simpro and run your first workflow today.