naftiko: 1.0.0-alpha2 info: label: Fast Healthcare Interoperability Resources (FHIR) — Patient description: 'Fast Healthcare Interoperability Resources (FHIR) — Patient. 9 operations. Lead operation: Fast Healthcare Interoperability Resources Search all resources of type Patient based on a set of criteria. Self-contained Naftiko capability covering one Fhir business surface.' tags: - Fhir - Patient created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: FHIR_API_KEY: FHIR_API_KEY capability: consumes: - type: http namespace: fhir-patient baseUri: '' description: Fast Healthcare Interoperability Resources (FHIR) — Patient business capability. Self-contained, no shared references. resources: - name: Patient path: /Patient operations: - name: searchpatient method: GET description: Fast Healthcare Interoperability Resources Search all resources of type Patient based on a set of criteria outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: _id in: query type: string description: '**Logical id of this artifact** ' - name: birthdate in: query type: string description: '**The patient''s date of birth** ' - name: death-date in: query type: string description: '**The date of death has been provided and satisfies this search value** ' - name: family in: query type: string description: '**A portion of the family name of the patient** ' - name: gender in: query type: string description: '**Gender of the patient** ' - name: given in: query type: string description: '**A portion of the given name of the patient** ' - name: identifier in: query type: string description: '**A patient identifier** ' - name: name in: query type: string description: '**A server defined search that may match any of the string fields in the HumanName, including family, give, prefix, suffix, suffix, and/or text** ' - name: createpatient method: POST description: Fast Healthcare Interoperability Resources Create a new resource outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: Patient-_history path: /Patient/_history operations: - name: histtypepatient method: GET description: Fast Healthcare Interoperability Resources Read the past states of the resource outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: _since in: query type: string description: Only include resource versions that were created at or after the given instant in time - name: _at in: query type: string description: Only include resource versions that were current at some point during the time period specified in the date time value (see Search notes on date searching) - name: _list in: query type: string description: Only include resource versions that are referenced in the specified list (current list references are allowed) - name: Patient-rid path: /Patient/{rid} operations: - name: readpatient method: GET description: Fast Healthcare Interoperability Resources Read the current state of the resource outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatepatient method: PUT description: Fast Healthcare Interoperability Resources Update the current state of the resource outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: patchpatient method: PATCH description: Fast Healthcare Interoperability Resources Change the current state of the resource by providing a patch - a series of change commands outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletepatient method: DELETE description: Fast Healthcare Interoperability Resources Delete the resource so that it no exists (no read, search etc) outputRawFormat: json outputParameters: - name: result type: object value: $. - name: Patient-rid-_history path: /Patient/{rid}/_history operations: - name: histinstpatient method: GET description: Fast Healthcare Interoperability Resources Read the past states of the resource outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: _since in: query type: string description: Only include resource versions that were created at or after the given instant in time - name: _at in: query type: string description: Only include resource versions that were current at some point during the time period specified in the date time value (see Search notes on date searching) - name: _list in: query type: string description: Only include resource versions that are referenced in the specified list (current list references are allowed) - name: Patient-rid-_history-hid path: /Patient/{rid}/_history/{hid} operations: - name: vreadpatient method: GET description: Fast Healthcare Interoperability Resources Read a past state of the resource outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: fhir-patient-rest port: 8080 description: REST adapter for Fast Healthcare Interoperability Resources (FHIR) — Patient. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/patient name: patient description: REST surface for Patient. operations: - method: GET name: searchpatient description: Fast Healthcare Interoperability Resources Search all resources of type Patient based on a set of criteria call: fhir-patient.searchpatient with: _id: rest._id birthdate: rest.birthdate death-date: rest.death-date family: rest.family gender: rest.gender given: rest.given identifier: rest.identifier name: rest.name outputParameters: - type: object mapping: $. - method: POST name: createpatient description: Fast Healthcare Interoperability Resources Create a new resource call: fhir-patient.createpatient with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/patient/history name: patient-history description: REST surface for Patient-_history. operations: - method: GET name: histtypepatient description: Fast Healthcare Interoperability Resources Read the past states of the resource call: fhir-patient.histtypepatient with: _since: rest._since _at: rest._at _list: rest._list outputParameters: - type: object mapping: $. - path: /v1/patient/{rid} name: patient-rid description: REST surface for Patient-rid. operations: - method: GET name: readpatient description: Fast Healthcare Interoperability Resources Read the current state of the resource call: fhir-patient.readpatient outputParameters: - type: object mapping: $. - method: PUT name: updatepatient description: Fast Healthcare Interoperability Resources Update the current state of the resource call: fhir-patient.updatepatient with: body: rest.body outputParameters: - type: object mapping: $. - method: PATCH name: patchpatient description: Fast Healthcare Interoperability Resources Change the current state of the resource by providing a patch - a series of change commands call: fhir-patient.patchpatient with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletepatient description: Fast Healthcare Interoperability Resources Delete the resource so that it no exists (no read, search etc) call: fhir-patient.deletepatient outputParameters: - type: object mapping: $. - path: /v1/patient/{rid}/history name: patient-rid-history description: REST surface for Patient-rid-_history. operations: - method: GET name: histinstpatient description: Fast Healthcare Interoperability Resources Read the past states of the resource call: fhir-patient.histinstpatient with: _since: rest._since _at: rest._at _list: rest._list outputParameters: - type: object mapping: $. - path: /v1/patient/{rid}/history/{hid} name: patient-rid-history-hid description: REST surface for Patient-rid-_history-hid. operations: - method: GET name: vreadpatient description: Fast Healthcare Interoperability Resources Read a past state of the resource call: fhir-patient.vreadpatient outputParameters: - type: object mapping: $. - type: mcp namespace: fhir-patient-mcp port: 9090 transport: http description: MCP adapter for Fast Healthcare Interoperability Resources (FHIR) — Patient. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: fast-healthcare-interoperability-resources-search description: Fast Healthcare Interoperability Resources Search all resources of type Patient based on a set of criteria hints: readOnly: true destructive: false idempotent: true call: fhir-patient.searchpatient with: _id: tools._id birthdate: tools.birthdate death-date: tools.death-date family: tools.family gender: tools.gender given: tools.given identifier: tools.identifier name: tools.name outputParameters: - type: object mapping: $. - name: fast-healthcare-interoperability-resources-create description: Fast Healthcare Interoperability Resources Create a new resource hints: readOnly: false destructive: false idempotent: false call: fhir-patient.createpatient with: body: tools.body outputParameters: - type: object mapping: $. - name: fast-healthcare-interoperability-resources-read description: Fast Healthcare Interoperability Resources Read the past states of the resource hints: readOnly: true destructive: false idempotent: true call: fhir-patient.histtypepatient with: _since: tools._since _at: tools._at _list: tools._list outputParameters: - type: object mapping: $. - name: fast-healthcare-interoperability-resources-read-2 description: Fast Healthcare Interoperability Resources Read the current state of the resource hints: readOnly: true destructive: false idempotent: true call: fhir-patient.readpatient outputParameters: - type: object mapping: $. - name: fast-healthcare-interoperability-resources-update description: Fast Healthcare Interoperability Resources Update the current state of the resource hints: readOnly: false destructive: false idempotent: true call: fhir-patient.updatepatient with: body: tools.body outputParameters: - type: object mapping: $. - name: fast-healthcare-interoperability-resources-change description: Fast Healthcare Interoperability Resources Change the current state of the resource by providing a patch - a series of change commands hints: readOnly: false destructive: false idempotent: true call: fhir-patient.patchpatient with: body: tools.body outputParameters: - type: object mapping: $. - name: fast-healthcare-interoperability-resources-delete description: Fast Healthcare Interoperability Resources Delete the resource so that it no exists (no read, search etc) hints: readOnly: false destructive: true idempotent: true call: fhir-patient.deletepatient outputParameters: - type: object mapping: $. - name: fast-healthcare-interoperability-resources-read-3 description: Fast Healthcare Interoperability Resources Read the past states of the resource hints: readOnly: true destructive: false idempotent: true call: fhir-patient.histinstpatient with: _since: tools._since _at: tools._at _list: tools._list outputParameters: - type: object mapping: $. - name: fast-healthcare-interoperability-resources-read-4 description: Fast Healthcare Interoperability Resources Read a past state of the resource hints: readOnly: true destructive: false idempotent: true call: fhir-patient.vreadpatient outputParameters: - type: object mapping: $.