API Endpoints

Volledige referentie voor alle Kantesti API endpoints met codevoorbeelden in meerdere programmeertalen.

Basis URL
https://app.aibloodtestinterpret.com

Changelog

Volg API-versies, updates en migratie-informatie. Gebruik de aanbevolen endpoints voor nieuwe integraties.

Huidige Stabiele Endpoints

Deze endpoints worden aanbevolen voor productiegebruik en nieuwe integraties.

APIEndpointStatus
Bloedtest Analyse v11 /api/v11/01-06-2025/analyze Aanbevolen
Bloedtest Analyse (Gezondheidsscore) v11 /api/v11/health-score/analyze Aanbevolen
AI Voeding v1 /api/v1/nutrition/diet-plan/analyze Stabiel
AI Bloedtest Vergelijking v1 /api/v1/bloodtest/comparison/analyze Stabiel
Familiaire Gezondheidsrisicobeoordeling v1 /api/v1/family-health/analyze Uitgebracht 23.03.2026
ICR - Intelligente Tekenherkenning v1 /api/icr/v1/extract Uitgebracht 14.02.2026
ICR Kan - Bloedtest Extractie v1 /api/icr/v1/kan Uitgebracht 14.02.2026
Trendanalyse v1 /api/v1/analytics/trends/analyze Stabiel

Versiegeschiedenis

DatumVersieWijzigingen
Maart 2026 Family Health v1 Family Health Risicobeoordeling API uitgebracht — AI-gestuurde erfelijke risicoanalyse, 100+ taalondersteuning, stamboomanalyse, preventief zorgplan, genetische screeningaanbevelingen, sandbox-modus
Februari 2026 ICR v1 ICR (Intelligente Tekenherkenning) API uitgebracht — 79% sneller dan OCR, gestructureerde JSON-uitvoer, documenttype-detectie, tabelextractie, Kan-bloedtest-integratie
December 2025 Nieuwste Verbeterde foutafhandeling, 98,7% nauwkeurigheid, ondersteuning voor 100 talen
Juni 2025 v11 Bloedtest analyse v11, gezondheidsscore endpoint, multi-file ondersteuning
April 2025 v9 api_parameters_v9 model, verbeterde parameterextractie
Maart 2025 v8 Multi-file upload ondersteuning, batchverwerking

Legacy Endpoints

Deze endpoints worden onderhouden voor achterwaartse compatibiliteit maar worden niet aanbevolen voor nieuwe integraties.

VersieEndpointStatus
v10 /api/v10/health-score/analyze Legacy
v9 /api/v9/14-04-2025/analyze Legacy
v8 /api/v8/31-03-2025/analyze Legacy
v6 /api/v6-1/21-11-2024/analyze Legacy
v3 /api/v3/10-10-2024/analyze Legacy
Opmerking

Legacy endpoints worden onderhouden voor achterwaartse compatibiliteit maar worden niet aanbevolen voor nieuwe integraties. Migreer naar de huidige stabiele endpoints voor betere prestaties en ondersteuning.

Ondersteunde Talen Referentie

De Kantesti API ondersteunt 100 talen voor responslokalisatie. Gebruik de language parameter met een van de onderstaande ISO 639-1 codes. Indien niet gespecificeerd, worden antwoorden standaard in het Engels (en) geretourneerd.

Standaardtaal

Als er geen language parameter wordt opgegeven, retourneert de API antwoorden in het Engels (en).

Belangrijkste Wereldtalen

CodeTaalEigen Naam
enEngelsEnglish
zhChinees中文
esSpaansEspañol
arArabischالعربية
hiHindiहिन्दी
ptPortugeesPortuguês
ruRussischРусский
jaJapans日本語
frFransFrançais
deDuitsDeutsch
koKoreaans한국어
trTurksTürkçe

Europese Talen

CodeTaalEigen Naam
itItaliaansItaliano
nlNederlandsNederlands
plPoolsPolski
elGrieksΕλληνικά
svZweedsSvenska
noNoorsNorsk
daDeensDansk
fiFinsSuomi
csTsjechischČeština
ukOekraïensУкраїнська
roRoemeensRomână
huHongaarsMagyar

Midden-Oosten & Centraal-Aziatische Talen

CodeTaalEigen Naam
heHebreeuwsעברית
faPerzischفارسی
azAzerbeidzjaansAzərbaycan

Zuid-Aziatische Talen

CodeTaalEigen Naam
bnBengaalsবাংলা
taTamilதமிழ்
urUrduاردو

Zuidoost-Aziatische Talen

CodeTaalEigen Naam
idIndonesischBahasa Indonesia
thThaisไทย
viVietnameesTiếng Việt

Afrikaanse Talen

CodeTaalEigen Naam
afAfrikaansAfrikaans
swSwahiliKiswahili

Bloedtest Analyse API

Analyseer bloedtestafbeeldingen of PDF's met behulp van AI om parameters te extraheren en uitgebreide medische interpretaties te genereren.

POST /api/v11/01-06-2025/analyze Nieuwste

Productie endpoint voor bloedtest analyse. Verbruikt 1 credit per verzoek.

Verzoekparameters

ParameterTypeVereistBeschrijving
usernamestringJaUw API-gebruikersnaam
passwordstringJaUw API-wachtwoord
filefileJaBloedtest afbeelding (PNG, JPG, WEBP) of PDF. Max 20MB.
languagestringNeeRespons taalcode (standaard: en). Ondersteunt 100+ talen.

cURL Voorbeeld

curl -X POST "https://app.aibloodtestinterpret.com/api/v11/01-06-2025/analyze" \
  -F "username=UW_GEBRUIKERSNAAM" \
  -F "password=UW_WACHTWOORD" \
  -F "language=nl" \
  -F "[email protected]"

Python Voorbeeld

import requests

def analyseer_bloedtest(bestandspad: str, gebruikersnaam: str, wachtwoord: str, taal: str = "nl"):
    """
    Analyseer een bloedtest bestand met de Kantesti API.
    """
    url = "https://app.aibloodtestinterpret.com/api/v11/01-06-2025/analyze"

    with open(bestandspad, "rb") as f:
        bestanden = {"file": (bestandspad, f, "application/pdf")}
        gegevens = {
            "username": gebruikersnaam,
            "password": wachtwoord,
            "language": taal
        }

        respons = requests.post(url, files=bestanden, data=gegevens, timeout=120)
        respons.raise_for_status()
        return respons.json()

# Voorbeeldgebruik
if __name__ == "__main__":
    resultaat = analyseer_bloedtest(
        bestandspad="bloedtest.pdf",
        gebruikersnaam="uw_gebruikersnaam",
        wachtwoord="uw_wachtwoord",
        taal="nl"
    )
    print(f"Status: {resultaat['status']}")
    print(f"Gevonden parameters: {len(resultaat['data']['parameters'])}")

Referentie responsvelden

Hoofdniveau
VeldTypeBeschrijving
statusstring"success" of "error"
dataobjectBevat alle analyseresultaten
timestampstringISO 8601 tijdstempel van de respons
api_versionstringGebruikte API-versie
data.metadata Object
VeldTypeBeschrijving
lab_datestringDatum bloedafname (JJJJ-MM-DD)
results_datestringDatum uitgifte resultaten (JJJJ-MM-DD)
lab_namestringNaam van het laboratorium
lab_citystringStad van het laboratorium
lab_countrystringLand van het laboratorium
patient_namestringVolledige naam van de patiënt (alleen metadata, niet verzonden naar interpretatie)
patient_agestringLeeftijd van de patiënt
patient_sexstring"male", "female" of "other"
data.parameters Array Element
VeldTypeBeschrijving
categorystringParametercategorie (bijv. "Volledig bloedbeeld", "Lipidenprofiel")
long_namestringVolledige parameternaam
short_namestringAfgekorte parameternaam
resultstringGemeten waarde
unitstringMeeteenheid
range_minstringMinimale referentiewaarde
range_maxstringMaximale referentiewaarde
evaluationstringResultaatstatus. Zie evaluatiewaarden
data.interpretation Array Element
VeldTypeBeschrijving
titlestringSectietitel (bijv. "Algemene gezondheidsbeoordeling")
contentstringAI-gegenereerde medische interpretatie

Volledig responsvoorbeeld

{
  "status": "success",
  "data": {
    "metadata": {
      "patient_name": "Anna Müller",
      "lab_name": "MedLab Diagnostics International",
      "lab_city": "Amsterdam",
      "lab_country": "Nederland",
      "lab_date": "2025-12-15",
      "results_date": "2025-12-16",
      "patient_age": "38",
      "patient_sex": "female"
    },
    "parameters": [
      {
        "short_name": "WBC",
        "long_name": "Witte bloedceltelling",
        "category": "Volledig bloedbeeld",
        "result": "6.8",
        "unit": "10^9/L",
        "evaluation": "normal",
        "range_min": "4.0",
        "range_max": "11.0",
        "short_description": "Meet het totale aantal witte bloedcellen.",
        "long_description": "Witte bloedcellen (leukocyten) zijn essentiële componenten van het immuunsysteem..."
      },
      {
        "short_name": "RBC",
        "long_name": "Rode bloedceltelling",
        "category": "Volledig bloedbeeld",
        "result": "4.52",
        "unit": "10^12/L",
        "evaluation": "normal",
        "range_min": "3.8",
        "range_max": "5.8",
        "short_description": "Meet het totale aantal rode bloedcellen.",
        "long_description": "Rode bloedcellen (erytrocyten) transporteren zuurstof van de longen naar de weefsels..."
      },
      {
        "short_name": "HGB",
        "long_name": "Hemoglobine",
        "category": "Volledig bloedbeeld",
        "result": "13.2",
        "unit": "g/dL",
        "evaluation": "normal",
        "range_min": "11.5",
        "range_max": "16.0",
        "short_description": "Eiwit in rode bloedcellen dat zuurstof transporteert.",
        "long_description": "Hemoglobine is het ijzerbevattende eiwit in rode bloedcellen verantwoordelijk voor zuurstoftransport..."
      },
      {
        "short_name": "GLU",
        "long_name": "Nuchtere glucose",
        "category": "Metabolisch panel",
        "result": "102",
        "unit": "mg/dL",
        "evaluation": "borderline_high",
        "range_min": "70",
        "range_max": "140",
        "short_description": "Meet het bloedsuikerniveau na vasten.",
        "long_description": "Nuchtere glucose is een belangrijke indicator van hoe het lichaam suiker verwerkt..."
      },
      {
        "short_name": "TC",
        "long_name": "Totaal cholesterol",
        "category": "Lipidenprofiel",
        "result": "218",
        "unit": "mg/dL",
        "evaluation": "borderline_high",
        "range_min": "0",
        "range_max": "300",
        "short_description": "Meet het totale cholesterol in het bloed.",
        "long_description": "Totaal cholesterol is de som van HDL-, LDL- en VLDL-cholesterol..."
      },
      {
        "short_name": "LDL",
        "long_name": "LDL-cholesterol",
        "category": "Lipidenprofiel",
        "result": "142",
        "unit": "mg/dL",
        "evaluation": "high",
        "range_min": "0",
        "range_max": "200",
        "short_description": "Meet het niveau van 'slecht' cholesterol.",
        "long_description": "LDL-cholesterol kan zich ophopen in de slagaderwanden..."
      }
    ],
    "interpretation": [
      {
        "title": "Algemene gezondheidsbeoordeling",
        "shortcode": "overall_health_assessment",
        "subsections": [
          {
            "subtitle": "Uitgebreid overzicht",
            "items": [
              {"item": "De patiënt vertoont over het algemeen gezonde hematologische parameters met alle bloedbeeldwaarden binnen de normale grenzen."},
              {"item": "Het lipidenprofiel toont gebieden die aandacht vereisen, met name de LDL-cholesterolniveaus."}
            ]
          }
        ]
      },
      {
        "title": "Aanbevelingen",
        "shortcode": "recommendations",
        "subsections": [
          {
            "subtitle": "Leefstijlaanpassingen",
            "items": [
              {"item": "Verhoog aerobe fysieke activiteit tot minimaal 150 minuten per week."},
              {"item": "Adopteer een mediterraan dieet rijk aan groenten, fruit en gezonde vetten."}
            ]
          }
        ]
      }
    ]
  },
  "api_version": "v11",
  "timestamp": "2025-12-16T14:32:18Z"
}
Respons trefwoorden

Het veld evaluation gebruikt gestandaardiseerde waarden. Zie evaluatiewaarden.

AI Voeding met Supplementen

Genereer gepersonaliseerde voedingsplannen, dieetaanbevelingen en supplementsuggesties op basis van bloedtestanalyse.

POST /api/v1/nutrition/diet-plan/analyze Nieuw

Genereert uitgebreide voedings- en supplementaanbevelingen op basis van bloedtestparameters en patiëntprofiel.

Patiënt Object Schema

Gedetailleerde beschrijving van alle beschikbare velden voor het patiënt object:

Veld Type Vereist Standaard Beschrijving
age integer Ja - Leeftijd patiënt in jaren (18-120)
gender string Ja - Geslacht patiënt. Zie waarden
weight number Nee null Gewicht in kg (voor calorieberekeningen)
height number Nee null Lengte in cm (voor BMI-berekeningen)
conditions array Nee [] Medische condities. Zie waarden
allergies array Nee [] Voedselallergieën. Zie waarden
dietary_preferences array Nee [] Dieetvoorkeuren. Zie waarden
activity_level string Nee "moderate" Fysiek activiteitsniveau. Zie waarden
dietary_restrictions array Nee [] Dieetbeperkingen (bijv: glutenvrij, lactosevrij)
liked_foods array Nee [] Favoriete voedingsmiddelen voor planpersonalisatie
disliked_foods array Nee [] Voedingsmiddelen om te vermijden in aanbevelingen
meal_frequency integer Nee 3 Aantal maaltijden per dag (1-6)
budget string Nee "moderate" Budgetniveau: "low", "moderate", "high"
medications array Nee [] Huidige medicatie (voor interacties)

Responsvelden referentie

Object nutrition_plan.educational_insights
Veld Type Beschrijving
blood_marker_education array Educatieve inhoud over geanalyseerde bloedmarkers
nutrition_principles array Algemene voedingsprincipes voor de patiënt
Array-element blood_marker_education
Veld Type Beschrijving
marker string Naam van de bloedmarker (bijv: "Vitamine D", "Cholesterol")
explanation string Educatieve uitleg over het belang van de marker
normal_range string Normaal waardenbereik voor de marker
Array-element food_recommendations.power_foods
Veld Type Beschrijving
food string Naam van het aanbevolen voedingsmiddel
nutrients array Lijst van belangrijke voedingsstoffen
serving string Aanbevolen portiegrootte
why string Uitleg van gezondheidsvoordelen
Array-element supplement_recommendations
Veld Type Beschrijving
supplement string Naam van het supplement
dosage string Aanbevolen dagelijkse dosering
timing string Beste moment voor inname (bijv: "Bij het ontbijt")
duration string Aanbevolen duur van supplementatie
reason string Onderbouwing op basis van testresultaten

Volledig cURL voorbeeld

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/nutrition/diet-plan/analyze" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "uw_gebruikersnaam",
    "password": "uw_wachtwoord",
    "language": "nl",
    "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"]
  }'

Volledige respons

{
  "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": "Vitamine D",
            "explanation": "Vitamine D is essentieel voor botgezondheid, immuunfunctie en stemmingsregulatie. Uw niveau van 18 ng/mL duidt op een tekort dat de calciumopname en algemene gezondheid kan beïnvloeden.",
            "normal_range": "30-50 ng/mL"
          },
          {
            "marker": "LDL-cholesterol",
            "explanation": "LDL-cholesterol, vaak 'slecht cholesterol' genoemd, kan zich ophopen in de slagaderwanden. Uw niveau van 140 mg/dL is verhoogd en kan het cardiovasculaire risico verhogen.",
            "normal_range": "< 100 mg/dL"
          }
        ],
        "nutrition_principles": [
          "Prioriteit voor omega-3 vetzuren voor hartgezondheid",
          "Verhoog oplosbare vezels om LDL-cholesterol te verlagen",
          "Neem voedingsmiddelen rijk aan vitamine D en zonlicht op"
        ]
      }
    },
    "food_recommendations": {
      "power_foods": [
        {
          "food": "Wilde zalm",
          "nutrients": ["Omega-3", "Vitamine D", "Eiwitten"],
          "serving": "150g, 3 keer per week",
          "why": "Uitstekende bron van omega-3 en natuurlijke vitamine D voor hart- en botgezondheid"
        },
        {
          "food": "Volkoren havermout",
          "nutrients": ["Bèta-glucaan", "Vezels", "Magnesium"],
          "serving": "50g per dag bij het ontbijt",
          "why": "Oplosbare vezels in havermout helpen de opname van LDL-cholesterol te verminderen"
        },
        {
          "food": "Extra vierge olijfolie",
          "nutrients": ["Enkelvoudig onverzadigde vetten", "Polyfenolen", "Vitamine E"],
          "serving": "2-3 eetlepels per dag",
          "why": "Gezonde mediterrane vetten verbeteren het lipidenprofiel en beschermen het hart"
        },
        {
          "food": "Spinazie",
          "nutrients": ["IJzer", "Foliumzuur", "Vitamine K"],
          "serving": "100g per dag, rauw of gekookt",
          "why": "Rijk aan ijzer en antioxidanten voor energie en cardiovasculaire gezondheid"
        }
      ]
    },
    "supplement_recommendations": [
      {
        "supplement": "Vitamine D3",
        "dosage": "2000-4000 IE per dag",
        "timing": "Bij het ontbijt (maaltijd met vetten)",
        "duration": "3-6 maanden, daarna opnieuw testen",
        "reason": "Uw niveau van 18 ng/mL ligt onder het optimale van 30-50 ng/mL"
      },
      {
        "supplement": "Omega-3 (EPA/DHA)",
        "dosage": "1000-2000mg EPA+DHA per dag",
        "timing": "Bij de hoofdmaaltijden",
        "duration": "Doorlopend voor hartgezondheid",
        "reason": "Helpt triglyceriden te verlagen en verbetert de HDL/LDL-verhouding"
      },
      {
        "supplement": "Co-enzym Q10",
        "dosage": "100mg per dag",
        "timing": "Bij de ochtendmaaltijd",
        "duration": "Minimaal 3 maanden",
        "reason": "Ondersteunt hartgezondheid, bijzonder belangrijk bij hypertensie"
      }
    ]
  },
  "api_version": "v1",
  "timestamp": "2025-12-22T10:30:00Z"
}
Respons trefwoorden

Voor een volledige lijst van alle mogelijke responswaarden, zie de sectie Uitvoer trefwoorden.

Sandbox Endpoints

Sandbox endpoints retourneren realistische testgegevens zonder API-quota te verbruiken. Gebruik ze voor ontwikkeling en integratietesten.

Sandbox Voordelen
  • Geen quota verbruik
  • Retourneert realistische testgegevens
  • Zelfde verzoekformaat als productie
  • Test uw integratie voor lancering
  • Beschikbaar voor alle API-versies
APISandbox Endpoint
Bloedtest v11/api/v11/01-06-2025/sandbox
Bloedtest v11-health/api/v11/health-score/sandbox
AI Voeding/api/v1/nutrition/diet-plan/sandbox
Test vergelijking/api/v1/bloodtest/comparison/sandbox
Trendanalyse/api/v1/analytics/trends/sandbox
ICR Extractie/api/icr/v1/sandbox
ICR Kan Bloedtest/api/icr/v1/kan/sandbox
Vergelijking API vs Trendanalyse API

Kies de juiste API voor uw gebruikssituatie:

FunctieAI Bloedtest VergelijkingTrendanalyse
Primaire FocusAI narratieve vergelijkingStatistische trendanalyse
AI VerwerkingVolledige AI narratiefAI-verbeterd + statistieken
UitvoertypeNarratieve samenvattingenGrafieken, statistieken, patronen
Ideaal VoorWat veranderde tussen testsLangetermijn parameter tracking
Min Tests22
Max Tests2050

Trendanalyse API

Analyseer langetermijntrends in bloedtestparameters over meerdere tests. Identificeer patronen, bereken statistieken en genereer AI-gestuurde inzichten voor gezondheidsmonitoring in de tijd.

POST /api/v1/analytics/trends/analyze Stabiel

Voer trendanalyse uit op 2-50 bloedtests om langetermijnpatronen en gezondheidsveranderingen te identificeren. Verbruikt 1 credit per verzoek.

Vereisten
  • Minimum: 2 bloedtests vereist
  • Maximum: 50 bloedtests per verzoek
  • Elke test moet lab_date OF results_date hebben
  • Gebruik consistente parameternamen voor nauwkeurige tracking

Verzoekparameters

ParameterTypeVereistBeschrijving
usernamestringJaUw API-gebruikersnaam
passwordstringJaUw API-wachtwoord
blood_testsarrayJaArray van bloedtestobjecten (min: 2, max: 50)
languagestringNeeRespons taalcode (standaard: en)
analysis_typestringNeeType analyse. Zie waarden. Standaard: "comprehensive"
analysis_optionsobjectNeeAnalyseconfiguratie-opties

analysis_options Object

Optionele configuratie-opties voor het aanpassen van de analyse-uitvoer:

VeldTypeStandaardBeschrijving
include_predictionsbooleantrueAI-trendvoorspellingen opnemen
include_statisticsbooleantrueStatistische analyse opnemen
include_chartsbooleantrueGrafiekconfiguratie opnemen

blood_tests Array Structuur

Elk bloedtest object in de blood_tests array moet de volgende structuur hebben:

VeldTypeVereistBeschrijving
test_datestringJaDatum bloedtest (JJJJ-MM-DD)
parametersarrayJaArray van bloedparameters met short_name, result, unit

blood_tests[].parameters Structuur

Elk parameter object in de parameters array moet de volgende velden bevatten:

VeldTypeVereistBeschrijving
short_namestringJaStandaard parameternaam (bijv. "CHOL", "GLU", "HbA1c")
resultnumberJaGemeten waarde van de parameter
unitstringJaMeeteenheid (bijv. "mg/dL", "%", "mmol/L")

Referentie responsvelden

data.trend_summary Object
VeldTypeBeschrijving
total_testsintegerAantal geanalyseerde tests
date_rangeobjectStart- en einddatum van analysebereik
parameters_trackedintegerAantal getrackte parameters
overall_assessmentstringAlgehele trendbeoordeling. Zie waarden
data.parameter_trends Array Element
VeldTypeBeschrijving
parameter_namestringNaam bloedparameter
trend_directionstringRichting trend. Zie waarden
trend_strengthstringSterkte trend. Zie waarden
statistical_dataobjectGemiddelde, mediaan, min, max, standaardafwijking
chart_dataarrayDatapunten voor visualisatie (datum, waarde)
interpretationstringAI-gegenereerde trendinterpretatie
data.insights Object
VeldTypeBeschrijving
positive_trendsarrayParameters die verbeteren
negative_trendsarrayParameters die verslechteren
stable_parametersarrayParameters die stabiel blijven
recommendationsarrayAI-aanbevelingen op basis van trends

cURL Voorbeeld

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/analytics/trends/analyze" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "uw_gebruikersnaam",
    "password": "uw_wachtwoord",
    "language": "nl",
    "analysis_type": "comprehensive",
    "blood_tests": [
      {
        "test_date": "2024-01-15",
        "parameters": [
          {"short_name": "GLU", "result": 118, "unit": "mg/dL"},
          {"short_name": "HbA1c", "result": 6.2, "unit": "%"},
          {"short_name": "CHOL", "result": 235, "unit": "mg/dL"},
          {"short_name": "LDL", "result": 155, "unit": "mg/dL"},
          {"short_name": "HDL", "result": 38, "unit": "mg/dL"}
        ]
      },
      {
        "test_date": "2024-05-18",
        "parameters": [
          {"short_name": "GLU", "result": 108, "unit": "mg/dL"},
          {"short_name": "HbA1c", "result": 5.9, "unit": "%"},
          {"short_name": "CHOL", "result": 215, "unit": "mg/dL"},
          {"short_name": "LDL", "result": 140, "unit": "mg/dL"},
          {"short_name": "HDL", "result": 42, "unit": "mg/dL"}
        ]
      },
      {
        "test_date": "2024-08-20",
        "parameters": [
          {"short_name": "GLU", "result": 102, "unit": "mg/dL"},
          {"short_name": "HbA1c", "result": 5.6, "unit": "%"},
          {"short_name": "CHOL", "result": 200, "unit": "mg/dL"},
          {"short_name": "LDL", "result": 128, "unit": "mg/dL"},
          {"short_name": "HDL", "result": 48, "unit": "mg/dL"}
        ]
      },
      {
        "test_date": "2024-12-18",
        "parameters": [
          {"short_name": "GLU", "result": 95, "unit": "mg/dL"},
          {"short_name": "HbA1c", "result": 5.4, "unit": "%"},
          {"short_name": "CHOL", "result": 188, "unit": "mg/dL"},
          {"short_name": "LDL", "result": 115, "unit": "mg/dL"},
          {"short_name": "HDL", "result": 52, "unit": "mg/dL"}
        ]
      }
    ]
  }'

Python Voorbeeld

import requests

def analyseer_trends(bloedtests: list, gebruikersnaam: str, wachtwoord: str, taal: str = "nl"):
    """
    Voer trendanalyse uit op meerdere bloedtests.
    """
    url = "https://app.aibloodtestinterpret.com/api/v1/analytics/trends/analyze"

    payload = {
        "username": gebruikersnaam,
        "password": wachtwoord,
        "language": taal,
        "analysis_type": "comprehensive",
        "blood_tests": bloedtests
    }

    respons = requests.post(url, json=payload, timeout=120)
    respons.raise_for_status()
    return respons.json()

# Voorbeeldgebruik
if __name__ == "__main__":
    bloedtests = [
        {
            "test_date": "2025-01-15",
            "parameters": [
                {"short_name": "CHOL", "result": 220, "unit": "mg/dL"},
                {"short_name": "LDL", "result": 145, "unit": "mg/dL"}
            ]
        },
        {
            "test_date": "2025-06-15",
            "parameters": [
                {"short_name": "CHOL", "result": 205, "unit": "mg/dL"},
                {"short_name": "LDL", "result": 135, "unit": "mg/dL"}
            ]
        }
    ]

    resultaat = analyseer_trends(
        bloedtests=bloedtests,
        gebruikersnaam="uw_gebruikersnaam",
        wachtwoord="uw_wachtwoord",
        taal="nl"
    )
    print(f"Totaal tests: {resultaat['data']['trend_summary']['total_tests']}")
    print(f"Algehele beoordeling: {resultaat['data']['trend_summary']['overall_assessment']}")

Bloedtest Vergelijking API

Vergelijk 2-20 bloedtests met behulp van AI om veranderingen te identificeren, parameterbewegingen te begrijpen en narratieve samenvattingen te genereren van wat er is veranderd tussen tests.

POST /api/v1/bloodtest/comparison/analyze Stabiel

Genereer AI-gestuurde narratieve vergelijkingen tussen bloedtests. Verbruikt 1 credit per verzoek.

Vereisten
  • Minimum: 2 bloedtests vereist
  • Maximum: 20 bloedtests ondersteund
  • Focus: AI narratieve interpretatie van veranderingen

Verzoekparameters

ParameterTypeVereistBeschrijving
usernamestringJaUw API-gebruikersnaam
passwordstringJaUw API-wachtwoord
blood_testsarrayJaArray van bloedtestobjecten (min: 2, max: 20)
languagestringNeeRespons taalcode (standaard: en)

blood_tests Array Structuur

Elk bloedtest object in de blood_tests array moet de volgende structuur hebben:

VeldTypeVereistBeschrijving
test_datestringJaDatum bloedtest (JJJJ-MM-DD)
parametersarrayJaArray van bloedparameters met short_name, result, unit

Referentie responsvelden

data.comparison_summary Object
VeldTypeBeschrijving
total_tests_comparedintegerAantal vergeleken tests
date_rangeobjectStart- en einddatum van vergelijking
overall_changestringAlgehele veranderingsbeoordeling. Zie waarden
parameters_analyzedintegerAantal geanalyseerde parameters
data.parameter_comparisons Array Element
VeldTypeBeschrijving
parameter_namestringNaam bloedparameter
initial_valueobjectStartwaarde (test_date, result, unit, evaluation)
final_valueobjectEindwaarde (test_date, result, unit, evaluation)
change_percentnumberProcentuele verandering tussen eerste en laatste test
change_directionstringRichting van verandering. Zie waarden
assessmentstringOf verandering positief of negatief is. Zie waarden
narrativestringAI-gegenereerde verhaaluitleg van verandering
data.ai_interpretation Object
VeldTypeBeschrijving
key_improvementsarrayLijst van parameters met significante verbetering
areas_of_concernarrayParameters die verslechtering tonen
stable_parametersarrayParameters met minimale verandering
overall_summarystringAI-gegenereerde algehele narratieve samenvatting
recommendationsarrayAanbevelingen op basis van geïdentificeerde veranderingen

cURL Voorbeeld

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/bloodtest/comparison/analyze" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "uw_gebruikersnaam",
    "password": "uw_wachtwoord",
    "language": "nl",
    "blood_tests": [
      {
        "test_date": "2025-01-15",
        "parameters": [
          {"short_name": "CHOL", "result": 220, "unit": "mg/dL"},
          {"short_name": "LDL", "result": 145, "unit": "mg/dL"},
          {"short_name": "HDL", "result": 42, "unit": "mg/dL"},
          {"short_name": "TRIG", "result": 165, "unit": "mg/dL"}
        ]
      },
      {
        "test_date": "2025-12-15",
        "parameters": [
          {"short_name": "CHOL", "result": 195, "unit": "mg/dL"},
          {"short_name": "LDL", "result": 125, "unit": "mg/dL"},
          {"short_name": "HDL", "result": 52, "unit": "mg/dL"},
          {"short_name": "TRIG", "result": 140, "unit": "mg/dL"}
        ]
      }
    ]
  }'

Python Voorbeeld

import requests

def vergelijk_bloedtests(bloedtests: list, gebruikersnaam: str, wachtwoord: str, taal: str = "nl"):
    """
    Vergelijk bloedtests met behulp van AI-narratieve analyse.
    """
    url = "https://app.aibloodtestinterpret.com/api/v1/bloodtest/comparison/analyze"

    payload = {
        "username": gebruikersnaam,
        "password": wachtwoord,
        "language": taal,
        "blood_tests": bloedtests
    }

    respons = requests.post(url, json=payload, timeout=120)
    respons.raise_for_status()
    return respons.json()

# Voorbeeldgebruik
if __name__ == "__main__":
    bloedtests = [
        {
            "test_date": "2025-01-15",
            "parameters": [
                {"short_name": "CHOL", "result": 220, "unit": "mg/dL"},
                {"short_name": "LDL", "result": 145, "unit": "mg/dL"}
            ]
        },
        {
            "test_date": "2025-12-15",
            "parameters": [
                {"short_name": "CHOL", "result": 195, "unit": "mg/dL"},
                {"short_name": "LDL", "result": 125, "unit": "mg/dL"}
            ]
        }
    ]

    resultaat = vergelijk_bloedtests(
        bloedtests=bloedtests,
        gebruikersnaam="uw_gebruikersnaam",
        wachtwoord="uw_wachtwoord",
        taal="nl"
    )
    print(f"Totaal vergeleken tests: {resultaat['data']['comparison_summary']['total_tests_compared']}")
    print(f"Algehele verandering: {resultaat['data']['comparison_summary']['overall_change']}")

Trefwoord Referentie

Volledige referentie voor alle invoertrefwoordwaarden die worden gebruikt in Kantesti API-endpoints. Gebruik deze exacte waarden bij API-verzoeken.

analysis_type Trendanalyse API

Specificeert het type trendanalyse dat moet worden uitgevoerd.

WaardeStandaardBeschrijving
comprehensiveVolledige analyse met statistieken, grafieken en AI-interpretatie
statisticalAlleen statistische analyse
summaryAlleen samenvatting op hoog niveau

health_goals Voedings-API

Gezondheidsdoelen voor gepersonaliseerde voedingsaanbevelingen. Meerdere waarden kunnen als array worden opgegeven.

WaardeBeschrijving
maintainHuidige gezondheid behouden (standaard)
improve_energyFocus op energieniveaus
weight_managementGezond gewichtsbeheer
heart_healthCardiovasculaire gezondheid
immune_supportOndersteuning immuunsysteem
digestive_healthSpijsverteringswelzijn
bone_healthBotgezondheid
mental_clarityCognitieve functie

dietary_restrictions Voedings-API

Dieetbeperkingen en allergieën. Meerdere waarden kunnen als array worden opgegeven. Vrije tekst wordt ook geaccepteerd voor aangepaste beperkingen.

WaardeBeschrijving
low_sodiumVerminderde natriuminname
low_sugarVerminderde suikerinname
low_fatVerminderde vetinname
gluten_freeGeen gluten
dairy_freeGeen zuivel
nut_freeGeen noten
soy_freeGeen soja
egg_freeGeen eieren
halalHalal-conform
kosherKoosjer-conform
Opmerking

Vrije tekst wordt ook geaccepteerd voor aangepaste dieetbeperkingen die hierboven niet worden vermeld.

dietary_preferences Voedings-API

Dieetlevensstijlvoorkeuren voor maaltijdplanning.

WaardeBeschrijving
omnivoreGeen beperkingen (standaard)
vegetarianGeen vlees
veganGeen dierlijke producten
pescatarianVegetarisch + vis
ketoKetogeen dieet
paleoPaleolithisch dieet
mediterraneanMediterraan dieet

activity_level Voedings-API

Fysiek activiteitsniveau voor calorische en voedingsberekeningen.

WaardeBeschrijving
sedentaryWeinig of geen beweging
lightLichte beweging 1-3 dagen/week
moderateMatige beweging 3-5 dagen/week (standaard)
activeIntensieve beweging 6-7 dagen/week
very_activeZeer intensieve beweging of fysiek werk

budget Voedings-API

Budgetniveau voor voedings- en supplementaanbevelingen.

WaardeBeschrijving
lowBudgetvriendelijke opties
moderateEvenwichtige opties (standaard)
highPremium opties

gender Alle API's

Geslacht van de patiënt voor gepersonaliseerde referentiebereiken en aanbevelingen.

WaardeBeschrijving
maleMannelijke patiënt
femaleVrouwelijke patiënt
otherAnders of niet gespecificeerd

Uitvoer trefwoorden

De volgende trefwoorden verschijnen in API-antwoorden. Begrip van deze waarden helpt u resultaten correct te interpreteren en weer te geven.

evaluation Bloedtest- & Vergelijkings-APIs

Beoordelingsstatus van parameter die aangeeft hoe het resultaat zich verhoudt tot referentiebereiken.

WaardeBeschrijving
normalBinnen normaal referentiebereik
lowOnder normaal bereik
highBoven normaal bereik
critical_lowKritiek laag (onmiddellijke aandacht vereist)
critical_highKritiek hoog (onmiddellijke aandacht vereist)
borderline_lowLicht onder normaal bereik
borderline_highLicht boven normaal bereik

trend_assessment Vergelijkings- & Trend-APIs

Algehele beoordeling van parametertrends tussen tests.

WaardeBeschrijving
positiveVerbeterd (richting normaal bereik)
negativeVerslechterd (weg van normaal bereik)
stableRelatief onveranderd tussen tests
improvingAlgehele verbeteringstrend
worseningAlgehele verslechteringstrend

trend_direction Trendanalyse-API

Richting van parameterwaardeveranderingen in de tijd.

WaardeBeschrijving
upwardWaarden stijgen in de tijd
downwardWaarden dalen in de tijd
stableMinimale verandering in de tijd

trend_strength Trendanalyse-API

Sterkte van de waargenomen trend.

WaardeBeschrijving
strong>15% verandering tussen periodes
moderate5-15% verandering tussen periodes
mild<5% verandering tussen periodes

health_score / score_interpretation Gezondheidsscore-API

Algehele interpretatie van de gezondheidsscore op basis van geanalyseerde parameters.

WaardeBeschrijving
excellentAlle markers binnen optimaal bereik
goodDe meeste markers binnen normaal bereik
fairSommige markers vereisen aandacht
poorMeerdere markers vereisen aandacht

Hulpprogramma Endpoints

POST /api/quota/check

Controleer uw resterende API-quota. Authenticatie vereist.

cURL Voorbeeld

curl -X POST "https://app.aibloodtestinterpret.com/api/quota/check" \
  -H "Content-Type: application/json" \
  -d '{"username": "UW_GEBRUIKERSNAAM", "password": "UW_WACHTWOORD"}'

Voorbeeld Respons

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

API Familiaire Gezondheidsrisicobeoordeling

Uitgebracht: 23 maart 2026

De Kantesti API Familiaire Gezondheidsrisicobeoordeling is een AI-gestuurd platform voor analyse van erfelijke gezondheidsrisico's. Het genereert uitgebreide familiegezondheidsrapporten door de medische familiegeschiedenis, gezondheidprofielen van patiënten en bloedtestgegevens te analyseren om erfelijke risicofactoren te identificeren en gepersonaliseerde preventieve zorgaanbevelingen te bieden.

100+
Talen
9
Aandoeningscategorieën
14
Familierelaties

AI-gestuurde erfelijke risicoanalyse

De Family Health API maakt gebruik van geavanceerde AI-modellen om de medische familiegeschiedenis te kruisen met de bloedtestgegevens van de patiënt, waarbij erfelijke risicopatronen worden geïdentificeerd in de categorieën cardiovasculair, metabool, oncologisch, neurologisch, respiratoir, auto-immuun, genetisch, geestelijke gezondheid en nier/lever. Rapporten omvatten risicoscore, preventief zorgplan, genetische screeningaanbevelingen en levensstijladviezen — allemaal gelokaliseerd in meer dan 100 talen.

Belangrijkste functies
  • Erfelijke risicoanalyse — Classificatie in hoog, matig en laag risico
  • Stamboomanalyse — Risicokarteling van vaderlijke en moederlijke lijnen
  • Bloedtest correlatie — Kruising van familiegeschiedenis met bloedparameters
  • Genetische screeningaanbevelingen — Gepersonaliseerde suggesties voor genetische tests
  • Preventief zorgplan — Leeftijdsgeschikte screeningprogramma's
  • Medicijnanalyse — Beoordeling van erfelijke interacties en gevoeligheden
  • 100+ talen ondersteund — Volledige lokalisatie van rapporten
  • Sandbox-modus — Test de integratie zonder credits te verbruiken

Overzicht endpoints

EndpointMethodeBeschrijvingAuth
/api/v1/family-health/analyzePOSTGenereert uitgebreid risicobeoordeligsrapportVereist (1 credit)
/api/v1/family-health/validatePOSTValideert de aanvraaggegevens (geen quotaverbruik)Vereist (Gratis)
/api/v1/family-health/supported-languagesGETLijst van 100+ ondersteunde talenNiet vereist
/api/v1/family-health/condition-categoriesGETLijst van aandoeningscategorieënNiet vereist
/api/v1/family-health/family-relationsGETLijst van familierelatie typesNiet vereist
/api/v1/family-health/sandbox/analyzePOSTSandbox-test met voorbeeldgegevensVereist (Gratis)
POST /api/v1/family-health/analyze Uitgebracht 23.03.2026

Genereert een uitgebreid AI-gestuurd rapport voor familiaire gezondheidsrisicobeoordeling.

Aanvraagparameters (JSON Body)

ParameterTypeVereistBeschrijving
usernamestringJaAPI gebruikersnaam
passwordstringJaAPI wachtwoord
patient_dataobjectJaPatiëntinformatie
family_membersarrayJa*Familieleden (max 100)
health_profileobjectJa*Gezondheidsprofiel
blood_test_dataarrayNeeBloedtestgegevens
languagestringNeeTaalcode (standaard: en)

cURL voorbeeld

curl -X POST "https://app.aibloodtestinterpret.com/api/v1/family-health/analyze" \
  -H "Content-Type: application/json" \
  -d '{"username":"GEBRUIKER","password":"WACHTWOORD","patient_data":{"name":"Anna de Vries","age":42,"gender":"female"},"family_members":[{"relation":"father","age":70,"conditions":["hypertension"]}],"language":"nl"}'

Python voorbeeld

import requests
url = "https://app.aibloodtestinterpret.com/api/v1/family-health/analyze"
payload = {"username":"GEBRUIKER","password":"WACHTWOORD","patient_data":{"name":"Anna de Vries","age":42,"gender":"female"},"family_members":[{"relation":"father","age":70,"conditions":["hypertension"]}],"language":"nl"}
response = requests.post(url, json=payload, timeout=120)
print(response.json())

Voorbeeld respons

{"status":"success","data":{"report_data":{"report_title":"Familiaire Gezondheidsrisicobeoordeling Rapport","hereditary_risk_analysis":{"high_risk":[{"condition":"Cardiovasculaire ziekte","risk_score":75}]},"genetic_screening_recommendations":["BRCA1/BRCA2 genetische test"]}},"timestamp":"2026-03-23T10:30:00Z","api_version":"1.0.0"}

Foutcodes Family Health API

CodeHTTPBeschrijving
AUTH_1001401Ontbrekende inloggegevens
AUTH_1002401Ongeldige inloggegevens
QUOTA_1101403Onvoldoende API-quotum
VAL_2001400Verplicht veld ontbreekt
VAL_2003400Niet-ondersteunde taalcode
PROC_3001500Rapportgeneratie mislukt
SRV_5001500Interne serverfout

Sandbox Endpoint Family Health

Test uw integratie zonder credits te verbruiken.

APISandboxBeschrijving
Family Health/api/v1/family-health/sandbox/analyzeVoorbeeld rapportgegevens

Referentie-endpoints (Geen auth)

EndpointMethodeBeschrijving
/api/v1/family-health/supported-languagesGET100+ ondersteunde talen
/api/v1/family-health/condition-categoriesGET9 aandoeningscategorieën
/api/v1/family-health/family-relationsGET14 familierelaties

ICR - Intelligente Tekenherkenning API

Uitgebracht: 14 februari 2026

De Kantesti ICR (Intelligente Tekenherkenning) API is een geavanceerde documenttekst-extractietechnologie die ver voorbij traditionele OCR gaat. Aangedreven door Kantesti's eigen AI-engine levert ICR gestructureerde JSON-uitvoer van elk documenttype.

79%
Sneller dan OCR
99,7%
Nauwkeurigheid
100+
Talen

Kantesti ICR vs Traditionele OCR

In benchmarktests toonde Kantesti ICR 79% hogere prestaties vergeleken met traditionele OCR-oplossingen. ICR begrijpt de documentstructuur, bewaart tabellay-outs, extraheert metadata en retourneert schoon gestructureerd JSON.

ICR Belangrijkste Functies
  • Gestructureerde JSON-uitvoer — Tabellen, secties, metadata en ruwe tekst in schoon JSON-formaat
  • Documenttype-detectie — Herkent automatisch medische rapporten, facturen, formulieren, brieven, enz.
  • Tabelextractie — Bewaart koppen en rijgegevens met volledige structuur
  • Multi-formaat ondersteuning — PDF, JPG, JPEG, PNG documentverwerking
  • Bloedtest-integratie (Kan) — Gespecialiseerd endpoint voor bloedtestdocument-extractie
  • Sandbox-modus — Test integratie zonder credits te verbruiken
  • Creditsysteem — 0,5 credits per API-aanroep

ICR Endpoints Overzicht

EndpointMethodeBeschrijvingKosten
/api/icr/v1/extractPOSTICR-tekstextractie0,5 credit
/api/icr/v1/sandboxPOSTICR sandbox-testGratis
/api/icr/v1/kanPOSTBloedtestdocument-analyse0,5 credit
/api/icr/v1/kan/sandboxPOSTBloedtest sandbox-testGratis
/api/icr/infoGETAPI-documentatie en functiesGratis
/api/icr/healthGETGezondheidscontrole-endpointGratis
/api/icr/v1/quotaPOSTControleer resterende ICR-creditsGratis
POST /api/icr/v1/extract Uitgebracht 14.02.2026

Extraheert alle tekstinhoud uit geüploade documenten met Kantesti ICR-technologie.

Verzoekparameters

ParameterTypeVereistBeschrijving
usernamestringJaUw API-gebruikersnaam
passwordstringJaUw API-wachtwoord
filefileJaDocumentbestand (PDF, JPG, JPEG, PNG)
languagestringNeeUitvoertaal (standaard: en)

cURL Voorbeeld

curl -X POST "https://app.aibloodtestinterpret.com/api/icr/v1/extract" \
  -F "username=UW_GEBRUIKERSNAAM" \
  -F "password=UW_WACHTWOORD" \
  -F "language=nl" \
  -F "[email protected]"

Python Voorbeeld

import requests

def icr_extract(file_path: str, username: str, password: str, language: str = "nl"):
    """
    Extraheer tekst uit een document met de Kantesti ICR API.
    79% sneller en nauwkeuriger dan traditionele 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("medisch_rapport.pdf", "gebruikersnaam", "wachtwoord", "nl")
print(f"Documenttype: {result['data']['document_type']}")
print(f"Pagina's: {result['data']['page_count']}")

Voorbeeldrespons

{
  "status": "success",
  "data": {
    "document_type": "blood_test_report",
    "page_count": 1,
    "pages": [{"page_number": 1, "content": {"raw_text": "Universitair Ziekenhuis Keulen - Bloedbeeld...", "sections": [{"type": "header", "content": "Bloedbeeld"}], "tables": [{"headers": ["Test", "Resultaat", "Eenheid", "Referentiewaarde"], "rows": [["Glucose", "92", "mg/dL", "74 - 100"], ["ALT", "22", "U/L", "< 35"]]}]}}],
    "metadata": {"detected_language": "nl", "confidence": "high"},
    "icr_metadata": {"engine": "kantesti-icr", "version": "1.0.0"}
  },
  "credit_cost": 0.5,
  "api_version": "icr-v1"
}

ICR vs OCR Prestaties

Benchmarkresultaten — Kantesti ICR vs Traditionele OCR
MetriekKantesti ICRTraditionele OCRVerbetering
Verwerkingssnelheid1,2s gemiddeld5,7s gemiddeld79% sneller
Tekstnauwkeurigheid99,7%92,1%+7,6%
Tabeldetectie98,9%71,2%+27,7%
Gestructureerde UitvoerJSON met secties, tabellen, metadataRuwe ongestructureerde tekstVolledige structuur
Meertalige Ondersteuning100+ talen30-50 talen2x+ dekking