{
  "endpoints": {
    "authentication": {
      "login": "/api/auth/login",
      "logout": "/api/auth/logout",
      "register": "/api/auth/register"
    },
    "collections": {
      "add_opg": "/api/collections/<collection_id>/opgs",
      "base": "/api/collections",
      "get_opg": "/api/collections/<collection_id>/opgs/<opg_id>",
      "stream_image": "/api/collections/<collection_id>/opgs/<opg_id>/image"
    },
    "competency_questions": {
      "cq10_tooth_naming": "/api/cq/tooth-naming",
      "cq11_external_ontologies": "/api/cq/external-ontologies",
      "cq1_forensic_expert": "/api/cq/forensic-expert",
      "cq2_requesting_entity": "/api/cq/requesting-entity",
      "cq3_opg_date": "/api/cq/opg-date",
      "cq4_tooth_stage": "/api/cq/tooth-stage",
      "cq5_reference_studies": "/api/cq/reference-studies",
      "cq6_statistical_outputs": "/api/cq/statistical-outputs",
      "cq7_ai_model": "/api/cq/ai-model",
      "cq8_model_configurations": "/api/cq/model-configurations",
      "cq9_model_task_type": "/api/cq/model-task-type"
    },
    "docs": "/docs",
    "groups": {
      "base": "/api/groups",
      "batch_add": "/api/groups/<group_id>/members/batch",
      "batch_remove": "/api/groups/<group_id>/members/batch",
      "create_for_collection": "/api/groups/for-collection",
      "members": "/api/groups/<group_id>/members"
    },
    "health": "/health",
    "individuals": "/api/individuals",
    "models": {
      "get_results": "/api/models/run/<run_id>",
      "list_models": "/api/models",
      "run_prediction": "/api/models/run",
      "stream_heatmap": "/api/models/run/<run_id>/heatmap/<index>"
    },
    "ontology_classes": "/api/ontology/classes",
    "ontology_properties": "/api/ontology/properties",
    "resource": "/api/resource/<uri>",
    "search": "/api/search",
    "sparql": "/api/sparql"
  },
  "service": "AIdentifyAGE Backend API",
  "version": "v1.0"
}
