נקודות הקצה של ה-API לבדיקות דם

עדכון אחרון:

מדריך מלא לכל נקודות הקצה של Kantesti API עם דוגמאות קוד במספר שפות תכנות.

חדש ב-23 בספטמבר 2026: ממשק בריאות DNA

אנו גאים להכריז על שלושה מודולי DNA חדשים ב-Kantesti API. פענוח בדיקות DNA הופך נתוני DNA גולמיים או דוח גנטי לדוח בריאות גנטי מקיף, דוח הבריאות DNA + דם משלב אותו עם בדיקת דם, ויועץ תוספי התזונה כותב תוכנית תוספי תזונה מותאמת אישית עם המוצרים של המרפאה שלך. למפרט המלא של ממשק בריאות DNA.

כתובת URL בסיסית
https://app.aibloodtestinterpret.com

יומן שינויים

עקוב אחר גרסאות API, עדכונים ומידע על מיגרציה. השתמש בנקודות הקצה המומלצות לאינטגרציות חדשות.

עדכונים אחרונים (2026)

כל שלושת העדכונים של 2026 יושמו בכל גרסאות ה-API המפורטות להלן. מספרי הגרסאות ונתיבי נקודות הקצה לא השתנו, ולכן אין צורך במיגרציה.

  • 8 בספטמבר 2026 עדכון מודל ה-AI ושיפורים בכל רחבי הפלטפורמה
  • 21 ביולי 2026 שיפורים מקיפים ותיקוני באגים
  • 8 במאי 2026 שיפורים מקיפים ותיקוני באגים

נקודות קצה יציבות נוכחיות

נקודות קצה אלו מומלצות לשימוש בייצור ולאינטגרציות חדשות.

APIנקודת קצהסטטוס
ניתוח בדיקות דם v12 /api/v12/18-09-2026/analyze מומלץ חדש 18.09.2026
ניתוח בדיקות דם (ציון בריאות) v12 /api/v12/health-score/analyze מומלץ חדש 18.09.2026
מפת הגוף v1 /api/v1/body-map/analyze שוחרר 18.09.2026 חדש
גיל הדם הביולוגי v1 /api/v1/blood-age/analyze שוחרר 18.09.2026 חדש
פענוח בדיקות DNA v1 /api/v1/dna-interpretation/analyze שוחרר 23.09.2026 חדש
דוח בריאות DNA + דם v1 /api/v1/dna-blood-report/analyze שוחרר 23.09.2026 חדש
יועץ תוספי תזונה מבוסס DNA v1 /api/v1/dna-supplements/analyze שוחרר 23.09.2026 חדש
ניתוח בדיקות דם v11 /api/v11/01-06-2025/analyze יציב עודכן 08.09.2026
ניתוח בדיקות דם (ציון בריאות) v11 /api/v11/health-score/analyze יציב עודכן 08.09.2026
AI תזונה v1 /api/v1/nutrition/diet-plan/analyze יציב עודכן 08.09.2026
השוואת AI לבדיקות דם v1 /api/v1/bloodtest/comparison/analyze יציב עודכן 08.09.2026
הערכת סיכוני בריאות משפחתית v1 /api/v1/family-health/analyze שוחרר 23.03.2026 עודכן 08.09.2026
ICR - זיהוי תווים אינטליגנטי v1 /api/icr/v1/extract שוחרר 14.02.2026 עודכן 08.09.2026
ICR Kan - חילוץ בדיקות דם v1 /api/icr/v1/kan שוחרר 14.02.2026 עודכן 08.09.2026
ניתוח מגמות v1 /api/v1/analytics/trends/analyze יציב עודכן 08.09.2026

היסטוריית גרסאות

תאריךגרסהשינויים
23 בספטמבר 2026 פענוח בדיקות DNA v1, דוח בריאות DNA + דם v1, יועץ תוספי תזונה מבוסס DNA v1 ממשק בריאות DNA שוחרר — פענוח בדיקות DNA מנתוני DNA גולמיים (23andMe, AncestryDNA, MyHeritage, FTDNA, LivingDNA, VCF) או מקובצי דוח גנטי מול 334 סמנים נבחרים, דוח בריאות משולב DNA + דם, ויועץ תוספי תזונה העובד עם קטלוג המוצרים של המרפאה; מצב אסינכרוני ומצב Sandbox
ספטמבר 2026 ניתוח בדיקות דם v12 ניתוח בדיקות דם v12 שוחרר — העלאת קבצים מרובים, דיווח ב-100 שפות, ציון בריאות וניתוח סיכוני מחלות אופציונליים, מצב Sandbox
ספטמבר 2026 מפת הגוף v1, גיל הדם הביולוגי v1 ממשק מפת הגוף וממשק גיל הדם הביולוגי שוחררו — מיפוי ברמת האיבר של תוצאות החורגות מהטווח על פני 13 אזורים אנטומיים, וגיל ביולוגי לפי PhenoAge עם עד 18 מדדים קליניים נגזרים; שניהם מציעים מצב דטרמיניסטי ו-Sandbox
ספטמבר 2026 כל הגרסאות עדכון מודל ה-AI והצמדתו לגרסת המודל העדכנית ביותר; שיפורים מקיפים ותיקוני באגים בכל גרסאות ה-API; מספרי הגרסאות ללא שינוי; דיוק של 98.89% בבחינות של פקולטות לרפואה (מבחן הביצועים האחרון בקוד פתוח)
יולי 2026 כל הגרסאות שיפורים מקיפים ותיקוני באגים יושמו בכל גרסאות ה-API; מספרי הגרסאות ללא שינוי
מאי 2026 כל הגרסאות שיפורים מקיפים ותיקוני באגים יושמו בכל גרסאות ה-API; מספרי הגרסאות ללא שינוי
מרץ 2026 Family Health v1 ממשק הערכת סיכוני בריאות משפחתית שוחרר — ניתוח סיכונים תורשתיים באמצעות AI, תמיכה ביותר מ-100 שפות, ניתוח עץ משפחתי, לוח זמנים לטיפול מונע, המלצות לבדיקות גנטיות, מצב ארגז חול
פברואר 2026 ICR v1 API ICR (זיהוי תווים אינטליגנטי) שוחרר — מהיר ב-79% מ-OCR, פלט JSON מובנה, זיהוי סוג מסמך, חילוץ טבלאות, אינטגרציית Kan לבדיקות דם
דצמבר 2025 אחרונה טיפול משופר בשגיאות, דיוק 98.7%, תמיכה ב-100 שפות
יוני 2025 v11 ניתוח בדיקות דם v11, נקודת קצה ציון בריאות, תמיכה בקבצים מרובים
אפריל 2025 v9 מודל api_parameters_v9, חילוץ פרמטרים משופר
מרץ 2025 v8 תמיכה בהעלאת קבצים מרובים, עיבוד אצווה

נקודות קצה ישנות

נקודות קצה אלו נשמרות לתאימות לאחור אך אינן מומלצות לאינטגרציות חדשות.

גרסהנקודת קצהסטטוס
v10 /api/v10/health-score/analyze ישן
v9 /api/v9/14-04-2025/analyze ישן
v8 /api/v8/31-03-2025/analyze ישן
v6 /api/v6-1/21-11-2024/analyze ישן
v3 /api/v3/10-10-2024/analyze ישן
הערה

נקודות קצה ישנות נשמרות לתאימות לאחור אך אינן מומלצות לאינטגרציות חדשות. אנא עברו לנקודות הקצה היציבות הנוכחיות לביצועים ותמיכה טובים יותר.

שפות נתמכות

ה-API של Kantesti תומך ב-100 שפות ללוקליזציה של תגובות. השתמש בפרמטר language עם אחד מקודי ISO 639-1 המפורטים להלן. אם לא צוין, התגובות מוחזרות באנגלית (en) כברירת מחדל.

שפת ברירת מחדל

אם לא מסופק פרמטר language, ה-API מחזיר תגובות באנגלית (en).

שפות עולמיות עיקריות

קודשפהשם מקורי
enאנגליתEnglish
zhסינית中文
esספרדיתEspañol
arערביתالعربية
hiהינדיहिन्दी
ptפורטוגזיתPortuguês
ruרוסיתРусский
jaיפנית日本語
frצרפתיתFrançais
deגרמניתDeutsch
koקוריאנית한국어
trטורקיתTürkçe

שפות אירופיות

קודשפהשם מקורי
itאיטלקיתItaliano
nlהולנדיתNederlands
plפולניתPolski
elיווניתΕλληνικά
svשוודיתSvenska
ukאוקראיניתУкраїнська

שפות המזרח התיכון ומרכז אסיה

קודשפהשם מקורי
heעבריתעברית
faפרסיתفارسی
azאזריתAzərbaycan
kaגאורגיתქართული

שפות דרום אסיה

קודשפהשם מקורי
bnבנגליתবাংলা
taטמיליתதமிழ்
urאורדוاردو

שפות דרום מזרח אסיה

קודשפהשם מקורי
idאינדונזיתBahasa Indonesia
thתאילנדיתไทย
viוייטנאמיתTiếng Việt

שפות אפריקאיות

קודשפהשם מקורי
afאפריקאנסAfrikaans
swסווהיליKiswahili
amאמהריתአማርኛ

שפות אחרות

קודשפהשם מקורי
laלטיניתLatina
eoאספרנטוEsperanto
yiיידישייִדיש
htקריאולית האיטיתKreyòl Ayisyen
miמאוריתTe Reo Māori
smסמואיתGagana Samoa
toטונגיתLea Faka-Tonga
hawהוואיתʻŌlelo Hawaiʻi

API לניתוח בדיקות דם

נתח תמונות או קובצי PDF של בדיקות דם באמצעות AI כדי לחלץ פרמטרים ולייצר פרשנויות רפואיות מקיפות.

POST /api/v12/18-09-2026/analyze אחרונה

נקודת קצה ייצור לניתוח בדיקות דם. העלה תמונה אחת או יותר של בדיקת דם או קובץ PDF וקבל פרמטרים מובנים, מטא-נתונים של המטופל והמעבדה ופרשנות קלינית מלאה בכל אחת מ-100 השפות הנתמכות. צורכת קרדיט אחד לכל בקשה.

פרמטרי בקשה

פרמטרסוגנדרשתיאור
usernamestringכןשם משתמש API
passwordstringכןסיסמת API
filefileכןתמונת בדיקת דם (PNG, JPG, WEBP) או PDF. מקסימום 20MB. חזור על השדה כדי לשלוח מספר תמונות.
languagestringלאקוד שפת התגובה (ברירת מחדל: en). ראה שפות נתמכות.
pdf_passwordstringלאסיסמה לקובצי PDF מוצפנים

דוגמת cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v12/18-09-2026/analyze" \
  -F "username=שם_משתמש" \
  -F "password=סיסמה" \
  -F "language=he" \
  -F "file=@blood_test.pdf"

דוגמת Python

import requests

def analyze_blood_test(file_paths, username, password, language="he"):
    """
    ניתוח בדיקת דם באמצעות Kantesti Blood Test Analysis v12.

    Args:
        file_paths: נתיב אחד או יותר לתמונות בדיקת דם, או קובץ PDF יחיד
        username: שם משתמש API
        password: סיסמת API
        language: קוד שפת הדוח (ברירת מחדל: he)

    Returns:
        dict: פרמטרים מובנים, מטא-נתונים ופרשנות קלינית
    """
    url = "https://app.aibloodtestinterpret.com/api/v12/18-09-2026/analyze"

    handles = [open(path, "rb") for path in file_paths]
    try:
        files = [("file", (path, handle)) for path, handle in zip(file_paths, handles)]
        data = {"username": username, "password": password, "language": language}
        response = requests.post(url, files=files, data=data, timeout=300)
        response.raise_for_status()
        return response.json()
    finally:
        for handle in handles:
            handle.close()

result = analyze_blood_test(
    file_paths=["blood_test.pdf"],
    username="your_username",
    password="your_password",
    language="he"
)
for param in result["data"]["parameters"]:
    print(f"{param['short_name']}: {param['result']} {param['unit']} ({param['evaluation']})")

דוגמת תגובה

{
  "status": "success",
  "api_version": "v12",
  "data": {
    "metadata": {
      "patient_name": "Jan Novak",
      "patient_age": "45",
      "patient_sex": "Male",
      "lab_name": "BioLAB Medical Center",
      "lab_city": "Prague",
      "lab_country": "Czech Republic",
      "lab_date": "2026-09-11",
      "results_date": "2026-09-12"
    },
    "parameters": [
      {"short_name": "Glucose", "long_name": "Fasting Blood Glucose", "result": "92", "unit": "mg/dL", "reference_range": "74 - 100", "range_normal_min": 74, "range_normal_max": 100, "type": "range", "evaluation": "normal"},
      {"short_name": "ALT", "long_name": "Alanine aminotransferase", "result": "65", "unit": "U/L", "reference_range": "< 45", "range_normal_min": 7, "range_normal_max": 45, "type": "range", "evaluation": "high"},
      {"short_name": "Creatinine", "long_name": "Creatinine", "result": "0.9", "unit": "mg/dL", "reference_range": "0.7 - 1.2", "range_normal_min": 0.7, "range_normal_max": 1.2, "type": "range", "evaluation": "normal"}
    ],
    "interpretation": [
      {"shortcode": "overview", "item": "Most parameters are within their reference ranges."},
      {"shortcode": "key_findings", "item": "Alanine aminotransferase is above the reference range, which warrants a follow-up liver panel."}
    ]
  },
  "timestamp": "2026-09-18T10:30:00Z"
}
מילות מפתח תגובה

השדה evaluation משתמש בערכים סטנדרטיים. ראה ערכי הערכה.

POST /api/v11/01-06-2025/analyze יציב

נקודת קצה ייצור לניתוח דם. צורכת קרדיט אחד לכל בקשה.

פרמטרי בקשה

פרמטרסוגנדרשתיאור
usernamestringכןשם המשתמש שלך ל-API
passwordstringכןסיסמת ה-API שלך
filefileכןתמונת בדיקת דם (PNG, JPG, WEBP) או PDF. מקסימום 20MB.
languagestringלאקוד שפת תגובה (ברירת מחדל: en). תומך ביותר מ-100 שפות.

דוגמה cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v11/01-06-2025/analyze" \
  -F "username=שם_משתמש" \
  -F "password=סיסמה" \
  -F "language=he" \
  -F "file=@blood_test.pdf"

דוגמה Python

import requests

def analyze_blood_test(file_path: str, username: str, password: str, language: str = "he"):
    """
    נתח קובץ בדיקת דם עם Kantesti API.

    Args:
        file_path: נתיב ל-PDF או תמונת בדיקת הדם
        username: שם משתמש API
        password: סיסמת API
        language: קוד שפת תגובה (ברירת מחדל: he)

    Returns:
        dict: תגובת API עם תוצאות ניתוח
    """
    url = "https://app.aibloodtestinterpret.com/api/v11/01-06-2025/analyze"

    with open(file_path, "rb") as f:
        files = {"file": (file_path, f, "application/pdf")}
        data = {
            "username": username,
            "password": password,
            "language": language
        }

        response = requests.post(url, files=files, data=data, timeout=120)
        response.raise_for_status()
        return response.json()

# דוגמה לשימוש
if __name__ == "__main__":
    result = analyze_blood_test(
        file_path="blood_test.pdf",
        username="your_username",
        password="your_password",
        language="he"
    )
    print(f"סטטוס: {result['status']}")
    print(f"פרמטרים שנמצאו: {len(result['data']['parameters'])}")

דוגמה לתגובה

{
  "status": "success",
  "data": {
    "metadata": {
      "patient_name": "Jan Novák",
      "lab_name": "מרכז רפואי BioLAB",
      "lab_city": "תל אביב",
      "lab_country": "ישראל",
      "lab_date": "2025-05-11",
      "patient_age": "45",
      "patient_sex": "זכר"
    },
    "parameters": [
      {
        "short_name": "WBC",
        "long_name": "תאי דם לבנים",
        "category": "ספירת דם מלאה",
        "result": 7.2,
        "unit": "10^9/L",
        "evaluation": "תקין",
        "range_min": 2.0,
        "range_max": 12.0,
        "range_normal_min": 4.0,
        "range_normal_max": 10.0,
        "short_description": "מודד את המספר הכולל של תאי דם לבנים בדם.",
        "long_description": "תאי דם לבנים (לויקוציטים) חיוניים לתפקוד מערכת החיסון..."
      }
    ],
    "interpretation": [
      {
        "title": "הערכת בריאות כללית",
        "shortcode": "overall_health_assessment",
        "subsections": [...]
      }
    ]
  },
  "api_version": "v11",
  "timestamp": "2025-12-22T10:30:00Z"
}

הפניית שדות תגובה

רמה שורשית
שדהסוגתיאור
statusstring"success" או "error"
dataobjectמכיל את כל תוצאות הניתוח
timestampstringחותמת זמן ISO 8601 של התגובה
api_versionstringגרסת ה-API שבשימוש
אובייקט data.metadata
שדהסוגתיאור
lab_datestringתאריך לקיחת דם (YYYY-MM-DD)
results_datestringתאריך הפקת תוצאות (YYYY-MM-DD)
lab_namestringשם המעבדה
lab_citystringעיר המעבדה
lab_countrystringמדינת המעבדה
patient_namestringשם מלא של המטופל (מטא-נתונים בלבד, לא נשלח לפרשנות)
patient_agestringגיל המטופל
patient_sexstring"male", "female" או "other"
אלמנט מערך data.parameters
שדהסוגתיאור
categorystringקטגוריית פרמטר (לדוגמה: "ספירת דם מלאה", "פרופיל שומנים")
long_namestringשם פרמטר מלא
short_namestringשם פרמטר מקוצר
resultstringערך נמדד
unitstringיחידת מידה
range_minstringטווח ייחוס מינימלי
range_maxstringטווח ייחוס מקסימלי
evaluationstringסטטוס תוצאה. ראה ערכי הערכה
אלמנט מערך data.interpretation
שדהסוגתיאור
titlestringכותרת סעיף (לדוגמה: "הערכת בריאות כללית")
contentstringפרשנות רפואית שנוצרה על ידי AI
מילות מפתח תגובה

השדה evaluation משתמש בערכים סטנדרטיים. ראה ערכי הערכה.

POST /api/v12/health-score/analyze אחרונה

נקודת קצה ייצור עם חישוב מקיף של ציון בריאות וניתוח סיכוני מחלות. מקבלת את אותה בקשה כמו /api/v12/18-09-2026/analyze ומוסיפה לתגובה את השדות שלהלן. צורכת קרדיט אחד לכל בקשה.

דוגמת cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v12/health-score/analyze" \
  -F "username=שם_משתמש" \
  -F "password=סיסמה" \
  -F "language=he" \
  -F "file=@blood_test.pdf"

שדות תגובה נוספים

{
  "health_score": {
    "overall": 78,
    "optimal": 4,
    "normal": 12,
    "warning": 3,
    "critical": 1,
    "total_parameters": 20,
    "score_interpretation": "good",
    "recommendations": [
      "Consider increasing vitamin D intake",
      "Schedule follow-up for cholesterol levels"
    ]
  },
  "disease_risks": [
    {"name": "Cardiovascular Disease", "percentage": "18%", "severity": "low"},
    {"name": "Type 2 Diabetes", "percentage": "12%", "severity": "low"},
    {"name": "Metabolic Syndrome", "percentage": "25%", "severity": "moderate"}
  ]
}
מילות מפתח תגובה

השדה score_interpretation משתמש בערכים סטנדרטיים. ראה ערכי ציון בריאות.

תזונה AI עם תוספים

צור תוכניות תזונה מותאמות אישית, המלצות תזונתיות והצעות לתוספי מזון על סמך ניתוח בדיקת דם.

POST /api/v1/nutrition/diet-plan/analyze חדש

מייצר המלצות מקיפות לתזונה ותוספים על סמך פרמטרי בדיקת דם ופרופיל המטופל.

סכמת אובייקט מטופל

תיאור מפורט של כל השדות הזמינים עבור אובייקט המטופל:

שדה סוג חובה ברירת מחדל תיאור
age integer כן - גיל המטופל בשנים (18-120)
gender string כן - מין המטופל. ראה ערכים
weight number לא null משקל בק"ג (לחישובי קלוריות)
height number לא null גובה בס"מ (לחישובי BMI)
conditions array לא [] מצבים רפואיים. ראה ערכים
allergies array לא [] אלרגיות למזון. ראה ערכים
dietary_preferences array לא [] העדפות תזונתיות. ראה ערכים
activity_level string לא "moderate" רמת פעילות גופנית. ראה ערכים
dietary_restrictions array לא [] הגבלות תזונתיות (לדוגמה: ללא גלוטן, ללא לקטוז)
liked_foods array לא [] מאכלים מועדפים להתאמת התוכנית
disliked_foods array לא [] מאכלים שיש להימנע מהם בהמלצות
meal_frequency integer לא 3 מספר ארוחות ביום (1-6)
budget string לא "moderate" רמת תקציב: "low", "moderate", "high"
medications array לא [] תרופות נוכחיות (לאינטראקציות)

הפניית שדות תגובה

אובייקט nutrition_plan.educational_insights
שדה סוג תיאור
blood_marker_education array תוכן חינוכי על סמני הדם המנותחים
nutrition_principles array עקרונות תזונה כלליים למטופל
אלמנט מערך blood_marker_education
שדה סוג תיאור
marker string שם סמן הדם (לדוגמה: "ויטמין D", "כולסטרול")
explanation string הסבר חינוכי על חשיבות הסמן
normal_range string טווח ערכים תקין לסמן
אלמנט מערך food_recommendations.power_foods
שדה סוג תיאור
food string שם המזון המומלץ
nutrients array רשימת חומרי הזנה עיקריים
serving string גודל מנה מומלץ
why string הסבר היתרונות הבריאותיים
אלמנט מערך supplement_recommendations
שדה סוג תיאור
supplement string שם התוסף
dosage string מינון יומי מומלץ
timing string הזמן הטוב ביותר לנטילה (לדוגמה: "עם ארוחת הבוקר")
duration string משך התוספת המומלץ
reason string הנמקה על סמך תוצאות הבדיקה

דוגמת cURL מלאה

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/nutrition/diet-plan/analyze" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "שם_המשתמש_שלך",
    "password": "הסיסמה_שלך",
    "language": "he",
    "patient": {
      "age": 45,
      "gender": "male",
      "weight": 82,
      "height": 178,
      "conditions": ["hypertension"],
      "allergies": ["shellfish"],
      "dietary_preferences": ["mediterranean"],
      "activity_level": "moderate",
      "liked_foods": ["fish", "vegetables", "olive oil"],
      "disliked_foods": ["liver"],
      "meal_frequency": 3,
      "budget": "moderate"
    },
    "blood_test": {
      "lab_date": "2025-12-01",
      "parameters": [
        {"short_name": "VITD", "result": 18, "unit": "ng/mL"},
        {"short_name": "CHOL", "result": 210, "unit": "mg/dL"},
        {"short_name": "LDL", "result": 140, "unit": "mg/dL"},
        {"short_name": "HDL", "result": 45, "unit": "mg/dL"},
        {"short_name": "FE", "result": 65, "unit": "µg/dL"}
      ]
    },
    "health_goals": ["lower_cholesterol", "increase_energy", "heart_health"]
  }'

תגובה מלאה

{
  "status": "success",
  "data": {
    "nutrition_plan": {
      "daily_calories": 2100,
      "macros": {
        "protein": {"grams": 105, "percentage": 20},
        "carbohydrates": {"grams": 236, "percentage": 45},
        "fats": {"grams": 82, "percentage": 35}
      },
      "educational_insights": {
        "blood_marker_education": [
          {
            "marker": "ויטמין D",
            "explanation": "ויטמין D חיוני לבריאות העצמות, תפקוד מערכת החיסון וויסות מצב הרוח. הרמה שלך של 18 ng/mL מצביעה על מחסור שעלול להשפיע על ספיגת סידן ועל הבריאות הכללית.",
            "normal_range": "30-50 ng/mL"
          },
          {
            "marker": "כולסטרול LDL",
            "explanation": "כולסטרול LDL, המכונה לעתים 'כולסטרול רע', יכול להצטבר בדפנות העורקים. הרמה שלך של 140 מ\"ג/דל גבוהה ועלולה להגביר את הסיכון הקרדיווסקולרי.",
            "normal_range": "< 100 mg/dL"
          }
        ],
        "nutrition_principles": [
          "תעדוף חומצות שומן אומגה-3 לבריאות הלב",
          "הגדל סיבים מסיסים להורדת כולסטרול LDL",
          "שלב מזונות עשירים בויטמין D וחשיפה לשמש"
        ]
      }
    },
    "food_recommendations": {
      "power_foods": [
        {
          "food": "סלמון בר",
          "nutrients": ["אומגה-3", "ויטמין D", "חלבון"],
          "serving": "150 גרם, 3 פעמים בשבוע",
          "why": "מקור מצוין לאומגה-3 ולויטמין D טבעי לבריאות הלב והעצמות"
        },
        {
          "food": "שיבולת שועל מלאה",
          "nutrients": ["בטא-גלוקן", "סיבים", "מגנזיום"],
          "serving": "50 גרם ביום בארוחת הבוקר",
          "why": "סיבים מסיסים בשיבולת שועל עוזרים להפחית את ספיגת כולסטרול LDL"
        },
        {
          "food": "שמן זית כתית מעולה",
          "nutrients": ["שומנים חד-בלתי רוויים", "פוליפנולים", "ויטמין E"],
          "serving": "2-3 כפות ביום",
          "why": "שומנים בריאים ים-תיכוניים משפרים את פרופיל השומנים ומגנים על הלב"
        },
        {
          "food": "תרד",
          "nutrients": ["ברזל", "חומצה פולית", "ויטמין K"],
          "serving": "100 גרם ביום, נא או מבושל",
          "why": "עשיר בברזל ונוגדי חמצון לאנרגיה ולבריאות קרדיווסקולרית"
        }
      ]
    },
    "supplement_recommendations": [
      {
        "supplement": "ויטמין D3",
        "dosage": "2000-4000 יח\"ב ביום",
        "timing": "עם ארוחת הבוקר (ארוחה עם שומנים)",
        "duration": "3-6 חודשים, לאחר מכן בדיקה מחדש",
        "reason": "הרמה שלך של 18 ng/mL נמוכה מהאופטימום של 30-50 ng/mL"
      },
      {
        "supplement": "אומגה-3 (EPA/DHA)",
        "dosage": "1000-2000 מ\"ג EPA+DHA ביום",
        "timing": "עם הארוחות העיקריות",
        "duration": "באופן מתמשך לבריאות הלב",
        "reason": "עוזר להוריד טריגליצרידים ולשפר את יחס HDL/LDL"
      },
      {
        "supplement": "קו-אנזים Q10",
        "dosage": "100 מ\"ג ביום",
        "timing": "עם ארוחת הבוקר",
        "duration": "מינימום 3 חודשים",
        "reason": "תומך בבריאות הלב, חשוב במיוחד עם לחץ דם גבוה"
      }
    ]
  },
  "api_version": "v1",
  "timestamp": "2025-12-22T10:30:00Z"
}
מילות מפתח תגובה

לרשימה מלאה של כל ערכי התגובה האפשריים, ראה את הסעיף מילות מפתח פלט.

נקודות קצה Sandbox

נקודות קצה Sandbox מחזירות נתוני בדיקה ריאליסטיים מבלי לצרוך מכסת API. השתמש בהן לפיתוח ובדיקת אינטגרציה.

יתרונות Sandbox
  • אין צריכת מכסה
  • מחזירה נתוני בדיקה ריאליסטיים
  • אותו פורמט בקשה כמו ייצור
  • בדוק את האינטגרציה שלך לפני העלייה לייצור
  • זמינה לכל גרסאות ה-API
APIנקודת קצה Sandbox
בדיקת דם v12/api/v12/18-09-2026/sandbox
בדיקת דם v12-health/api/v12/health-score/sandbox
מפת הגוף/api/v1/body-map/sandbox
גיל הדם הביולוגי/api/v1/blood-age/sandbox
פענוח בדיקות DNA/api/v1/dna-interpretation/sandbox
דוח בריאות DNA + דם/api/v1/dna-blood-report/sandbox
יועץ תוספי תזונה מבוסס DNA/api/v1/dna-supplements/sandbox
בדיקת דם v11/api/v11/01-06-2025/sandbox
בדיקת דם v11-health/api/v11/health-score/sandbox
תזונה AI/api/v1/nutrition/diet-plan/sandbox
השוואת בדיקות/api/v1/bloodtest/comparison/sandbox
ניתוח מגמות/api/v1/analytics/trends/sandbox
ICR - זיהוי תווים אינטליגנטי/api/icr/v1/sandbox
ICR Kan - בדיקות דם/api/icr/v1/kan/sandbox
API השוואה מול API ניתוח מגמות

בחר את ה-API המתאים לשימוש שלך:

תכונההשוואת בדיקות דם AIניתוח מגמות
מיקוד עיקריהשוואה נרטיבית AIניתוח סטטיסטי של מגמות
עיבוד AIנרטיב AI מלאAI משופר + סטטיסטיקה
סוג פלטסיכומים נרטיבייםגרפים, סטטיסטיקה, דפוסים
מתאים למה השתנה בין בדיקותמעקב פרמטרים לטווח ארוך
מינימום בדיקות22
מקסימום בדיקות2050

API ניתוח מגמות

נתח מגמות בדיקות דם לטווח ארוך עם תובנות סטטיסטיות, דפוסים וויזואליזציות. אידיאלי למעקב אחר שינויים בבריאות לאורך זמן.

POST /api/v1/analytics/trends/analyze יציב

נתח עד 50 בדיקות דם כדי לזהות מגמות, דפוסים וחריגות בפרמטרי בריאות לאורך זמן.

דרישות
  • מינימום: 2 בדיקות דם נדרשות
  • מקסימום: 50 בדיקות לבקשה
  • כל בדיקה חייבת לכלול lab_date או results_date
  • השתמש בשמות פרמטרים עקביים למעקב מדויק

פרמטרי בקשה

פרמטרסוגנדרשתיאור
usernamestringכןשם המשתמש שלך ל-API
passwordstringכןסיסמת ה-API שלך
languagestringלאקוד שפת תגובה (ברירת מחדל: en)
blood_testsarrayכןמערך של 2-50 אובייקטי בדיקות דם
analysis_typestringלאסוג ניתוח. ראה ערכים
analysis_optionsobjectלאאפשרויות תצורת ניתוח

אובייקט analysis_options

תצורת אפשרויות הניתוח האופציונלית מאפשרת לך לשלוט על איזה רכיבי ניתוח נכללים בתגובה:

שדהסוגברירת מחדלתיאור
include_predictionsbooleantrueכלול תחזיות מגמות AI
include_statisticsbooleantrueכלול ניתוח סטטיסטי
include_chartsbooleantrueכלול נתוני תצורת גרפים

מבנה מערך blood_tests

כל אלמנט במערך blood_tests חייב להיות אובייקט בפורמט הבא:

שדהסוגנדרשתיאור
datestringכןתאריך בדיקה (YYYY-MM-DD)
parametersarrayכןמערך של אובייקטי פרמטרים
מבנה blood_tests[].parameters

כל פרמטר במערך parameters חייב להכיל את השדות הבאים:

שדהסוגנדרשתיאור
short_namestringכןמזהה פרמטר (לדוגמה: "WBC", "HGB")
resultnumberכןערך נמדד
unitstringכןיחידת מידה
range_minnumberלאטווח ייחוס מינימלי
range_maxnumberלאטווח ייחוס מקסימלי

דוגמה cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/analytics/trends/analyze" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "שם_המשתמש_שלך",
    "password": "הסיסמה_שלך",
    "language": "he",
    "analysis_type": "comprehensive",
    "analysis_options": {
      "include_predictions": true,
      "include_statistics": true,
      "include_charts": true
    },
    "blood_tests": [
      {
        "date": "2025-01-15",
        "parameters": [
          {"short_name": "Glucose", "result": 145, "unit": "mg/dL", "range_min": 70, "range_max": 100},
          {"short_name": "HbA1c", "result": 7.2, "unit": "%", "range_min": 4.0, "range_max": 6.0},
          {"short_name": "CHOL", "result": 240, "unit": "mg/dL", "range_min": 0, "range_max": 200},
          {"short_name": "LDL", "result": 160, "unit": "mg/dL", "range_min": 0, "range_max": 100},
          {"short_name": "HDL", "result": 38, "unit": "mg/dL", "range_min": 40, "range_max": 60}
        ]
      },
      {
        "date": "2025-04-20",
        "parameters": [
          {"short_name": "Glucose", "result": 125, "unit": "mg/dL", "range_min": 70, "range_max": 100},
          {"short_name": "HbA1c", "result": 6.5, "unit": "%", "range_min": 4.0, "range_max": 6.0},
          {"short_name": "CHOL", "result": 220, "unit": "mg/dL", "range_min": 0, "range_max": 200},
          {"short_name": "LDL", "result": 140, "unit": "mg/dL", "range_min": 0, "range_max": 100},
          {"short_name": "HDL", "result": 42, "unit": "mg/dL", "range_min": 40, "range_max": 60}
        ]
      },
      {
        "date": "2025-07-18",
        "parameters": [
          {"short_name": "Glucose", "result": 110, "unit": "mg/dL", "range_min": 70, "range_max": 100},
          {"short_name": "HbA1c", "result": 6.0, "unit": "%", "range_min": 4.0, "range_max": 6.0},
          {"short_name": "CHOL", "result": 200, "unit": "mg/dL", "range_min": 0, "range_max": 200},
          {"short_name": "LDL", "result": 120, "unit": "mg/dL", "range_min": 0, "range_max": 100},
          {"short_name": "HDL", "result": 48, "unit": "mg/dL", "range_min": 40, "range_max": 60}
        ]
      },
      {
        "date": "2025-12-10",
        "parameters": [
          {"short_name": "Glucose", "result": 95, "unit": "mg/dL", "range_min": 70, "range_max": 100},
          {"short_name": "HbA1c", "result": 5.4, "unit": "%", "range_min": 4.0, "range_max": 6.0},
          {"short_name": "CHOL", "result": 180, "unit": "mg/dL", "range_min": 0, "range_max": 200},
          {"short_name": "LDL", "result": 95, "unit": "mg/dL", "range_min": 0, "range_max": 100},
          {"short_name": "HDL", "result": 52, "unit": "mg/dL", "range_min": 40, "range_max": 60}
        ]
      }
    ]
  }'

הפניית שדות תגובה

רמה שורשית
שדהסוגתיאור
statusstring"success" או "error"
dataobjectמכיל את כל תוצאות ניתוח המגמות
timestampstringחותמת זמן ISO 8601 של התגובה
api_versionstringגרסת ה-API שבשימוש
אובייקט data.trend_analysis
שדהסוגתיאור
parameters_trackedarrayרשימת פרמטרים שנותחו
time_spanobjectמכיל start_date ו-end_date
total_testsintegerמספר בדיקות הדם שנותחו
trendsarrayמערך של אובייקטי מגמות פרמטרים
אלמנט מערך data.trend_analysis.trends
שדהסוגתיאור
parameterstringשם פרמטר (לדוגמה: "WBC", "HGB")
trend_directionstringכיוון מגמה. ראה ערכים
trend_strengthstringעוצמת מגמה. ראה ערכים
trend_assessmentstringהערכת מגמה. ראה ערכים
valuesarrayמערך של נקודות נתונים (תאריך, ערך)
statisticsobjectmin, max, mean, median, std_deviation
chart_dataobjectנתוני גרף מעוצבים לויזואליזציה
אובייקט data.insights
שדהסוגתיאור
summarystringסיכום נרטיבי מונע AI של מגמות בריאות
key_findingsarrayממצאים חשובים ודפוסים שזוהו
recommendationsarrayהמלצות רפואיות בהתבסס על מגמות
areas_of_concernarrayפרמטרים הזקוקים לתשומת לב

API השוואת בדיקות דם

השווה בין 2 ל-20 בדיקות דם עם פרשנות AI נרטיבית. מושלם להבנת שינויים בין תוצאות בדיקות.

POST /api/v1/bloodtest/comparison/analyze יציב

צור השוואה נרטיבית מונעת AI בין מספר בדיקות דם, תוך הדגשת שינויים מרכזיים והשלכות בריאותיות.

דרישות
  • מינימום: 2 בדיקות דם
  • מקסימום: 20 בדיקות דם
  • כל בדיקת דם חייבת לכלול date ו-parameters
  • השוואות הן הכי יעילות כאשר הפרמטרים עקביים על פני בדיקות

פרמטרי בקשה

פרמטרסוגנדרשתיאור
usernamestringכןשם המשתמש שלך ל-API
passwordstringכןסיסמת ה-API שלך
languagestringלאקוד שפת תגובה (ברירת מחדל: en)
blood_testsarrayכןמערך של 2-20 אובייקטי בדיקות דם

מבנה מערך blood_tests

כל אלמנט במערך blood_tests חייב להיות אובייקט בפורמט הבא:

שדהסוגנדרשתיאור
datestringכןתאריך בדיקה (YYYY-MM-DD)
parametersarrayכןמערך של אובייקטי פרמטרים
labelstringלאתווית אופציונלית (לדוגמה: "לפני טיפול", "אחרי טיפול")
מבנה אלמנט parameters
שדהסוגנדרשתיאור
short_namestringכןמזהה פרמטר (לדוגמה: "WBC", "CHOL")
resultnumberכןערך נמדד
unitstringכןיחידת מידה
range_minnumberלאטווח ייחוס מינימלי
range_maxnumberלאטווח ייחוס מקסימלי

דוגמה cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/bloodtest/comparison/analyze" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "שם_המשתמש_שלך",
    "password": "הסיסמה_שלך",
    "language": "he",
    "blood_tests": [
      {
        "date": "2025-06-01",
        "label": "לפני טיפול",
        "parameters": [
          {"short_name": "CHOL", "result": 240, "unit": "mg/dL", "range_min": 0, "range_max": 200},
          {"short_name": "LDL", "result": 160, "unit": "mg/dL", "range_min": 0, "range_max": 100},
          {"short_name": "HDL", "result": 38, "unit": "mg/dL", "range_min": 40, "range_max": 60}
        ]
      },
      {
        "date": "2025-09-15",
        "label": "אחרי 3 חודשים",
        "parameters": [
          {"short_name": "CHOL", "result": 195, "unit": "mg/dL", "range_min": 0, "range_max": 200},
          {"short_name": "LDL", "result": 115, "unit": "mg/dL", "range_min": 0, "range_max": 100},
          {"short_name": "HDL", "result": 45, "unit": "mg/dL", "range_min": 40, "range_max": 60}
        ]
      }
    ]
  }'

הפניית שדות תגובה

רמה שורשית
שדהסוגתיאור
statusstring"success" או "error"
dataobjectמכיל את כל תוצאות ההשוואה
timestampstringחותמת זמן ISO 8601 של התגובה
api_versionstringגרסת ה-API שבשימוש
אובייקט data.comparison
שדהסוגתיאור
tests_comparedintegerמספר בדיקות שהושוו
date_rangeobjectמכיל earliest ו-latest תאריכי בדיקה
parameters_comparedarrayרשימת פרמטרים שנמצאו בכל הבדיקות
changesarrayמערך של אובייקטי שינוי פרמטרים
אלמנט מערך data.comparison.changes
שדהסוגתיאור
parameterstringשם פרמטר (לדוגמה: "CHOL", "LDL")
initial_valuenumberערך מהבדיקה הראשונה
final_valuenumberערך מהבדיקה האחרונה
change_absolutenumberשינוי מוחלט בערך
change_percentnumberשינוי באחוזים
directionstring"increased", "decreased", או "stable"
evaluationstringהערכת השינוי. ראה ערכים
אובייקט data.narrative
שדהסוגתיאור
summarystringסיכום נרטיבי מונע AI של שינויים
significant_changesarrayשינויים בולטים בפרמטרים
improvementsarrayפרמטרים שהשתפרו
concernsarrayפרמטרים שהחמירו או זקוקים לתשומת לב
recommendationsarrayהמלצות רפואיות בהתבסס על השוואה

הפניית מילות מפתח

הפניה מלאה לכל ערכי מילות המפתח הנכנסות המשמשות בנקודות הקצה של Kantesti API. השתמש בערכים המדויקים הללו בעת ביצוע בקשות API.

analysis_type API ניתוח מגמות

מציין את סוג ניתוח המגמות שיש לבצע.

ערךברירת מחדלתיאור
comprehensive✓ניתוח מלא עם סטטיסטיקות, תרשימים ופרשנות AI
statisticalניתוח סטטיסטי בלבד
summaryסיכום ברמה גבוהה בלבד

health_goals API תזונה

יעדי בריאות להמלצות תזונתיות מותאמות אישית. ניתן לספק ערכים מרובים כמערך.

ערךתיאור
maintainשמירה על הבריאות הנוכחית (ברירת מחדל)
improve_energyמיקוד ברמות אנרגיה
weight_managementניהול משקל בריא
heart_healthבריאות לב וכלי דם
immune_supportתמיכה במערכת החיסון
digestive_healthבריאות מערכת העיכול
bone_healthבריאות עצמות
mental_clarityתפקוד קוגניטיבי

dietary_restrictions API תזונה

הגבלות תזונתיות ואלרגיות. ניתן לספק ערכים מרובים כמערך. טקסט חופשי מתקבל גם להגבלות מותאמות אישית.

ערךתיאור
low_sodiumצריכת נתרן מופחתת
low_sugarצריכת סוכר מופחתת
low_fatצריכת שומן מופחתת
gluten_freeללא גלוטן
dairy_freeללא מוצרי חלב
nut_freeללא אגוזים
soy_freeללא סויה
egg_freeללא ביצים
halalחלאל
kosherכשר
הערה

טקסט חופשי מתקבל גם להגבלות תזונתיות מותאמות אישית שאינן מופיעות למעלה.

dietary_preferences API תזונה

העדפות אורח חיים תזונתי לתכנון ארוחות.

ערךתיאור
omnivoreללא הגבלות (ברירת מחדל)
vegetarianללא בשר
veganללא מוצרים מהחי
pescatarianצמחוני + דגים
ketoדיאטה קטוגנית
paleoדיאטה פליאוליתית
mediterraneanדיאטה ים-תיכונית

activity_level API תזונה

רמת פעילות גופנית לחישובי קלוריות ותזונה.

ערךתיאור
sedentaryמעט או ללא פעילות גופנית
lightפעילות קלה 1-3 ימים/שבוע
moderateפעילות מתונה 3-5 ימים/שבוע (ברירת מחדל)
activeפעילות אינטנסיבית 6-7 ימים/שבוע
very_activeפעילות אינטנסיבית מאוד או עבודה פיזית

budget API תזונה

רמת תקציב להמלצות מזון ותוספים.

ערךתיאור
lowאפשרויות חסכוניות
moderateאפשרויות מאוזנות (ברירת מחדל)
highאפשרויות פרימיום

gender כל ה-APIs

מין המטופל לטווחי ייחוס והמלצות מותאמות אישית.

ערךתיאור
maleמטופל זכר
femaleמטופלת נקבה
otherאחר או לא מצוין

מילות מפתח פלט

מילות המפתח הבאות מופיעות בתגובות ה-API לציון סטטוס, הערכות ומגמות.

evaluation בדיקת דם והשוואה

סטטוס הערכת פרמטר המציין כיצד התוצאה משתווה לטווחי הייחוס.

ערךתיאור
normalבטווח הייחוס הנורמלי
lowמתחת לטווח הנורמלי
highמעל לטווח הנורמלי
critical_lowנמוך קריטי (דורש תשומת לב מיידית)
critical_highגבוה קריטי (דורש תשומת לב מיידית)
borderline_lowמעט מתחת לטווח הנורמלי
borderline_highמעט מעל לטווח הנורמלי

trend_assessment השוואה וניתוח מגמות

הערכה כוללת של מגמת הפרמטר לאורך זמן.

ערךתיאור
positiveהמגמה נעה בכיוון בריא
negativeהמגמה נעה בכיוון מדאיג
stableהמגמה נשארת עקבית
improvingשיפור פעיל מאז המדידה האחרונה
worseningהידרדרות פעילה מאז המדידה האחרונה

trend_direction ניתוח מגמות

כיוון שינוי הפרמטר.

ערךתיאור
upwardהערכים עולים לאורך זמן
downwardהערכים יורדים לאורך זמן
stableהערכים נשארים עקביים

trend_strength ניתוח מגמות

גודל שינוי המגמה.

ערךתיאור
strongשינוי משמעותי (יותר מ-15% שינוי)
moderateשינוי ניכר (5-15% שינוי)
mildשינוי קל (פחות מ-5% שינוי)

health_score / overall_score ציון בריאות

קטגוריות דירוג כולל להערכת בריאות.

ערךתיאור
excellentבריאות מיטבית, כל הפרמטרים בטווחים אופטימליים
goodמצב בריאות טוב, שיקולים מינוריים
fairמצב בינוני, כמה תחומים זקוקים לתשומת לב
poorזקוק לשיפור, קיימות בעיות בריאות משמעותיות

נקודות קצה שירות

GET /api/info

מחזיר מידע על פלטפורמת ה-API, גרסאות זמינות ותכונות נתמכות. אין צורך באימות.

דוגמה לתגובה

{
  "platform": "Kantesti Blood Test Analysis API",
  "versions": ["v6", "v8", "v9", "v10", "v11"],
  "latest_version": "v11",
  "supported_languages": 100,
  "documentation": "https://www.kantesti.net/docs/",
  "status": "operational"
}
GET /api/health

נקודת קצה לבדיקת תקינות לצורך ניטור. מחזירה סטטוס שירות. אין צורך באימות.

דוגמה לתגובה

{
  "status": "healthy",
  "timestamp": "2025-12-22T10:30:00Z",
  "uptime": "99.99%"
}
POST /api/quota/check

בדוק את מכסת ה-API הנותרת שלך. נדרש אימות.

דוגמה cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/quota/check" \
  -H "Content-Type: application/json" \
  -d '{"username": "שם_משתמש", "password": "סיסמה"}'

דוגמה לתגובה

{
  "status": "success",
  "quota": {
    "remaining": 847,
    "total": 1000,
    "reset_date": "2026-01-01",
    "plan": "professional"
  }
}

ממשק הערכת סיכוני בריאות משפחתית

שוחרר: 23 במרץ 2026

ממשק Kantesti להערכת סיכוני בריאות משפחתית הוא פלטפורמת ניתוח סיכוני בריאות תורשתיים המופעלת באמצעות בינה מלאכותית. הוא מייצר דוחות בריאות משפחתיים מקיפים על ידי ניתוח ההיסטוריה הרפואית המשפחתית, פרופילי בריאות של מטופלים ונתוני בדיקות דם לזיהוי גורמי סיכון תורשתיים ומתן המלצות מותאמות אישית לטיפול מונע.

+100
שפות
9
קטגוריות מחלות
14
יחסים משפחתיים

ניתוח סיכונים תורשתיים באמצעות AI

ממשק Family Health משתמש במודלים מתקדמים של בינה מלאכותית להצלבת ההיסטוריה הרפואית המשפחתית עם נתוני בדיקות הדם של המטופל, לזיהוי דפוסי סיכון תורשתיים בקטגוריות לב וכלי דם, מטבולית, סרטן, נוירולוגית, נשימתית, אוטואימונית, גנטית, בריאות נפשית וכליות/כבד. הדוחות כוללים דירוג סיכונים, לוחות זמנים לטיפול מונע, המלצות לבדיקות גנטיות והנחיות אורח חיים — הכול מתורגם ליותר מ-100 שפות.

תכונות עיקריות
  • ניתוח סיכונים תורשתיים — סיווג לסיכון גבוה, בינוני ונמוך עם דירוג מפורט
  • ניתוח עץ משפחתי — מיפוי סיכונים של צד האב וצד האם
  • מתאם בדיקות דם — הצלבת היסטוריה משפחתית עם פרמטרים של דם
  • המלצות לבדיקות גנטיות — הצעות מותאמות אישית לבדיקות גנטיות
  • לוח זמנים לטיפול מונע — תוכניות סריקה מותאמות לגיל
  • ניתוח תרופות — הערכת אינטראקציות ורגישויות תורשתיות
  • יותר מ-100 שפות — לוקליזציה מלאה של דוחות
  • מצב ארגז חול — בדוק את השילוב ללא צריכת נקודות

סיכום נקודות קצה

נקודת קצהשיטהתיאוראימות
/api/v1/family-health/analyzePOSTהפקת דוח הערכת סיכונים מקיףנדרש (1 נקודה)
/api/v1/family-health/validatePOSTאימות נתוני בקשה (ללא צריכת מכסה)נדרש (חינם)
/api/v1/family-health/supported-languagesGETרשימת 100+ שפות נתמכותלא נדרש
/api/v1/family-health/condition-categoriesGETרשימת קטגוריות מחלותלא נדרש
/api/v1/family-health/family-relationsGETרשימת סוגי יחסים משפחתייםלא נדרש
/api/v1/family-health/sandbox/analyzePOSTבדיקה עם נתוני דוגמהנדרש (חינם)
POST /api/v1/family-health/analyze שוחרר 23.03.2026

הפקת דוח מקיף להערכת סיכוני בריאות משפחתית מונע בינה מלאכותית.

פרמטרי בקשה (JSON Body)

פרמטרסוגנדרשתיאור
usernamestringכןשם משתמש API
passwordstringכןסיסמת API
patient_dataobjectכןנתוני מטופל
family_membersarrayכן*בני משפחה (מקסימום 100)
health_profileobjectכן*פרופיל בריאותי
blood_test_dataarrayלאנתוני בדיקות דם
languagestringלאקוד שפה (ברירת מחדל: en)

דוגמת cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/family-health/analyze" \
  -H "Content-Type: application/json" \
  -d '{"username":"שם_משתמש","password":"סיסמה","patient_data":{"name":"שרה כהן","age":42,"gender":"female"},"family_members":[{"relation":"father","age":70,"conditions":["hypertension"]}],"language":"he"}'

דוגמת Python

import requests
url = "https://app.aibloodtestinterpret.com/api/v1/family-health/analyze"
payload = {"username":"שם_משתמש","password":"סיסמה","patient_data":{"name":"שרה כהן","age":42,"gender":"female"},"family_members":[{"relation":"father","age":70,"conditions":["hypertension"]}],"language":"he"}
response = requests.post(url, json=payload, timeout=120)
print(response.json())

דוגמת תגובה

{"status":"success","data":{"report_data":{"report_title":"דוח הערכת סיכוני בריאות משפחתית","hereditary_risk_analysis":{"high_risk":[{"condition":"מחלת לב וכלי דם","risk_score":75}]},"genetic_screening_recommendations":["בדיקה גנטית BRCA1/BRCA2"]}},"timestamp":"2026-03-23T10:30:00Z","api_version":"1.0.0"}

קודי שגיאה של Family Health API

קודHTTPתיאור
AUTH_1001401פרטי אימות חסרים
AUTH_1002401שם משתמש או סיסמה לא תקינים
QUOTA_1101403מכסת API לא מספקת
VAL_2001400שדה חובה חסר
VAL_2003400קוד שפה לא נתמך
PROC_3001500הפקת דוח נכשלה
SRV_5001500שגיאת שרת פנימית

נקודת קצה ארגז חול Family Health

בדוק את השילוב שלך ללא צריכת נקודות.

APIארגז חולתיאור
Family Health/api/v1/family-health/sandbox/analyzeנתוני דוח לדוגמה

נקודות קצה מידע (ללא אימות)

נקודת קצהשיטהתיאור
/api/v1/family-health/supported-languagesGET100+ שפות נתמכות
/api/v1/family-health/condition-categoriesGET9 קטגוריות מחלות
/api/v1/family-health/family-relationsGET14 יחסים משפחתיים

ממשק מפת הגוף

שוחרר: 18 בספטמבר 2026

ממשק Kantesti למפת הגוף הופך פאנל בדיקות מעבדה לאנטומיה. כל תוצאה החורגת מהטווח או תוצאה גבולית ממוקמת באחד מ-13 אזורי הגוף, והממשק מחזיר גם את המקרא — איזה אזור, באיזו חומרה ואילו סמנים הביאו אותו לשם — וגם כתובת לאיור גוף תואם.

13
אזורי גוף
39
שפות קלט
0
קריאות מודל כברירת מחדל

דטרמיניסטי כברירת מחדל

שמות הסמנים מותאמים מול טבלאות כינויים רב-לשוניות המכסות 39 שפות דוחות, כולל כתבים שאינם לטיניים — אתה שולח את שמות הבדיקות בדיוק כפי שהמעבדה שלך הדפיסה אותם, בכל שפה שהיא הדפיסה. שום מודל אינו נקרא ושום איור אינו נוצר אלא אם ביקשת, ולכן הבקשה שבברירת המחדל נקייה מעלות AI ומחזירה את אותה תשובה בכל פעם עבור אותו פאנל.

תכונות עיקריות
  • 13 אזורים אנטומיים — מוח ועצבים, בלוטת התריס, לב וכלי דם, כבד, לבלב, בלוטות יותרת הכליה, כליות, מערכת העיכול, מערכת הרבייה, דם, מערכת החיסון, עצמות, שרירים
  • רמות חומרה — רמה 2 לתוצאות מחוץ לטווח ורמה 1 לתוצאות גבוליות, כך שאפשר לצבוע את המקרא ללא לוגיקה נוספת
  • שיוך סמנים — כל אזור מפרט את הסמנים שהביאו אותו לשם, החמור ביותר ראשון
  • פלט נטול שפה — מפתחות אזורים ושמות הסמנים שלך; האיור אינו נושא טקסט, כך שתמונה אחת משרתת כל שפה
  • כתובות איור חתומות — כל כתובת איור נושאת חתימת HMAC, כך שאיש אינו יכול למנות או לזייף אותה
  • מצבים ריקים כנים — פאנל תקין מחזיר את גוף "הכול תקין" המשותף; פאנל שסמניו המסומנים אינם ניתנים למיקום מחזיר שגיאה במקום גוף ירוק מטעה
  • מצב דטרמיניסטי — ברירת המחדל. ללא קריאת מודל, ללא קרדיט תמונה, פלט הניתן לשחזור
  • מצב Sandbox — בדוק את האינטגרציה ללא צריכת קרדיטים

סיכום נקודות קצה

נקודת קצהשיטהתיאוראימות
/api/v1/body-map/analyzePOSTבניית מפת גוף מפאנל בדיקות מעבדהנדרש (1 נקודה)
/api/v1/body-map/validatePOSTאימות מטען ובדיקה אילו סמנים מזוהים (ללא צריכת מכסה)נדרש (חינם)
/api/v1/body-map/sandboxPOSTבדיקה עם נתוני דוגמה (ללא צריכת מכסה)נדרש (חינם)
/api/v1/body-map/regionsGETרשימת 13 אזורי הגוף ורמות החומרהלא נדרש
/api/v1/body-map/infoGETמטא-נתוני יכולות, מגבלות ופרטי אימותלא נדרש
POST /api/v1/body-map/analyze שוחרר 18.09.2026

ממפה כל תוצאה מסומנת בפאנל המעבדה על הגוף. צורך קרדיט אחד לכל בקשה מוצלחת. בקשה שנכשלת באימות, או שסמניה המסומנים אינם ניתנים למיקום, אינה מחויבת.

פרמטרי בקשה

פרמטרסוגנדרשתיאור
usernamestringכןשם משתמש API
passwordstringכןסיסמת API
parametersarrayכןאובייקטים של תוצאות מעבדה. מקסימום 500. כל אחד דורש שם בדיקה ו-evaluation.
interpretationarrayלאפרשנות קלינית, משמשת כהקשר בלבד כאשר ai_assist מופעל
ai_assistbooleanלאאפשר למודל למקם סמנים שטבלאות הכינויים אינן מזהות (ברירת מחדל: false)
include_imagebooleanלאבקשת האיור המעובד (ברירת מחדל: false)
image_waitintegerלאשניות להמתנה לאיור חדש, 0-30 (ברירת מחדל: 0)

שדות אובייקט parameters

שדהסוגנדרשתיאור
short_namestringכן*שם הבדיקה כפי שהודפס על ידי המעבדה. *נדרש לפחות אחד מבין short_name, long_name, name, parameter_name או parameter.
long_namestringלאשם הבדיקה המלא; משפר התאמה של ראשי תיבות
evaluationstringלאאחד מ-high, low, bad, slightly_high, slightly_low, normal. רק ערכים מסומנים מופיעים על המפה.
resultstring|numberלאהערך הנמדד; משמש לדירוג האזורים המצוירים
unitstringלאיחידת התוצאה, בכל כתיב
range_normal_minnumberלאהגבול התחתון של טווח ההתייחסות
range_normal_maxnumberלאהגבול העליון של טווח ההתייחסות
categorystringלאקטגוריית המעבדה; משמשת כגיבוי כאשר שם הבדיקה אינו מוכר

דוגמת cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/body-map/analyze" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "שם_משתמש",
    "password": "סיסמה",
    "parameters": [
      {"short_name": "ALT", "long_name": "Alanine aminotransferase", "result": "65", "unit": "U/L", "range_normal_min": 7, "range_normal_max": 45, "evaluation": "high"},
      {"short_name": "AST", "long_name": "Aspartate aminotransferase", "result": "48", "unit": "U/L", "range_normal_min": 8, "range_normal_max": 40, "evaluation": "slightly_high"},
      {"short_name": "TSH", "long_name": "Thyrotropin", "result": "6.2", "unit": "mIU/L", "range_normal_min": 0.4, "range_normal_max": 4.0, "evaluation": "high"}
    ]
  }'

דוגמת Python

import requests

def build_body_map(parameters, username, password, include_image=False):
    """
    מיפוי תוצאות בדיקת דם החורגות מהטווח על הגוף.

    Args:
        parameters: רשימת אובייקטים של תוצאות מעבדה
        username: שם משתמש API
        password: סיסמת API
        include_image: בקשת האיור המעובד (צורך קרדיט תמונה)

    Returns:
        dict: בלוק מפת הגוף עם אזורים, מקרא וכתובות איור
    """
    url = "https://app.aibloodtestinterpret.com/api/v1/body-map/analyze"

    response = requests.post(url, json={
        "username": username,
        "password": password,
        "parameters": parameters,
        "include_image": include_image,
    }, timeout=60)
    response.raise_for_status()
    return response.json()

result = build_body_map(
    parameters=[
        {"short_name": "ALT", "result": "65", "unit": "U/L",
         "range_normal_min": 7, "range_normal_max": 45, "evaluation": "high"},
        {"short_name": "TSH", "result": "6.2", "unit": "mIU/L",
         "range_normal_min": 0.4, "range_normal_max": 4.0, "evaluation": "high"},
    ],
    username="your_username",
    password="your_password",
)

body_map = result["data"]["body_map"]
for region in body_map["regions"]:
    print(f"{region['key']}: level {region['level']} ({', '.join(region['markers'])})")

דוגמת תגובה

{
  "status": "success",
  "api_version": "1.0.0",
  "message": "Body map generated successfully",
  "data": {
    "body_map": {
      "v": 4,
      "spec": "v4-thy2-liv2",
      "unmapped": 0,
      "image_url": "/static/body_maps/v4-thy2-liv2.webp",
      "fallback_url": "/body-map/v4-thy2-liv2.0123456789abcdef.webp",
      "regions": [
        {"key": "thyroid", "level": 2, "drawn": true, "markers": ["TSH"]},
        {"key": "liver", "level": 2, "drawn": true, "markers": ["ALT", "AST"]}
      ]
    },
    "engine_version": 4,
    "region_keys": ["brain_nerves", "thyroid", "heart_vessels", "liver", "pancreas", "adrenals", "kidneys", "gut", "reproductive", "blood", "immune", "bones", "muscles"],
    "mode": "deterministic",
    "all_clear": false
  },
  "timestamp": "2026-09-18T10:30:00Z"
}

מדריך שדות התגובה

שדהסוגתיאור
body_map.specstringמזהה קנוני לשילוב הזה של אזורים ורמות חומרה. פאנלים זהים חולקים מזהה, ולכן חולקים גם איור שמור במטמון.
body_map.regions[].keystringאחד מ-13 מפתחות האזורים
body_map.regions[].levelinteger2 = מחוץ לטווח, 1 = גבולי
body_map.regions[].drawnbooleanהאם האזור מצויר על האיור. המקרא תמיד מפרט את כל האזורים; לכל היותר שישה מצוירים.
body_map.regions[].markersarrayשמות הסמנים שהביאו את האזור הזה למפה, החמור ביותר ראשון
body_map.unmappedintegerסמנים מסומנים שלא ניתן היה למקם באף אזור
body_map.image_urlstring|nullהאיור השמור במטמון. null עד שהקובץ קיים — השתמש ב-fallback_url כגיבוי.
body_map.fallback_urlstringכתובת יצירה חתומה. תמיד קיימת. מחזירה 503 עם Retry-After כל עוד האיור עדיין מופק.
all_clearbooleantrue כאשר דבר לא סומן; חל גוף "הכול תקין" המשותף
modestringdeterministic או ai_assisted
הצגת המקרא

התגובה נטולת שפה מעצם התכנון: היא נושאת מפתחות אזורים ואת שמות הסמנים של המעבדה שלך. תרגם את 13 מפתחות האזורים בצד הלקוח שלך, והעדף את המקרא על פני האיור — אם מודל התמונה יצייר אי פעם את האיבר הלא נכון, המקרא שלצדו עדיין נכון.

POST /api/v1/body-map/validate שוחרר 18.09.2026

בודק מטען מבלי להריץ את הניתוח, ומדווח אילו משמות הבדיקות שלך המנוע מזהה. נדרש אימות; לא נצרכת מכסה, ונקודת הקצה ממשיכה לעבוד גם בחשבון ללא קרדיטים.

דוגמת cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/body-map/validate" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "שם_משתמש",
    "password": "סיסמה",
    "parameters": [
      {"short_name": "ALT", "result": "65", "evaluation": "high"},
      {"short_name": "Unobtainium", "result": "9", "evaluation": "high"}
    ]
  }'

דוגמת תגובה

{
  "status": "success",
  "api_version": "1.0.0",
  "message": "Payload is valid",
  "data": {
    "valid": true,
    "errors": [],
    "parameter_count": 2,
    "flagged_count": 2,
    "recognised": [
      {"name": "ALT", "region": "liver", "level": 2}
    ],
    "unrecognised": [
      {"name": "Unobtainium", "region": null, "level": 2}
    ]
  },
  "timestamp": "2026-09-18T10:30:00Z"
}

נקודות קצה מידע

שתי נקודות קצה המידע הן ללא אימות וללא עלות.

GET /api/v1/body-map/regions

מפרטת את 13 אזורי הגוף בסדר הקנוני, יחד עם רמות החומרה. השתמש בה כדי לבנות את תרגומי המקרא שלך.

דוגמת cURL

curl "https://app.aibloodtestinterpret.com/api/v1/body-map/regions"

דוגמת תגובה

{
  "status": "success",
  "data": {
    "regions": [
      {"key": "brain_nerves", "code": "brn", "order": 0},
      {"key": "thyroid", "code": "thy", "order": 1},
      {"key": "heart_vessels", "code": "hrt", "order": 2},
      {"key": "liver", "code": "liv", "order": 3}
    ],
    "region_keys": ["brain_nerves", "thyroid", "heart_vessels", "liver", "pancreas", "adrenals", "kidneys", "gut", "reproductive", "blood", "immune", "bones", "muscles"],
    "levels": {
      "0": "within range",
      "1": "borderline",
      "2": "out of range"
    },
    "count": 13
  }
}
GET /api/v1/body-map/info

מטא-נתוני יכולות: האם המנוע מופעל בפריסה הזו, מגבלות הבקשה, שיטת האימות ורשימת נקודות הקצה המלאה.

דוגמת cURL

curl "https://app.aibloodtestinterpret.com/api/v1/body-map/info"

נקודת קצה Sandbox של מפת הגוף

POST /api/v1/body-map/sandbox מחזירה תגובת דוגמה בדיוק במבנה ש-/analyze מפיקה, כך שלקוח שנכתב מול ה-Sandbox עובד ללא שינוי מול הייצור. נדרש אימות כדי שהקריאה גם תאשר את פרטי הגישה שלך, אך לא נצרכת מכסה ולא מבוצע ניתוח.

קוד שגיאהHTTPמשמעות
AUTH_1001401פרטי אימות חסרים
AUTH_1002401שם משתמש או סיסמה לא תקינים
AUTH_1004400פרטי גישה פגומים (סוג שגוי או גודל חורג)
QUOTA_1101403מכסת API לא מספקת
VAL_2001400השדה parameters חסר
VAL_2002400פורמט נתונים לא תקין
VAL_2005400השדה parameters ריק
VAL_2006400יותר מ-500 פרמטרים
VAL_2008400שורת פרמטר פגומה או ללא שם
RES_4004422קיימות תוצאות מסומנות אך אף אחת מהן אינה ממופה לאזור גוף
RES_4005503מנוע מפת הגוף מושבת בפריסה הזו

ממשק גיל הדם הביולוגי

שוחרר: 18 בספטמבר 2026

ממשק Kantesti לגיל הדם הביולוגי עונה על שאלה שטווח התייחסות אינו יכול לענות עליה: בן כמה נראה הדם הזה? הוא מחשב גיל ביולוגי מפאנל שגרתי באמצעות מודל Levine PhenoAge שפורסם, ולצדו גוזר עד 18 מדדים קליניים — FIB-4, HOMA-IR, TyG, eGFR, AIP, NLR, פער אניונים ועוד — שדוח מעבדה רק לעתים רחוקות מדפיס.

9
סמני PhenoAge
18
מדדים נגזרים
39
שפות קלט

מספר גם מפאנל חלקי

PhenoAge זקוק לתשעה סמנים ורוב הפאנלים נושאים פחות. כאשר כל התשעה קיימים הממשק מחזיר את הנוסחה שפורסמה ללא שינוי. כאשר הם אינם קיימים, הקלטים החסרים מושלמים מחציונים אוכלוסייתיים והתשובה מוחזרת עם source: "partial", כך שתמיד ברור איזו מהן קיבלת. שני המסלולים דטרמיניסטיים: ללא קריאת מודל, ללא עלות נוספת, אותה תשובה בכל פעם עבור אותו פאנל.

תכונות עיקריות
  • Levine PhenoAge — המודל שפורסם, מחושב ללא שינוי כאשר כל תשעת הסמנים קיימים
  • ירידה מדורגת — פאנל חלקי עדיין מניב מספר, מסומן ככזה בבירור, עם פירוט הסמנים החסרים
  • 18 מדדים קליניים — FIB-4, De Ritis, יחס A/G, HOMA-IR, TyG, eAG, eGFR, פער אניונים, BUN/קריאטינין, כולסטרול שאינו HDL, TG/HDL, AIP, TC/HDL, כולסטרול שארית, NLR, Mentzer, רוויית טרנספרין, סידן מתוקנן
  • המרת יחידות אוטומטית — יחידות SI ויחידות מקובלות, בכל כתיב, עם בדיקות סבירות פיזיולוגית הדוחות ערכים בלתי אפשריים
  • התאמת סמנים רב-לשונית — שמות בדיקות ב-39 שפות דוחות כולל כתבים שאינם לטיניים; לעולם אינך שולח מפתחות פנימיים
  • מצב דטרמיניסטי — ברירת המחדל. ללא קריאת רשת, ללא עלות AI, פלט הניתן לשחזור
  • שכבות מודל אופציונליות — זיהוי שורות, אומדן משופר והערה אישית, כל אחת מאחורי הדגל שלה. חישוב PhenoAge מלא בתשעה סמנים לעולם אינו נדרס על ידי המודל.
  • 100 שפות — עבור ההערה האישית האופציונלית
  • מצב Sandbox — בדוק את האינטגרציה ללא צריכת קרדיטים

סיכום נקודות קצה

נקודת קצהשיטהתיאוראימות
/api/v1/blood-age/analyzePOSTחישוב גיל דם ביולוגי ומדדים קליניים נגזריםנדרש (1 נקודה)
/api/v1/blood-age/validatePOSTאימות מטען ובדיקה אילו סמנים הפאנל מספק (ללא צריכת מכסה)נדרש (חינם)
/api/v1/blood-age/sandboxPOSTבדיקה עם נתוני דוגמה (ללא צריכת מכסה)נדרש (חינם)
/api/v1/blood-age/biomarkersGETרשימת הסמנים שהמנוע קורא ויחידות היעד שלהםלא נדרש
/api/v1/blood-age/infoGETמטא-נתוני יכולות, מגבלות ופרטי אימותלא נדרש
POST /api/v1/blood-age/analyze שוחרר 18.09.2026

מחשב גיל דם ביולוגי ואת המדדים הנגזרים מפאנל בדיקות מעבדה. צורך קרדיט אחד לכל בקשה מוצלחת. בקשה שנכשלת באימות, או שהפאנל שלה אינו מניב דבר הניתן לחישוב, אינה מחויבת.

פרמטרי בקשה

פרמטרסוגנדרשתיאור
usernamestringכןשם משתמש API
passwordstringכןסיסמת API
parametersarrayכןאובייקטים של תוצאות מעבדה. מקסימום 500. כל אחד דורש שם בדיקה ותוצאה.
metadataobjectלאכותרת הדוח. מומלץ מאוד: לנוסחת PhenoAge יש איבר של גיל כרונולוגי. נקראים patient_age, patient_sex, dob, lab_date.
patientobjectלא{"age": 42, "gender": "female"} — משמש כאשר המטא-נתונים אינם נושאים אותם
interpretationarrayלאפרשנות קלינית, משמשת כהקשר למודל בלבד
languagestringלאשפת ההערה האישית האופציונלית (ברירת מחדל: en). ראה שפות נתמכות.
ai_assistbooleanלאאפשר למודל לזהות שמות בדיקות חריגים (ברירת מחדל: false)
ai_estimatebooleanלאאפשר למודל לשפר גיל חלקי (ברירת מחדל: false)
ai_notebooleanלאבקשת הערה אישית בשפה שב-language (ברירת מחדל: false)

תשעת סמני PhenoAge

שלח אותם בשמות שהמעבדה שלך הדפיסה — ההתאמה היא לפי שם, בכל אחת מ-39 שפות הדוחות הנתמכות, והיחידות מומרות אוטומטית.

סמןשם מקובליחידת יעד
albuminאלבומיןg/L
creatinineקריאטיניןµmol/L
glucoseגלוקוז / סוכר בצוםmmol/L
crpחלבון מגיב Cmg/L
lymphלימפוציטים%
mcvנפח תא ממוצעfL
rdwרוחב פיזור כדוריות אדומות%
alpפוספטאז אלקלייןU/L
wbcספירת כדוריות דם לבנות10⁹/L

דוגמת cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/blood-age/analyze" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "שם_משתמש",
    "password": "סיסמה",
    "metadata": {"patient_age": "40", "patient_sex": "Male", "lab_date": "2026-09-11"},
    "parameters": [
      {"short_name": "Albumin", "result": 4.4, "unit": "g/dL", "range_normal_min": 3.5, "range_normal_max": 5.0},
      {"short_name": "Creatinine", "result": 0.9, "unit": "mg/dL", "range_normal_min": 0.6, "range_normal_max": 1.2},
      {"short_name": "Glucose", "result": 90, "unit": "mg/dL", "range_normal_min": 70, "range_normal_max": 99},
      {"short_name": "CRP", "result": 1.0, "unit": "mg/L", "range_normal_min": 0, "range_normal_max": 5},
      {"short_name": "Lymphocytes", "result": 30, "unit": "%", "range_normal_min": 20, "range_normal_max": 40},
      {"short_name": "MCV", "result": 90, "unit": "fL", "range_normal_min": 80, "range_normal_max": 100},
      {"short_name": "RDW", "result": 13, "unit": "%", "range_normal_min": 11.5, "range_normal_max": 14.5},
      {"short_name": "ALP", "result": 70, "unit": "U/L", "range_normal_min": 40, "range_normal_max": 130},
      {"short_name": "WBC", "result": 6.0, "unit": "10^9/L", "range_normal_min": 4, "range_normal_max": 11}
    ]
  }'

דוגמת Python

import requests

def biological_blood_age(parameters, metadata, username, password):
    """
    חישוב גיל דם ביולוגי מפאנל בדיקות דם שגרתי.

    Args:
        parameters: רשימת אובייקטים של תוצאות מעבדה
        metadata: כותרת הדוח הנושאת patient_age ו-patient_sex
        username: שם משתמש API
        password: סיסמת API

    Returns:
        dict: בלוק גיל הדם, המדדים הנגזרים וסיכום שטוח
    """
    url = "https://app.aibloodtestinterpret.com/api/v1/blood-age/analyze"

    response = requests.post(url, json={
        "username": username,
        "password": password,
        "parameters": parameters,
        "metadata": metadata,
    }, timeout=60)
    response.raise_for_status()
    return response.json()

result = biological_blood_age(
    parameters=[
        {"short_name": "Albumin", "result": 4.4, "unit": "g/dL"},
        {"short_name": "Creatinine", "result": 0.9, "unit": "mg/dL"},
        {"short_name": "Glucose", "result": 90, "unit": "mg/dL"},
        {"short_name": "CRP", "result": 1.0, "unit": "mg/L"},
        {"short_name": "Lymphocytes", "result": 30, "unit": "%"},
        {"short_name": "MCV", "result": 90, "unit": "fL"},
        {"short_name": "RDW", "result": 13, "unit": "%"},
        {"short_name": "ALP", "result": 70, "unit": "U/L"},
        {"short_name": "WBC", "result": 6.0, "unit": "10^9/L"},
    ],
    metadata={"patient_age": "40", "patient_sex": "Male"},
    username="your_username",
    password="your_password",
)

summary = result["data"]["summary"]
print(f"chronological: {summary['chronological_age']}")
print(f"biological:    {summary['biological_age']} ({summary['source']})")

דוגמת תגובה

{
  "status": "success",
  "api_version": "1.0.0",
  "message": "Biological blood age computed successfully",
  "data": {
    "blood_age": {
      "version": 1,
      "age": {
        "status": "ok",
        "source": "formula",
        "chrono": 40,
        "pheno": 35.1,
        "delta": -4.9,
        "sex": "m",
        "found": ["albumin", "creatinine", "glucose", "crp", "lymph", "mcv", "rdw", "alp", "wbc"],
        "missing": [],
        "labels": {"albumin": "Albumin", "creatinine": "Creatinine", "glucose": "Glucose"},
        "inputs": {"albumin": 44.0, "creatinine": 79.56, "glucose": 5.0}
      },
      "indices": [
        {"key": "fib4", "group": "liver", "value": 1.12, "unit": "", "band": "ok", "from": ["AST", "ALT", "PLT"]},
        {"key": "egfr", "group": "kidneys", "value": 98.0, "unit": "mL/min/1.73m2", "band": "ok", "from": ["Creatinine"]},
        {"key": "nlr", "group": "immune", "value": 1.8, "unit": "", "band": "ok", "from": ["Neutrophils", "Lymphocytes"]}
      ]
    },
    "engine_version": 1,
    "mode": "deterministic",
    "summary": {
      "status": "ok",
      "source": "formula",
      "chronological_age": 40,
      "biological_age": 35.1,
      "delta_years": -4.9,
      "sex": "m",
      "markers_found": 9,
      "markers_missing": [],
      "indices_count": 3
    }
  },
  "timestamp": "2026-09-18T10:30:00Z"
}

מדריך שדות התגובה

שדהסוגתיאור
summary.statusstringok, missing_age, missing_markers, needs_markers או unavailable
summary.sourcestringformula (כל תשעת הסמנים), partial (חציונים הושלמו) או ai (אומדן המודל, רק עם ai_estimate)
summary.chronological_ageinteger|nullהגיל שנקרא מהמטא-נתונים או מאובייקט המטופל
summary.biological_agenumber|nullגיל הדם המחושב, בשנים
summary.delta_yearsnumber|nullביולוגי פחות כרונולוגי. ערך שלילי משמעו צעיר מהלוח השנה.
summary.markers_missingarrayאילו מתשעת סמני PhenoAge הפאנל לא סיפק
blood_age.age.inputsobjectהערכים המומרים ששימשו בפועל, ביחידות היעד
blood_age.age.labelsobjectהשם של המעבדה שלך לכל סמן שהמנוע התאים
blood_age.indices[].bandstringok, borderline, high, low או info
blood_age.indices[].fromarrayשורות המעבדה שמהן נגזר המדד הזה
modestringdeterministic או ai_assisted
שלח גיל כרונולוגי

לנוסחת PhenoAge יש איבר של גיל, ולכן ללא גיל כרונולוגי התגובה חוזרת עם status: "missing_age" וללא מספר. שלח אותו ב-metadata.patient_age, או ב-patient.age, או כתאריך לידה ב-patient.dob. הנוסחה חלה על גילאי 18 עד 100.

POST /api/v1/blood-age/validate שוחרר 18.09.2026

בודק מטען מבלי להריץ את הניתוח, ומדווח אילו מתשעת סמני PhenoAge הפאנל שלך מספק והאם ניתן היה לקרוא גיל כרונולוגי — שני הדברים שקובעים אם תקבל את הנוסחה המלאה או את האומדן החלקי. נדרש אימות; לא נצרכת מכסה, ונקודת הקצה ממשיכה לעבוד גם בחשבון ללא קרדיטים.

דוגמת cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/blood-age/validate" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "שם_משתמש",
    "password": "סיסמה",
    "metadata": {"patient_age": "40", "patient_sex": "Male"},
    "parameters": [
      {"short_name": "MCV", "result": 90, "unit": "fL"},
      {"short_name": "WBC", "result": 6.0, "unit": "10^9/L"},
      {"short_name": "Lymphocytes", "result": 30, "unit": "%"}
    ]
  }'

דוגמת תגובה

{
  "status": "success",
  "api_version": "1.0.0",
  "message": "Payload is valid",
  "data": {
    "valid": true,
    "errors": [],
    "parameter_count": 3,
    "looks_like_blood_panel": true,
    "chronological_age": 40,
    "sex": "m",
    "phenoage_markers_found": ["lymph", "mcv", "wbc"],
    "phenoage_markers_missing": ["albumin", "creatinine", "glucose", "crp", "rdw", "alp"],
    "expected_source": "partial",
    "recognised_markers": ["lymph_pct", "mcv", "wbc"]
  },
  "timestamp": "2026-09-18T10:30:00Z"
}

נקודות קצה מידע

שתי נקודות קצה המידע הן ללא אימות וללא עלות.

GET /api/v1/blood-age/biomarkers

מפרטת את תשעת קלטי PhenoAge, כל סמן שהמנוע יכול לקרוא עם יחידת היעד שלו, ואת טווח הגילאים שהנוסחה חלה עליו.

דוגמת cURL

curl "https://app.aibloodtestinterpret.com/api/v1/blood-age/biomarkers"

דוגמת תגובה

{
  "status": "success",
  "data": {
    "phenoage_inputs": ["albumin", "creatinine", "glucose", "crp", "lymph", "mcv", "rdw", "alp", "wbc"],
    "phenoage_age_range": {"min": 18, "max": 100},
    "markers": [
      {"key": "albumin", "target_unit": "g/l"},
      {"key": "alp", "target_unit": "u/l"},
      {"key": "alt", "target_unit": "u/l"}
    ],
    "marker_count": 33
  }
}
GET /api/v1/blood-age/info

מטא-נתוני יכולות: האם המנוע מופעל בפריסה הזו, שני המצבים ומה עולה כל אחד מהם, מגבלות הבקשה, שיטת האימות והשפות הנתמכות.

דוגמת cURL

curl "https://app.aibloodtestinterpret.com/api/v1/blood-age/info"

נקודת קצה Sandbox של גיל הדם

POST /api/v1/blood-age/sandbox מחזירה תגובת דוגמה בדיוק במבנה ש-/analyze מפיקה, כך שלקוח שנכתב מול ה-Sandbox עובד ללא שינוי מול הייצור. נדרש אימות כדי שהקריאה גם תאשר את פרטי הגישה שלך, אך לא נצרכת מכסה ולא מבוצע ניתוח.

קוד שגיאהHTTPמשמעות
AUTH_1001401פרטי אימות חסרים
AUTH_1002401שם משתמש או סיסמה לא תקינים
AUTH_1004400פרטי גישה פגומים (סוג שגוי או גודל חורג)
QUOTA_1101403מכסת API לא מספקת
VAL_2001400השדה parameters חסר
VAL_2002400פורמט נתונים לא תקין
VAL_2003400קוד שפה לא נתמך
VAL_2005400השדה parameters ריק
VAL_2006400יותר מ-500 פרמטרים
VAL_2007400אובייקט patient לא תקין
VAL_2008400שורת פרמטר פגומה או ללא שם
VAL_2009400ערך patient.gender לא נתמך
RES_4004422אין דבר הניתן לחישוב מהפרמטרים האלה
RES_4005503מנוע גיל הדם הביולוגי מושבת בפריסה הזו

ממשק בריאות DNA: פענוח בדיקות DNA, דוח DNA + דם ויועץ תוספי תזונה

שוחרר: 23 בספטמבר 2026

אנו גאים להציג את ממשק בריאות DNA של Kantesti: שלושה מודולי AI חדשים שהופכים בדיקת DNA של מטופל לדוחות קליניים. פענוח בדיקות DNA קורא קובץ גנוטיפ גולמי או דוח גנטי ומפיק דוח בריאות גנטי מקיף. דוח הבריאות DNA + דם משלב את הדוח הזה עם בדיקת דם מפוענחת ומראה היכן הגנים וערכי המעבדה מאששים זה את זה ואיפה הם סותרים זה את זה. יועץ תוספי התזונה הופך DNA, בדיקת דם ושאלון קצר לתוכנית תוספי תזונה מותאמת אישית, הבנויה על המוצרים של המרפאה שלך.

334
סמני DNA נבחרים
20
קטגוריות בריאות
+100
שפות דוח

נבדק מול הקובץ שלך

קובץ גנוטיפ גולמי נקרא ומנותח בשרת ומושווה לפאנל נבחר של 334 סמנים ב-20 קטגוריות, מגנים של מתילציה, לב וכלי דם ושומני דם ועד פרמקוגנומיקה, חילוף חומרים של רכיבי תזונה, מצב נשאות ואריכות ימים. כל ממצא שה-AI כותב נבדק מול הקובץ שהועלה: rsID שאינו מופיע בקובץ מוסר, וכל גנוטיפ מוצמד לקריאה הרשומה בקובץ, כך שהדוח אינו יכול להמציא תוצאה.

תכונות עיקריות
  • כל מקורות ה-DNA הנפוצים — קבצים גולמיים מ-23andMe, AncestryDNA, MyHeritage, FTDNA ו-LivingDNA, קובצי VCF, גם בתוך .zip או .gz; שורות rsID מודבקות; או דוח גנטי בעד 6 קובצי PDF, JPG או PNG
  • דוח גנטי מקיף — ממצאים לפי תחום בריאות, סיכוני מחלות, מצב נשאות, פרמקוגנומיקה (פנוטיפים צפויים של קצב חילוף החומרים ומשפחות התרופות המושפעות), נוטריגנומיקה, תכונות, בדיקות המשך מומלצות ודגלים אדומים
  • גנים פוגשים ערכי מעבדה — דוח ה-DNA + דם מסווג כל קשר בין ממצא גנטי לתוצאת מעבדה כ-confirms, contradicts, neutral או watch, עם מטריצת סיכונים, פעולות לפי סדר עדיפות ותוכנית מעקב
  • תוכניות תוספים עם כללי בטיחות — מינון, צורת מתן, תזמון, משך, אינטראקציות ומועדי בדיקה חוזרת; המינונים נשארים בגבולות רמות הצריכה העליונות הנסבלות, חלות מגבלות בטוחות להריון, וכל מה שמחייב החלטה של רופא מטפל מועבר ל-clinician_review_required
  • קטלוג המוצרים שלך — היועץ ממליץ על המוצרים שהמרפאה שלך מחזיקה, מסמן אותם כ-clinic_library, ובמצב "מוצרי המרפאה בלבד" מפרט את הצרכים שהקטלוג שלך אינו מכסה
  • ניתנים לשרשור וללא שמירת מצב — שלח את הדוח ממודול 1 ישירות למודולים 2 ו-3. דבר אינו נשמר ברשומת מטופל, וקובצי גנוטיפ גולמיים נמחקים מיד לאחר הניתוח
  • יותר מ-100 שפות דוח — הדוח נכתב בשפה שאתה מבקש
  • מצב אסינכרוני — הוסף ?async=1 ותשאל מחזורית את /api/jobs/<job_id>, כך שניתוח ארוך לעולם אינו נתקל בפסק זמן של ה-gateway
  • מצב Sandbox — בדוק את האינטגרציה ללא צריכת קרדיטים
כיצד שלושת המודולים עובדים יחד

1. POST /api/v1/dna-interpretation/analyze עם קובץ ה-DNA מחזירה את data.report. 2. שלח את הדוח הזה יחד עם בדיקת דם מפוענחת אל /api/v1/dna-blood-report/analyze. 3. שלח את אותו דוח, את תשובות השאלון ובאופן אופציונלי את בדיקת הדם אל /api/v1/dna-supplements/analyze. מודולים 2 ו-3 מקבלים את דוח ה-DNA בדיוק כפי שהוחזר: את האובייקט report, את האובייקט data כולו או את התגובה המלאה.

סיכום נקודות קצה

נקודת קצהשיטהתיאוראימות
/api/v1/dna-interpretation/analyzePOSTקובץ DNA, שורות rsID מודבקות או עמודי דוח ← דוח בריאות גנטי מקיףנדרש (1 נקודה)
/api/v1/dna-interpretation/validatePOSTניתוח הקובץ שהועלה והצגת מה שנמצא, ללא קריאת AIנדרש (חינם)
/api/v1/dna-interpretation/sandboxPOSTדוח גנטי לדוגמהנדרש (חינם)
/api/v1/dna-interpretation/infoGETקלטים נתמכים, מגבלות ושפות דוחלא נדרש
/api/v1/dna-blood-report/analyzePOSTדוח DNA + בדיקת דם מפוענחת ← דוח בריאות משולבנדרש (1 נקודה)
/api/v1/dna-blood-report/validatePOSTבדיקת המטען ללא קריאת AIנדרש (חינם)
/api/v1/dna-blood-report/sandboxPOSTדוח משולב לדוגמהנדרש (חינם)
/api/v1/dna-blood-report/infoGETשדות הבקשה ומגבלותלא נדרש
/api/v1/dna-supplements/analyzePOSTדוח DNA + בדיקת דם (אופציונלי) + שאלון ← תוכנית תוספי תזונהנדרש (1 נקודה)
/api/v1/dna-supplements/validatePOSTבדיקת המטען והתשובות ללא קריאת AIנדרש (חינם)
/api/v1/dna-supplements/sandboxPOSTתוכנית תוספי תזונה לדוגמהנדרש (חינם)
/api/v1/dna-supplements/questionnaireGET25 השאלות והתשובות המותרות לכל אחת מהןלא נדרש
/api/v1/dna-supplements/settingsGET PUTקריאה או עדכון של קטלוג המוצרים והגדרות היועץ של המרפאה שלךנדרש (חינם)
/api/v1/dna-supplements/infoGETשדות הבקשה ומגבלותלא נדרש
POST /api/v1/dna-interpretation/analyze שוחרר 23.09.2026

מפענח בדיקת DNA אחת ומחזיר דוח בריאות גנטי מקיף. שלח קובץ כ-multipart/form-data, או שורות גנוטיפ מודבקות כ-JSON. הקובץ נקרא ומנותח עוד במהלך הבקשה, כך שקובץ שאינו קריא נענה מיד ב-400 ואינו עולה דבר. קרדיט אחד מחויב רק לאחר שהדוח הופק.

פרמטרי בקשה

פרמטרסוגנדרשתיאור
usernamestringכןשם המשתמש שלך ב-API (או השתמש באימות HTTP Basic)
passwordstringכןסיסמת ה-API שלך
filefileכן*קובץ גנוטיפ גולמי אחד (.txt, .csv, .tsv, .vcf, .zip, .gz, עד 80 MB) או עד 6 קובצי דוח (PDF עד 20 MB, JPG/PNG עד 10 MB כל אחד). *שלח file או genotype_text.
genotype_textstringכן*שורות גנוטיפ מודבקות (rsID, כרומוזום, מיקום, גנוטיפ), עד 2,000,000 תווים
languagestringלאקוד שפת הדוח, למשל en, de, ar (ברירת מחדל: en). ראה שפות נתמכות.
patientobjectלאage, sex, diagnoses, comorbidities, medications, treatments, notes. בבקשת multipart, שלח אותו כמחרוזת JSON.
source_labelstringלאשם משלך למקור הנתונים, עד 120 תווים

דוגמת cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/dna-interpretation/analyze?async=1" \
  -u "שם_משתמש:סיסמה" \
  -F "file=@genome_raw_data.txt" \
  -F "language=he" \
  -F 'patient={"age": 41, "sex": "female", "medications": "clopidogrel"}'

# תשובה 202 Accepted: {"status": "pending", "job_id": "...", "poll_url": "/api/jobs/...", ...}
curl -u "שם_משתמש:סיסמה" "https://app.aibloodtestinterpret.com/api/jobs/JOB_ID"

דוגמת Python

import time
import requests

BASE = "https://app.aibloodtestinterpret.com"
AUTH = ("YOUR_USERNAME", "YOUR_PASSWORD")


def run(path, poll=True, **kwargs):
    """POST במצב אסינכרוני, ולאחר מכן תשאול /api/jobs/<id> עד שהדוח מוכן."""
    resp = requests.post(f"{BASE}{path}?async=1", auth=AUTH, timeout=60, **kwargs)
    body = resp.json()
    if resp.status_code != 202:
        return body                      # שגיאה, או תשובה סינכרונית
    while True:
        time.sleep(body.get("poll_interval_ms", 3000) / 1000)
        job = requests.get(f"{BASE}{body['poll_url']}", auth=AUTH, timeout=30).json()
        if job["status"] in ("completed", "failed"):
            return job["result"]["response"]


# 1) פענוח בדיקת DNA
with open("genome_raw_data.txt", "rb") as fh:
    dna = run("/api/v1/dna-interpretation/analyze",
              files={"file": fh},
              data={"language": "he", "patient": '{"age": 41, "sex": "female"}'})
report = dna["data"]["report"]
print(report["executive_summary"])
for section in report["sections"]:
    print(section["title"], "-", section["risk_level"])

דוגמת תגובה

{
  "status": "success",
  "api_version": "1.0.0",
  "message": "DNA test interpretation completed successfully",
  "data": {
    "analysis_id": "DNA-3F9A1C07B2",
    "module": "dna_interpretation",
    "generated_at": "2026-09-23T10:30:00Z",
    "language": "en",
    "source": {
      "kind": "raw", "format": "23andme", "build": "GRCh37",
      "total_records": 638463, "called": 631022, "no_call_rate": 0.0117,
      "inferred_sex": "female", "panel_total": 334, "panel_found": 291,
      "filename": "genome_raw_data.txt", "warnings": []
    },
    "report": {
      "report_type": "dna",
      "title": "Genetic health report",
      "executive_summary": "Array genotyping with good coverage of the clinical panel...",
      "overall_assessment": {"level": "slightly_elevated", "summary": "Mostly typical findings with a few actionable ones."},
      "data_quality": {"source": "23andMe v5 raw file", "markers_analyzed": 291, "coverage_note": "...", "limitations": "..."},
      "sections": [
        {
          "key": "nutrigenomics", "title": "Nutrient metabolism", "risk_level": "slightly_elevated",
          "summary": "Reduced folate cycle activity...",
          "findings": [
            {"gene": "MTHFR", "rsid": "rs1801133", "genotype": "AG", "phenotype": "C677T heterozygous",
             "risk_level": "slightly_elevated", "evidence": "established",
             "explanation": "About 65% of typical enzyme activity.", "recommendation": "Check homocysteine."}
          ]
        }
      ],
      "pharmacogenomics": [
        {"gene": "CYP2C19", "rsids": ["rs4244285"], "predicted_phenotype": "Intermediate metabolizer",
         "affected_drugs": ["clopidogrel", "omeprazole"], "recommendation": "Review before prescribing clopidogrel."}
      ],
      "disease_risks": [], "carrier_status": [], "nutrigenomics": [], "traits": [],
      "lifestyle_recommendations": ["..."], "recommended_tests": [{"test": "Homocysteine", "reason": "MTHFR C677T"}],
      "red_flags": [], "limitations": "Consumer arrays miss rare variants.",
      "disclaimer": "AI-generated clinical decision support for clinician review; not a diagnosis."
    }
  },
  "timestamp": "2026-09-23T10:30:00Z"
}

מדריך שדות התגובה

שדהסוגתיאור
sourceobjectמה נקרא: kind (raw, text או document), הפורמט וגרסת הגנום שזוהו, מספר הרשומות והקריאות, כמה מתוך 334 סמני הפאנל נמצאו, ואזהרות המנתח
report.overall_assessment.levelstringtypical, slightly_elevated, elevated או high
report.sections[]arrayרשומה אחת לכל תחום בריאות, עם risk_level ועם ה-findings שלו
report.sections[].findings[]arraygene, rsid, genotype, phenotype, risk_level (protective, typical, informational, slightly_elevated, elevated, high), evidence (established, probable, preliminary), explanation, recommendation
report.pharmacogenomics[]arrayפנוטיפ חילוף החומרים הצפוי לכל גן ומשפחות התרופות שהוא עשוי להשפיע עליהן. הדוח לעולם אינו נותן מינוני מרשם.
report.carrier_status[]arraycarrier, not_detected, affected_pattern או inconclusive, ותמיד יש לאשר זאת בבדיקה גנטית קלינית
report.disease_risks[], nutrigenomics[], traits[]arrayסיכוני מחלות, ממצאים תזונתיים ותכונות, יחד עם הגנים שמאחוריהם
report.recommended_tests[], red_flags[]arrayבדיקות המשך עם נימוק, וממצאים הדורשים התייחסות מיידית
POST /api/v1/dna-interpretation/validate שוחרר 23.09.2026

מנתחת את הקובץ שהועלה בדיוק כמו /analyze ומדווחת מה נמצא, ללא קריאת AI. נדרש אימות; לא נצרך קרדיט. השתמש בה כדי לבדוק קובץ לפני שאתה מוציא עליו קרדיט.

דוגמת תגובה

{
  "status": "success",
  "message": "Payload is valid",
  "data": {
    "valid": true,
    "language": "en",
    "source": {"kind": "raw", "format": "ancestrydna", "build": "GRCh37", "panel_total": 334, "panel_found": 287, "warnings": []}
  }
}
POST /api/v1/dna-blood-report/analyze שוחרר 23.09.2026

משלב דוח DNA עם בדיקת דם מפוענחת לדוח בריאות אחד. כל קשר בין ממצא גנטי לערך מעבדה מסווג, ולאחר מכן מוצגות מטריצת סיכונים, פעולות לפי סדר עדיפות ותוכנית מעקב. קרדיט אחד לכל בקשה מוצלחת.

פרמטרי בקשה

פרמטרסוגנדרשתיאור
dna_reportobjectכןהדוח מ-/api/v1/dna-interpretation/analyze: data.report, ה-data כולו או התגובה המלאה
blood_testobject|arrayכןבדיקת דם מפוענחת כפי שה-API לבדיקות דם מחזיר אותה (metadata, parameters, interpretation), או רק רשימה של עד 500 פרמטרים עם שם ו-result
languagestringלאקוד שפת הדוח (ברירת מחדל: en)
patientobjectלאאותם שדות כמו בפענוח בדיקות DNA

דוגמת Python

# 2) דוח בריאות DNA + דם (משתמש ב-run() וב-dna מהדוגמה שלמעלה)
blood_test = {
    "parameters": [
        {"short_name": "25-OH D", "result": 18, "unit": "ng/mL", "range_normal_min": 30, "range_normal_max": 100, "evaluation": "low"},
        {"short_name": "Homocysteine", "result": 13.2, "unit": "µmol/L", "evaluation": "high"}
    ]
}
combined = run("/api/v1/dna-blood-report/analyze",
               json={"dna_report": dna, "blood_test": blood_test, "language": "he"})
for link in combined["data"]["report"]["correlations"]:
    print(link["topic"], link["concordance"], link["action"])

דוגמת תגובה

{
  "status": "success",
  "message": "DNA + blood health report completed successfully",
  "data": {
    "analysis_id": "DNB-8C21E40A9D",
    "module": "dna_blood_report",
    "language": "en",
    "report": {
      "report_type": "dna_blood",
      "executive_summary": "The low vitamin D level matches the GC genotype; homocysteine is borderline, in line with MTHFR C677T.",
      "overall_status": {"level": "watch", "summary": "Two gene-lab matches to act on."},
      "correlations": [
        {"topic": "Vitamin D", "genetic_finding": "GC rs2282679 GT", "lab_finding": "25-OH D 18 ng/mL",
         "concordance": "confirms", "interpretation": "Genetic tendency and lab value agree.", "action": "Supplement and recheck in 12 weeks."}
      ],
      "risk_matrix": [{"area": "Folate cycle", "genetic_risk": "slightly_elevated", "lab_status": "borderline", "combined_assessment": "Watch homocysteine."}],
      "priority_actions": [{"priority": "high", "action": "Start vitamin D3", "why": "Deficient level and GC genotype"}],
      "monitoring_plan": [{"marker": "25-OH vitamin D", "interval": "12 weeks", "reason": "Dose check"}],
      "lifestyle_plan": [], "questions_for_clinician": [], "red_flags": [],
      "limitations": "One blood test; values vary.",
      "disclaimer": "AI-generated clinical decision support for clinician review; not a diagnosis."
    }
  }
}

מדריך שדות התגובה

שדהסוגתיאור
report.overall_status.levelstringgood, watch, attention או urgent
report.correlations[].concordancestringconfirms, contradicts, neutral או watch
report.risk_matrix[]arrayלכל תחום: genetic_risk, lab_status (normal, borderline, abnormal, not_measured) והערכה משולבת
report.priority_actions[]arraypriority (high, medium, low), הפעולה והסיבה לה
report.monitoring_plan[]arrayאיזה סמן לבדוק שוב, מתי ומדוע
POST /api/v1/dna-supplements/analyze שוחרר 23.09.2026

בונה תוכנית תוספי תזונה מותאמת אישית מדוח ה-DNA, מתשובות השאלון ובאופן אופציונלי מבדיקת דם מפוענחת. קטלוג המוצרים והגדרות היועץ של המרפאה שלך מוחלים אוטומטית. קרדיט אחד לכל בקשה מוצלחת.

פרמטרי בקשה

פרמטרסוגנדרשתיאור
dna_reportobjectכןהדוח מ-/api/v1/dna-interpretation/analyze
answersobjectכןתשובות השאלון. diet_type ו-pregnancy הן שדות חובה; את כל 25 השאלות תמצא ב-GET /api/v1/dna-supplements/questionnaire. מפתחות וערכים לא מוכרים מושמטים.
blood_testobject|arrayלאאותו פורמט כמו בדוח DNA + דם
use_clinic_cataloguebooleanלאהחלת קטלוג המוצרים וההגדרות של המרפאה שלך (ברירת מחדל: true)
languagestringלאקוד שפת הדוח (ברירת מחדל: en)
patientobjectלאאותם שדות כמו בפענוח בדיקות DNA. התרופות המפורטות כאן נבדקות לאינטראקציות.

דוגמת cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/dna-supplements/analyze?async=1" \
  -u "שם_משתמש:סיסמה" \
  -H "Content-Type: application/json" \
  -d '{
    "dna_report": { ...data.report מתוך פענוח ה-DNA... },
    "answers": {"diet_type": "vegetarian", "pregnancy": "no", "sun_exposure": "low", "goals": ["energy", "immunity"]},
    "language": "he"
  }'

דוגמת Python

# 3) תוכנית תוספי תזונה (משתמש ב-run(), ב-dna וב-blood_test מהדוגמאות שלמעלה)
plan = run("/api/v1/dna-supplements/analyze",
           json={"dna_report": dna, "blood_test": blood_test,
                 "answers": {"diet_type": "vegetarian", "pregnancy": "no"},
                 "language": "he"})
for item in plan["data"]["report"]["recommendations"]:
    print(item["name"], item["dose"], item["timing"], "-", item["source"])

דוגמת תגובה

{
  "status": "success",
  "message": "Supplement plan completed successfully",
  "data": {
    "analysis_id": "SUP-51B7D2E6F0",
    "module": "dna_supplements",
    "language": "en",
    "catalogue": {"mode": "prefer", "products": 24},
    "report": {
      "report_type": "supplement",
      "summary": "Plan built from GC and MTHFR findings, a low vitamin D level and a vegetarian diet.",
      "recommendations": [
        {"name": "Vitamin D3 + K2", "source": "clinic_library", "product": "Vitamin D3 + K2 (Clinic Brand)",
         "form": "softgel", "dose": "2000 IU", "timing": "with lunch", "duration": "12 weeks", "priority": "high",
         "rationale": {"genetic": "GC rs2282679 GT", "lab": "25-OH D 18 ng/mL", "questionnaire": "little sun"},
         "evidence": "established", "cautions": ["Recheck calcium"], "interactions": ["Thiazide diuretics"],
         "retest": "25-OH D in 12 weeks"}
      ],
      "avoid_or_caution": [{"name": "High-dose vitamin A", "reason": "Pregnancy planning"}],
      "uncovered_needs": [],
      "dietary_sources": [{"nutrient": "Folate", "foods": ["lentils", "spinach"]}],
      "retest_plan": [{"marker": "25-OH vitamin D", "when": "12 weeks", "why": "Dose check"}],
      "clinician_review_required": ["Thiazide co-medication"],
      "disclaimer": "AI-generated clinical decision support for clinician review; not a diagnosis."
    }
  }
}

מדריך שדות התגובה

שדהסוגתיאור
catalogueobjectמצב הקטלוג שהוחל (prefer, only, off) וכמה מוצרי מרפאה היו זמינים
report.recommendations[]arrayname, form, dose, timing, duration, priority, ה-rationale הגנטי / המעבדתי / מהשאלון, evidence, cautions, interactions ו-retest
report.recommendations[].sourcestringclinic_library עבור מוצר מהקטלוג שלך (ששמו מופיע ב-product), אחרת evidence_based
report.uncovered_needs[]arrayבמצב "מוצרי המרפאה בלבד": צרכים שהקטלוג שלך אינו מכסה
report.clinician_review_required[]arrayכל מה שמחייב החלטה של רופא מטפל: אינטראקציות, הריון, מחלת כליות או כבד, נוגדי קרישה, מינונים הקרובים לרמת הצריכה העליונה
report.avoid_or_caution[], dietary_sources[], retest_plan[]arrayממה להימנע, מקורות מזון לכל רכיב תזונתי, ומתי לבצע בדיקה חוזרת
GET PUT /api/v1/dna-supplements/settings שוחרר 23.09.2026

קוראת או מעדכנת את קטלוג המוצרים של המרפאה שלך ואת הגדרות היועץ. זהו אותו קטלוג המשמש בפאנל המרפאה וב-AI תזונה, כך שמוצר שנוסף במקום אחד זמין בכל מקום. נדרש אימות; לא נצרך קרדיט. שלח catalogue, settings או את שניהם; הקטלוג מחליף את הרשימה כולה.

שדהסוגתיאור
catalogue[]arrayעד 200 מוצרים: name, brand, form, dosage, category (vitamin, mineral, probiotic, omega, herbal, other), description
settings.modestringprefer (מוצרי המרפאה היכן שהם מתאימים, והמלצות מבוססות ראיות בכל מקום אחר), only (מוצרי המרפאה בלבד) או off (התעלמות מהקטלוג)
settings.instructionsstringהנחיות משלך ל-AI, עד 1,500 תווים. כללי הבטיחות תמיד גוברים עליהן.
settings.max_itemsintegerמספר ההמלצות המרבי לכל תוכנית, 3 עד 12

דוגמת cURL

curl -X PUT "https://app.aibloodtestinterpret.com/api/v1/dna-supplements/settings" \
  -u "שם_משתמש:סיסמה" \
  -H "Content-Type: application/json" \
  -d '{
    "catalogue": [
      {"name": "Vitamin D3 + K2", "brand": "Clinic Brand", "form": "softgel", "dosage": "2000 IU / 75 µg", "category": "vitamin"},
      {"name": "Omega-3 EPA/DHA", "brand": "Clinic Brand", "form": "softgel", "dosage": "1000 mg", "category": "omega"}
    ],
    "settings": {"mode": "prefer", "instructions": "Prefer our own brand.", "max_items": 8}
  }'

נקודות קצה מידע

GET /api/v1/dna-supplements/questionnaire מפרטת את 25 השאלות (סוג תזונה, ארוחות, פירות וירקות, דגים, בשר אדום, מוצרי חלב, אלכוהול, עישון, קפאין, חשיפה לשמש, פעילות גופנית, שינה, מתח, עיכול, אנרגיה, תוספים נוכחיים, תרופות, אלרגיות, מצבים רפואיים, הריון, מטרות, תקציב, צורת מתן מועדפת והערות) יחד עם הסוג והערכים המותרים של כל אחת. שלוש נקודות הקצה /info מחזירות את הקלטים הנתמכים, המגבלות, עלות הקרדיטים ואת הרשימה המלאה של שפות הדוח. אף אחת מהן אינה דורשת אימות.

Sandbox ומצב אסינכרוני

POST /api/v1/dna-interpretation/sandbox, /api/v1/dna-blood-report/sandbox ו-/api/v1/dna-supplements/sandbox מחזירות דוח לדוגמה בדיוק במבנה ש-/analyze מפיקה. נדרש אימות; לא נצרך קרדיט.

הפקת דוח AI אורכת בדרך כלל בין דקה אחת לשלוש דקות. הוסף ?async=1 (או את הכותרת X-Async: 1) והבקשה תשיב מיד 202 עם job_id. תשאל את GET /api/jobs/<job_id> עם אותם פרטי גישה עד ש-status יהיה completed או failed. התגובה הסופית נמצאת ב-result.response, והיא זהה לתגובה הסינכרונית.

קוד שגיאהHTTPמשמעות
AUTH_1001401פרטי אימות חסרים
AUTH_1002401שם משתמש או סיסמה לא תקינים
QUOTA_1101403מכסת API לא מספקת
VAL_2001400חסר שדה חובה: file או genotype_text, dna_report, blood_test, או תשובת חובה בשאלון
VAL_2002400נתוני גנוטיפ שאינם קריאים, סוג קובץ לא נתמך, JSON לא תקין או dna_report לא תקין
VAL_2003400שפת דוח לא נתמכת
VAL_2006400גדול מדי: טקסט מודבק, פרמטרי דם (500) או קטלוג (200 מוצרים)
VAL_2007400אובייקט patient לא תקין
VAL_2008400אין פרמטר בדיקת דם שמיש (שם ותוצאה)
PROC_3003500לא ניתן היה להפיק את תשובת ה-AI או לאמת אותה; נסה שוב. לא מחויב קרדיט.
RES_4005503מודולי ה-DNA מושבתים בפריסה הזו
תמיכה בהחלטות קליניות

ממשק בריאות DNA מפיק מידע שנוצר באמצעות AI עבור הרופא המטפל. אין זו אבחנה ואין זה מרשם. מערכי גנוטיפ צרכניים (arrays) אינם ריצוף קליני: יש לאשר ממצאים הניתנים לפעולה וממצאי נשאות בבדיקה גנטית קלינית מתוקפת לפני שפועלים על פיהם.

ICR - ממשק זיהוי תווים אינטליגנטי

שוחרר: 14 בפברואר 2026

ממשק Kantesti ICR (זיהוי תווים אינטליגנטי) הוא טכנולוגיה מתקדמת לחילוץ טקסט ממסמכים שעולה הרבה מעבר ל-OCR מסורתי. מופעל על ידי מנוע הבינה המלאכותית הקנייני של Kantesti, ICR מספק פלט JSON מובנה מכל סוג מסמך.

79%
מהיר מ-OCR
99.7%
שיעור דיוק
100+
שפות

Kantesti ICR לעומת OCR מסורתי

במבחני ביצועים, Kantesti ICR הדגים ביצועים גבוהים ב-79% בהשוואה לפתרונות OCR מסורתיים. ICR מבין את מבנה המסמך, שומר על פריסת טבלאות, מחלץ מטא-נתונים ומחזיר JSON מובנה ונקי.

תכונות עיקריות של ICR
  • פלט JSON מובנה — טבלאות, סעיפים, מטא-נתונים וטקסט גולמי בפורמט JSON נקי
  • זיהוי סוג מסמך — מזהה אוטומטית דוחות רפואיים, חשבוניות, טפסים, מכתבים ועוד
  • חילוץ טבלאות — שומר על כותרות ונתוני שורות עם מבנה מלא
  • תמיכה במגוון פורמטים — עיבוד מסמכי PDF, JPG, JPEG, PNG
  • אינטגרציית בדיקות דם (Kan) — נקודת קצה מתמחה לחילוץ מסמכי בדיקות דם
  • מצב Sandbox — בדוק אינטגרציה ללא צריכת קרדיטים
  • מערכת קרדיטים — 0.5 קרדיטים לכל קריאת API

סיכום נקודות קצה ICR

נקודת קצהשיטהתיאורעלות
/api/icr/v1/extractPOSTחילוץ טקסט ICR0.5 קרדיט
/api/icr/v1/sandboxPOSTבדיקת ICRחינם
/api/icr/v1/kanPOSTניתוח מסמכי בדיקות דם0.5 קרדיט
/api/icr/v1/kan/sandboxPOSTבדיקת בדיקות דםחינם
/api/icr/infoGETתיעוד ותכונות APIחינם
/api/icr/healthGETבדיקת תקינות מערכתחינם
/api/icr/v1/quotaPOSTבדוק קרדיטים שנותרוחינם
POST /api/icr/v1/extract שוחרר 14.02.2026

מחלץ את כל תוכן הטקסט ממסמכים שהועלו באמצעות טכנולוגיית ICR של Kantesti.

פרמטרי בקשה

פרמטרסוגנדרשתיאור
usernamestringכןשם המשתמש שלך ב-API
passwordstringכןהסיסמה שלך ב-API
filefileכןקובץ מסמך (PDF, JPG, JPEG, PNG)
languagestringלאשפת פלט (ברירת מחדל: en)

דוגמת cURL

curl -X POST "https://app.aibloodtestinterpret.com/api/icr/v1/extract" \
  -F "username=שם_משתמש" \
  -F "password=סיסמה" \
  -F "language=he" \
  -F "[email protected]"

דוגמת Python

import requests

def icr_extract(file_path: str, username: str, password: str, language: str = "he"):
    """
    חילוץ טקסט ממסמך באמצעות ממשק ICR של Kantesti.
    מהיר ב-79% ומדויק יותר מ-OCR מסורתי.
    """
    url = "https://app.aibloodtestinterpret.com/api/icr/v1/extract"
    with open(file_path, "rb") as f:
        files = {"file": (file_path, f)}
        data = {"username": username, "password": password, "language": language}
        response = requests.post(url, files=files, data=data, timeout=120)
        response.raise_for_status()
        return response.json()

result = icr_extract("דוח_רפואי.pdf", "משתמש", "סיסמה", "he")
print(f"סוג מסמך: {result['data']['document_type']}")
print(f"עמודים: {result['data']['page_count']}")

דוגמת תגובה

{
  "status": "success",
  "data": {
    "document_type": "blood_test_report",
    "page_count": 1,
    "pages": [{"page_number": 1, "content": {"raw_text": "בית חולים אוניברסיטאי קלן - בדיקת דם...", "sections": [{"type": "header", "content": "בדיקת דם"}], "tables": [{"headers": ["בדיקה", "תוצאה", "יחידה", "טווח התייחסות"], "rows": [["גלוקוז", "92", "mg/dL", "74 - 100"], ["ALT", "22", "U/L", "< 35"]]}]}}],
    "metadata": {"detected_language": "he", "confidence": "high"},
    "icr_metadata": {"engine": "kantesti-icr", "version": "1.0.0"}
  },
  "credit_cost": 0.5,
  "api_version": "icr-v1"
}

נקודות קצה Sandbox של ICR

בדוק את אינטגרציית ה-ICR שלך ללא צריכת קרדיטים. נקודות קצה Sandbox מחזירות נתוני דוגמה ריאליסטיים.

APIנקודת קצה Sandboxתיאור
חילוץ ICR/api/icr/v1/sandboxמחזירה נתוני דוגמה של חילוץ ICR
ICR Kan/api/icr/v1/kan/sandboxמחזירה נתוני דוגמה של פרמטרים של בדיקת דם

ביצועי ICR לעומת OCR

תוצאות ביצועים — Kantesti ICR לעומת OCR מסורתי
מדדKantesti ICROCR מסורתישיפור
מהירות עיבוד1.2 שניות ממוצע5.7 שניות ממוצעמהיר ב-79%
דיוק טקסט99.7%92.1%+7.6%
זיהוי טבלאות98.9%71.2%+27.7%
פלט מובנהJSON עם סעיפים, טבלאות, מטא-נתוניםטקסט גולמי לא מובנהמבנה מלא
תמיכה רב-לשונית100+ שפות30-50 שפות2x+ כיסוי