openapi: 3.2.0 info: title: KU Leuven ICTS Data Services Research Infrastructure API description: Institution-operated read API for KU Leuven's public reference data, run by KU Leuven ICTS and documented at https://admin.kuleuven.be/icts/services/dataservices. The gateway at dataservice.kuleuven.be exposes an OpenSearch/Elasticsearch query surface over eight public indices — staff directory (wie-is-wie), academic CVs, organisational chart, educational offering (programme guide), research projects, research teams, research infrastructure and job vacancies — each published in a Dutch and an English index. Reads are unauthenticated and were confirmed live on 2026-08-19; the underlying data is governed by the KU Leuven Data Service terms of use. version: '2026-08-19' contact: name: KU Leuven ICTS Data Services url: https://admin.kuleuven.be/icts/services/dataservices/data-service-vraag termsOfService: https://admin.kuleuven.be/icts/services/dataservices/gebruiksvoorwaarden.html x-operator: institution x-provenance: generated: '2026-08-19' method: derived source: Derived from KU Leuven ICTS Data Services documentation pages (admin.kuleuven.be/icts/services/dataservices/*) and confirmed against live unauthenticated responses from https://dataservice.kuleuven.be on 2026-08-19. No endpoint, parameter or field appears here that is not documented by KU Leuven or observed in a live response. servers: - url: https://dataservice.kuleuven.be description: KU Leuven ICTS Data Services production query gateway tags: - name: ResearchInfrastructure description: Research infrastructure and core facilities from the research database. paths: /onderzoeksinfrastructuur/_search: get: summary: Search the Dutch-language research infrastructure index operationId: onderzoeksinfrastructuur_search_get responses: '200': description: Search hits content: application/json: schema: $ref: '#/components/schemas/SearchResponse' tags: - ResearchInfrastructure x-verified: '2026-08-19' /onderzoeksinfrastructuur-en/_search: get: summary: Search the English-language research infrastructure index operationId: onderzoeksinfrastructuur_en_search_get responses: '200': description: Search hits content: application/json: schema: $ref: '#/components/schemas/SearchResponse' tags: - ResearchInfrastructure /onderzoeksinfrastructuur/_doc/{id}: get: summary: Retrieve one research infrastructure record by identifier operationId: onderzoeksinfrastructuur_doc_get parameters: - $ref: '#/components/parameters/DocId' - $ref: '#/components/parameters/SourceFields' responses: '200': description: Document content: application/json: schema: $ref: '#/components/schemas/DocumentResponse' '404': $ref: '#/components/responses/DocumentNotFound' tags: - ResearchInfrastructure components: responses: DocumentNotFound: description: No document with that identifier in the index. content: application/json: schema: $ref: '#/components/schemas/DocumentResponse' parameters: SourceFields: name: _source in: query required: false description: Comma-separated list of fields to return. schema: type: string DocId: name: id in: path required: true description: Document identifier within the index. schema: type: string schemas: SearchResponse: type: object description: Standard OpenSearch search response envelope, as returned live on 2026-08-19. properties: took: type: integer timed_out: type: boolean _shards: type: object properties: total: type: integer successful: type: integer skipped: type: integer failed: type: integer hits: type: object properties: total: type: object properties: value: type: integer relation: type: string enum: - eq - gte max_score: type: - number - 'null' hits: type: array items: $ref: '#/components/schemas/Hit' aggregations: type: object description: Present when the request supplied `aggs`. DocumentResponse: type: object description: Single-document response from `_doc/{id}`. properties: _index: type: string _id: type: string found: type: boolean _source: type: object Hit: type: object properties: _index: type: string description: Physical index name. Snapshot indices carry a build timestamp, e.g. `employee_2026-07-08_12h33m04s211`, which reveals the refresh date of the data. _id: type: string _score: type: - number - 'null' _source: type: object description: The document. Field sets differ per index.