{
	"info": {
		"name": "TruPath PCR + MAST Report API",
		"description": "Generates and retrieves TruPath PCR/MAST reports via the server-side, database-backed engine (see documentation/API.md). Set the collection variables apiKey/baseUrl before running. All three Generate requests below use the exact same case data as the generator page's own \"Load Included Example\" button, so every antimicrobial/MAST field the report needs is populated the same way for all three report types.",
		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
	},
	"variable": [
		{
			"key": "baseUrl",
			"value": "https://tpl7.robbiekohli.com",
			"type": "string"
		},
		{
			"key": "apiKey",
			"value": "DF@2026:DF@2026",
			"type": "string"
		},
		{
			"key": "reportId",
			"value": "",
			"type": "string"
		}
	],
	"item": [
		{
			"name": "Generate PCR Report Only",
			"request": {
				"method": "POST",
				"header": [
					{
						"key": "Content-Type",
						"value": "application/json"
					},
					{
						"key": "X-API-Key",
						"value": "{{apiKey}}"
					}
				],
				"url": {
					"raw": "{{baseUrl}}/api/generate-report",
					"host": [
						"{{baseUrl}}"
					],
					"path": [
						"api",
						"generate-report"
					]
				},
				"body": {
					"mode": "raw",
					"options": {
						"raw": {
							"language": "json"
						}
					},
					"raw": "{\n  \"mode\": \"pcr_only\",\n  \"case\": {\n    \"schemaVersion\": \"3.2.2\",\n    \"requisition\": {\n      \"mastOrder\": \"REFLEX_POSITIVE\",\n      \"mastReflexCondition\": \"PCR_POSITIVE_LOAD_MEDIUM_OR_GREATER\",\n      \"utiPanel\": true,\n      \"resistanceGeneAnalysis\": true,\n      \"customizedPanel\": false,\n      \"icd10\": [\n        \"N39.0\"\n      ],\n      \"clinicalHistory\": \"\",\n      \"billingType\": \"\",\n      \"primaryInsurance\": \"\",\n      \"subscriberId\": \"\",\n      \"groupNumber\": \"\"\n    },\n    \"patient\": {\n      \"name\": \"Sally Sicko\",\n      \"patientId\": \"423-5-2-8\",\n      \"dob\": \"1997-05-05\",\n      \"sex\": \"FEMALE\",\n      \"phone\": \"\",\n      \"address\": \"\"\n    },\n    \"order\": {\n      \"provider\": \"Dr. Jones\",\n      \"providerNpi\": \"\",\n      \"specimen\": \"Urine\",\n      \"collectionDate\": \"2026-07-14\",\n      \"collectionTime\": \"10:36 a.m.\",\n      \"dateReceived\": \"2026-07-14\",\n      \"timeReceived\": \"2:15 p.m.\",\n      \"dateReported\": \"2026-07-15\",\n      \"timeReported\": \"9:05 a.m.\",\n      \"accessionNumber\": \"07-14-26-138\",\n      \"testFacility\": \"TruPath Labs\"\n    },\n    \"organisms\": [\n      {\n        \"organismId\": \"ORG_ESCHERICHIA_COLI\",\n        \"load\": 1000000\n      },\n      {\n        \"organismId\": \"ORG_SERRATIA_MARCESCENS\",\n        \"load\": 100000\n      },\n      {\n        \"organismId\": \"ORG_CANDIDA_GLABRATA\",\n        \"load\": 100\n      }\n    ],\n    \"detectedGenes\": [],\n    \"empiric\": {\n      \"drugId\": \"DRUG_CIPROFLOXACIN\",\n      \"genericName\": \"Ciprofloxacin\",\n      \"displayName\": \"Ciprofloxacin\",\n      \"instructions\": \"500 mg PO BID\"\n    },\n    \"allergies\": [\n      \"Penicillin\"\n    ],\n    \"clinical\": {\n      \"pregnancy\": \"UNKNOWN\",\n      \"renalIssue\": false,\n      \"hepaticIssue\": false\n    },\n    \"mastResults\": {\n      \"ORG_ESCHERICHIA_COLI\": {\n        \"DRUG_AMPICILLIN\": \"S\",\n        \"DRUG_AMOXICILLIN_CLAVULANATE\": \"S\",\n        \"DRUG_CEFAZOLIN\": \"S\",\n        \"DRUG_CEFEPIME\": \"S\",\n        \"DRUG_CEFOXITIN\": \"S\",\n        \"DRUG_CEFTRIAXONE\": \"S\",\n        \"DRUG_DOXYCYCLINE\": \"S\",\n        \"DRUG_FOSFOMYCIN\": \"S\",\n        \"DRUG_GENTAMICIN\": \"S\",\n        \"DRUG_NITROFURANTOIN\": \"S\",\n        \"DRUG_MEROPENEM\": \"S\",\n        \"DRUG_PIPERACILLIN_TAZOBACTAM\": \"S\",\n        \"DRUG_TRIMETHOPRIM_SULFAMETHOXAZOLE\": \"S\",\n        \"DRUG_CIPROFLOXACIN\": \"R\",\n        \"DRUG_LEVOFLOXACIN\": \"R\",\n        \"DRUG_VANCOMYCIN\": \"-\"\n      },\n      \"ORG_SERRATIA_MARCESCENS\": {\n        \"DRUG_AMPICILLIN\": \"R\",\n        \"DRUG_AMOXICILLIN_CLAVULANATE\": \"R\",\n        \"DRUG_CEFAZOLIN\": \"R\",\n        \"DRUG_CEFEPIME\": \"S\",\n        \"DRUG_CEFOXITIN\": \"R\",\n        \"DRUG_CEFTRIAXONE\": \"S\",\n        \"DRUG_DOXYCYCLINE\": \"S\",\n        \"DRUG_FOSFOMYCIN\": \"-\",\n        \"DRUG_GENTAMICIN\": \"S\",\n        \"DRUG_NITROFURANTOIN\": \"R\",\n        \"DRUG_MEROPENEM\": \"S\",\n        \"DRUG_PIPERACILLIN_TAZOBACTAM\": \"S\",\n        \"DRUG_TRIMETHOPRIM_SULFAMETHOXAZOLE\": \"S\",\n        \"DRUG_CIPROFLOXACIN\": \"S\",\n        \"DRUG_LEVOFLOXACIN\": \"S\",\n        \"DRUG_VANCOMYCIN\": \"-\"\n      }\n    }\n  }\n}"
				}
			},
			"event": [
				{
					"listen": "test",
					"script": {
						"type": "text/javascript",
						"exec": [
							"(function () {",
							"  pm.test('Status is 200', function () { pm.response.to.have.status(200); });",
							"  var responseJson = pm.response.json();",
							"  pm.test('success is true', function () { pm.expect(responseJson.success).to.be.true; });",
							"  pm.test('mode is pcr_only', function () { pm.expect(responseJson.mode).to.eql('pcr_only'); });",
							"  if (responseJson.reportId) { pm.collectionVariables.set('reportId', responseJson.reportId); }",
							"})();"
						]
					}
				}
			]
		},
		{
			"name": "Generate Preliminary PCR / MAST Pending Report",
			"request": {
				"method": "POST",
				"header": [
					{
						"key": "Content-Type",
						"value": "application/json"
					},
					{
						"key": "X-API-Key",
						"value": "{{apiKey}}"
					}
				],
				"url": {
					"raw": "{{baseUrl}}/api/generate-report",
					"host": [
						"{{baseUrl}}"
					],
					"path": [
						"api",
						"generate-report"
					]
				},
				"body": {
					"mode": "raw",
					"options": {
						"raw": {
							"language": "json"
						}
					},
					"raw": "{\n  \"mode\": \"initial_pcr\",\n  \"case\": {\n    \"schemaVersion\": \"3.2.2\",\n    \"requisition\": {\n      \"mastOrder\": \"REFLEX_POSITIVE\",\n      \"mastReflexCondition\": \"PCR_POSITIVE_LOAD_MEDIUM_OR_GREATER\",\n      \"utiPanel\": true,\n      \"resistanceGeneAnalysis\": true,\n      \"customizedPanel\": false,\n      \"icd10\": [\n        \"N39.0\"\n      ],\n      \"clinicalHistory\": \"\",\n      \"billingType\": \"\",\n      \"primaryInsurance\": \"\",\n      \"subscriberId\": \"\",\n      \"groupNumber\": \"\"\n    },\n    \"patient\": {\n      \"name\": \"Sally Sicko\",\n      \"patientId\": \"423-5-2-8\",\n      \"dob\": \"1997-05-05\",\n      \"sex\": \"FEMALE\",\n      \"phone\": \"\",\n      \"address\": \"\"\n    },\n    \"order\": {\n      \"provider\": \"Dr. Jones\",\n      \"providerNpi\": \"\",\n      \"specimen\": \"Urine\",\n      \"collectionDate\": \"2026-07-14\",\n      \"collectionTime\": \"10:36 a.m.\",\n      \"dateReceived\": \"2026-07-14\",\n      \"timeReceived\": \"2:15 p.m.\",\n      \"dateReported\": \"2026-07-15\",\n      \"timeReported\": \"9:05 a.m.\",\n      \"accessionNumber\": \"07-14-26-138\",\n      \"testFacility\": \"TruPath Labs\"\n    },\n    \"organisms\": [\n      {\n        \"organismId\": \"ORG_ESCHERICHIA_COLI\",\n        \"load\": 1000000\n      },\n      {\n        \"organismId\": \"ORG_SERRATIA_MARCESCENS\",\n        \"load\": 100000\n      },\n      {\n        \"organismId\": \"ORG_CANDIDA_GLABRATA\",\n        \"load\": 100\n      }\n    ],\n    \"detectedGenes\": [],\n    \"empiric\": {\n      \"drugId\": \"DRUG_CIPROFLOXACIN\",\n      \"genericName\": \"Ciprofloxacin\",\n      \"displayName\": \"Ciprofloxacin\",\n      \"instructions\": \"500 mg PO BID\"\n    },\n    \"allergies\": [\n      \"Penicillin\"\n    ],\n    \"clinical\": {\n      \"pregnancy\": \"UNKNOWN\",\n      \"renalIssue\": false,\n      \"hepaticIssue\": false\n    },\n    \"mastResults\": {\n      \"ORG_ESCHERICHIA_COLI\": {\n        \"DRUG_AMPICILLIN\": \"S\",\n        \"DRUG_AMOXICILLIN_CLAVULANATE\": \"S\",\n        \"DRUG_CEFAZOLIN\": \"S\",\n        \"DRUG_CEFEPIME\": \"S\",\n        \"DRUG_CEFOXITIN\": \"S\",\n        \"DRUG_CEFTRIAXONE\": \"S\",\n        \"DRUG_DOXYCYCLINE\": \"S\",\n        \"DRUG_FOSFOMYCIN\": \"S\",\n        \"DRUG_GENTAMICIN\": \"S\",\n        \"DRUG_NITROFURANTOIN\": \"S\",\n        \"DRUG_MEROPENEM\": \"S\",\n        \"DRUG_PIPERACILLIN_TAZOBACTAM\": \"S\",\n        \"DRUG_TRIMETHOPRIM_SULFAMETHOXAZOLE\": \"S\",\n        \"DRUG_CIPROFLOXACIN\": \"R\",\n        \"DRUG_LEVOFLOXACIN\": \"R\",\n        \"DRUG_VANCOMYCIN\": \"-\"\n      },\n      \"ORG_SERRATIA_MARCESCENS\": {\n        \"DRUG_AMPICILLIN\": \"R\",\n        \"DRUG_AMOXICILLIN_CLAVULANATE\": \"R\",\n        \"DRUG_CEFAZOLIN\": \"R\",\n        \"DRUG_CEFEPIME\": \"S\",\n        \"DRUG_CEFOXITIN\": \"R\",\n        \"DRUG_CEFTRIAXONE\": \"S\",\n        \"DRUG_DOXYCYCLINE\": \"S\",\n        \"DRUG_FOSFOMYCIN\": \"-\",\n        \"DRUG_GENTAMICIN\": \"S\",\n        \"DRUG_NITROFURANTOIN\": \"R\",\n        \"DRUG_MEROPENEM\": \"S\",\n        \"DRUG_PIPERACILLIN_TAZOBACTAM\": \"S\",\n        \"DRUG_TRIMETHOPRIM_SULFAMETHOXAZOLE\": \"S\",\n        \"DRUG_CIPROFLOXACIN\": \"S\",\n        \"DRUG_LEVOFLOXACIN\": \"S\",\n        \"DRUG_VANCOMYCIN\": \"-\"\n      }\n    }\n  }\n}"
				}
			},
			"event": [
				{
					"listen": "test",
					"script": {
						"type": "text/javascript",
						"exec": [
							"(function () {",
							"  pm.test('Status is 200', function () { pm.response.to.have.status(200); });",
							"  var responseJson = pm.response.json();",
							"  pm.test('success is true', function () { pm.expect(responseJson.success).to.be.true; });",
							"  if (responseJson.reportId) { pm.collectionVariables.set('reportId', responseJson.reportId); }",
							"})();"
						]
					}
				}
			]
		},
		{
			"name": "Generate Final PCR + MAST Report",
			"request": {
				"method": "POST",
				"header": [
					{
						"key": "Content-Type",
						"value": "application/json"
					},
					{
						"key": "X-API-Key",
						"value": "{{apiKey}}"
					}
				],
				"url": {
					"raw": "{{baseUrl}}/api/generate-report",
					"host": [
						"{{baseUrl}}"
					],
					"path": [
						"api",
						"generate-report"
					]
				},
				"body": {
					"mode": "raw",
					"options": {
						"raw": {
							"language": "json"
						}
					},
					"raw": "{\n  \"mode\": \"final_pcr_mast\",\n  \"case\": {\n    \"schemaVersion\": \"3.2.2\",\n    \"requisition\": {\n      \"mastOrder\": \"REFLEX_POSITIVE\",\n      \"mastReflexCondition\": \"PCR_POSITIVE_LOAD_MEDIUM_OR_GREATER\",\n      \"utiPanel\": true,\n      \"resistanceGeneAnalysis\": true,\n      \"customizedPanel\": false,\n      \"icd10\": [\n        \"N39.0\"\n      ],\n      \"clinicalHistory\": \"\",\n      \"billingType\": \"\",\n      \"primaryInsurance\": \"\",\n      \"subscriberId\": \"\",\n      \"groupNumber\": \"\"\n    },\n    \"patient\": {\n      \"name\": \"Sally Sicko\",\n      \"patientId\": \"423-5-2-8\",\n      \"dob\": \"1997-05-05\",\n      \"sex\": \"FEMALE\",\n      \"phone\": \"\",\n      \"address\": \"\"\n    },\n    \"order\": {\n      \"provider\": \"Dr. Jones\",\n      \"providerNpi\": \"\",\n      \"specimen\": \"Urine\",\n      \"collectionDate\": \"2026-07-14\",\n      \"collectionTime\": \"10:36 a.m.\",\n      \"dateReceived\": \"2026-07-14\",\n      \"timeReceived\": \"2:15 p.m.\",\n      \"dateReported\": \"2026-07-15\",\n      \"timeReported\": \"9:05 a.m.\",\n      \"accessionNumber\": \"07-14-26-138\",\n      \"testFacility\": \"TruPath Labs\"\n    },\n    \"organisms\": [\n      {\n        \"organismId\": \"ORG_ESCHERICHIA_COLI\",\n        \"load\": 1000000\n      },\n      {\n        \"organismId\": \"ORG_SERRATIA_MARCESCENS\",\n        \"load\": 100000\n      },\n      {\n        \"organismId\": \"ORG_CANDIDA_GLABRATA\",\n        \"load\": 100\n      }\n    ],\n    \"detectedGenes\": [],\n    \"empiric\": {\n      \"drugId\": \"DRUG_CIPROFLOXACIN\",\n      \"genericName\": \"Ciprofloxacin\",\n      \"displayName\": \"Ciprofloxacin\",\n      \"instructions\": \"500 mg PO BID\"\n    },\n    \"allergies\": [\n      \"Penicillin\"\n    ],\n    \"clinical\": {\n      \"pregnancy\": \"UNKNOWN\",\n      \"renalIssue\": false,\n      \"hepaticIssue\": false\n    },\n    \"mastResults\": {\n      \"ORG_ESCHERICHIA_COLI\": {\n        \"DRUG_AMPICILLIN\": \"S\",\n        \"DRUG_AMOXICILLIN_CLAVULANATE\": \"S\",\n        \"DRUG_CEFAZOLIN\": \"S\",\n        \"DRUG_CEFEPIME\": \"S\",\n        \"DRUG_CEFOXITIN\": \"S\",\n        \"DRUG_CEFTRIAXONE\": \"S\",\n        \"DRUG_DOXYCYCLINE\": \"S\",\n        \"DRUG_FOSFOMYCIN\": \"S\",\n        \"DRUG_GENTAMICIN\": \"S\",\n        \"DRUG_NITROFURANTOIN\": \"S\",\n        \"DRUG_MEROPENEM\": \"S\",\n        \"DRUG_PIPERACILLIN_TAZOBACTAM\": \"S\",\n        \"DRUG_TRIMETHOPRIM_SULFAMETHOXAZOLE\": \"S\",\n        \"DRUG_CIPROFLOXACIN\": \"R\",\n        \"DRUG_LEVOFLOXACIN\": \"R\",\n        \"DRUG_VANCOMYCIN\": \"-\"\n      },\n      \"ORG_SERRATIA_MARCESCENS\": {\n        \"DRUG_AMPICILLIN\": \"R\",\n        \"DRUG_AMOXICILLIN_CLAVULANATE\": \"R\",\n        \"DRUG_CEFAZOLIN\": \"R\",\n        \"DRUG_CEFEPIME\": \"S\",\n        \"DRUG_CEFOXITIN\": \"R\",\n        \"DRUG_CEFTRIAXONE\": \"S\",\n        \"DRUG_DOXYCYCLINE\": \"S\",\n        \"DRUG_FOSFOMYCIN\": \"-\",\n        \"DRUG_GENTAMICIN\": \"S\",\n        \"DRUG_NITROFURANTOIN\": \"R\",\n        \"DRUG_MEROPENEM\": \"S\",\n        \"DRUG_PIPERACILLIN_TAZOBACTAM\": \"S\",\n        \"DRUG_TRIMETHOPRIM_SULFAMETHOXAZOLE\": \"S\",\n        \"DRUG_CIPROFLOXACIN\": \"S\",\n        \"DRUG_LEVOFLOXACIN\": \"S\",\n        \"DRUG_VANCOMYCIN\": \"-\"\n      }\n    }\n  }\n}"
				}
			},
			"event": [
				{
					"listen": "test",
					"script": {
						"type": "text/javascript",
						"exec": [
							"(function () {",
							"  pm.test('Status is 200', function () { pm.response.to.have.status(200); });",
							"  var responseJson = pm.response.json();",
							"  pm.test('success is true', function () { pm.expect(responseJson.success).to.be.true; });",
							"  if (responseJson.reportId) { pm.collectionVariables.set('reportId', responseJson.reportId); }",
							"})();"
						]
					}
				}
			]
		},
		{
			"name": "Get Report (by reportId)",
			"request": {
				"method": "GET",
				"header": [
					{
						"key": "X-API-Key",
						"value": "{{apiKey}}"
					}
				],
				"url": {
					"raw": "{{baseUrl}}/api/get-report?reportId={{reportId}}",
					"host": [
						"{{baseUrl}}"
					],
					"path": [
						"api",
						"get-report"
					],
					"query": [
						{
							"key": "reportId",
							"value": "{{reportId}}"
						}
					]
				},
				"description": "Run one of the Generate requests first - it captures reportId into the collection variable automatically."
			},
			"event": [
				{
					"listen": "test",
					"script": {
						"type": "text/javascript",
						"exec": [
							"pm.test('Status is 200', () => pm.response.to.have.status(200));"
						]
					}
				}
			]
		},
		{
			"name": "Generate Report - Unauthorized (expect 401)",
			"request": {
				"method": "POST",
				"header": [
					{
						"key": "Content-Type",
						"value": "application/json"
					},
					{
						"key": "X-API-Key",
						"value": "wrong-key"
					}
				],
				"url": {
					"raw": "{{baseUrl}}/api/generate-report",
					"host": [
						"{{baseUrl}}"
					],
					"path": [
						"api",
						"generate-report"
					]
				},
				"body": {
					"mode": "raw",
					"options": {
						"raw": {
							"language": "json"
						}
					},
					"raw": "{\"mode\":\"initial_pcr\",\"case\":{}}"
				}
			},
			"event": [
				{
					"listen": "test",
					"script": {
						"type": "text/javascript",
						"exec": [
							"pm.test('Status is 401', () => pm.response.to.have.status(401));"
						]
					}
				}
			]
		}
	]
}
