Bloody Good Tests Documentation
BGT lets practitioners order pathology testing — commercially or under Medicare — and get structured results back. These docs cover both sides of that: how the platform works day to day for your organisation, and how to drive it programmatically over our REST API.
This documentation is currently a work in progress and may change without notice.
All API endpoints are versioned, so the actual payloads will not drift.
Choose your path
Medicare ordering, provider registration, result routing, and controlling who in your organisation can do what.
Developers Integrating over the API →OAuth 2.0 authentication, referral ordering, result retrieval, and webhooks — with a staging environment to build against.
For practitioners
How the platform behaves for your organisation — no code involved.
Order eligible tests under a doctor's provider number and claim them against Medicare. Covers the provider + signature prerequisite, ordering on the platform, and getting results back via laboratory result routing.
Roles & PermissionsBuilt-in roles, building your own, what each capability grants, and how permissions are resolved. Also the role you need before anyone can order under Medicare.
The two pages above are meant to be read together: the Medicare page explains what has to be true before an order can be placed, and Roles & Permissions explains how to grant it.
For developers
We provide a REST API with supporting webhooks for test ordering and result retrieval. Read in this order the first time through.
Create an account, verify your practitioner profile, set up an organisation, and issue API credentials — once per environment.
Step 2 Authentication
OAuth 2.0 grant types, exchanging your client_id and
client_secret for an access token, and token handling.
The end-to-end picture: referral ordering and results delivery, and how REST calls and webhooks fit together. Includes sequence diagrams.
Reference REST APIFull reference for referrals, results, tests, and bundles — plus versioning, pagination, metadata, error shapes, and Medicare ordering.
Reference Webhooks
Every referral.* and result.* event, signature
verification, retries, payload examples, and a worked receiver
implementation.
Notable user-facing changes across the API, webhooks, the practitioner portal, and the consumer website — newest first.
The single most important convention in the API: treat a webhook as a signal that something changed, then call the REST API to fetch the canonical state. See the Workflow overview for why.
Environments
Staging and production are completely independent — separate accounts, organisations, billing, and credentials. Keys issued in one will not work in the other. Build against staging first.
| Environment | Sign up | API base URL |
|---|---|---|
| Staging | https://app.staging.bloodygoodtests.com.au | https://api.staging.bloodygoodtests.com.au |
| Production | https://app.bloodygoodtests.com.au | https://api.bloodygoodtests.com.au |
Full details, including auth service URLs, are on the Developer overview.
Keeping up to date
- Changelog — product updates, new features, and improvements across the whole platform, with an RSS feed.
- API Changelog — the same changes narrowed to the API contract, tagged by area and API version.
- Swagger Documentation — always-current, interactive endpoint reference.
Questions?
Contact support@bloodygoodtests.com.au for API access, integration support, or anything these docs don't answer.