canonical: https://jentic.com/apis/eyefinity.com/eyefinity-fhir-api

# Eyefinity Optometry EHR FHIR API

Jentic publishes the only available OpenAPI specification for Eyefinity Optometry EHR FHIR API, keeping it validated and agent-ready. The API exposes the Eyefinity Optometry electronic health record over the FHIR R4 standard, covering Patient, Condition, Procedure, Observation, MedicationRequest, AllergyIntolerance, Immunization, CarePlan and additional resources commonly needed for clinical reads. It is targeted at integrators building patient-record viewers, care-coordination tools, and analytics on Eyefinity-powered optometry practices.

## For AI agents

Read patient demographics, conditions, procedures, observations, medications, allergies, immunisations and care plans from Eyefinity Optometry EHR over FHIR R4 with OAuth 2.0.

## Scope

Does not handle billing, scheduling, or clinical writes - use for FHIR R4 reads of Eyefinity Optometry EHR clinical resources only.

## Capabilities

- Search and read Patient resources via /Patient and /Patient/{id}
- Retrieve clinical Condition resources for a patient through /Condition
- Pull Procedure history from /Procedure to track performed clinical actions
- Read Observation resources for vital signs and ophthalmic measurements via /Observation
- List MedicationRequest entries for active and past prescriptions
- Query AllergyIntolerance, Immunization and CarePlan resources for richer clinical context

## Use cases

### Comprehensive Patient Chart Read

Aggregate a patient's chart from Eyefinity Optometry EHR by combining Patient, Condition, Procedure, Observation, MedicationRequest, AllergyIntolerance, Immunization and CarePlan reads. Each resource follows FHIR R4 search conventions and returns a Bundle the agent can normalise into a unified view. The 27 endpoints are scoped to the practice that authorised the OAuth 2.0 token.

Example prompt: Sequentially call GET /Patient/{id}, GET /Condition?patient={id}, GET /MedicationRequest?patient={id} and GET /AllergyIntolerance?patient={id}, then assemble the responses into a single chart summary.

### Medication and Allergy Reconciliation

Pull a patient's MedicationRequest and AllergyIntolerance resources to support medication-reconciliation workflows during a visit. The data drives interaction checks, prescriber decision support, and pharmacy hand-offs without exporting the EHR's underlying database. Scopes granted by the practice determine which fields are visible.

Example prompt: Call GET /MedicationRequest?patient={id} and GET /AllergyIntolerance?patient={id}, then flag any medication whose ingredient appears in the allergy list.

### Population Observation Pull

Extract Observation resources for analytics - for example visual-acuity readings or intra-ocular pressure values - across a defined patient cohort. Use the standard FHIR _lastUpdated and category search parameters to narrow the result set, and respect the FHIR Bundle pagination links returned by the server.

Example prompt: Call GET /Observation?category=vital-signs&_lastUpdated=ge2026-01-01 and follow the Bundle next links until all pages are fetched.

### Agent-Driven Chart Summarisation via Jentic

An AI agent assisting an optometry practice can use Jentic to discover and call the relevant Eyefinity FHIR operations rather than embedding a FHIR client. The agent searches by intent, loads the operation schema, and executes the call with an OAuth 2.0 access token injected from your Jentic One instance, keeping client secrets out of the model context.

Example prompt: Through Jentic, search 'summarise an Eyefinity patient chart', load the Patient, Condition and MedicationRequest operations, and assemble a one-paragraph summary for the clinician.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /Patient | Search Patient resources |
| GET | /Patient/{id} | Read a Patient by id |
| GET | /Condition | Search Condition resources |
| GET | /MedicationRequest | Search MedicationRequest resources |
| GET | /AllergyIntolerance | Search AllergyIntolerance resources |
| GET | /Observation | Search Observation resources |
| GET | /CarePlan | Search CarePlan resources |
| GET | /Immunization | Search Immunization resources |

## Key resources

- **Patient** — Demographic search and id-based read
- **Condition** — Documented clinical conditions and diagnoses
- **Procedure** — Performed clinical procedures
- **Observation** — Vital signs and ophthalmic measurements
- **MedicationRequest** — Active and historical medication orders
- **AllergyIntolerance** — Recorded allergies and intolerances
- **Immunization** — Immunisation history
- **CarePlan** — Active and historical care plans

## Why Jentic

- **Setup:** Wiring the Eyefinity Optometry EHR FHIR API by hand means running the OAuth 2.0 flow at fhirauthority.eyefinity.com, targeting the fhirapi.eyefinity.com R4 base, and mapping FHIR search parameters across clinical resources yourself. Through Jentic you install once, import the Eyefinity Optometry EHR FHIR API from the API Directory, store the OAuth credential once, and your agent calls it.
- **Permission scoping:** This API puts the resource id in the URL path (/Patient/{id}), so a rule can pin your agent to reads of the clinical resources it needs, such as Patient, Condition, AllergyIntolerance, or Observation. You choose the operations it may call, and this surface is read-only, so no clinical writes, billing, or scheduling are included unless you add them.
- **Credential handling:** Your Eyefinity OAuth 2.0 credential is stored once, encrypted, by your own Jentic One instance and a scoped access token is injected at execution time. The client secret never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'list a patient's allergies' or 'read a patient's medications', and Jentic returns the corresponding /AllergyIntolerance or /MedicationRequest operation with its FHIR search-parameter schema so the agent calls the right endpoint without browsing the docs.

## Related APIs

- **Eyefinity EHR FHIR API** — Smaller sister API exposing only Patient and Condition reads from the Encompass EHR.
- **ezBookkeeping API** — Ledger-style bookkeeping API useful for tracking patient-billing transactions alongside clinical reads.

## FAQ

### Why is there no official OpenAPI spec for Eyefinity Optometry EHR FHIR API?

Eyefinity does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Eyefinity Optometry EHR FHIR API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Eyefinity Optometry EHR FHIR API use?

The spec declares OAuth 2.0 authorization-code flow with the authorize endpoint at https://fhirauthority.eyefinity.com/core/connect/authorize and the token endpoint at https://fhirauthority.eyefinity.com/core/connect/token. Through Jentic the resulting access token is held in the vault and not exposed to the agent.

### Can I read a patient's medications with the Eyefinity Optometry EHR FHIR API?

Yes. Issue GET /MedicationRequest?patient={id} to retrieve the FHIR R4 MedicationRequest resources for a patient, subject to the scopes granted by the authorising practice.

### Which FHIR resources are exposed in this API?

The 27-endpoint spec exposes Patient, Condition, Procedure, Observation, MedicationRequest, AllergyIntolerance, Immunization and CarePlan with both search and id-based read endpoints, alongside the FHIR /metadata capability statement.

### How do I assemble a patient chart through Jentic?

Run pip install jentic, search 'summarise an Eyefinity patient chart', then load the Patient, Condition and MedicationRequest operations and execute them in sequence; Jentic returns the FHIR Bundles ready for the agent to merge.

### What are the rate limits for the Eyefinity Optometry EHR FHIR API?

The spec does not declare explicit rate limits, so respect any 429 responses with exponential backoff and avoid wide-open searches without _lastUpdated or _count parameters during clinical hours.

### Can I limit what my agent is allowed to do with the Eyefinity Optometry EHR FHIR API?

Yes. Because you run Jentic One yourself, your own rules decide which operations and credentials the agent may use, so you can pin it to just the FHIR reads it needs, such as GET /Patient/{id}, GET /Condition, GET /AllergyIntolerance, or GET /Observation. This API puts the resource id in the URL path, and the whole surface is read-only, so no clinical writes, billing, or scheduling are ever included. You choose the exact operations the agent can call, and the scoped OAuth 2.0 token is injected at execution time rather than handed to the model.
