The patient portal page guides existing patients to your online tools — appointment scheduling, medical records, test results, and messaging. When a patient asks "how do I log into my patient portal?" or "schedule an appointment at this clinic online," AI pulls from the structured data here to provide direct answers.
Patient portals are a top query for existing patients. Structured data on this page lets AI direct patients to the exact tool they need — whether it is booking an appointment, viewing results, or requesting a prescription refill.
ReserveAction for appointment scheduling and direct URLs for portal login give AI actionable links to provide patients.MedicalClinic entity ensures AI links these tools to your practice.WebApplication for the portal itself tells AI this is a functional tool, not just informational content.Each field in the template below serves a specific role in how AI systems discover, classify, and recommend your business.
Researched and tested by Minnesota AI
nameurlCopy this prompt and paste it into Claude, ChatGPT, Cursor, or any AI coding tool. It will ask for your business details and generate ready-to-use JSON-LD schema for your page.
You are implementing AIFDS-compliant JSON-LD structured data for a Medical Clinic Patient Portal page. AIFDS (AI-Friendly Data Structure) is a schema framework built on research into which structured data fields AI systems actually read, parse, and use when deciding whether to cite a page. Documentation at aifds.org. Before generating any code, ask me for the following information in a single numbered list. Do not generate schema until I have answered every required field. REQUIRED — do not proceed without these: 1. Clinic name 2. Domain 3. Faq answer 4. Faq question 5. Portal url 6. Scheduling url OPTIONAL — ask for these but proceed if I skip them: 1. Any additional details not covered above Once I provide the information, output a complete JSON-LD script block ready to paste into the <head> of my HTML page. Output requirements: - Valid JSON-LD wrapped in <script type="application/ld+json"> tags - schema.org vocabulary only - Every AIFDS-required field for this industry and page type included - Include this data attribute on the script tag: data-aifds="aifds.org Medical Clinic Patient Portal" - No placeholder text — omit missing optional fields rather than fill with examples - After the code block, list any optional fields skipped that would strengthen AI citation
Generated schema follows the AIFDS framework. Fields were selected based on research into AI crawler behavior. View the research at minnesota.ai
Copy the template below and replace every YOUR_* value with your own data. This block belongs in a <script type="application/ld+json"> tag in the <head> of your patient portal page.
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "MedicalClinic",
"@id": "https://YOUR_DOMAIN.com/#clinic",
"name": "YOUR_CLINIC_NAME",
"url": "https://YOUR_DOMAIN.com",
"potentialAction": [
{
"@type": "ReserveAction",
"name": "Schedule an Appointment",
"target": {
"@type": "EntryPoint",
"urlTemplate": "https://YOUR_DOMAIN.com/YOUR_SCHEDULING_URL/",
"actionPlatform": [
"http://schema.org/DesktopWebPlatform",
"http://schema.org/MobileWebPlatform"
]
}
}
]
},
{
"@type": "WebApplication",
"name": "YOUR_CLINIC_NAME Patient Portal",
"url": "https://YOUR_PORTAL_URL.com",
"applicationCategory": "HealthApplication",
"operatingSystem": "Web",
"offers": {
"@type": "Offer",
"price": "0",
"priceCurrency": "USD"
},
"featureList": [
"Online Appointment Scheduling",
"Medical Records Access",
"Test Results Viewing",
"Prescription Refill Requests",
"Secure Messaging"
],
"sourceOrganization": {
"@id": "https://YOUR_DOMAIN.com/#clinic"
}
},
{
"@type": "WebPage",
"@id": "https://YOUR_DOMAIN.com/patient-portal/#webpage",
"url": "https://YOUR_DOMAIN.com/patient-portal/",
"name": "Patient Portal — YOUR_CLINIC_NAME",
"description": "Access your medical records, schedule appointments, view test results, and message your provider online.",
"isPartOf": { "@id": "https://YOUR_DOMAIN.com/#website" },
"about": { "@id": "https://YOUR_DOMAIN.com/#clinic" }
},
{
"@type": "BreadcrumbList",
"@id": "https://YOUR_DOMAIN.com/patient-portal/#breadcrumb",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "Home", "item": "https://YOUR_DOMAIN.com/" },
{ "@type": "ListItem", "position": 2, "name": "Patient Portal", "item": "https://YOUR_DOMAIN.com/patient-portal/" }
]
},
{
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "YOUR_FAQ_QUESTION_1",
"acceptedAnswer": {
"@type": "Answer",
"text": "YOUR_FAQ_ANSWER_1"
}
},
{
"@type": "Question",
"name": "YOUR_FAQ_QUESTION_2",
"acceptedAnswer": {
"@type": "Answer",
"text": "YOUR_FAQ_ANSWER_2"
}
},
{
"@type": "Question",
"name": "YOUR_FAQ_QUESTION_3",
"acceptedAnswer": {
"@type": "Answer",
"text": "YOUR_FAQ_ANSWER_3"
}
}
]
}
]
}
Yes. A WebApplication node tells AI that this is a functional tool patients can use, not just an informational page. Include the featureList to enumerate what patients can do — scheduling, records access, messaging — so AI can answer "can I book an appointment online?" directly.
Include the portal URL in the WebApplication node. When patients ask "how do I log into my patient portal?", AI can provide the direct link. Just ensure the URL points to the login page, not to authenticated content.
If your portal is hosted by a third party (MyChart, Athena, etc.), use the third-party URL as the WebApplication URL and your clinic as the sourceOrganization. This tells AI the portal belongs to your clinic even though it is hosted externally. Include the portal provider name if patients commonly search for it.