Partner API sandbox
Lab testing for people and pets, as an API
Order tests, follow every kit and sample like a parcel, and get results judged on MD4 Labs reference ranges. The sandbox gives you the whole /v1 API over synthetic data, with a lab you drive yourself.
- Synthetic data only
- Signed webhooks with retries
- The same contract as live
curl "$MD4_API/v1/orders/$ORDER_ID" \
-H "Authorization: Bearer $MD4_KEY"
{
"id": "cmhx1n8yb0004s6d8h2m1p0qe",
"status": "kit_shipped",
"tests": ["PET-WELLNESS"],
"tracking": {
"carrier": "UPS",
"trackingNumber": "1Z8F3A9C27D41B6E05",
"next": "The kit is on its way."
},
"resultsAvailable": false
}
Order order-1001, your own idFrom tracking.steps
- Received
- At the lab
- Kit shipped
- Delivered
- Testing
- Results
Your access
Checking your sign-in...
From invitation to results in an afternoon
Access is by invitation. Once you're in, everything happens on this site and against the sandbox.
-
Get invited
MD4 Labs sets up your organization and invites each developer by email, with a temporary password. To ask for access, write to developers@md4labs.com.
-
Create a key
Sign in, choose your own password, and create an API key in the console with the scopes your program needs. It's shown once.
-
Run the quickstart
Add a pet, order a test, play the lab step by step and read the results, for real, from this site. Every request is shown in curl, JavaScript and Python.
-
Wire up webhooks
Register an https endpoint and we post signed events as orders move. Check every delivery in the console and send any one again.
Docs that do things
Every page here works against the sandbox or in your browser. Nothing to install.
Interactive quickstart
Paste a sandbox key and walk an order from placed to results. Watch the tracking advance and see our range beside the lab's.
Start itAPI reference with Try it
Every endpoint from the API's own OpenAPI document, with samples in three languages, example responses and a live request panel.
Open the referenceOrder lifecycle explorer
Click any status to see what moves an order there, which webhooks it sends, and the payload your endpoint receives.
Explore itWebhook signature checker
Paste a secret, an MD4-Signature header and a raw body. Your browser checks it and says why it fails. Nothing is sent anywhere.
What the sandbox is
Synthetic data only
Everything here is made up and lives in its own database, apart from the MD4 Labs portal. Never send real patient or animal information.
A lab you drive
Orders move only when you say so: the sandbox's simulate endpoint plays the lab, from kit shipped to results and corrections, and fires the same webhooks.
The same contract as live
Paths, fields, errors and webhooks are the ones the live API will use. Moving to live means a live key and a different base URL.
See what happened
The console shows usage at a glance, every request your keys made with its status and request ID, and every webhook delivery.