{
"description": "Requirements for the CTM Matching Service participating in USCDI+ CTM. This CapabilityStatement primarily applies to Sponsor-initiated Trial Matching, where the CTM Matching Service acts as a FHIR RESTful client and retrieves CTM-relevant data from a Provider FHIR Server. In Provider-initiated Trial Matching, the CTM Matching Service acts as a CDS Hooks service and responds to requests from the Provider System; that CDS Hooks behavior is described elsewhere in this guide and is not fully represented by this CapabilityStatement.",
"_filename": "CapabilityStatement-CTMMatchingService.json",
"package_name": "test.fhir.onc.ctm",
"format": [ "json", "xml" ],
"date": "2026-04-15",
"publisher": null,
"fhirVersion": "4.0.1",
"name": "CTMMatchingService",
"type": null,
"experimental": null,
"resourceType": "CapabilityStatement",
"title": "CTM Matching Service CapabilityStatement",
"package_version": "0.1.0",
"status": "active",
"id": "1dfa0478-6ef3-4aa2-88c8-744cd038ffc3",
"kind": "requirements",
"url": "http://fhir.org/guides/onc/ctm/CapabilityStatement/CTMMatchingService",
"version": "0.1.0",
"rest": [ {
"mode": "client",
"resource": [ {
"type": "Patient",
"interaction": [ {
"code": "read"
}, {
"code": "search-type"
} ],
"searchParam": [ {
"name": "_id",
"type": "token",
"documentation": "Retrieve a known patient by logical id."
}, {
"name": "identifier",
"type": "token",
"documentation": "Retrieve a patient by business identifier when needed."
} ],
"documentation": "Baseline USCDI+ CTM patient identity and demographic context for Sponsor-initiated retrieval. In the Provider-initiated scenario, equivalent patient context is commonly supplied through prefetch.",
"supportedProfile": [ "http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|6.1.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-cancer-patient|4.0.0" ]
}, {
"type": "Condition",
"interaction": [ {
"code": "read"
}, {
"code": "search-type"
} ],
"searchParam": [ {
"name": "patient",
"type": "reference",
"documentation": "Primary patient-level retrieval parameter."
}, {
"name": "category",
"type": "token",
"documentation": "Used for problem-list condition context when supported."
}, {
"name": "code",
"type": "token",
"documentation": "Used when implementations support more specific condition filtering."
} ],
"documentation": "Baseline CTM condition context including diagnosis, disease-site, and histology context. The Provider-initiated prefetch often separates condition content into problem-list and site-oriented groupings.",
"supportedProfile": [ "http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition-problems-health-concerns|6.1.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-primary-cancer-condition|4.0.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-secondary-cancer-condition|4.0.0" ]
}, {
"type": "Observation",
"interaction": [ {
"code": "read"
}, {
"code": "search-type"
} ],
"searchParam": [ {
"name": "patient",
"type": "reference",
"documentation": "Primary patient-level retrieval parameter."
}, {
"name": "code",
"type": "token",
"documentation": "Used to retrieve specific CTM observation types."
}, {
"name": "category",
"type": "token",
"documentation": "Used to distinguish laboratory observations when supported."
}, {
"name": "date",
"type": "date",
"documentation": "May be used to refine timing or recency."
} ],
"documentation": "Baseline CTM observation content including performance status, smoking status, laboratory data, pregnancy status, comorbidities, general and TNM staging. The Provider-initiated prefetch uses observation-specific templates aligned to the USCDI+ CTM data model.",
"supportedProfile": [ "http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab|6.1.0", "http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-pregnancystatus|6.1.0", "http://hl7.org/fhir/us/core/StructureDefinition/us-core-smokingstatus|6.1.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-ecog-performance-status|4.0.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-karnofsky-performance-status|4.0.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-lansky-play-performance-status|4.0.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-comorbidities|4.0.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-cancer-stage|4.0.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-tnm-primary-tumor-category|4.0.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-tnm-regional-nodes-category|4.0.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-tnm-distant-metastases-category|4.0.0" ]
}, {
"type": "MedicationAdministration",
"interaction": [ {
"code": "read"
}, {
"code": "search-type"
} ],
"searchParam": [ {
"name": "patient",
"type": "reference",
"documentation": "Primary patient-level retrieval parameter."
}, {
"name": "status",
"type": "token",
"documentation": "May be used to refine administrations when supported."
}, {
"name": "code",
"type": "token",
"documentation": "May be used when implementations support medication-specific filtering."
}, {
"name": "medication.code",
"type": "token",
"documentation": "Chained search across the medication reference into the Medication resource, e.g. MedicationAdministration?medication.code=..., to retrieve administrations by medication identity."
} ],
"documentation": "Baseline CTM medication administration content. Medication identity is resolved through the referenced Medication resource, either by chaining on the medication reference or by a separate Medication read.",
"supportedProfile": [ "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-cancer-related-medication-administration|4.0.0" ]
}, {
"type": "Medication",
"interaction": [ {
"code": "read"
} ],
"documentation": "Referenced Medication identity supporting MedicationAdministration. Retrieved by read only; there is no direct Medication search. Medication-based filtering of administrations is expressed through chained search on MedicationAdministration.",
"supportedProfile": [ "http://hl7.org/fhir/us/core/StructureDefinition/us-core-medication|6.1.0" ]
}, {
"type": "Procedure",
"interaction": [ {
"code": "read"
}, {
"code": "search-type"
} ],
"searchParam": [ {
"name": "patient",
"type": "reference",
"documentation": "Primary patient-level retrieval parameter."
}, {
"name": "code",
"type": "token",
"documentation": "May be used when implementations support more specific procedure filtering."
}, {
"name": "date",
"type": "date",
"documentation": "May be used to refine timing."
} ],
"documentation": "Baseline CTM procedure content including general procedures and radiotherapy-related details. The Provider-initiated may represent these through procedures and procedures-radiotherapy prefetch groupings.",
"supportedProfile": [ "http://hl7.org/fhir/us/core/StructureDefinition/us-core-procedure|6.1.0", "http://hl7.org/fhir/us/mcode/StructureDefinition/mcode-radiotherapy-course-summary|4.0.0" ]
} ],
"security": {
"description": "For Sponsor-initiated Trial Matching, backend FHIR access should use the deployment's approved authorization approach, such as SMART Backend Services or an equivalent system-to-system authorization mechanism. For Provider-initiated Trial Matching, optional follow-up FHIR retrieval may occur only if the Provider System supplies the necessary FHIR server and authorization context. This CapabilityStatement does not define CDS Hooks security behavior in detail."
},
"documentation": "Sponsor-initiated Trial Matching: the CTM Matching Service acts as the FHIR RESTful client. It initiates authorized FHIR read and search requests to the Provider FHIR Server and retrieves the baseline USCDI+ CTM resource types needed for matching. Provider-initiated Trial Matching: the CTM Matching Service acts as a CDS Hooks service that responds to a request sent by the Provider System / CDS Client and returns CDS Hooks cards. That CDS Hooks interaction is referenced here for context but is specified elsewhere in the guide."
} ]
}